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
Details »»

Version: , by mister mister is offline
Developer Last Online: May 2015 Show Printable Version Email this Page

Version: 2.2.x Rating:
Released: 06-24-2001 Last Update: Never Installs: 72
 
No support by the author.

my first hack, enjoy...

Today's Events on Main Forum Page
Hack Version: 4

Description:
Lists today's events on the main page, under the Online Users & Birthdays (both public, and private events).
*Version 2 adds the ability to list either bulleted or linear
*Version 3 uses the users timezone adjusted date, rather than the servers date
*Version 4 fixes a type-o on line 47ish, and adds one bit of instruction if using the bulleted list, rather than linear

Files to Add: todaysevents.php
Files to Edit: index.php
Templates to Edit: forumhome_loggedinusers
Templates to Add: calendar_privateevent_linear, calendar_publicevent_linear
Demo:
Bulleted:

Linear:


upgrade from version 2:
0) backup necessary files
1) upload new todaysevents.php
2) done

upgrade from version 2:
0) backup necessary files
1) upload new todaysevents.php
2) done

upgrade from version 1:
0) backup necessary files
1) upload new todaysevents.php
2) add 2 templates
(NOTE: there is an important space after the comma at the end, and an extra space in {calpubliccolor } and {calprivatecolor })

calendar_publicevent_linear
PHP Code:
<a href="calendar.php?s=$session[sessionhash]&action=getinfo&eventid=$eventid"><smallfont color="{calpubliccolor }">$eventsubject</smallfont></a>, 
calendar_privateevent_linear
PHP Code:
<a href="calendar.php?s=$session[sessionhash]&action=getinfo&eventid=$eventid"><smallfont color="{calprivatecolor }">$eventsubject</smallfont></a>, 
3) edit todaysevents.php to either show bulleted or linear events (comment or uncomment the corresponding eval statement)
4) done



First Time Installation:
0) backup everything, just in case
1) upload todaysevents.php to your main vbulletin directory
2) edit index.php
after this:

PHP Code:
if ($displayloggedin) { 
add this:

PHP Code:
require('./todaysevents.php'); 
3) edit the 'forumhome_loggedinusers' template
change this:
PHP Code:
$birthdaybits</smallfont></td

to this:
PHP Code:
$birthdaybits
$todaysevents
</smallfont></td
4) add 2 templates
(NOTE: there is an important space after the comma at the end, and an extra space in {calpubliccolor } and {calprivatecolor })

calendar_publicevent_linear
PHP Code:
<a href="calendar.php?s=$session[sessionhash]&action=getinfo&eventid=$eventid"><smallfont color="{calpubliccolor }">$eventsubject</smallfont></a>, 
calendar_privateevent_linear
PHP Code:
<a href="calendar.php?s=$session[sessionhash]&action=getinfo&eventid=$eventid"><smallfont color="{calprivatecolor }">$eventsubject</smallfont></a>, 
5) edit todaysevents.php to either show bulleted or linear events (comment or uncomment the corresponding eval statement, and the line near the end doing the substr)

6) All done.


one person downloaded version 4, i didnt test my change, and forgot to comment out a line.
line 10 needs comments for that one person who downloaded the bad version 4

this one is fixed, fyi (its at the bottom somewhere)
https://vborg.vbsupport.ru/showthrea...943#post141943

Show Your Support

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

Comments
  #77  
Old 11-29-2001, 12:46 AM
kyrnel's Avatar
kyrnel kyrnel is offline
 
Join Date: Nov 2001
Location: Houston, TX
Posts: 87
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

First of all, great hack!, thanks Mister..

I modified the hack to display events for the next two weeks by modifying the SQL query to this:
Code:
SELECT eventid, subject, eventdate, public
FROM calendar_events
WHERE (eventdate >= '$today' AND eventdate <= DATE_ADD('$today', INTERVAL 14 DAY)) AND ((userid = '$bbuserinfo[userid]') OR (public = 1))
ORDER BY eventdate
I also modified the hack to display "None" if there are no events found. You just have to add an 'else' clause to the If/Then statement.
Im running into 2 problems. (1) The function designed to remove the trailing commas does not seem to work. The code is this:
Code:
$todaysevents = substr($todaysevents,0,strlen($todaysevents)-2);
This doesnt seem to do anything at all because I have modified it and nothing changes. Any ideas?

(2) The other problem is based on a further modification of this hack. I wanted to separate Todays Events from Upcoming Events so I made separate variables to represent todays events and events from today+1 until today+14days. The problem is that it doesnt work. All the code makes sense to me except I can't figure out where $caltitlelength comes from. Im reusing that variable in both If/then statements. That may be the problem, but I dont understand the variables source or purpose so I cant modify it to suit my needs. Any help there would be greatly appreciated. I'd be happy to post the modified code if that will help.

Thanks
Reply With Quote
  #78  
Old 11-29-2001, 01:15 AM
kyrnel's Avatar
kyrnel kyrnel is offline
 
Join Date: Nov 2001
Location: Houston, TX
Posts: 87
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I just realized another problem with modifying this hack to display events in the near future. Birthdays aren't stored in the calendar_events table. So to display ALL events in the near future (for whatever time period) you will have to query calendar_events AND users and concantenate events from both queries. I'm afraid this is beyong my PHP abilities, I still can't figure out how to concantenate two simple string values much less two recordsets.
I could probably throw a poor hack together reusing Mister's code if I can figure out what $caltitlelength is.
Reply With Quote
  #79  
Old 11-29-2001, 02:07 AM
RobAC RobAC is offline
 
Join Date: Oct 2001
Posts: 314
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Kyrnel,

If you finally get this working, let me know. I've been wanting to display events ahead of time on my own forums.
Reply With Quote
  #80  
Old 11-29-2001, 01:33 PM
kyrnel's Avatar
kyrnel kyrnel is offline
 
Join Date: Nov 2001
Location: Houston, TX
Posts: 87
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally posted by RobAC
Kyrnel,

If you finally get this working, let me know. I've been wanting to display events ahead of time on my own forums.
I dodnt have any trouble only displaying events from a longer period of time. See my first post, all you have to do is modify the SQL SELECT query in todaysevents.php. You can use the number 14 to display the next 2 weeks or change that number to any number of days from today.

What I can;t get it to to is show 2 separate lines of events, one for todays events and another for upcoming events, and this hack does not show birthdays at all, because they are not stored in the calendar_events table but rather just in the user's profile.

I am working on figuring this out. I think I can make it work if I can figure out what $caltitlelength is.

I'm planning on adding some more features to it too, like an option in the user's options to display upcoming events or not and maybe how long into the future they want them to be displayed (just today, 1 week, 2 weeks, 1 month).

I'll post as soon as I have something.
Reply With Quote
  #81  
Old 11-29-2001, 01:41 PM
RobAC RobAC is offline
 
Join Date: Oct 2001
Posts: 314
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Awesome! Thanks!
Reply With Quote
  #82  
Old 11-29-2001, 04:28 PM
mister mister is offline
 
Join Date: Oct 2001
Location: Detroit, MI
Posts: 92
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Don't write anything from the php files.
Use the vbulletin template system.

Put the html you want in 'forumhome_loggedinusers' template.
Reply With Quote
  #83  
Old 11-30-2001, 02:05 AM
kyrnel's Avatar
kyrnel kyrnel is offline
 
Join Date: Nov 2001
Location: Houston, TX
Posts: 87
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Mister,

What is the purpose of this code:
Code:
if ($caltitlelength != 0 and isset($caltitlelength)!=0)
{
     if (strlen($eventsubject) > $caltitlelength)
     {
          $eventsubject = subst($eventsubject,0,$caltitlelength) . "...";
     }
}
I can't see that $caltitlelength is ever given a value. Is it set in another php file? If so what file?

Also, Im close to finishing my mod to this hack. I have successfully combined member's birthdays to upcoming events using a SQL UNION query. I am going to add the following options to the User CP: "Display Today's Events on Home Page: (Checkbox: Yes/No)", "Display Upcoming Events: (no, one week, two weeks, one month)". These settings will be used to determine if/what to display on the main page. Still trying to make the substr function work.
Anyone have any ideas why it is NOT removing the trailing commas? Is it working for anyone else?

Thanks,
Kyrnel
Reply With Quote
  #84  
Old 11-30-2001, 02:35 AM
kyrnel's Avatar
kyrnel kyrnel is offline
 
Join Date: Nov 2001
Location: Houston, TX
Posts: 87
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

ROFL
I just figured out why the substr function wasn't removing the trailing commas. I had the "Add template name in comments" option set to Yes. So the substr function was trimming the last two characters of the HTML comment showing the template name. This is potentially dangerous becasue the close comment tag was altered expanding how much HTML was commented out.
If you tried this hack with Template names enabled and a section of your page disappeared, now you know why.

heh
Reply With Quote
  #85  
Old 01-03-2002, 12:31 AM
Logtenberg Logtenberg is offline
 
Join Date: Nov 2001
Posts: 62
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally posted by kyrnel
I dodnt have any trouble only displaying events from a longer period of time. See my first post, all you have to do is modify the SQL SELECT query in todaysevents.php. You can use the number 14 to display the next 2 weeks or change that number to any number of days from today.

What I can;t get it to to is show 2 separate lines of events, one for todays events and another for upcoming events, and this hack does not show birthdays at all, because they are not stored in the calendar_events table but rather just in the user's profile.

I am working on figuring this out. I think I can make it work if I can figure out what $caltitlelength is.

I'm planning on adding some more features to it too, like an option in the user's options to display upcoming events or not and maybe how long into the future they want them to be displayed (just today, 1 week, 2 weeks, 1 month).

I'll post as soon as I have something.

Can you show a screen shot or url of your events hack? I really want to implement this on my site.

Thanks!
Reply With Quote
  #86  
Old 01-03-2002, 09:43 AM
Lucky Lucky is offline
 
Join Date: Dec 2001
Posts: 234
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Nice job!

Very useful hack!
Reply With Quote
  #87  
Old 01-03-2002, 01:20 PM
kyrnel's Avatar
kyrnel kyrnel is offline
 
Join Date: Nov 2001
Location: Houston, TX
Posts: 87
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally posted by Logtenberg
Can you show a screen shot or url of your events hack? I really want to implement this on my site.
Thanks!
I still havent figured out how to incorporate birthdays into upcoming events. Even though they show up on the calendar, they are not stored in the same place as calendar events.

The rest of it works fine though.
Here are a couple of screenshots and instructions for my modified version of the hack:

This is what happen when there are no upcoming events:


This is what happens when there are, notice that I can only show todays birthdays and it is separate from the events. I want to combine them:


I don't want to post instructions until I have finished this hack. I am still planning on incorporating Birthdays into the upcoming events and putting two options in the user control panel: One to select yes/no whether to display upcoming events at all, another to select how far into the future they want events displayed (1week, 2 weeks, 1 month). Once I have those things finished I will post instructions..
Reply With Quote
  #88  
Old 01-14-2002, 02:44 AM
SirSteve SirSteve is offline
 
Join Date: Oct 2001
Posts: 382
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Progress?
Reply With Quote
  #89  
Old 01-14-2002, 01:00 PM
kyrnel's Avatar
kyrnel kyrnel is offline
 
Join Date: Nov 2001
Location: Houston, TX
Posts: 87
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

none.. I have tried every combination of syntax I can think of to form a UNION query to combine the Events with the Birthdays. No Luck.. and I have been unsuccessful in getting anyone to help.

Im not a php mysql programmer but I do program in SQL so I figured it shouldnt be too difficult... I was wrong I guess..

PLEASE HELP, SOMEONE.... I need to figure out how to combine events from calendar_events with birthdays from the users table. and sort them all by date...

thx
Reply With Quote
  #90  
Old 01-17-2002, 09:24 AM
Lucky Lucky is offline
 
Join Date: Dec 2001
Posts: 234
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I wouldn't mind seeing this either.

Anybody?
Reply With Quote
  #91  
Old 01-17-2002, 12:15 PM
SirSteve SirSteve is offline
 
Join Date: Oct 2001
Posts: 382
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

What about showing a weeks worth of "Upcoming Events" ?
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:13 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.05866 seconds
  • Memory Usage 2,386KB
  • Queries Executed 30 (?)
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
  • (3)bbcode_code
  • (8)bbcode_php
  • (3)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
  • (4)pagenav_pagelink
  • (16)post_thanks_box
  • (16)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (16)post_thanks_postbit_info
  • (15)postbit
  • (16)postbit_onlinestatus
  • (16)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