Version: 2.5.2, by sabret00the
Developer Last Online: Apr 2010
Version: 3.0.1
Rating:
Released: 06-03-2004
Last Update: 04-21-2005
Installs: 36
No support by the author.
although i know this works manually, it's untested via cron
Quote:
Originally Posted by AmyKhar
This hack will email a warning to members who have not activated their account and then delete them. It can run via cron, and is a pretty darn easy hack to install.
Features:
1. Emails users after 3 days and reminds them to activate their accounts.
2. Emails users after 5 days and lets them know their account will be deleted if they do not activate.
3. Emails users after 8 days with a final warning.
4. Deletes un-activated members after 10 days.
it still does exactly the same but this time for vb3
oh yeah, it emails you to tell you who was deleted, emailed so you're always informed.
if you got a big board you can't live without this, it stops the crap from piling up.
anything messes up, i can't take responsibility i'm afraid so back up before you try it.
#########################################
Add-On:
#########################################
if you like your templates in your admin cp neat then do this:
in "includes/adminfunctions_template.php" find
now save and close cos you're done :cheeky: :bored:
[high]wol stuff been removed due to the fact this should now be in the cron directory and thus won't show up anyway[/high]
and now like the days of our youth where everything was free and our mum would have dinner on the table for us, you're done.
[high]this was a fantastic vb2 hack and was made with blood, sweat and tears by Amy, she deserves all the credit for doing a fantastic job and then giving me permission to release this, so please if you install this should your gratitude in her direction as without her it would've been impossible.
the two critical bugs that a/ it wasn't sending the activationid and b/ it was deleting users who didn't change their email correctly, have been squashed by Psico[/high]
v2.1: Boofo killed 2 bugs
v2.2: more bugs killed by Boofo
v2.3: bugs killed by psico
v2.3a: bugs killed by sv1cec
v2.4: changed activation code when one exists already removed (sv1cec)
v2.4: better cron logging (me)
v2.4: table prefix bug found by jlurken, fixed by moi
v2.5: email reminder sent to your inbox thanks to sv1vec, improved logging, removed redundant code.
v2.5.2: fixed table prefixes.
[high]YOU WILL NOW NEED TO EDIT THE FILE TO MAKE SURE IT WORKS, IT'S CLEARLY MARKED ON LINE 21[/high]
Show Your Support
This modification may not be copied, reproduced or published elsewhere without author's permission.
chdir('/home/hpoa/public_html/community/'); //change to your vbulletin path
can you let me know if it say that please
ok, i missed that, it wasn't in the directions :cheeky:
I still get this error:
Warning: Cannot modify header information - headers already sent by (output started at /home/hpoa/public_html/community/includes/adminfunctions.php:223) in /home/hpoa/public_html/community/includes/functions.php on line 2714
ok, i missed that, it wasn't in the directions :cheeky:
I still get this error:
Warning: Cannot modify header information - headers already sent by (output started at /home/hpoa/public_html/community/includes/adminfunctions.php:223) in /home/hpoa/public_html/community/includes/functions.php on line 2714
ok well, since i've had more time today, i figured it out... i removed this line:
require_once('./global.php');
and now i get no errors, and it works
thanks guys!!
djroketboy clicks install!
EDIT: ohh, i do still have one more question though, how can i by pass the default original sent email by vbulletin, and use your method, your method does NOT go into the junkmail folders for hotmail and yahoo (atleast for my test emails)...
it would save me sooo much headache if the original activation email was sent like yours...
It's been asked here before, but I couldnt find an answer. How about an "Un-Active User Management"? Same thing, but for users who didnt do a log-in for about xy days. They get an email "You did not visit the forum for xy days. If you do not click this link your account will be deleted in 14 days" or so.
It's been asked here before, but I couldnt find an answer. How about an "Un-Active User Management"? Same thing, but for users who didnt do a log-in for about xy days. They get an email "You did not visit the forum for xy days. If you do not click this link your account will be deleted in 14 days" or so.
Or is there a hack like this available?
it shouldn't be too hard, it's just a matter of editing the queries. however surely your users wouldn't be too happy if they went on holiday and came back to find their account deleted?
ok well, since i've had more time today, i figured it out... i removed this line:
require_once('./global.php');
and now i get no errors, and it works
thanks guys!!
djroketboy clicks install!
EDIT: ohh, i do still have one more question though, how can i by pass the default original sent email by vbulletin, and use your method, your method does NOT go into the junkmail folders for hotmail and yahoo (atleast for my test emails)...
it would save me sooo much headache if the original activation email was sent like yours...
i have no idea how this differs from the default sorry
it shouldn't be too hard, it's just a matter of editing the queries. however surely your users wouldn't be too happy if they went on holiday and came back to find their account deleted?
Thats why they should first get an email "if you do not login within the next xx days (lets say 21) your account will be deleted. And this email will be send to people which did not log in for lets say 365 days.
So I think it is not just to edit some querys, isnt it? And in that case I dont mind if people who didnt visit my board for a year and are on a over three week vacation will be deleted
// Get all users who have not activated their accounts.
$userArray=$DB_site->query("
SELECT username,user.userid,email,joindate,activationid
FROM user
LEFT JOIN useractivation ON (user.userid=useractivation.userid)
WHERE user.usergroupid=3 AND user.posts = 0
");
This part is not working when using table prefixes. Could this be updated please?
I also only want to have an email as admin which users can be deleted. I don't want the script to do so.
// Get all users who have not activated their accounts.
$userArray=$DB_site->query("
SELECT username,user.userid,email,joindate,activationid
FROM " . TABLE_PREFIX . "user
LEFT JOIN useractivation ON (user.userid=useractivation.userid)
WHERE user.usergroupid=3 AND user.posts = 0
");
is the fix you need
the second part of the script is a bit much for me right now although not a big task, just my heads in something else, but i'll remember and hopefully get it out by the end of the month
// Get all users who have not activated their accounts.
$userArray=$DB_site->query("
SELECT username,user.userid,email,joindate,activationid
FROM " . TABLE_PREFIX . "user
LEFT JOIN " . TABLE_PREFIX . "useractivation ON (user.userid=useractivation.userid)
WHERE user.usergroupid=3 AND user.posts = 0
");
but then I get:
Quote:
Invalid SQL:
SELECT username,user.userid,email,joindate,activationid
FROM vb3_user
LEFT JOIN vb3_useractivation ON (user.userid=useractivation.userid)
WHERE user.usergroupid=3 AND user.posts = 0
ok try this, it's stupid and shouldn't work but let me know
PHP Code:
// Get all users who have not activated their accounts.
$userArray=$DB_site->query("
SELECT username," . TABLE_PREFIX . "user.userid,email,joindate,activationid
FROM " . TABLE_PREFIX . "user
LEFT JOIN " . TABLE_PREFIX . "useractivation ON (" . TABLE_PREFIX . "user.userid=" . TABLE_PREFIX . "useractivation.userid)
WHERE " . TABLE_PREFIX . "user.usergroupid=3 AND " . TABLE_PREFIX . "user.posts = 0
");