Code source wiki de MeetingClassSheet
Modifié par Vincent Massol le 2011/08/13 10:33
Masquer les derniers auteurs
author | version | line-number | content |
---|---|---|---|
![]() |
2.8 | 1 | {{include document="MMCode.MeetingManagerMacros" /}} |
2 | |||
![]() |
1.1 | 3 | {{velocity filter="none"}} |
4 | {{html clean="false" wiki="true"}} | ||
5 | ## Configuration | ||
6 | ## sets if we want to limit possibilities depending on the meeting state | ||
7 | #set($isWorkflowEnforced = false) | ||
8 | ## sets if participants can also edit everything | ||
9 | #set($isRightsEnforced = false) | ||
10 | ## | ||
11 | ## -------------------------------------------------------------------------------------- | ||
12 | ## SX includes | ||
13 | ## -------------------------------------------------------------------------------------- | ||
14 | #set($ok = $xwiki.jsx.use("MMCode.MeetingManager")) | ||
15 | #set($ok = $xwiki.ssx.use("MMCode.MeetingManager")) | ||
16 | ##set($ok = $xwiki.jsx.use("MMCode.MeetingEmails")) | ||
17 | ##set($ok = $xwiki.ssx.use("MMCode.MeetingEmails")) | ||
18 | #set($ok = $xwiki.jsx.use("XWiki.ModalBox")) | ||
19 | #set($ok = $xwiki.ssx.use("XWiki.ModalBox")) | ||
20 | #set($ok = $xwiki.jsx.use("XWiki.LiveValidation")) | ||
21 | #set($ok = $xwiki.ssx.use("XWiki.LiveValidation")) | ||
22 | #set($ok = $xwiki.jsfx.use("js/xwiki/usersandgroups/usersandgroups.js", true)) | ||
23 | #set($ok = $xwiki.jsfx.use("js/xwiki/lightbox/lightbox.js")) | ||
24 | ## -------------------------------------------------------------------------------------- | ||
25 | ## Header. | ||
26 | ## -------------------------------------------------------------------------------------- | ||
27 | <h1 class="meetingh1"> | ||
28 | $msg.get('meetings.meeting.sheettitle') | ||
29 | <span> | ||
30 | $msg.get('meetings.meeting.status') : | ||
31 | </span> | ||
32 | </h1> | ||
33 | #set($meeting = $doc.getObject("MMCode.MeetingClass")) | ||
34 | #if(!$meeting) #warning("$msg.get('meetings.no_meeting')") | ||
35 | #else | ||
36 | ## -------------------------------------------------------------------------------------- | ||
37 | ## Meeting vars. See macros. | ||
38 | ## -------------------------------------------------------------------------------------- | ||
39 | #set($isManager = false) | ||
40 | #if($isRightsEnforced) | ||
41 | #set($isManager = $doc.hasAccessLevel("edit")) | ||
42 | #else | ||
43 | #isManager($doc, $isManager) | ||
44 | #end | ||
45 | #set($isParticipant = false) | ||
46 | #isParticipant($doc, $isParticipant) | ||
47 | #set($isCyclic = false) | ||
48 | #isCyclic($doc, $isCyclic) | ||
49 | #set($meetingDoc = $doc) ## Will be used by included documents. | ||
50 | #set($participants = $meetingDoc.getObjects("MMCode.MeetingParticipantClass")) | ||
51 | #set($attempts = $meetingDoc.getObjects("MMCode.MeetingDateAttemptClass")) | ||
52 | ## -------------------------------------------------------------------------------------- | ||
53 | ## Layout vars | ||
54 | ## -------------------------------------------------------------------------------------- | ||
55 | #set ($showinformation = "no") | ||
56 | #if(!$isManager) #set ($showhistory = "no") #end | ||
57 | ##set ($showcomments = "no") | ||
58 | ## -------------------------------------------------------------------------------------- | ||
59 | ## Display possible transition action button (start, close, make cyclic, etc.) | ||
60 | ## -------------------------------------------------------------------------------------- | ||
61 | #set($status = "$!meeting.getProperty('status').value") | ||
62 | #if($status == "prepared" && ($isManager || $isParticipant)) | ||
63 | <div id="startmeeting" class="changestep">$msg.get('meetings.meeting.startmeeting')</div> | ||
64 | #end | ||
65 | #if($status == "started" && ($isManager || $isParticipant)) | ||
66 | <div id="endmeeting" class="changestep">$msg.get('meetings.meeting.endmeeting')</div> | ||
67 | #end | ||
68 | #if($status == "finished" && !$isCyclic && ($isManager || $isParticipant)) | ||
69 | <div id="makecycle" class="changestep">$msg.get('meetings.meeting.makecycle')</div> | ||
70 | #end | ||
71 | ## -------------------------------------------------------------------------------------- | ||
72 | ## Meeting Section: Infos | ||
73 | ## -------------------------------------------------------------------------------------- | ||
74 | <div id="meetingInfos"#if($isCyclic) class="cyclic"#end> | ||
75 | #if($isManager && ("$!status" != "finished" && "$!status" != "started") || !$isWorkflowEnforced) | ||
76 | <div id="editmeetinginfos">$msg.get('meetings.meeting.infos.edit')</div> | ||
77 | #end | ||
78 | <div id="meetinginfoscontent">{{include document="MMCode.MeetingInfos"/}}</div> | ||
79 | </div> | ||
80 | ## -------------------------------------------------------------------------------------- | ||
81 | ## Meeting Section: Date / Vote | ||
82 | ## -------------------------------------------------------------------------------------- | ||
83 | <a name="date"></a> | ||
84 | #if(($status != "started" && $status != "finished") || !$isWorkflowEnforced) | ||
85 | #set($isDateDefined = false) | ||
86 | #isDateDefined($doc, $isDateDefined) | ||
87 | <div class="clearfloat"></div> | ||
88 | #if(!$isDateDefined && ("$status" == "none" || "$status"=="voteopen" )) | ||
89 | #if($doc.getObject("MMCode.MeetingDateAttemptClass")) | ||
90 | {{include document="MMCode.MeetingDateVote"/}} | ||
91 | #if($isManager) | ||
92 | <div class="hidden" id="meetingdatefixed"> | ||
93 | {{include document="MMCode.MeetingDateSelection"/}} | ||
94 | #help("$msg.get('meetings.meeting.vote.finishvotehelp')") | ||
95 | </div> | ||
96 | #end | ||
97 | #else | ||
98 | #if($isManager) | ||
99 | <div id="meetingdatetype"> | ||
100 | <h2 class="meetingh2">$msg.get('meetings.meeting.date')</h2> | ||
101 | <div class="ismanager"> | ||
102 | $msg.get('meetings.meeting.date.choosetype') | ||
103 | <div> | ||
104 | <input type="radio" id="meetingdatetypefixed" selected="" /> $msg.get("meetings.meeting.date.fixed") | ||
105 | </div> | ||
106 | <div> | ||
107 | <input type="radio" id="meetingdatetypevote" selected="" /> $msg.get("meetings.meeting.date.vote") | ||
108 | </div> | ||
109 | </div> | ||
110 | </div> | ||
111 | <div class="hidden" id="meetingdatevote2">{{include document="MMCode.MeetingDateVote"/}}</div> | ||
112 | <div class="hidden" id="meetingdatefixed">{{include document="MMCode.MeetingDateSelection"/}}</div> | ||
113 | #end | ||
114 | #end | ||
115 | #else | ||
116 | {{include document="MMCode.MeetingDateSelection"/}} | ||
117 | #if(!$isDateDefined) #warning("$msg.get('meetings.meeting.date.noinformation')") #end | ||
118 | #end | ||
119 | #end | ||
120 | ## -------------------------------------------------------------------------------------- | ||
121 | ## Meeting Section: Participants | ||
122 | ## -------------------------------------------------------------------------------------- | ||
123 | <a name="participants"></a> | ||
124 | <h2 class="meetingh2">$msg.get('meetings.meeting.participants')</h2> | ||
125 | <div id="participants"> | ||
126 | #if($isManager && ("$!status" != "finished" || !$isWorkflowEnforced)) | ||
127 | <div id="addparticipant">$msg.get('meetings.meeting.participants.addparticipant')</div> | ||
128 | <div class="ismanager hidden" id="addparticipantinner"> | ||
129 | <strong>$msg.get('meetings.meeting.participants.searchparticipant')</strong> | ||
130 | <input type="text" name="participant-suggest" id="participant-suggest" autocomplete="off" size="50"/> | ||
131 | <input type="hidden" name="participant-input" id="participant-input" /> | ||
132 | <ul id="participant-items" "pagepicker-list"> | ||
133 | </ul> | ||
134 | <input id="participantaddnotif" type="checkbox" checked />$msg.get('meetings.meeting.participants.sendemail') | ||
135 | <span class="buttonwrapper"> | ||
136 | <button id="participantadd" disabled="disabled">$msg.get('meetings.meeting.participants.add')</button> | ||
137 | </span> | ||
138 | </div> | ||
139 | #end | ||
140 | <div id="participantscontent"> | ||
141 | #if(!$participants || $participants.size() == 0) | ||
142 | <div id="noparticipant">#warning("$msg.get('meetings.meeting.participants.noparticipant')")</div> | ||
143 | #end | ||
144 | <ul class="xlist participants left" id="participantsleft"> | ||
145 | #if($participants && $participants.size() > 0) | ||
146 | #foreach($p in $participants) | ||
147 | #participantitem($p $isManager $status) | ||
148 | #if($velocityCount == $mathtool.round($mathtool.div($participants.size(),2))|| $participants.size() <= 1) | ||
149 | </ul> | ||
150 | <ul class="xlist participants right" id="participantsright"> | ||
151 | #end | ||
152 | #end | ||
153 | #else | ||
154 | </ul> | ||
155 | <ul class="xlist participants right" id="participantsright"> | ||
156 | #end | ||
157 | </ul> | ||
158 | <div class="clearfloat"></div> | ||
159 | </div> | ||
160 | </div> | ||
161 | ## -------------------------------------------------------------------------------------- | ||
162 | ## Meeting Section: Minutes | ||
163 | ## -------------------------------------------------------------------------------------- | ||
164 | #if($status == "started" || $status == "finished" || !$isWorkflowEnforced) | ||
165 | {{include document="MMCode.MeetingMinutes"/}} | ||
166 | #if(($status == "started") && ($isManager || $isParticipant)) | ||
167 | <div class="meetingminutesbutton"> | ||
168 | <div id="endmeetingbottom" class="changestep">$msg.get('meetings.meeting.endmeeting')</div> | ||
169 | </div> | ||
170 | #end | ||
171 | #end | ||
172 | #end | ||
173 | {{/html}} | ||
174 | {{/velocity}} |