Changes for page Calendar Application

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

From version 25.1
edited by Ecaterina Valica
on 2014/01/15 13:50
Change comment: Moved page to http://design.xwiki.org/xwiki/bin/view/Drafts/CalendarApplication
To version 5.1
edited by Oana Tabaranu
on 2011/06/16 12:04
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.evalica
1 +XWiki.OanaTabaranu
Content
... ... @@ -1,1 +1,63 @@
1 -{{warning}}Moved to [[design.xwiki.org:Drafts.CalendarApplication>>http://design.xwiki.org/xwiki/bin/view/Drafts/CalendarApplication]]{{/warning}}
1 +{{toc/}}
2 +
3 +=Main objective=
4 +
5 +This application aims to allow end users to create calendars for which they can define and manage events.
6 +
7 +
8 +=Description=
9 +
10 +The functionality of the application is similar to Google Calendar.
11 +The user defines event objects for a specific calendar and the events are visible in different views (day/week/month/year?).
12 +
13 +=Functionality=
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)
17 +* Import/export: // tbd
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 +
27 +=Technicalities=
28 +
29 +The event-calendar part of the application will be implemented in the following way:
30 +* 2 classes will be used: EventClass and CalendarClass
31 +* an event represents a document with an object of EventClass attached
32 +* 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.
33 +
34 +Event class properties:
35 +* title (Title: text): // the title of the event
36 +* description (Description: text): // a short description of the event
37 +* location (Location: text): // the location where the event will take place
38 +* startDate (Start date: date(dd/MM/yyy)): // the date when the event starts
39 +* startTime (Start time: time? (HH/mm)): // the hour when the event starts
40 +* endDate (End date: date(dd/MM/yyyy)): // the date when the event ends
41 +* endTime (End time: time? (HH/mm)): //the hour when the event ends
42 +* calendar(Calendar: text): // the calendar to which the event belongs (its space)
43 +* category(Category: text): // the category of the event
44 +* privacySettings(Privacy Settings: text): // set the event to be public (visible to everyone) or private (visible only to the user)
45 +* emailNotifications(Email Notifications: bool): // indicates if the notifications are activated or not
46 +* userNotifiationList(Users to receive notifications: ?): // the list of users to be notified about the event
47 +
48 +Calendar class properties:
49 +* title (Title: text): // the title of the calendar
50 +* description(Description: text): // a short description of the calendar
51 +
52 +Calendar class sheets:
53 +* CalendarViewDaySheet: // contains the display of the calendar table in "day" view
54 +* CalendarViewWeekSheet: // contains the display of the calendar table in "week" view
55 +* CalendarViewMonthSheet: // contains the display of the calendar table in "month" view
56 +* CalendarViewYearSheet?
57 +* CalendarFormSheet: // contains the form for adding new events
58 +* CalendarEventListSheet: // contains the list of events for the specific calendar, with edit and delete links if the user has editing rights
59 +
60 +Category class properties:
61 +* title(Title: text): // the title of the category
62 +* description(Description: text): // a short description of the category
63 +
actions.jpg
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.evalica
Size
... ... @@ -1,1 +1,0 @@
1 -70.2 KB
Content
addMenu.jpg
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.evalica
Size
... ... @@ -1,1 +1,0 @@
1 -18.1 KB
Content
eventFields.jpg
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.evalica
Size
... ... @@ -1,1 +1,0 @@
1 -73.9 KB
Content
monthView.jpg
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.evalica
Size
... ... @@ -1,1 +1,0 @@
1 -87.5 KB
Content
weekView.jpg
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.evalica
Size
... ... @@ -1,1 +1,0 @@
1 -62.2 KB
Content
yearView.jpg
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.evalica
Size
... ... @@ -1,1 +1,0 @@
1 -75.8 KB
Content
XWiki.XWikiComments[0]
Date
... ... @@ -1,1 +1,0 @@
1 -2011-06-22 11:59:17.0
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.evalica
Comment
... ... @@ -1,3 +1,0 @@
1 -I don't think we will need a livetable to list all the events since you can see/delete/edit all events in the year/month/week views. The calendar events are much powerful when they are in a timeline than seeing them in a list.
2 -
3 -Also I don't think is necessary the concept of categories when you can have multiple calendars. Right now in Google Calendar you can create multiple calendars and attribute each calendar a goal (have a personal one, a xwiki one, a birthday, etc). In this use case the concept of categories is replaced by multiple calendars.
XWiki.XWikiComments[1]
Date
... ... @@ -1,1 +1,0 @@
1 -2011-06-22 12:35:20.0
Author
... ... @@ -1,1 +1,0 @@
1 -xwiki:XWiki.Enygma
Reply To
... ... @@ -1,1 +1,0 @@
1 -0
Comment
... ... @@ -1,7 +1,0 @@
1 -I agree with this.
2 -
3 -We should have a 2 views:
4 -1. Individual calendar view, that should be available on each calendar's space WebHome
5 -2. Aggregated calendar view for all the calendars and events that are visible to the current user. This could be a new tab in the user's profile (harder for an application to extend right now) or, alternatively, in the Calendar application's space WebHome (easier and makes the Calendar application space useful).
6 -
7 -The event livetable might be useful for an 'advanced search' functionality, allowing to filter events nicely.