Changes for page Calendar Application
Last modified by Ecaterina Valica on 2014/01/15 13:50
From version 3.1
edited by Oana Tabaranu
on 2011/06/16 12:03
on 2011/06/16 12:03
Change comment:
There is no comment for this version
To version 8.1
edited by Vlad Merticariu
on 2011/06/17 10:15
on 2011/06/17 10:15
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. OanaTabaranu1 +XWiki.vladm - Content
-
... ... @@ -1,60 +1,77 @@ 1 - ==Mainobjective==1 +{{toc/}} 2 2 3 += Main objective = 4 + 3 3 This application aims to allow end users to create calendars for which they can define and manage events. 4 4 5 5 6 -= =Description==8 += Description = 7 7 8 8 The functionality of the application is similar to Google Calendar. 9 9 The user defines event objects for a specific calendar and the events are visible in different views (day/week/month/year?). 10 10 11 -= =Technicalities==13 += Functionality = 12 12 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 + 13 13 The event-calendar part of the application will be implemented in the following way: 38 + 14 14 * 2 classes will be used: EventClass and CalendarClass 15 15 * an event represents a document with an object of EventClass attached 16 16 * 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. 17 17 18 18 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 31 31 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: 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 + 32 32 Calendar class properties: 33 -* title (Title: text): // the title of the calendar 34 -* description(Description: text): // a short description of the calendar 35 35 60 +* title (Title: text): // the title of the calendar// 61 +* description(Description: text): // a short description of the calendar// 62 +* privacySettings(Privacy: static list): // set the calendar to be public(visible to everyone) or private(visisble only to the user)// 63 +* owner(Owner: user): // the user who owns the calendar// 64 + 36 36 Calendar class sheets: 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 66 + 67 +* CalendarViewDaySheet: // contains the display of the calendar table in "day" view// 68 +* CalendarViewWeekSheet: // contains the display of the calendar table in "week" view// 69 +* CalendarViewMonthSheet: // contains the display of the calendar table in "month" view// 40 40 * CalendarViewYearSheet? 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 +* CalendarFormSheet: // contains the form for adding new events// 72 +* CalendarEventListSheet: // contains the list of events for the specific calendar, with edit and delete links if the user has editing rights// 43 43 44 44 Category class properties: 45 -* title(Title: text): // the title of the category 46 -* description(Description: text): // a short description of the category 47 47 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 76 +* title(Title: text): // the title of the category// 77 +* description(Description: text): // a short description of the category//