]> err.no Git - scalable-opengroupware.org/blob - UI/Templates/MailPartViewers/UIxMailPartICalViewer.wox
git-svn-id: http://svn.opengroupware.org/SOGo/trunk@900 d1b88da0-ebda-0310-925b-ed51d...
[scalable-opengroupware.org] / UI / Templates / MailPartViewers / UIxMailPartICalViewer.wox
1 <?xml version="1.0" standalone="yes"?>
2 <div xmlns="http://www.w3.org/1999/xhtml"
3      xmlns:var="http://www.skyrix.com/od/binding"
4      xmlns:label="OGo:label"
5      xmlns:const="http://www.skyrix.com/od/constant"
6      xmlns:rsrc="OGo:url"
7      class="linked_attachment_frame"
8 >
9   <!-- TODO: add iMIP actions -->
10
11   <fieldset>
12     <legend>
13       <var:string label:value="Appointment"/>:
14       <var:string value="inEvent.summary" /> <!-- TODO: shorted title -->
15
16       <var:if condition="isLoggedInUserTheOrganizer">
17         (<var:string label:value="organized_by_you"/>)
18       </var:if>
19       <var:if condition="isLoggedInUserAnAttendee">
20         (<var:string label:value="you_are_an_attendee"/>)
21       </var:if>
22     </legend>
23     
24     
25     <var:if condition="inCalendar.method" const:value="REQUEST">
26       <!-- sent to attendees to propose or update a meeting -->
27       <var:if condition="isLoggedInUserAnAttendee">
28         <p class="uix_ical_toolbar">
29           <a var:href="acceptLink"    label:string="do_accept"/>  |
30           <a var:href="declineLink"   label:string="do_decline"/> |
31           <a var:href="tentativeLink" label:string="do_tentative"/>
32           <var:if condition="isEventStoredInCalendar" const:negate="1">
33             | <a var:href="addToCalendarLink" label:string="do_add_to_cal" />
34           </var:if>
35         </p>
36       
37         <p>
38           <var:string label:value="Organizer" />
39           <a var:href="inEvent.organizer.email"
40             ><var:string value="organizerDisplayName" /></a>
41           <var:string label:value="request_info" />
42         </p>
43       </var:if>
44       
45       <var:if condition="isLoggedInUserAnAttendee" const:negate="1">
46         <p>
47           <var:string label:value="Organizer" />
48           <a var:href="inEvent.organizer.email"
49             ><var:string value="organizerDisplayName" /></a>
50           <var:string label:value="request_info_no_attendee" />
51         </p>
52       </var:if>
53     </var:if>
54
55     
56     <var:if condition="inCalendar.method" const:value="REPLY">
57       <!-- sent to organizer to update the status of the participant -->
58       <var:if condition="isReplySenderAnAttendee" const:negate="1">
59         <p><var:string label:value="reply_info_no_attendee" /></p>
60       </var:if>
61
62       <var:if condition="isReplySenderAnAttendee">
63         <p class="uix_ical_toolbar">
64           <a var:href="addStatusReplyLink"
65              var:_newstat="$inReplyAttendee.partStatWithDefault"
66              var:_sender="replySenderBaseEMail"
67              label:string="do_update_status"/>
68         </p>
69         
70         <!-- TODO: replies to events not in the calendar? -->
71         
72         <p>
73           Status Update:
74           <var:string label:value="$inReplyAttendee.partStatWithDefault" />,
75           was:
76           <var:string
77               label:value="$storedReplyAttendee.partStatWithDefault" />.
78         </p>
79       </var:if>
80     </var:if>
81
82     
83     <var:if condition="inCalendar.method" const:value="CANCEL">
84       <!-- sent to attendees to notify of the attendee being removed or the
85            event being deleted -->
86       <var:if condition="isEventStoredInCalendar">
87         <p class="uix_ical_toolbar">
88           <a var:href="delFromCalendarLink" label:string="do_del_from_cal"/>
89         </p>
90       </var:if>
91       
92       <p>
93         <!-- todo: if there are no attendees, the whole meeting was stopped -->
94         <var:string label:value="cancel_info_text" />
95       </p>
96     </var:if>
97
98
99     <var:if condition="inCalendar.method" const:value="ADD">
100       <!-- TODO -->
101       <p><var:string label:value="add_info_text" /></p>
102     </var:if>
103
104
105     <var:if condition="inCalendar.method" const:value="PUBLISH">
106       <!-- none-scheduling event sent to someone for adding to the calendar -->
107       <p><var:string label:value="publish_info_text" /></p>
108     </var:if>
109     
110     
111     <var:if condition="isLoggedInUserTheOrganizer">
112       <!--
113          Possible Status:
114            REPLY    => check whether it matches, if not suggest change, show
115                        comment
116            REFRESH  => add button to resent iCal
117            COUNTER  => show panel to decide on counter
118         -->
119     </var:if>
120     <var:if condition="isLoggedInUserTheOrganizer" const:negate="1">
121       <!--
122          Possible Status:
123            REQUEST => ACCEPT, TENTATIVELY, DECLINE buttons with comment field
124              - only show buttons for attendees
125            PUBLISH => just the 'add to calendar' button, rewrite organizer?
126            ADD / CANCEL
127            DECLINE-COUNTER
128         -->
129     </var:if>
130
131
132     <!-- the user comment is used in replies -->
133     <var:if condition="inEvent.userComment.isNotEmpty">
134       <div class="linked_attachment_meta" style="background-color: white;">
135         <var:string value="inEvent.userComment" const:insertBR="1" />
136       </div>
137       <br />
138     </var:if>
139
140     
141     <div class="linked_attachment_meta" style="background-color: white;">
142       <table border="0" class="linked_attachment_meta">
143         <tr>
144           <td><var:string label:value="Time"/>:</td>
145           <td>
146             <!-- TODO: we need a better viewer for that -->
147             <var:string value="startTime" formatter="dateFormatter" />
148             <var:string label:value="to" />
149             <var:string value="endTime" formatter="dateFormatter" />
150           </td>
151         </tr>
152
153         <tr>
154           <td><var:string label:value="Organizer"/>:</td>
155           <td>
156             <a var:href="authorativeEvent.organizer.email"
157                 ><var:string value="organizerDisplayName" /></a>
158           </td>
159         </tr>
160         
161         <tr>
162           <td valign="top"><var:string label:value="Attendees"/>:</td>
163           <td>
164             <var:foreach list="authorativeEvent.participants" item="attendee">
165               <a var:href="attendee.email"
166                  ><var:string value="attendee.cnForDisplay" /></a>
167               (<var:string label:value="$attendee.partStatWithDefault" />)
168               <br />
169             </var:foreach>
170           </td>
171         </tr>
172         
173         <var:if condition="inEvent.comment.isNotEmpty">
174           <tr> <!-- description in iCal -->
175             <td valign="top"><var:string label:value="Comment"/>:</td>
176             <td>
177              <var:string value="authorativeEvent.comment" const:insertBR="1" />
178             </td>
179           </tr>
180         </var:if>
181       </table>
182     </div>
183   </fieldset>
184
185 <!--
186   <var:string value="appointment" />
187   <br />
188   <br />
189   <br />
190 -->
191   <pre style="display: none;"><var:string value="flatContentAsString" /></pre>
192 </div>