soundwebdevelopment

This page is deprecated. It contains the features and documentation of PostCalendar version 6.0.x. For current features and documentation, please visit the current page.

PostCalendar v6.0 Features & Documentation

PostCalendar has multiple views, including List view, private calendars, MultiHook needles and much more. The PostCalendar team is now focused on producing a super-stable simple and fast implementation of a calendar for Zikula. It will contain only the simpler features needed in a calendar.

Features

  • php4 and php5 compatible (php5 recommended)
  • upgrades from old PostCalendar v4.x
  • Multiple views (Year, Month, Week, Day, List, RSS)
  • Gettext-enhanced translations
  • 100% W3C-valid XHTML 1.1 templates - fully customizable with optional navigation images
  • New 'contemporary look and feel' templates and css
  • Repeating events
  • Categorization of events using Zikula category system
  • Supports all available hooks
  • Date/Time Formats
    • Admin-definable date format for entire module
    • 24 or 12 hour format
    • Monday/Sunday/Saturday week start
  • Print any view using Printer theme
  • Blocks
    • Upcoming Events, Today's Events and calendar view blocks (optional category filter)
    • Featured Event block with daily countdown
  • Admin notification on Event Submission, option to disable, also option to disable on admin-only submission.
  • Users can create private and/or global events (admin defined by Zikula group)
  • Events can be queued or immediately submitted (admin defined)
  • Events can be filtered by category or user (if personal calendar is enabled)
  • Hovering event information using JavaScript?

Administration Options

General Settings

Reset All...This resets all admin-definable options to the default settings
...Activated without reviewDo not queue up event for admin approval
Enable categorization...Allows categorization of events utilizing the Zikula Categories module
...Personal Calendars...Personal Calendars allow users to create events that only they can see. Choose a Zikula Group allowed to do so (or no group)

Display Settings

Number of events...The number of events displayed in Admin list view (Queued/Hidden/Approved)
Use 24 Hour time formatDisplay 13:30 instead of 1:30 PM
Time Increment...Used in dropdown on new event form for possible event lengths and start time
Default categories...select category(s) to be preselected by default on new event creation (user can change)
Popup Windowchanges functionality to popup a new window with event details instead of linking to full display
Event details in 'hover'...Use Javascript to display hovering information on mouseover
Date Display FormatChoose format Dates will be displayed as (uses php's  ''strftime'' format)
First Day of WeekWhich Day weeks begin with
Default Calendar ViewWhich calendar view is displayed with no arguments in link to module
Filter Event DisplayAllow users to filter events by category/topic/user (if option available)
...jump date... year(s) before...Number of years to display before current year in jump date selector
...jump date... year(s) after...Number of years to display after current year in jump date selector
Enable images...Show images in the PostCalnedar? navigation header (or just show text links)

Notification Settings

Notify about USER submissionSends email to admin on USER submission
Notify about ADMIN submissionSends email to admin on ADMIN submission
Admin email Addressenter the email address to send notifications to

Category Usage in PostCalendar

Upgrading from Previous Versions of PostCalendar

In version 6.0, PostCalendar replaced the old PostNuke Topics module and its own internal categorization system with the standard Zikula Categories module. This is done in such a way so that it should be seamless to the site administrator.

The old internal categories are migrated to a new Category called 'PostCalendar' with a property name of 'Main'. Each new subcategory also adds an attribute called 'color' and maintains the old color information.

If the Topics module was active and if PostCalendar had been configured to use Topics in version 5.8.x, then upon upgrade, PostCalendar will attempt to migrate these categories as well to the Zikula Categories module. If you have already done this migration via the News module (or other), then PostCalendar will check to see if that previously migrated information is the same and if so, connect these to PostCalendar. If not, it will create a new 'Topics' category and migrate the old Topics as new subcategories (with 'Topic' as the property name).

Utilizing Categories in a New Installation of PostCalendar

On install, PostCalendar will create a main category called 'PostCalendar' and one subcategory called 'Events'. The category will have a property name of 'Main'. The Events subcategory will have an attribute called 'color' and a value of '#99ccff' (light blue).

Adding New Categories & Subcategories to PostCalendar

If you wish to add more subcategories, you can do so easily using the Categories module. Be sure to choose 'PostCalendar' as the parent category and add a color attribute with an appropriate hexadecimal value.

One may also create a new category and link it to PostCalendar. This will allow you to categorize PostCalendar events in multiple areas. Simply create a new Category, then using the categories registry, select the following values

PostCalendarpostcalendar_events<choose a name><your new category name>

Be sure to create appropriate subcategories. PostCalendar will not associate colors with secondary (non 'Main') subcategories, so there is no need to create color attributes.

To remove a parent category from PostCalendar, simply delete the associated entry in the category registry and it will no longer be associated with the module.

Using Colors in Categories

One can assign colors for any category utilized in PostCalendar. This color is used to provide a visual cue to the user. Do so by creating a 'color' attribute and give it a hexadecimal value (including the hash symbol) e.g. '#cccccc'. If you do not assign a color to a category a default color of '#eeeeee' will be used.

In addition, you can also assign a textcolor for the category. Textcolors are optional. This color is used only for the text display of the category name. Do so by creating a 'textcolor' attribute and give it a hexadecimal value (including the hash symbol) e.g. '#111111'. If you do not assign a textcolor to a category, a default value computed as the hexadecimal inverse will be used.

Note that the attribute names must be in English (as above).

Using Global Categories in PostCalendar

If you want to use the same categories in PostCalendar that you are using in other modules (the Global categories or another), you are free to do so. Create a new category registry entry with the following settings:

PostCalendarpostcalendar_eventsMain/SYSTEM/Modules/Global

note: these settings assign the 'Main' property name to the global categories. If you do this, delete the old PostCalendar 'Main' reference.
Be sure to remember to add a 'color' attribute to each of the global categories to take advantage of that feature in PostCalendar.

PostCalendar Blocks

Calendar

This is the main Calendar block for PostCalendar. This can display any or all of three main elements:

  1. Small 'month view' navigation calendar
  2. Today's events
  3. Upcoming events

One can also limit the display to one category by selecting it in the block administration. Select 'all categories' to not limit the display.

Optionally display a submit and search link in the block and modify the amount of events to display in the upcoming events area.

The block becomes more useful if the 'popup' or 'hover' options are selected in the admin settings.

Featured Event

The featured event block allows a site admin to call attention to a specific event in a block. The block requires the event ID to function. In addition, one can optionally display a daily countdown to that event and also optionally hide the block when the event 'expires'. note: the block is not deleted it is simply hidden.

Hooks Support

General Hook Support

PostCalendar supports all hooks:

  • Item Transform Hooks (API)
  • Item Display Hooks (GUI)
  • Item Create Hooks (API)
  • Item Update Hooks (API)
  • Item Delete Hooks (API)
  • Item New Hooks (GUI)
  • Item Modify Hooks (GUI)
  • Module Configuration Hooks (modifyconfig (GUI)/upgdateconfig (API))

Therefore, any module that offers a hook is available in PostCalendar. This includes, but is not limited to:

  • EZComments (PostCalendar includes special graphical notification of events with comments)
  • bbsmile/bbcode
  • MultiHook (see below)

Needle Usage (MultiHook)

PostCalendar provides two needles that can be used in any module hooked with the MultiHook module. In order to use these (or any needles) you must have the MultiHook module installed and then hook MultiHook to that other module (for example, News). Then in that other module, you can type these needles and they will be auto-replaced by this content.

  • POSTCALEVENT-{eventid-displaytype} (example: POSTCALEVENT-263-NDL) replaces needle with a PostCalendar event title and link. Can include the date and time of the event with an icon if desired. Date is presented in PostCalendar-defined format.
    • eventid = the integer event id of the event you wish to insert. this is shown in the browser addressbar as eid=####. It is also shown in the title header of each event when viewing the event details.
    • displaytype = any or all of the following capital letters, in any order.(default: NLI)
      • N (shows the event name)
      • D (shows the date of the event)
      • T (shows the time of the event)
      • I (adds a small icon)
      • L (replaced content is a link instead of just text)
  • POSTCALDATE-{date-displaytype} (example: POSTCALDATE-20091225-DL) replaces needle with a PostCalendar date and link. Can include an icon if desired. Date is presented in PostCalendar-defined format.
    • date = the date you wish to link to in format 'YYYYMMDD'
    • displaytype = any or all of the following capital letters, in any order.(default: DIL)
      • D (shows the date of the event)
      • I (adds a small icon)
      • L (replaced content is a link instead of just text)

Personal Calendars

PostCalendar allows the administrator to define one Zikula group that is allowed to have personal calendars. First, use the Group manager to create a group and add whomever you wish to that group. Then select that group in the PostCalendar settings admin panel. If you wish, you can use pre-existing groups like 'Admins' or 'Users' (use of Users is discouraged). One can also select 'no group' which disables this feature for everyone.

If you choose a group other than 'no group', an additional selectbox will be added to the PostCalendar header that will allow the users in that group to choose to filter their display to their own events only, global events only or global plus their events. In addition, admins (only) will be able to select any user with personal events and view those events.

Permissions settings in PostCalendar

As of version 6, PostCalendar has eliminated category-cased permissions and user-based permissions. The only permissions available are event-based permissions.

In order to deny access to unregistered users to a particular event, you can use a permission setting like so:

UnregisteredPostCalendar::Event<event title>::<event id>No access

In order to allow all registered users to submit event, you can use a permission setting like so:

UsersPostCalendar::.*Add access

You can restrict this to less users by choosing a different group.

Category-based permissions will be restored in a future version of PostCalendar.

Link to PostCalendar by entering {PostCalendar} in a menu block.

Go to your Block administration and edit/create the Menu block to hold your link to PostCalendar.

The Menu Block editing screen should look something like this:

Name URL Title
PostCalendar {PostCalendar} My Calendar

Adding PostCalendar to Pending Content Module

PostCalendar will notify an Administrator via email if set to do so (see above). PostCalendar will also post a notification to administrators only in the templates if events are queued for review, so using Pending Content is no longer required.

note: The Pending Content module is distributed with the Zikula Core, but is apparently unmaintained and has not been improved in recent versions.

Add PostCalendar to the Pending Content Module by adding an entry that says the following:

Name: PostCalendar
URL:  index.php?module=Calendar&type=admin&func=listqueued
SQL:	SELECT COUNT(*) FROM zk_postcalendar_events WHERE pc_eventstatus=0

please note that the table name prefix ('zk_' above) may need to be adjusted for your installation. check your phpMyAdmin to get the table name if you don't know it.

Customization: Overriding PostCalendar Templates and Stylesheets

Overriding Stylesheets (css)

This is the easiest and most quickly beneficial customization you can make to your installation of PostCalendar. If the only thing you want to change is colors, this is all you need to do. You do need to understand css a little. The colors are clearly labeled in the stylesheet.

  • Create a directory in your theme 'themes/<yourthemename>/style/PostCalendar/'
  • Copy 'modules/PostCalendar/pnstyle/style.css' to 'themes/<yourthemename>/style/PostCalendar/style.css'

Now, you can modify the PostCalendar stylesheet in your theme all you like. ( make sure your changes will be seen immediately)

Overriding Templates

This is a bit more complicated and will require a working knowledge of Smarty and HTML. See  this page in the Zikula documentation for more information on template overrides.

Warning

When you upgrade PostCalendar, you have to remember to remove your overrides and then check them to see if they are still valid before using them with a new version.

 
 
Powered by Trac
Design by Arcsin