Changes for page Calendar Application

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

From version 13.6
edited by Vlad Merticariu
on 2011/06/22 11:29
Change comment: There is no comment for this version
To version 9.4
edited by Silvia Rusu
on 2011/06/20 13:12
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.vladm
1 +XWiki.SilviaRusu
Content
... ... @@ -44,12 +44,12 @@
44 44  Each calendar will be stored in a space. A space can only contain one calendar. Each event must be stored in its own document and should have:
45 45  
46 46  * **Name**
47 -* **Date**: User should be able to mark an event as **recurring**.
47 +* **Date**: User should be able to mark an event as **recurring**. Similarly to Google Calendar, event recurrence should be customizable
48 48  * **Location**: Link to Google Maps
49 49  * **Description**
50 50  * **Category**
51 51  * **Color**: The event will have a default color and event creators may select a different color for the new event from a given list
52 -* **Notifications**: Email notifications may be sent to the event creator and the users he selects (10 minutes, 30 minutes, 1 hour, 1 day, 1 week) The event creator can also choose to be notified via RSS about event changes.
52 +* **Notifications**: Email notifications may be sent to the event creator and the users he selects **n** minutes/hours/days/weeks before the event (n = a number the event creator fills in; minutes/hours/days/weeks are options in a drop-down). The event creator can also choose to be notified via RSS about event changes.
53 53  * **Privacy options**: Default, Private, Public
54 54  * The possibility to **add guests**. Guests can appear in the form of wiki users or email addresses. Suggestions should be available if the event creator starts typing in a user's name. Guests will be notified by email they have been invited to the event and they should be able to RSVP (confirm their presence) via email
55 55  * **Set rights for guests**. The event creator can grant users one, some or all of the following rights: modify the event, invite other guests to the event, see the guest list
... ... @@ -97,77 +97,18 @@
97 97  * **Display events by category**: users can select a category and only events from that category will be displayed in the calendar
98 98  * **Jump to a specific date**
99 99  
100 -* **Viewing events you are invited to in your calendar**: Calendar owners will have view right by default for their own calendar (space). View rights should also be granted for events he is invited to. This means having view rights on event pages that are located in other calendars (spaces). Other rights, such as edit and comment can also be granted, depending on the settings established by the the owner when creating the event.
101 -
102 102  **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)
103 103  
104 104  == Settings ==
105 105  
106 -=== General ===
107 107  
108 -* Calendar **name**
109 -* **Owner**
110 -* **Description**
111 -* **Location**
112 -
113 -
114 -* Week starts on Sunday/Monday/Saturday
115 -* Show events you have declined: Yes/No
116 -* Automatically add invitations to my calendar: Yes/No
117 -
118 -=== Privacy ===
119 -
120 -**Privacy settings for calendar**
121 -The calendar can be:
122 -
123 -* Public
124 -* Visible for specific wiki users -> Share calendar
125 -* Private
126 -
127 -**Default privacy settings for events**
128 -Events can be
129 -
130 -* Public: visible to everyone specified in the calendar settings
131 -* Private: visible only to the event creator
132 -
133 -=== Notifications ===
134 -
135 -A calendar owner may choose to receive notifications for:
136 -
137 -|=Events he is invited to |=Events he owns
138 -|(((
139 -* New invitations
140 -* Changed invitations
141 -* Canceled invitations
142 -* Invitation replies
143 -)))|(((
144 -* RSVPs from guests (attending, canceling presence)
145 -* Attachments being added
146 -* Comments being added
147 -)))
148 -
149 -In addition, **reminders** can be **sent by default to the calendar owner** via email: 10 minutes, 30 minutes, 1 hour, 1 day, 1 week
150 -
151 -== Search ==
152 -
153 -The "View event list" livetable can be used to filter events by date, location, and even to do searches within the event descriptions.
154 -
155 155  == Suggestions ==
156 156  
157 157  * Ability to print calendar
158 158  * Keyboard shortcuts
159 159  * Tips or link to documentation
160 -* Notifications by SMS could be interesting
161 161  * Gadget integration
162 162  
163 -==Further work==
164 -
165 -* Select language?
166 -* Select from different time zones?
167 -* Select date format?
168 -* Select time format?
169 -* Similarly to Google Calendar, event recurrence should be customizable
170 -
171 171  = Technicalities =
172 172  
173 173  The event-calendar part of the application will be implemented in the following way:
... ... @@ -178,36 +178,24 @@
178 178  
179 179  Event class properties:
180 180  
181 -* name (Name: text): // the title of the event//
122 +* title (Title: text): // the title of the event//
123 +* description (Description: text): // a short description of the event//
124 +* location (Location: text): // the location where the event will take place//
182 182  * startDate (Start date: date(dd/MM/yyy)): // the date when the event starts//
183 183  * startTime (Start time: static list): // the hour when the event starts//
184 184  * endDate (End date: date(dd/MM/yyyy)): // the date when the event ends//
185 185  * endTime (End time: static list): //the hour when the event ends//
186 -* allDay (All day: bool): //checkbox which indicates that startTime is 00:00 of the startDate and endTime is 00:00 of the day after endDate
187 -* repeats (Repeats: static list (daily, weekly, monthly, yearly)): // how often the event repeats //
188 -* repeatsUntil (Until: date(dd/MM/yyyy)): // the date when the recursion of the event ends//
189 -* description (Description: text): // a short description of the event//
190 -* location (Location: text): // the location where the event will take place//
191 -* category (Category: database list): // the category of the event//
192 -* color (Color: static list): // the color of the event//
193 -* privacy(Privacy: static list): // set the event to be default, public (visible to everyone) or private (visible only to the user)//
194 -* emailNotifications (Email Notifications: static list): // indicates when the reminders for the event should be sent to the creator and to the guest list//
195 -* rssNotifications (RSS Notification: bool): // indicates if the creator should receive RSS notifications //
196 -* guestList (Guest List: user list): // the list of users invited to the event, waiting for confirmation//
197 -* confirmedGuests (Attending guests: user list, disabled): // the list of users who have confirmed their attendance to the event//
198 -* declinedGuests (Non-attending guests: user list, disabled): // the list of users who have declined their attendance to the event//
199 -* guestRights (Guests can: static lists): // Indicates if the guests can Modify event, Invite other guests, View guest list //
129 +* category(Category: database list): // the category of the event//
130 +* privacySettings(Privacy: static list): // set the event to be public (visible to everyone) or private (visible only to the user)//
131 +* notifications(notifications: bool): // indicates if the notifications are activated or not//
132 +* userNotifiationList(Users to receive notifications: ?): // the list of users to be notified about the event//
200 200  
201 201  Calendar class properties:
202 202  
203 -* name (Name: text): // the name of the calendar//
136 +* title (Title: text): // the title of the calendar//
204 204  * description(Description: text): // a short description of the calendar//
205 -* privacy(Privacy: static list): // set the calendar to be public(visible to everyone), visible to specific users or private(visisble only to the user)//
206 -* shareList(Share calendar: user list): // if privacy is set to visible for specific users, this list will contain the users who can view it//
138 +* privacySettings(Privacy: static list): // set the calendar to be public(visible to everyone) or private(visisble only to the user)//
207 207  * owner(Owner: user): // the user who owns the calendar//
208 -* weekStart(Week starts on: static list): // The day when the week starts (Sunday, Monday or Saturday)//
209 -* showDeclinedEvents(Show Events you have declined: bool): // Indicates if events which have been declined should be added to the calendar//
210 -* addInvitations(Automatically add invitations to the calendar: bool): // Indicates if the events to which the user has been invited should be added to the calendar//
211 211  
212 212  Calendar class sheets:
213 213  
... ... @@ -222,5 +222,3 @@
222 222  
223 223  * title(Title: text): // the title of the category//
224 224  * description(Description: text): // a short description of the category//
225 -
226 -