The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
Automatic Greeting Email/PM/Threads for Member Birthdays Details »» | |||||||||||||||||||||||||||
Automatic Greeting Email/PM/Threads for Member Birthdays
Developer Last Online: Nov 2023
This hack will automatically greet the birthdays of your board members by sending them:
* Does NOT require cron jobs so everybody can use it regardless of their server settings/rights. * You can send PMs, emails (or both) or you can choose to send them PM if they can receive PM or else send email. * The Hack can create special greeting threads for birthdays. (optional) * Some usergroups (like banned users) can be excluded from automatic greetings. * Admin can choose to receive a daily report via Email or PM about the greeted birthdays. (optional) * Compatible with ALL vbulletin versions I know. * Carefully coded to not to increase your SQL load and its quite performance-friendly. (More info about performance issues) * New Added Feature: To greet only members who have more than X messages or who have visited your board in the last X days, see here * New Added Feature: You can change his style in the day user has his birthday. Check here) * New Added Feature: You can play Happy Birthday Song to your members in their birthdays. Check here The hack is beta tested by many users for a long time before the release and proven to be quite stable. (BTW. thx to all beta testers especially to Dark_Wizard, Boofo, DslTeam, C-Pr0mpt for returning feedback). WARNING: I strongly suggest: a) Be careful while installing this hack (especially in step 2). If you install it wrongly, your members may get a lot of irrelevant greetings. b) To make sure you installed it correctly, turn on DEBUG mode AND administrator notifications in the options of the hack while you are installing it. So the hack will NOT send any notifications to members but only send daily reports to admin. Keep an eye on these reports for a few days and if you made sure you installed it correctly and it works ok, you can safely turn off debug mode. Enjoy the hack and if you install the hack please click INSTALL, thank you.. Logician \\=^)) Show Your Support
|
Comments |
#22
|
||||
|
||||
Hey - I got a Birthday Email, PM and thread! Its working. Will adjust the templates a bit.
Feedback: the thread greeting does not count as a thread, and the first "reply" count as the first reply - but still no thread count. Otherwise it seem to be fine here with me. Thanks! |
#23
|
||||
|
||||
Quote:
|
#24
|
|||
|
|||
Thank you.
Have a simple suggestion seeing you are taking them.... Maybe add an option set the birthday members default style to a special birthday style. Then of course set it back at the end of the day. (next run.) Thus one could be banner free for the day or maybe receive a special offer from a sponsor. (Can do that one via e-mail though.) In any case...you get the idea. Thank you. David Bott http://www.avsforum.com Home of over 30,000 unique visitors a day on the VB driven site. |
#25
|
||||
|
||||
Quote:
Made obsolete with this code: https://vborg.vbsupport.ru/showthrea...203#post260203 Check there.. |
#26
|
||||
|
||||
I don't mean to sound dense here, but I guess I'm not sure what this really does or what it means.
Quote:
|
#27
|
|||
|
|||
Thank you.
Now...Might I kindly ask a question. That being...Why is all this code in the index.php file? I mean...if it is only used once a day...why must it all this be in this file that is called over and over and over again? It just seems like a lot of extra overhead. Now I did not know PHP or coding...But I was just wondering if it all being their does not hurt some? Would it make a difference if the code just checks the date and then if the date has moved to then call the code? Or is that what it is actually doing now? Please note...I really wanted this hack...and thank you very much for it. (something that should have been in the original Vb)...but I am just wondering. I mean...we get a lot of calls on that page. On the same note...Should the date check (the function that runs to see if it is time to do it's thing.) maybe have been put into another, lesser used, file? Again...It is checking the date with each and every page call unless I am mistaken. Thus it needs to look up some date each and every call. Not to mention to load the values each time for the options. Again....I thank you for this...I am just wondering so I can learn the logic and understand. Thank you for your time. |
#28
|
||||
|
||||
Quote:
First things first: as I mentioned in my first message this hack is carefully coded and QUITE performance-friendly. That is: * The hack by no means increase your SQL load by unnecessary queries. * Does not effect your script running time. * Having a heavy traffic, too many visitors or hack's integration with index.php (the most called vbulletin file) does not change these facts in any way. Here is how: Contrary to what expected, the hack does not check the birtdays of the board members everytime index.php runs. This would slow your board and add unnecessary queries since going through with all members birthdays in the database would be a slow process and would cause a heavy load. Instead the hack is designed to first check the date of "today" and the last day of greetings, before elobarating on today's birthdays. This requires 1 SQL query per run. Considering the fact that your index.php deals with (avaragely) 20 to 40 SQL queries in its EVERY run, this 1 extra query (which is a VERY FAST one btw) would be quite bearable. BUT hack does NOT even add this query load to your server! To save you from even this tiny extra load, I added another feature to the hack: Server Load variable you set in the options. This optimizes the hack to run ONLY 3 times (avaragely) a day to check if hack already greeted the birthdays today and if not runs 1 time a day to greet them. So lets make a simple calculation: if your main page of your board has a daily 1000 visitors, * Your index.php produces an estimated of 30000 SQL queries a day (without this hack.) * After you installed the hack your estimated SQL queries will be 30004 ONLY. Does having a large code in the most running file (index.php) of your server decreases the script running performance in any way? One word: Nope. The hack's code is covered with an "IF conditional" in the begining and even if your index.php runs 1.000.000 times a day, this whole block of code will be skipped (except 3 times in a day) and having it there wouldnt even effect your running time in miliseconds. So you can use it without any worries about SQL/Server/Script performance. It's really a very well thought and coded hack.. Hope this clarifies the performance issues of the hack. Regards, Logician |
#29
|
||||
|
||||
Hack of the Hack:
This modification will change the style sets of users in their birthdays so you can design a custom style for your users to show in their birthdays (a fancier one for example) Features: * Their style set will be assigned to any style set you assigned in the day they have a birthday and it will return to their default style sets the day after. * The birthday style will be overriden in the forums which have MANDATORY styles. * Style set will be changed/reverted according to their OWN times (unlike the hack). * You can set a style set with no banner advertisement or have some special offers etc when user has a birthday. (But be warned: a wise member can change their birthday everyday to have this style forever, so dont make something so tempting!) * This modification is APART from my hack so they are not related or not depending eachother. You can use both together or use just one of them without installing the other. Installation: Edit global.php PHP Code:
BEFORE that add: PHP Code:
|
#30
|
|||
|
|||
I thank you very much for your well thought reply and coding of this script.
I have installed on two sites...One ran just fine and I found the birthday greetings as expected. The other site has not run it as of yet and the date is still yesterdays in the timetick area. TO see if it would help...I have changed the load setting to be 5. So...Now I am just waiting to see if it catches up. BTW...Boy is that load setting kinda confusing. Could you not have made it easier and said "If server load is less than X" and use a real server load number. The default 30 number means nothing to me. Oh..yes...Does the above style hack replace the other one you mentioned? If so...their does not seem to be any code to put back the users real style at the next move. (Though the above is much easier.) (I am glad you liked the idea.) (Note...everything I do on our site I need to be concerned with on loads. As mentioned, 30,000 unique visitors a day...12.5 million page views a month.) David |
#31
|
||||
|
||||
Quote:
Quote:
Quote:
Quote:
You'll find the best setting for you after a litte experience. I personally like to adjust the server load variable to such a number that the hack avaragely greets the birtdays at 3 am (that is, it runs in every 3 hours). I suggest: * set it to a lower number first * enable admin report * examine when the hack avaregly greets the birthdays. * Increase the variable gradually until it stables at around 4am-5am for example (or any time you want). That's the power of customization hehe Logician |
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|