Changes for page Calendar Application

Last modified by Ecaterina Valica on 2014/01/15 13:50

From version 6.2
edited by Oana Tabaranu
on 2011/06/16 17:28
Change comment: There is no comment for this version
To version 3.1
edited by Oana Tabaranu
on 2011/06/16 12:03
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,75 +1,60 @@
1 -{{toc/}}
1 +==Main objective==
2 2  
3 -= Main objective =
4 -
5 5  This application aims to allow end users to create calendars for which they can define and manage events.
6 6  
7 7  
8 -= Description =
6 +==Description==
9 9  
10 10  The functionality of the application is similar to Google Calendar.
11 11  The user defines event objects for a specific calendar and the events are visible in different views (day/week/month/year?).
12 12  
13 -= Functionality =
11 +==Technicalities==
14 14  
15 -* Add events: // 1. Button which opens a modal window, allowing the user to insert details and save || 2. Complete form on the page. The users enters all the details and, after submission, he is redirected back to the calendar in view mode//
16 -* View event list: // A page (modal window) with the list of all the events in the calendar is displayed, using LiveTable, were the user can filter and edit/delete events (if he has the right to do it, additional view to administrate events)//
17 -* Import/export: // tbd - ical feeds //
18 -* Microformats support: // tbd//
19 -* JS drag & drop on the calendar table for changing the dates/hours of the events ?: // an event can be dragged from one slot of the calendar table to another slot//
20 -* RSS notifications: // tbd//
21 -* Email notifications: // emails with information about the event are sent to the calendar creator and to the selected users (when?)//
22 -* Privacy settings on events: // events can be public or private, public events are visible to everyone, private events are visible only to the calendar creator//
23 -* Privacy settings on calendar
24 -* Display events on categories: // the viewer can select a category and only events from that category will be displayed in the calendar event//
25 -* Event details on hover: // when the user moves the mouse over an event in the calendar table details about the event (startin&ending time, location, description) are displayed//
26 -* Comment on events: // users have the ability to comment on events//
27 -* Yearly view of the calendar, where days with events in them are highlighted
28 -* Monthly view of the calendar, with links to the previous and next months
29 -* Weekly view of the calendar, with links to the previous and next weeks
30 -* Daily view of the calendar, listing all the events in that day
31 -* Have an API for accessing events
32 -* Each event must be stored in its own document
33 -* Have different calendars for each space
34 -
35 -= Technicalities =
36 -
37 37  The event-calendar part of the application will be implemented in the following way:
38 -
39 39  * 2 classes will be used: EventClass and CalendarClass
40 40  * an event represents a document with an object of EventClass attached
41 41  * a calendar represents a document with an object of CalendarClass attached. When a calendar is added, a space is also created. This space will contain the calendar document and the event documents associated with the calendar.
42 42  
43 43  Event class properties:
19 +* title (Title: text): // the title of the event
20 +* description (Description: text): // a short description of the event
21 +* location (Location: text): // the location where the event will take place
22 +* startDate (Start date: date(dd/MM/yyy)): // the date when the event starts
23 +* startTime (Start time: time? (HH/mm)): // the hour when the event starts
24 +* endDate (End date: date(dd/MM/yyyy)): // the date when the event ends
25 +* endTime (End time: time? (HH/mm)): //the hour when the event ends
26 +* calendar(Calendar: text): // the calendar to which the event belongs (its space)
27 +* category(Category: text): // the category of the event
28 +* privacySettings(Privacy Settings: text): // set the event to be public (visible to everyone) or private (visible only to the user)
29 +* emailNotifications(Email Notifications: bool): // indicates if the notifications are activated or not
30 +* userNotifiationList(Users to receive notifications: ?): // the list of users to be notified about the event
44 44  
45 -* title (Title: text): // the title of the event//
46 -* description (Description: text): // a short description of the event//
47 -* location (Location: text): // the location where the event will take place//
48 -* startDate (Start date: date(dd/MM/yyy)): // the date when the event starts//
49 -* startTime (Start time: time? (HH/mm)): // the hour when the event starts//
50 -* endDate (End date: date(dd/MM/yyyy)): // the date when the event ends//
51 -* endTime (End time: time? (HH/mm)): //the hour when the event ends//
52 -* calendar(Calendar: text): // the calendar to which the event belongs (its space)//
53 -* category(Category: text): // the category of the event//
54 -* privacySettings(Privacy Settings: text): // set the event to be public (visible to everyone) or private (visible only to the user)//
55 -* emailNotifications(Email Notifications: bool): // indicates if the notifications are activated or not//
56 -* userNotifiationList(Users to receive notifications: ?): // the list of users to be notified about the event//
57 -
58 58  Calendar class properties:
33 +* title (Title: text): // the title of the calendar
34 +* description(Description: text): // a short description of the calendar
59 59  
60 -* title (Title: text): // the title of the calendar//
61 -* description(Description: text): // a short description of the calendar//
62 -
63 63  Calendar class sheets:
64 -
65 -* CalendarViewDaySheet: // contains the display of the calendar table in "day" view//
66 -* CalendarViewWeekSheet: // contains the display of the calendar table in "week" view//
67 -* CalendarViewMonthSheet: // contains the display of the calendar table in "month" view//
37 +* CalendarViewDaySheet: // contains the display of the calendar table in "day" view
38 +* CalendarViewWeekSheet: // contains the display of the calendar table in "week" view
39 +* CalendarViewMonthSheet: // contains the display of the calendar table in "month" view
68 68  * CalendarViewYearSheet?
69 -* CalendarFormSheet: // contains the form for adding new events//
70 -* CalendarEventListSheet: // contains the list of events for the specific calendar, with edit and delete links if the user has editing rights//
41 +* CalendarFormSheet: // contains the form for adding new events
42 +* CalendarEventListSheet: // contains the list of events for the specific calendar, with edit and delete links if the user has editing rights
71 71  
72 72  Category class properties:
45 +* title(Title: text): // the title of the category
46 +* description(Description: text): // a short description of the category
73 73  
74 -* title(Title: text): // the title of the category//
75 -* description(Description: text): // a short description of the category//
48 +==Functionality==
49 +
50 +* Add events: // 1. Button which opens a modal window, allowing the user to insert details and save || 2. Complete form on the page. The users enters all the details and, after submission, he is redirected back to the calendar in view mode
51 +* View event list: // A page (modal window) with the list of all the events in the calendar is displayed, using LiveTable, were the user can filter and edit/delete events (if he has the right to do it)
52 +* Import/export: // tbd
53 +* Microformats support: // tbd
54 +* JS drag & drop on the calendar table for changing the dates/hours of the events ?: // an event can be dragged from one slot of the calendar table to another slot
55 +* RSS notifications: // tbd
56 +* Email notifications: // emails with information about the event are sent to the calendar creator and to the selected users (when?)
57 +* Privacy settings on events: // events can be public or private, public events are visible to everyone, private events are visible only to the calendar creator
58 +* Privacy settings on calendar
59 +* Display events on categories: // the viewer can select a category and only events from that category will be displayed in the calendar event
60 +* Event details on hover: // when the user moves the mouse over an event in the calendar table details about the event (startin&ending time, location, description) are displayed