Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 2.x > vBulletin 2.x Full Releases
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
Send User a PM on Birthday Details »»
Send User a PM on Birthday
Version: 1.00, by melondog melondog is offline
Developer Last Online: May 2002 Show Printable Version Email this Page

Version: 2.2.x Rating:
Released: 04-01-2002 Last Update: Never Installs: 1
 
No support by the author.

Ok, I made a little hack to send users a PM on their Birthday.

Fixed

First, make a new file, pmbday.txt, and chmod it to 777.

Next open index.php and add this code:

Quote:
// send PM if Birthday
$message = "Your message here.\n";
$title = "Happy Birthday!!";
$username = $bbuserinfo['username'];

if(vbdate('m-d', time()) == substr($bbuserinfo['birthday'], 5)){
$file = file("pmbday.txt");
while(list(,$value) = each($file)){
list($user, $date) = explode("|", $value);
if($username == $user){
}else{

$touserid = $bbuserinfo['userid'];

$DB_site->query("INSERT INTO privatemessage (privatemessageid, userid,touserid, fromuserid, title, message, dateline, showsignature, iconid, messageread, folderid, receipt) VALUES (NULL,$touserid,$touserid,1,'$title','$message',". time().",0,0,0,0,0)");

if($noshutdownfunc){
$DB_site->query("UPDATE user SET pmpopup=2 WHERE userid=$touserid");
}else{
$shutdownqueries[]="UPDATE LOW_PRIORITY user SET pmpopup=2 WHERE userid=$touserid";
}

$date = date("m.d.y");
$fp = fopen("pmbday.txt", a);
fputs($fp, "$username|$date|\n");
fclose($fp);
}
}
}
You can add it pretty much anywhere in index.php.

If you have questions or comments, feel free to post them.

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.

Comments
  #12  
Old 04-03-2002, 08:39 PM
melondog's Avatar
melondog melondog is offline
 
Join Date: Mar 2002
Posts: 11
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

It's all fixed guys. I hope there arn't anymore problems with it.
Reply With Quote
  #13  
Old 04-04-2002, 05:37 PM
pwr_sneak pwr_sneak is offline
 
Join Date: Oct 2001
Location: Germany
Posts: 19
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

ok, this works now, but adds load to the server and doesn't work on forums, which use multiple boxes, but these problems are very special

Another problem could occur more often. Your hack won't work if a user got a pipe (|) in his username, better to use userid.

My idea was, send all PM notifications just once a day on the first page-impression after midnight.
Do do that add right after:
while ($birthday=$DB_site->fetch_array($bdays)) {

Code:
while ($birthday=$DB_site->fetch_array($bdays)) {
$message = "Your message here.\n"; 
$title = "Happy Birthday!!"; 

$DB_site->query("INSERT INTO privatemessage (privatemessageid, userid,touserid, fromuserid,
 title, message, dateline, showsignature, iconid, messageread, folderid, receipt) VALUES (NULL,
$birthday[userid],$birthday[userid],1,'$title','$message',".time().",0,0,0,0,0)");
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 11:31 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.05862 seconds
  • Memory Usage 2,215KB
  • Queries Executed 17 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (1)bbcode_code
  • (1)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (6)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (1)pagenav_pagelink
  • (3)post_thanks_box
  • (3)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (3)post_thanks_postbit_info
  • (2)postbit
  • (3)postbit_onlinestatus
  • (3)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.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_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • 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
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete