vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vBulletin 3.7 Add-ons (https://vborg.vbsupport.ru/forumdisplay.php?f=228)
-   -   Profile Enhancements - Invitation System vB 3.7 Gold (https://vborg.vbsupport.ru/showthread.php?t=171951)

NeuroLancer 04-06-2008 12:36 AM

:eek: Wow! I love this new version!

:up: Working flawlessly~

:D Thanks so much Hasann & Scythe42

Alfa1 04-06-2008 01:39 AM

When inviting a someone that is already a member, then you get the following message:
Quote:

The user has already been invited.
While the user has not been invited before. It should be:
Quote:

The user already is a member.
Below the invitation email it says:
Quote:

EZ Bounce Management:

If this email has bounced, visit the following URL for bounce
management:
http://www.yoursite.com/forum/admincp/ezbounce.php?u=
If a invited person is not a member yet, ezbounce does not work. So if I am not mistaken there is no use for this text.

Does this modification list the invitation link somewhere?

And last but not least: Many thanks for this excellent mod!

Scythe42 04-06-2008 02:35 AM

Quote:

Originally Posted by Alfa1 (Post 1484047)
While the user has not been invited before. It should be:

The phrase is returned when the entered email is found in the user table. There is currently no check if a the userid is also found in the invitation table. I'll modify the query and add another phrase to distinguish between mebers and invited members.

Quote:

Originally Posted by Alfa1 (Post 1484047)
If a invited person is not a member yet, ezbounce does not work. So if I am not mistaken there is no use for this text.

ezbounce adds the link even if the email is not registered. Can be easily fixed.

You need change the "EZ Bounce Management - construct code" plugin, so that it does only attach the link when the email is also registered on your forum:

The following code should do the trick. If the email is not found in the user table, the outgoing message is not touched. Give it a try. I haven't ezbounce installed therefore this is not tested. I added a simple IF-Statement around the code right after the query.
PHP Code:

global $vbphrase$db;

$buser $vbulletin->db->query_first("
        SELECT * FROM " 
TABLE_PREFIX "user
        WHERE email LIKE '%" 
$vbulletin->db->escape_string_like($toemail) . "%'
    "
);

if ( 
$buser['userid'] ) {
    
$bounceurl        $vbulletin->options['ezb_admincpurl'] . "/ezbounce.php?u=" $buser['userid'];
    
$bouncestring    "<a href=\"$bounceurl\" target=\"_blank\">$bounceurl </a>";

    if (!
$vbulletin->options['ezb_showezbouncelink'])
    {
        
// if turned off, put bounce url into header (default option)
        
$headers .= 'X-EZbouncer: ' $bounceurl $delimiter;
        
/* replace above line with following line if the url in bouncing email header is not displaying as a link
        $headers .= 'X-EZbouncer: ' . $bouncestring . $delimiter; 
        */
    
}
    else
    {
        
// if turned on, construct bounce code & place in email message body
        
$bouncecode    construct_phrase($vbphrase['anti_bounce_message'], $bounceurl); 
        
/* replace above line with following line if the url in bouncing email body is not displaying as a link
        $bouncecode    = construct_phrase($vbphrase['anti_bounce_message'], $bouncestring); 
        */
        
$message .= $bouncecode;
    }


Quote:

Originally Posted by Alfa1 (Post 1484047)
Does this modification list the invitation link somewhere?

Was previously removed. I'll add an option to make the invitation code a link. I previously removed it because it didn't display the invitation code correct.

I'll post an update later that takes care of your requests.

Scythe42 04-06-2008 06:04 AM

Here the update I promised in the last post.

Changes:
  • when checking for already registered member there is now an additional phrase for distinguishing between registered and invited members (reqested by Alfa1)
  • added on option to display the invitation code as a link again (requested by Alfa1)
  • remove the "click two times" message from the invitation email phrase. That's not needed anymore.
  • changed "mysql_real_escape_string" to "$db->escape_string"

Please test before including in the next official version of this mod

What's missing is a cron job that deletes pending invites after x number of days automatically and gives the intivations back to the users. This should help users who cannot delete sent invitations that were never claimed or sent them to a wrong emal address. This should be combined with optional features like "give additional invites ever xxx posts" or so.

hrk 04-06-2008 09:58 AM

Solid hack . thanks hassan

dancue 04-06-2008 12:13 PM

Has anyone added the ability to grab from multiple e-mail accounts yet?

I've got the invitation system by visionscripts, which will do it, but it is not supported and will not work with 3.7.

This mod seems to still get support, so I've marked as installed and nominated it instead, even though I disabled it.

Thanks to scythe for working on it as well. It is a very important, useful mod, and I hope to see it grow in the next couple of months to become the best one available. Until then, sorry, but I've got the visionscripts one installed.

dancue 04-06-2008 12:50 PM

To elaborate a bit more, here are a some features I'd like added to this invites system:
  • The ability for the user to attach a note to the invitation. This will allow them to write whatever they want, and will NOT affect what the admin has used for the main e-mail body.
  • The ability to add multiple invites at once. How many should be determined by the admin.
  • As mentioned before...E-MAIL GRABBERS. Great addition to an invites system.
  • If a user sends an invite and the person accepts, those two should automatically become buddies. (Feature should be able to turn on/off by admin)
  • Admin selected expiration for invites.
  • Automatic invite reminders sent to those who have not signed up yet. (How long before they are sent should be controlled by Admin.)
  • The ability to add reputation points automatically to those who successfully get someone to sign on.

I apologize if these are already added. There has been already many good changes done to this invites system.

Alfa1 04-06-2008 01:59 PM

Those are very nice feature requests. I'd like to add two:
  1. Spam control: send a link in the invitation email to allow the recipient to report spam to the forum admin. The recipient can click the link and the forum admin will get a notification about this. This will prevent members spamming.
  2. A simple feature that is very necessary is to have the message content comply to anti-spam rules of major email providers. This can be done by adding a short message on the bottom of the message which explains: (1)to which email address the message is sent (2)why the recipient has received the message and (3)how the recipient can report abuse(see my other feature request). By complying to the anti spam rules of large email providers like hotmail, yahoo, gmail and AOL, you prevent getting blacklisted as a spammer.

Namaless 04-06-2008 03:33 PM

Suggestion for auto-template invitation block in home usercp:

Create new template called "usercp_invitation_block"
Use this code inside:
HTML Code:

<table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center">
<tr>

<td class="tcat">$vbphrase[invitation_system] <if condition="$show['invitation_left']"><phrase 1="$bbuserinfo[invitation]">($vbphrase[invitation_x_left])</phrase></if></td>
</tr>
<tr>
        <td class="alt1"><span class="smallfont"><a href="profile.php?$session[sessionurl]do=invitation">$vbphrase[invitation_click_here_to_invitation_new_users]</a></span></td>
</tr>
</table>
<br />

Create new Plugin called "Invitation Auto Template" with hook "parse_templates"
Use this code inside:
PHP Code:

if ($vbulletin->options['invitation_active'])
{
    eval(
'$template_hook[usercp_main_pos1] .= "' fetch_template('usercp_invitation_block') . '";');


Create new Plugin called "Invitation Cache Templates" with hook "cache_templates"
Use this code inside:
PHP Code:

$globaltemplates array_merge$globaltemplates, array('usercp_invitation_block') ); 

Use this hack for added link into menu. For now not have time to create this.. ;)

Thanks for hack.. this very good project =)

Hasann 04-06-2008 04:56 PM

there was a spam issue
sorry guys for the issue I have fixed and upgraded


All times are GMT. The time now is 04:04 AM.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.

X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01959 seconds
  • Memory Usage 1,782KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)bbcode_html_printable
  • (3)bbcode_php_printable
  • (6)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (3)pagenav_pagelinkrel
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (10)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • printthread_start
  • pagenav_page
  • pagenav_complete
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete