imip-agent

docs/wiki/CalendarManager

1331:867279f45f02
2017-10-16 Paul Boddie Merged changes from the default branch. client-editing-simplification
     1 = Calendar Management Interface =     2      3 Since some users of the calendar system may not have a calendar program or a     4 mail program that understands calendar data, a Web-based interface is provided     5 that allows such users to inspect incoming calendar data, consult a schedule     6 that has been prepared through the work of the [[../AgentPrograms|agent programs]],     7 and to create events to be shared with others.     8      9 The management interface is deployed according to the    10 [[../WebServerIntegration|Web server integration guide]] and, if enabled, will be    11 advertised in messages sent by imip-agent to users receiving calendar-related    12 messages, with links being provided like this (subject to the configuration):    13     14 {{{    15 https://webserver.example.com/imip-manager/eventid    16 }}}    17     18 Upon following such a link, users should be asked to log in. They should then be    19 presented with the details of an event received via e-mail.    20     21 == The Calendar View ==    22     23 The root resource of the management interface shows a simple calendar view for    24 the logged-in user. The following elements are displayed:    25     26  * The name of the user, linking to a profile page    27     28  * Any requests/invitations that require attention, linking to those items in the    29  calendar    30     31  * The period being shown, along with controls to navigate forwards and backwards    32  in the calendar, and controls to show and hide empty days and busy periods    33     34  * Participants for scheduling: details of other users whose schedules are shown    35  alongside the user's own schedule    36     37  * The calendar itself, featuring events, and possibly featuring a column    38  containing requests and invitations    39     40 === Group Scheduling ===    41     42 Adding scheduling participants, specifying their e-mail address, results in a new    43 schedule column being added for each new participant in the calendar. When creating    44 an event, all scheduling participants are automatically added as attendees.    45     46 === Hiding and Showing Days ===    47     48 The calendar is divided into days, and these are divided into periods depending on    49 the nature of any events that feature in the calendar. Days for which no events are    50 recorded are hidden by default; such days can be shown if desired.    51     52 === Selecting Periods and Creating Events ===    53     54 Whole days can be chosen by selecting day headings in the calendar. Similarly,    55 individual periods can be chosen either by selecting period headings along the side    56 of the calendar or by selecting cells in the calendar. Upon selecting periods,    57 controls will appear for the creation of a new event, and if all periods are    58 deselected, such controls will disappear.    59     60 === Event Periods ===    61     62 Events appear in the calendar as filled regions, and their labels correspond to the    63 summary information defined for each event. These labels link to the event details    64 unless a request has updated the event: in which case, the request label will link    65 to the updated event details.    66     67 === Requests and Invitations ===    68     69 Requests/invitations appear alongside events in a separate column in the calendar,    70 and their label links to the details of the request (and thus updated event). Such    71 items disappear from the calendar once processed by the user.    72     73 == The User Profile ==    74     75 Each user's profile details are presented in a table mostly corresponding to the    76 system's [[../Preferences|preferences]], with the most significant settings given    77 first. Many users will probably only want to change their participation in the    78 calendar system, their name, language or time zone, at least if the defaults    79 chosen for deployment are reasonable.    80     81 The settings names correspond to the preferences as follows:    82     83 ## This is generated by the docs/tools/profile_prefs.sh script...    84     85 || '''Label''' || '''Setting''' ||    86 || Participate in the calendar system || [[../Preferences#participating|participating]] ||    87 || Your common name || [[../Preferences#CN|CN]] ||    88 || Language || [[../Preferences#LANG|LANG]] ||    89 || Time zone/regime || [[../Preferences#TZID|TZID]] ||    90 || How to present incoming calendar messages || [[../Preferences#incoming|incoming]] ||    91 || Share free/busy information || [[../Preferences#freebusy_sharing|freebusy_sharing]] ||    92 || Bundle free/busy details with messages || [[../Preferences#freebusy_bundling|freebusy_bundling]] ||    93 || Publish free/busy details via the Web || [[../Preferences#freebusy_publishing|freebusy_publishing]] ||    94 || Deliver details of received free/busy messages || [[../Preferences#freebusy_messages|freebusy_messages]] ||    95 || How to respond to messages adding events || [[../Preferences#add_method_response|add_method_response]] ||    96 || How to handle event refresh requests || [[../Preferences#event_refreshing|event_refreshing]] ||    97 || Recognise whom as a new organiser of an event? || [[../Preferences#organiser_replacement|organiser_replacement]] ||    98     99 == The Event View ==   100    101 The event view consists of the following elements:   102    103  * Basic event details: summary, start and end dates/times, and the organiser   104    105  * A list of attendees with controls to add and remove attendees, depending on   106  the role of the user   107    108  * Some controls to change or process the event   109    110 In addition, some other elements may appear in the event view:   111    112  * Periods during which the event recurs   113    114  * Counter-proposals sent by attendees to the organiser of an event, appearing   115  if the user has the organiser role, with controls to process these items   116    117  * Periods that conflict with the event's own periods   118    119 === Organiser and Attendee Roles ===   120    121 Changes can be made to events in both the organiser and attendee roles. As   122 organiser, any changes will incorporated into the event, and the new version   123 will be sent to attendees on choosing to update the event. As attendee,   124 changes are incorporated into counter-proposals that are sent back to the   125 organiser for approval or rejection.   126    127 === Editing Event Details ===   128    129 Only organisers can edit the core details of an event. They may add and remove   130 attendees, and they may also add and remove periods associated with the event.   131    132 The removal of existing attendees will not cause such attendees to be   133 instantly deleted from the event details. Instead, such attendees will   134 initially be marked as removed and, after editing is complete, have   135 cancellation messages sent to them informing them that their attendance is no   136 longer required.   137    138 Attendees themselves can suggest other attendees by adding them, and they may   139 also remove those suggested attendees. However, they may not remove existing   140 attendees.   141    142 Attendees can also redefine event periods, but these modifications will merely   143 be sent back to the organiser for review. Any acceptance of such changes will   144 occur if the organiser chooses to send out a revised version of the event   145 featuring those changes. Otherwise, an explicit message declining such changes   146 may be received.