View source for Action: Scheduler

#||
||
Compatible with: !!(green)**R6.x**!!
Current version: 0.4
Credits: ((user:AhA AhA)), ((user:WikiAdmin WikiAdmin))
|{{toc numerate=1}} ||
||#

##""{{scheduler}}""##

===Description===
Scheduler is an action which allows a person to keep a day calendar (or diary for that matter). Although the entry formatting is simple, at the same time it provides flexibility. A user can enter a day schedule.....

%%
8:00 am - meeting with joe
9:00 am - coffee with angie
10:00 am - clients from budapest
%%

or use it to keep a to-do list, or even a diary for the day. The schedule for a day can be viewed with the entry tool, in the monthly view, or in the day view. The day viewer is formatted for printing out usable schedules, & you can designate a specific user with it and see somebody else's schedule (I intend on modifying this so that there will be an easy-to-use text entry box for entering user names). 

===Installation==
To install the scheduler system, the existing database must be extended by 1 table and the following PHP file must be copied to the ##/action## folder.

====Action====
This script must be saved under the name **scheduler.php** and copied to the ##/action## folder.

{{include page="!/SchedulerPhp"}}

====Template====
This script must be saved under the name **scheduler.tpl** and copied to the ##/action/template## folder.

{{include page="!/SchedulerTpl"}}

====Database====
The existing Wacko MySQL database must be extended with the following table. Change the prefix for the tables accordingly if necessary.

create extra table:

%%(hl sql)
CREATE TABLE wacko_scheduler (
  scheduler_id INT(10) NOT NULL AUTO_INCREMENT,
  user_id INT(10) UNSIGNED NOT NULL DEFAULT '0',
  day TINYINT(2) NOT NULL DEFAULT '0',
  month TINYINT(2) NOT NULL DEFAULT '0',
  year MEDIUMINT(4) NOT NULL DEFAULT '0',
  schedule TEXT,
  PRIMARY KEY (scheduler_id),
  KEY idx_user_id (user_id)
);
%%

====Message sets====
en
%%
	'SchedMustLogin'					=> 'The calendar works only for logged in users.',
	'SchedNoEntries'						=> 'There are no entries on this day.',
	'SchedLabel'							=> 'Appointments and tasks for ',
	'SchedCommentsNote'				=> 'Preface comments with @.',

	'SchedMonthlyView'					=> 'Monthly view',
	'SchedDailyView'						=> 'Daily view',
	'SchedMonthlyCalendar'				=> 'Monthly Calendar',
	'SchedCalendarLabel'					=> 'Calendar for',
	'SchedDayLabel'						=> 'Entry for the',

%%

de
%%
	'SchedMustLogin'					=> 'Der Kalender funktioniert nur bei angemeldeten Nutzern.',
	'SchedNoEntries'						=> 'Es gibt keine Einträge an diesem Tag.',
	'SchedLabel'							=> 'Termine und Aufgaben für ',
	'SchedCommentsNote'				=> 'Kommentare mit @ einleiten.',

	'SchedMonthlyView'					=> 'Monatsübersicht',
	'SchedDailyView'						=> 'Tagesansicht',
	'SchedMonthlyCalendar'				=> 'Monatskalender',
	'SchedCalendarLabel'					=> 'Kalender für',
	'SchedDayLabel'						=> 'Eintrag für den',

%%

===Documentation==
How can I use this Calendar for group events?

Note:
By default only events of the (one) logged in person respectivly his actual account will be shown.

work around:
Share an account. Eg. "GroupXYAccount" which will be used for event accord only.

Login: GroupXYAccount
Password: onepasswordforallgroupmembers

===Changelog===
0.1	Intitial version
0.2  Ported to WackoWiki
0.3  Ported to R6.0
0.4 Added template

===To Do===
  * --localization--
  * how to [doc]
  * month, week, day
  * refactor
  * --add template--
    * further cleanup: styles, tags and time format

{{backlinks}}