Version: 1.00, by ChurchMedia
Developer Last Online: Jun 2013
Version: 3.0.3
Rating:
Released: 03-17-2004
Last Update: Never
Installs: 115
No support by the author.
This hack is inspired by the Birthday Hack for vB2 by Logician. It will automatically create a Happy Birthday thread in a specified forum, listing the people with birthdays for that day. Then other members can post their happy birthday wishes in the thread.
I had the original hack installed on my VB2 board and when I upgraded to VB3 my members missed it. Luckily, it's really easy to implement.
--------------------------------------
Files to modify: /includes/cron/birthday.php
--------------------------------------
Instructions are in the attached text file. The mod should take about 5 minutes.
Be sure to change the variables that say // CHANGE ME
You can customize the message in the $birthday_greeting_thread variable. You could also ad IMG tags with an image of some kind, like in my screenshot.
Note that you MUST turn on BB CODE in you birthday forum in order for this to work properly.
--------------------------------------
Enjoy (and thanks for the inspiration, Logician!)
--------------------------------------
New in Version 2.0:
Bug fixes:
> More accurate age calculation. Sometimes it was a year off.
> The correct thread shows up in the last thread post on the forum home page.
> HTML is not required to be turned on in the birthday forum.
> Most of the code is completely rewritten to vB3 standards.
New features:
> Improved look
> Birthday line now says: (User) was born on (date), (AGE: xx)
> If the year is not given, it says "Not telling! " for age.
> The admin is emailed a list of the birthdays with links to their profiles and a link to the happy birthday thread.
> If you use the uShop/uCash hack, you can give birthday points to the users
Upgrading:
Since the code has changed so drastically, I suggest starting with a fresh copy of birthday.php and following the instructions for a new install.
Show Your Support
This modification may not be copied, reproduced or published elsewhere without author's permission.
$greeter=11064; //Your User ID
$greeter_name="Happy Birthday"; //Your User Name
$greetings_forum=6; //enter the forum id that you want the thread to go into
$todays_date11= date("F j, Y", mktime (date("H")+$timeset, date("i"), date("s"), date("m"), date("d"), date("Y")));
$title3= "Happy Birthday to ";
$title3.= $bday_title;
$title3.= "on ";
$title3.=$todays_date11;
$DB_site->query("INSERT INTO thread (threadid,title,lastpost,forumid,open,replycount,postusername,postuserid,lastposter,dateline,iconid,visible,attach) VALUES (NULL,'".addslashes(htmlspecialchars($title3))."','".time()."','$greetings_forum','1','0','".addslashes($greeter_name)."','$greeter','".addslashes($greeter_name)."','".time()."','0','1','0')");
$log_threadid=$DB_site->insert_id();
// Creating Post
$DB_site->query("INSERT INTO post (postid,threadid,title,username,userid,dateline,pagetext,allowsmilie,showsignature,ipaddress,iconid,visible) VALUES (NULL,'$log_threadid','".addslashes(htmlspecialchars($title3))."','".addslashes($greeter_name)."','$greeter','".time()."','".addslashes($birthday_greeting_thread)."','1','0','127.0.0.1','0','1')");
// End Create Birthday Thread Hack
$greeter=11064; //Your User ID
$greeter_name="Happy Birthday"; //Your User Name
$greetings_forum=6; //enter the forum id that you want the thread to go into
$todays_date11= date("F j, Y", mktime (date("H")+$timeset, date("i"), date("s"), date("m"), date("d"), date("Y")));
$title3= "Happy Birthday to ";
$title3.= $bday_title;
$title3.= "on ";
$title3.=$todays_date11;
$DB_site->query("INSERT INTO thread (threadid,title,lastpost,forumid,open,replycount,postusername,postuserid,lastposter,dateline,iconid,visible,attach) VALUES (NULL,'".addslashes(htmlspecialchars($title3))."','".time()."','$greetings_forum','1','0','".addslashes($greeter_name)."','$greeter','".addslashes($greeter_name)."','".time()."','0','1','0')");
$log_threadid=$DB_site->insert_id();
// Creating Post
$DB_site->query("INSERT INTO post (postid,threadid,title,username,userid,dateline,pagetext,allowsmilie,showsignature,ipaddress,iconid,visible) VALUES (NULL,'$log_threadid','".addslashes(htmlspecialchars($title3))."','".addslashes($greeter_name)."','$greeter','".time()."','".addslashes($birthday_greeting_thread)."','1','0','127.0.0.1','0','1')");
// End Create Birthday Thread Hack
Not Working
There seems to have been a slight problem with the Foros xxxxxxxxx database.
Please try again by pressing the refresh button in your browser.
An E-Mail has been dispatched to our Technical Staff, who you can also contact if the problem persists.
Is it possible to specify only specific users groups that it selects birthdays from, and if not any possibility of the option in a future version?
I'd like to see this option as well. I have a news script that generats news on the main page of my site based on a specific forum id. We only post birthday news for Admins and Super Mods of the forum. All other birthday announcements go in my Gen Chat forum.
For those of you having errors, there were some spaces added to the queries when I pasted the code (??). I've attached instructions in a text format. Copy from there and it should work.
sabret00the: To create individual threads for each birthday, just move the step 3 code up underneath the $bday_people = .... line. It should work, but I haven't tried it.
As far as usergroups, I'm still getting the hang of VB3.
This hack is based on the Birthday Hack by Logician and includes some of the original code. It will automatically create a Happy Birthday thread in a specified forum, listing the people with birthdays for that day. Then other members can post their happy birthday wishes in the thread.
I had the original hack installed on my VB2 board and when I upgraded to VB3 my members missed it. Luckily, it's really easy to implement.
--------------------------------------
Files to modify: /includes/cron/birthday.php
--------------------------------------
Instructions are in the attached text file. The mod should take about 5 minutes.
Change the variables for the userid, username and forumid.
You can customize the message in between the <<< EOF and EOF; tags. You could also ad IMG tags with an image of some kind, like in my screenshot.
--------------------------------------
Let me know if anyone has any ideas on how to improve this. I'd like to see:
1) The age calculated and shown
2) The birthday shown in this format: March 17, 1970
3) A link to the thread in their birthday email
Enjoy (and thanks for the inspiration and some code, Logician!)
Members pick up quite quickly that the thread is automated, and on a busy board you also end up with a forum full of the same topics.
I rather have a cron file that run once per month to insert a new thread for the birthdays of that month. This way members can congratulate and others have time to participate.
Actually, the topics change every day... e.g. "Happy Birthday to our members on DATE", etc. And with MK@spug.net's version it changes even more: "Happy Birthday to user, user, user on date". I set aside a sub-forum just for birthdays so it stacks up there.
Quote:
Originally Posted by floris
Members pick up quite quickly that the thread is automated, and on a busy board you also end up with a forum full of the same topics.
I rather have a cron file that run once per month to insert a new thread for the birthdays of that month. This way members can congratulate and others have time to participate.