Thread: Mini Mods - Email reminder for inactive users
View Single Post
  #750  
Old 06-20-2007, 07:31 AM
bbcentral's Avatar
bbcentral bbcentral is offline
 
Join Date: Apr 2006
Location: Australia
Posts: 96
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by bryanb View Post
I've had the same problem - the From: field was "the title of the forum"@myserver.net instead of the email address I use for everything else.

I don't have the SMTP Email enabled - could this be it? I've checked all the other options, and I don't see where I've missed anything.

Used it for the first time this morning, it sent out a little over 7000 emails. I'd like to see which ones bounced (or click here to get through the spam filter)

And a previously inactive guy started a new thread. Thanks! :up:
You haven't missed anything, it's a bug in the code.
I fixed it by changing line 69 in remindermail.php from this:
Code:
vbmail($toemail, $subject, $message, $notsubscription = false, $from = $vbulletin->options['bbtitle'], $uheaders = '', $username = '');
To this:
Code:
vbmail($toemail, $subject, $message);
You don't need the headers or anything like that, even the default vBulletin email scripts in the cron folder don't add custom headers.

If I'd known that the return address was screwed I would have fixed it first before sending out my emails, but all the bounces went to nobody@server.mywebsite.com. So I had to login and forward all those emails to my other account.

My changes to the code are working perfectly, every day since I installed it I've received a summary email like this:
Quote:
The Inactive User Reminder System successfully ran today.
This report contains more information.

--------------------------------

Reminders Sent: 5
Not Sent: 0
Total Inactive: 5

--------------------------------

Reminder Emails sent to:
1951) JoeSmith
4507) JohnSmith
10715) JohnDoe
11545) MikeSmith
11562) Mike Joseph
Also have a fully working unsubscription system now, which is at a much more professional standard.
The remindermail.php script includes an unsubscribe link like this:
http://localhost/unsubscribe/?u=170&s=5a516a0923 (testing on my dev server)
'u' is their vBulletin userid, 's' is an encrypted key based on their password and salt. It won't let them login or do anything except unsubscribe.

Assuming that validates, the page will display this:

The member can then choose to unsubscribe if they wish. It simply adds their userid and timestamp to another database table, and when the unsubscribe CRON script runs it will delete the account if the timestamp is over 24 hours ago.

If they click "Delete Account", they will then see this:

If they have never made a post then the account is deleted automatically, but if they have made 1 or more posts on the forum I'd much rather do it manually myself through the AdminCP, to make sure their posts are marked as "Guest" etc. In those cases I'm working on a method to have the request emailed to me after 24 hours have passed, and to also move their account to a new usergroup.

If the UserID and encrypted Key in the URL don't match exactly, they will receive a login screen:

Although this won't actually log them in to the site, it just validates the Username and Password before redirecting back to /unsubscribe/u=$userid&s=$key
Reply With Quote
 
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01139 seconds
  • Memory Usage 1,785KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD_SHOWPOST
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (2)bbcode_code
  • (2)bbcode_quote
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_box
  • (1)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit_info
  • (1)postbit
  • (1)postbit_onlinestatus
  • (1)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • reputationlevel
  • showthread
Included Files:
  • ./showpost.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/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showpost_start
  • bbcode_fetch_tags
  • bbcode_create
  • postbit_factory
  • showpost_post
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • showpost_complete