Included a user referrer code to invite code, so when they sign up, it shows up who referred them.
Now users can delete their invites
Invitation Image Verification Added
The system can be turned on and off.
Usergroups Permissions Added; Allowed Usergroups to View and to Use This Hack
Invitation User Control Panel Link; Show Invitation Link in "User Control Panel" Left Menu
Invitation Automatic Link Creation; This will create a link on your forum navbar to the invitation page
Usergroups Permissions Added
fully phrased
added an admin option disable registration via normal methods
added an admin option which usergroups can to delete their invites
added an admin option enable disable invitation image verification
added an admin option Edit the Email Text Title
added an admin option Edit the Invite Description
added Invitation Sender Username to Email
integrated the totally vBulletin default Human Verification System into Invitation System
You decide it if you wich human verification system will be used in the invitation system go to Admincp > Human Verification Manager > and select one human verification if you want.
these are;
Image Verification
An image consisting of letters in varying fonts/shapes/sizes will be shown to the user. The appearance of this image is dicated by several options that you may control.
Question and Answer Verification
Questions provided by you that must be answered appropriately for verification.
reCAPTCHA Verification
An image containing two words will be shown to the user. This verification supports audio, allowing blind users to register.
Added Invitation User Options
a> Ability to limit number of invites by user. (user: Admin an have 10 invites, user: Testuser can have 20, etc, admin controlled)
b> Ability to reset invites to 0 on a per user basis (override), admin controlled
c> Ability to reset to max being unused, admin controlled
d> Abilitiy turn to on or off Invitation System per user basis, admin controlled
INSTRUCTIONS Install: ->Just Import product_invitation.xml via Product Manager
->Do template edits: In USERCP_SHELL Template Find this Code
UPDATE `prefix_user` SET `invitation`=x1 WHERE `usergroupid`=x2;
Where x1: here you'are setting invitations amount (number)
Where x2: here you're setting usergroupid (number)
Moreover you can change default amount of invitation which get all new registered users by editing invitation pole and changing the default amount of invitations to eg. 0.
Also you can make a cron file with mysql commands and add this file to vbulletin's planned jobs.
I found big mistake in this mod but fortunately I found solution!
When you trying to send an invitation - script checks if email exists in database or not. When it checks, mysql load grows to 30-40% on E5200 processor! Horrible!
You have to edit an Invitation User CP plugin and replace that:
Code:
$invitationcheck = $db->query_read("SELECT user.userid AS user_id, user.email AS user_email, invitation.email AS inv_email, invitation.acceptedby as inv_id
FROM " . TABLE_PREFIX . "user AS user
LEFT JOIN " . TABLE_PREFIX . "invitation AS invitation
ON user.userid = invitation.acceptedby OR user.userid = invitation.email
WHERE user.email = '" . $db->escape_string($vbulletin->GPC['email']) . "'
OR invitation.email = '" . $db->escape_string($vbulletin->GPC['email']) . "'
");
while ($invitation = $db->fetch_array($invitationcheck)) {
if ( $invitation['user_id'] == $invitation['inv_id'] ) {
$errors[] = fetch_error('invitation_user_already_invited');
} elseif ( $invitation['user_email'] == $vbulletin->GPC['email']) {
$errors[] = fetch_error('invitation_email_already_registered');
}
}
for that:
Code:
$invitationcheck = $db->query_read("SELECT email
FROM " . TABLE_PREFIX . "user
WHERE email = '" . $db->escape_string($vbulletin->GPC['email']) . "'
");
while ($invitation = $db->fetch_array($invitationcheck)) {
if ( $vbulletin->GPC['email'] ) {
$errors[] = fetch_error('invitation_email_already_registered');
}
}
That solution incredibly reduce load and doesn't destroy proper mod funcionality.