NewcalendarSP1 version 3.7

  1. Calendar Features
  2. How to Use the Calendar
  3. The Newcalendar Settings Page
  4. Adding Calendar Info to HTML Pages (SSI)
  5. A Note on Fonts
  6. Installing the Calendar for the First Time
  7. Upgrading from a Previous Version
  8. Optional Holiday Pack
  9. Add More Smilies Addon
  10. YaBB Front End (Who's On) Addon
  11. Calendar History
  12. Credits

If you are using any version of Newcalendar prior to version 3.6 (other than 3.51b) there is a potential security hole.  Please upgrade to a secure version.

To get the most out of the Newcalendar mod, please read this entire file.


HELP FOR USERS

Features:

To Use:

Navigating the Calendar:

Access the calendar by clicking on the calendar icon in the YaBB menu or YaBB Info Center.  If the Admin has activated the Moon Phase display, then the calendar icon in the Info Center will appear as the current phase of the moon.  The month view will be displayed.

To view the next month, click the Next button.  To view the previous month, click the Prev button.  To view other months, use the form at the bottom of the page to select the month and year and click the "View Calendar" button.

To view the current year, click on the year text next to the month name.
In the year view calendar, use the Next and Prev buttons to view the next or previous years.  Use the form below the calendar to select other years to view.  Dates with events appear in bold.  Clicking on a date opens the details for events for that date.  Clicking on the month name opens the month view for that month.


On the View Events or Edit Events Pages, clicking on the month name opens the month view for that month.  Clicking on the year opens the year view for that year.


To view events:


Click on the event name on the month view or click on a bolded date on the year view calendar. Details for the events for that day will open.  If a member birthday is displayed, clicking on the member's name will open that member's profile page.
 

Click on Event to View Details

 
Send Event:  Clicking on the "Send Event to a Friend" button opens up the Send Event page.  Here the user may send a quick email message, asking them to take a look at the event.  The user needs to enter the name and email address of the recipient.

 
Send Event Page
The default message sent:
The Admin may edit this message in the language file (english.lng).
Dear Bubba,
I want you to check out the following event notice on the MineralArts Test Forums.

Event: Geological Society
Posted by: Admin
Type of Event: Meeting
Date of Event: 1/16/2004

To view details, please click the link below

http://www.yourwebsite.com/...viewevent

Thanks,
User


To add a new event:
Click on the date text for the date of the event on the Month View or click on "Add/Edit Events for this Day" at the bottom of the events table on the View Events Page or click on a date on the year view calendar if it doesn't already have an event scheduled.  If the date text is not clickable or the "Add/Edit Events for this Day" link does not appear on the View Events Page, then you are not allowed to add/edit/delete events on this calendar.  The Forum Administrator determines which member groups have write access to the calendar.  Contact your Forum Admin to request write access.
 

Click on Date to Add Events
A page will open showing all the events for that day that you are authorized to edit.  Users can be add/modify/delete their own events through this page.  Events entered by other users will not be shown on this page.  Admins and Calendar Moderators can modify all events.  If guest event posting is enabled by the Admin, then guests may post events.  Guests may modify any guest event since all guests are user "Guest".


Clicking on the "Edit this Event Notice" for an event or the "Add a New Event Notice" buttons will open the Edit Event Page.

Name:  This is the the name of the event that will appear on the month view and Info Center listing for the event.  The maximum length is 15 characters.  YaBBC codes are allowed here so smilies can be used.  The YaBB censor function is applied to this field.

Type:  This the type of the event.  Events are organizied on the Info Center by type.

Repeat For:  To create a multiday event open the edit events page for the first day of the event.  Enter the number of days in the "Repeat for" box and select "Day(s)" from the drop down list.

To create recurring events open the edit events page for the first day the event will occur and enter the number of times the event will occur and select weeks, months, years, or 3rdTues from the drop down list.  For example,  if you have an event that occurs each Wednesday for three weeks, open the edit events page for the first Wednesday, enter 3 in the "repeat for" box and select Week(s) from the drop down menu.  The 3rdTues option allows the entry of monthly events that occur on the same day of the week and the same week of the month but not on the same date each month.  Example: a meeting that is scheduled for the third Tuesday of each month.  The 2ndSunMay option allows the entry of annual events that occur on the same day of week, in the same week of the month, and in the same month of the year but not on the same date each year.  Example:  Mothers' Day (US Holiday) occurs the second Sunday in May.

Description:  Enter the description of the event.  YaBBC codes are allowed here so images, formatted text, links, smilies, etc. can be used here.  The YaBB censor function is applied to this field.

Entered by:  Shows who posted the event.

Add or Change Entry:  Enter events one at a time and click the "Add or Change Entry" button for each event before adding or editing another event.

Delete:  Click to delete the event.  Note:  There is no second chance here.  If the delete button is pressed, the event is deleted.


Adding Mini Calendars to Posts:
If allowed by the Forum Admin, a YaBBC tag is available to add a small month view calendar to any post or private message.  To add a calendar, enter [newcal=1,2003] in the message area of a post.  The first number is the month, 1-12, and the second is the year that is to be displayed.  Alternately, if the day is also specified, [newcal=1,26,2003] or [newcal=26,1,2003] depending on the date format set by the Admin, the specified date will be highlighted on the calendar.  If the date is omitted, [newcal], the minicalendar will display the current month.  In this case the minicalendar will roll over with each new month.  On forums where calendar access is limited to Admin-specified member groups, readers who are not in the designated groups will not see the inserted calendars.

HELP FOR THE FORUM ADMINISTRATORS


New Calendar Settings Page:

The Newcalendar Settings Page is accessed through the Admin Center or by clicking the Newcalendar Settings link at the bottom of any calendar page (only Admins see this link).
 

Type of Event Pick List Options:  This is where the Admin can enter the types of events that will appear in the drop down list on the edit events page.  Types are entered with a single space between each type and no commas or other punctuation.  If you installed the Holiday Pack, be sure to enter Holiday as an event type.

Event Types List
 

Default Event Type:  This is the  event type from the list above that should be used as the default when the user fails to select an event type.


Display events for how many days?  The listing of calendar events in the Info Center may be set to display events for several days into the future.  The minimum number of days is 1 (today's events).  This setting also controls the number of days for which events will be displayed in the SSI and YaBB FrontEnd (Who's On) mod display.

Split Info Center Output if exceeds # lines:  Depending on the number of events and birthdays, the Upcoming Events section on the Info Center can become quite long.  This setting provides an option to split the Upcoming Events into two more or less equal columns.  If the number of lines of output exceeds the number entered here the output is split, otherwise, it remains as a single column.  The minimum setting here is four (4).  To prevent the output from ever splitting into two columns, enter a very high number here.  If the events are split into two columns, events for a single day will always be kept together in the same column.  This setting only applies to the Info Center display, not the SSI or YaBB FrontEnd displays.

Show mini month calendar in Info Center?  Check to display the current month calendar in the Info Center.

Allow Use of [newcal] tag?  If checked, users will be able to use the [newcal=10,2003] YaBBC tag to add mini-calendars to posts.  Note:  If you have limited calendar access to the Newcal Group in the settings above, other users will not see the mini-calendars produced by the [newcal] tag.

Activate yabb minical template tag?  If checked, placing a <yabb minical> tag in the template.html will insert a small current month calendar in the forum template.  If you are not using a <yabb minical> tag in your forum template you can improve performance by leaving this box un-checked.


Limit Event Posting to Admins and Calendar Moderators Only?  Checking this box will allow only Admins and Calendar Moderators to post events.  Other users still will be able to view events.

Calendar Moderators:  The members of the member groups* specified in this box will become Calendar Moderators.  As Calendar Moderators, these members will have the ability to add/edit/delete events when the check box above is checked.  In addition, Calendar Moderators can modify/delete events written by anyone.

Limit Calendar Access?  When this box is checked, all members may view the calendar.  When unchecked, only Admins and the members of the member groups specified in the Newcal Group will be able to view the calendar.

Newcal Group:  The members of the member groups* specified in this box will be granted exclusive access to the calendar when the box above is un-checked.  Tip: Unchecking box below and entering a nonexistent member group name makes calendar visible to Admin only (handy for hiding calendar during major updates).

*The member groups discussed here are the member groups defined in YaBB and created and modified through the Edit Member Groups function in the Admin Center.  Members are added to these member groups through individual member Profile pages.  Members are added as Calendar Moderators and Newcalgroup only through member groups, not as individuals.

Member group names should be entered in the boxes with a comma between each group name and no spaces between group names:

GroupOne,Group Two,Global Moderators   ==> Correct
GroupOne, Group Two, Global Moderators ==> NO! Use no spaces between group names!
GroupOne|Group Two|Global Moderators   ==> NO! Commas are the only separator used!

Enter Member Group Names


Guest Event Posting:  If checked guests may post events, if unchecked guest posting is not allowed.


Date Format:  This setting allows the date to be displayed in one of two formats.  If unchecked, the date will be shown as "Friday, November 15, 2002".  If checked, the date will be shown as Friday 15 November 2002.

First Day of Week:  If unchecked, Sunday will be shown as the first day of the week.  If checked, Monday will be shown as the first day of the week.

Weeks can start with Sunday or Monday
Show initial post date for recurring events?  Checking this box displays a message at the bottom of the description field for recurring events.  The message indicates the initial date for the event.  This can be handy when trying to edit recurring events that may have been entered weeks or months in the past.  Clicking on the date opens the View Events Page for that date.

Moon Phases on Month View Calendar:  If checked, the full moon and new moon will be shown on the month view calendar.

Moon Phases on Main Calendar
Moon Phases on Info Center:  If checked, the current phase of the moon image will replace the calendar icon on the Upcoming Events section of the Info Center and display on the SSI and YaBB FrontEnd.  If unchecked, the regular calendar icon will appear on the Upcoming Events section of the Info Center and no moon phase images will appear on the SSI and YaBB FrontEnd.
Upcoming Events on BoardIndex

Show Birthdays on Month View:  If checked, member birthdays will  appear on the month view Calendar.  Birthdays are not shown on the year view calendar.

Include Ages on Month View:  If checked, user ages will be displayed next to names when birthdays are shown on the month view calendar.

Show birthdays on Info Center, SSI, and Whoson Views:  If checked, member birthdays will  appear on the Info Center, SSI, and Whoson (YaBB FrontEnd).

Include Ages on Info Center, SSI, and Whoson Views:  If checked, user ages will be displayed next to names when birthdays are shown on the Info Center, SSI, and Whoson (YaBB FrontEnd).
 


Allow Event Notices via Email:  If checked, users may send notices of events to others via email by clicking buttons on the view events pages.
 

Show Newcalendar Help Link?  If checked, a link to this help file will appear next to the "Search Calendar Events" link.  This help file is written in english and this file may not be appropriate where the primary language of forum users is not english.  The Calendar Help link to this file located at the top of the Newcalendar Settings Page will remain even if this box is unchecked.  The Admin may choose to replace this help file with another more appropriate file.


Extended Profiles Options:  These settings will appear only if the Extended Profiles mod (available from BoardMod ) is loaded on the Forum.  If the Forum Administrator has created Profile Fields of Field Type = Date these fields will be displayed here with a set of options.  If no Profile Fields of Type = Date have been created, the message "No Date Fields Exist in Extended Profiles" will appear in place of these settings.  The format is to provide the name of the field and links to the profile pages of users on the date the users have set on their profile pages.  This is similar to how the birthday display works.  If your forum has many members, displaying Extended Profiles fields may increase server load and increase page loading time for calendar pages.

Use Extended Profiles fields on Calendar?: Check this box if you plan to display any of the Extended Profiles fields on the calendar.  If you do not plan to display any Extended Profiles fields on your calendar, leaving this box unchecked can greatly speed up the loading of your calendar pages, particularly if your forum has many members.

Show on Month View:  If checked, the field will be shown on the month view.

Show in Info Center:  If checked, the field will be shown under Upcoming Events in the Info Center, SSI, and YaBB FrontEnd.
Make Annual Event:  If checked, the field will be displayed on the same date every year.  Note:  This applies to user-set dates which occur in the future as well as past dates.  If unchecked, the field will only be displayed in the year entered by the user on the Profile page.

Years on Month View:  If checked, the elapsed years between the user set date and the current calendar date will appear on the month view.  This is similar to the age display for birthdays.  Note:  This only applies to user-set dates of at least one year prior to the calendar date.  These elapsed years will not be shown for user set dates which occur in the future.  This setting only applies when the Make Annual Event setting is checked.

Years on Info Center:  If checked, the elapsed years between the user set date and the current calendar date will appear in the Info Center, SSI, and FrontEnd mod.  This is similar to the age display for birthdays.  Note:  This only applies to user-set dates of at least one year prior to the calendar date.  These elapsed years will not be shown for user set dates which occur in the future.  This setting only applies when the Make Annual Event setting is checked.


Month View Calendar Table Properties**:  The border width, cell padding, cell spacing, and cell height of the month view calendar are set here.


Year View Calendar Table Properties**:  The border width, cell padding, and cell spacing of the year view calendar are set here.  The "Year table" settings control the border width, cell padding, and cell spacing of the overall calendar while the "Month table" settings control the border width, cell padding, and cell spacing of each individual month calendar.


[newcal], SSI mini-cal, and <yabb minical> Tags Calendar Table Properties**: The border width, cell padding, and cell spacing of the mini-calendars produced by the [newcal] YaBBC tag, SSI mini-cal statement, and <yabb minical> template tags are set here.

**The sample calendars shown next to these settings are created using these settings so the Admin can see the results of changing these settings without leaving the Newcalendar Settings page.  To update the sample calendar, click the Save button at the bottom of the page.  The colors and fonts displayed on the sample calendars are derived from the .newcal settings in the template.html file.  To change calendar colors and fonts, edit the .newcal settings in the template.html file.


 
Rebuild Members List:  It is recommended that the Admin run "Rebuild Member List".  This will keep the member birthday info current.  This is the  same function as found on the main Admin Center page.  It is repeated here as a reminder to the Admin that the proper functioning of the calendar relies on an up-to-date member list.
 
All On-Screen Text not entered on the Newcalendar Settings Page
is found in the english.lng file ecaltxt{'00'} = "whatever" settings.

Calendar colors and fonts are in the template.html file .newcal settings.



To Use the Server Side Includes:

The Newcalendar mod supports two Server Side Include (SSI) statements: the first adds the Upcoming Events list to HTML pages and the second adds a mini month view calendar to HTML pages.  Correct the tags below to reflect the path to your YaBB forum from your root web directory.  Note that many servers require that an HTML page carrying an include statement like those below have an .shtml extension instead of an .html or .htm extension.  Note: these SSI statements produce output visible to all readers even if you have limited access to your calendar to specific member groups.


To add Upcoming Events to any HTML page on the host server, add the following tag on the page where you would like the upcoming events list to appear.
<!--#include virtual="/cgi-bin/yabb/YaBB.pl?action=includecal" -->

To add a mini month view calendar to any HTML page on the host server, add the following tag on the page where you would like the calendar to appear.
<!--#include virtual="/cgi-bin/yabb/YaBB.pl?action=newcalmini2&selmonth=04&selyear=2003" -->
The &selmonth=04&selyear=2003 portion of the tag specifies the month and year to show.  Note the "2" at the end of newcalmini2.

If you would like the tag to always show the current month and year use this tag instead:

<!--#include virtual="/cgi-bin/yabb/YaBB.pl?action=newcalmini" -->
 
The output of this tag includes CSS tags for defining fonts and colors.  However, these CSS tags will be undefined unless you also place CSS definitions into a <style> section in the <head> section of the HTML page where you want the mini calendar to appear.  The calendar will appear whether or not you do this but adding CSS definitions will provide greater control over the appearance of the calendar.  The easiest way to add the CSS definitions is to copy them from your forum template.html file into the page where you will be adding the calendar tag.  The .newcal definitions designated for " Newcal and mini-cal tags" in the template.html file are the ones you would want to copy.  Below are the default CSS definitions for these tags provided with the Newcalendar mod.  Your definitions will vary depending on how you modified them to fit the theme of your forum.

 
<style> 
.newcal33 {color: black;font-size: 10px} /* Newcal tag - dates with no events*/
.newcal34 {color: #0000FF;font-size: 10px;font-weight:bold} /*Newcal tag - days with events, not today*/
.newcal35 {color: #000000;font-size: 12px} /* Newcal tag - Month and Year text*/
.newcal36 {color: #FF0000;font-size: 10px;font-weight:bold} /* Newcal tag -today*/
.newcal37 {background-color: #CFE6FB} /* Newcal tag - month table background*/
.newcal38 {background-color: #FFFFCC} /*  Newcal tag - Month and Year cell background color*/
.newcal39 {background-color: #CFE6FB} /* Newcal tag - date cell background color*/
</style>



Fonts Note:

To define the calendar fonts as you wish, be sure to have something like:

p,h1,h2,h3,h4,ul,ol,li,div,td,th,address,blockquote,nobr,b,i { font-family:Verdana,Arial,sans-serif;}

in your template.html to define the general font-family for the whole board.  Otherwise the fonts will default to the user's browser defaults.  The calendar will work either way.  To change specific fonts and colors in the calendar, modify the .newcal settings in the template.html file.



New Installation:
(read upgrade section below if you are upgrading from another Newcalendar version)
  1. Install the mod (manually with a text editor or using BoardMod).  For YaBB SP 1, 1.1, and 1.2 forums use the newcalendar3_7.mod file.  For YaBB SP 1.3 forums use the newcalendar3_7_SP_1_3.mod file.  If you don't know how to install a mod, please visit the BoardMod website for assistance before attempting to install this calendar, a short time spent reading the FAQ file there will save you a great deal of frustration here.
  2. Upload the modified YaBB.pl, english.lng, Subs.pl, Admin.pl, BoardIndex.pl, Profile.pl, YaBBC.pl, and template.html files (use ASCII mode).  Upload the modified SubList.pl file for YaBB SP 1.3 forums.  Chmod as normal.
  3. Upload all the files in the NewcalSources directory to your YaBB Sources directory (use ASCII mode).
  4. Upload all gif files in the NewcalImages folder to your YaBB images directory (use binary mode).
  5. Upload newcalsettings.txt and newcaldb.txt to your Variables directory in ASCII mode and chmod both to 666.
  6. Upload NewcalendarHelp.html to your YaBB help directory (use ASCII mode).
  7. Upload all the gif files in the NewcalHelp folder to your YaBB help directory (use binary mode).
  8. Edit the Newcalendar Settings in the Admin Center.  Read the NewcalendarHelp.html file (this file) to learn about the various settings.
  9. Click on the Rebuild Member List link after you first install the calendar.  This will populate the member birthday file.  No birthdays will appear on the calendar until this is done.


Upgrading the Calendar from a Previous Version:

Upgrading from Newcalendar 1.x:
No good upgrade path exists, uninstall older Newcalendar version and install this version.  The database file has changed in format so you will lose all current entries.
 

Upgrade from Newcalendar version 2.x or 3.x:

  1. Backup your eventcaldb file.
  2. Uninstall old version.
  3. Install new version following the instructions for New Installation above.
  4. Restore your backup copy of eventcaldb to your variables directory, renaming it to newcaldb.txt.


Optional Holiday Pack:

The holiday.txt file is an optional database file for Newcalendar that is pre-loaded with a number of holidays.  The holiday information is written in english and there is a bias toward US holidays, also, the holiday information is somewhat dated.  The holiday information was volunteered by members of the Boardmod forum.  If you have favorite holidays you would like to see on the next version of the holiday pack, please post your request here:  Ironwing's Forum

If you are installing Newcalendar for the first time or don't want to keep any events currently on your calendar then rename the file holidays.txt to newcaldb.txt and load this newcaldb.txt file to your Variables directory and chmod to 666.

If you want to add the holiday pack to an existing Newcalendar calendar and want to keep the events currently on your calendar then:
 

  1. Open both holidays.txt and your current newcaldb.txt files.
  2. Copy the contents of the holiday.txt file and paste into your newcaldb.txt file.  Note: If you paste the holiday text at the top of the newcaldb.txt file, for any days where you already have an event entered, the holiday information will be lost but the event information will be saved.  Conversely, if you paste the holiday text at the bottom of the newcaldb.txt file, for any days where you already have an event entered, the event information will be lost but the holiday will be saved.
  3. Be sure to leave one empty line at the bottom of the newcaldb.txt file.
  4. Save the newcaldb.txt file.
  5. Load the modified newcaldb.txt to your Variables directory and chmod to 666.
  6. Be sure to add a "Holiday" entry to the event type list in the Newcalendar Settings section of the Admin Center.

Add More Smilies mod Addon:
The Newcalendar mod includes with an additional file called:
NewcalEnter_add_more_smilies.pl
This is an optional version of the NewcalEnter.pl file that is pre-configured to work with the Add More Smilies mod, version 2.1.  To use this version, Add More Smilies v2.1 must be working on your forum.  Copy this file to your Sources directory in ASCII mode and rename it to NewcalEnter.pl.  The regular Add More Smilies control panel in the Admin Center will control the appearance of the smilie buttons.


YaBB FrontEnd (Who's On) mod Addon:

THIS ADD ON NOT YET TESTED WITH YaBB SP 1.3 FORUMS.

The Newcalendar mod includes an additional mod file called:

newcal addon for whoson mod.mod

This is an optional addon mod is for the YaBB FrontEnd (Who's On) mod version 1.0.  It will place Upcoming Events from the Newcalendar database into the YaBB FrontEnd mod display.  The YaBB FrontEnd mod must be installed and working correctly before installing this addon.  If your forum is running version 1.1 or greater, this script is already included and this addon should not be used.

To install, install the mod file using BoardMod or manually, and upload the modified whoson.pl file.  If you are already using the birthdays addon for the Who's On mod, you may wish to deactivate it as this addon also provides member birthday info.



Mod History:

Version 3.7 (this version)

Version 3.6
Version 3.51 Final
Version 3.5
Version 3.3 Version 3.2 Version 3.1 Version 3.0 Version 2.64 Version 2.63 Version 2.62 Version 2.6 Version 2.5 Version 2.4 Version 2.3 Version 2.2 Version 2.1 Version 2.0 Version 1.1: First Release Version Betas:

Credits:

Authors: Ironwing, GauGau, & Nermware

This mod is based on the eventcalendar.pl script by NermWare.  Converted to YaBB mod by Ironwing.

The MoonPhase.pl script based on module MoonPhase.pm by Raino Pikkarainen, available at www.cpan.org.

Thanks to Zoo for the code to greatly speed up the Newcalendar birthday code.

Thanks to Shoeb Omar for hefty code snippets from the Add More Smilies mod.

Thanks also to chrishartmann, Demon Slayer, and Max for code snippets from the Birthday mod.

Direct questions about this mod to Ironwing.

Homepages:
Ironwing
GauGau
Nermware