Code source wiki de MeetingWebHomeSheet
Modifié par Vincent Massol le 2011/08/13 09:04
Afficher les derniers auteurs
author | version | line-number | content |
---|---|---|---|
1 | ## | ||
2 | ## Macro includes. | ||
3 | ## | ||
4 | |||
5 | #includeMacros("MMCode.MeetingManagerMacros") | ||
6 | #includeMacros("XWiki.GridExtensionMacros") | ||
7 | #macro(help $text)<div class="helpmessage">$text</div>#end | ||
8 | |||
9 | ## | ||
10 | ## SX includes. | ||
11 | ## | ||
12 | |||
13 | #set($ok = $xwiki.ssx.use("MMCode.MeetingManager")) | ||
14 | #set($ok = $xwiki.jsx.use("MMCode.MeetingManager")) | ||
15 | #set($ok = $xwiki.jsx.use("XWiki.ModalBox")) | ||
16 | #set($ok = $xwiki.ssx.use("XWiki.ModalBox")) | ||
17 | #set($ok = $xwiki.jsfx.use("js/xwiki/lightbox/lightbox.js")) | ||
18 | |||
19 | |||
20 | ## | ||
21 | ## Global vars. | ||
22 | ## | ||
23 | #set($meetingSpace=$doc.space) | ||
24 | <div class="inlinebutton-container"> | ||
25 | $msg.get('meetings.dashboard.youcanalso'): | ||
26 | #if($hasedit) | ||
27 | ## | ||
28 | ## Meeting creation form. | ||
29 | ## | ||
30 | <div id="newmeetingform" class="hidden"> | ||
31 | <form action="" id="newdoc" method="post"> | ||
32 | <div> | ||
33 | <input type="hidden" name="parent" value="${meetingSpace}.WebHome" /> | ||
34 | <input type="hidden" name="template" value="MMCode.MeetingClassTemplate" /> | ||
35 | <input type="hidden" name="sheet" value="1" /> | ||
36 | <input type="hidden" name="name" class="clean" value=""/> | ||
37 | <div> | ||
38 | <div> | ||
39 | ##if($showallspaces) | ||
40 | ## $msg.get('meetings.dashboard.spacename') <select name="webname"> | ||
41 | ##foreach($space in $xwiki.spaces) | ||
42 | ## <option value="${space}">$space</option> | ||
43 | ##end | ||
44 | ## </select> | ||
45 | ##else | ||
46 | <input type="hidden" name="webname" value="$meetingSpace"/> | ||
47 | ##end | ||
48 | $msg.get('meetings.dashboard.pagename') | ||
49 | <input type="text" autocomplete="off" class="title" name="title" size="45"/> | ||
50 | <div style="align:center;"> | ||
51 | <input type="button" value="$msg.get('meetings.dashboard.createmeeting')" onclick='if (updateName(this.form.title,this.form.name)) { action="../../save/" + this.form.webname.value + "/" + this.form.name.value; this.form.submit(); }' /> | ||
52 | </div> | ||
53 | </div> | ||
54 | <div style="color:grey;padding:5px;margin-top:15px;"> | ||
55 | <div>$msg.get('meetings.dashboard.urlwillbe')</div> | ||
56 | {pre} | ||
57 | <div><span class="url">$doc.getExternalURL('view')<span></div> | ||
58 | #help("$msg.get('meetings.dashboard.pickpagenamehelp')") | ||
59 | {/pre} | ||
60 | </div> | ||
61 | <div class="clearfloats"></div> | ||
62 | </div> | ||
63 | </div> | ||
64 | </form> | ||
65 | </div> | ||
66 | <div class="inlinebutton"> | ||
67 | <span class="buttonwrapper"> | ||
68 | <button id="createnewmeeting" title="$msg.get('meetings.dashboard.createnewmeeting')" /> | ||
69 | $msg.get('meetings.dashboard.createnewmeeting') | ||
70 | </button> | ||
71 | </span> | ||
72 | </div> | ||
73 | $msg.get('meetings.dashboard.or') | ||
74 | #end | ||
75 | #if(!$meetingcyclespage) | ||
76 | #set($meetingcyclespage = "${doc.space}.MeetingCycles") | ||
77 | #end | ||
78 | <a href="$xwiki.getURL($meetingcyclespage)" | ||
79 | title="$msg.get('meetings.dashboard.gotocycles')" /> | ||
80 | $msg.get('meetings.dashboard.gotocycles')</a> | ||
81 | </div> | ||
82 | |||
83 | |||
84 | ## | ||
85 | ## Meeting grid. | ||
86 | ## | ||
87 | |||
88 | #set($collist = [ "doc.creationDate", "doc.title", "doc.creator", "date", "location", "status" ]) | ||
89 | #set($colprops = {"doc.creationDate" : {"type":"date", "link" : "view"} , | ||
90 | "doc.title" : {"type":"text", "size" : "10", "link" : "view"} , | ||
91 | "doc.creator" : {"type":"text", "size" : "10", "link" : ""} , | ||
92 | "location" : {"type" : "text", "size" : "10", "link": ""}, | ||
93 | "date" : {"type" : "text", "size" : "10", "link": "", "filterable":false}, | ||
94 | "status" : {"type" : "list", "size" : "1", "link": ""} | ||
95 | }) | ||
96 | ## id of the div, list of columns, columns properties, default column to sort for, class name | ||
97 | #if("$request.my"=="1") | ||
98 | |||
99 | <h2 class="meetinggridtitle"> $msg.get('meetings.spacehome.mynextmeetings') <span class="meetingviewswap">[$msg.get('meetings.spacehome.seeallmeetings')>$doc.fullName]</span></h2> | ||
100 | #set($className="MMCode.MeetingClass") | ||
101 | #set($collist2 = "") | ||
102 | #set($classparams = "") | ||
103 | #foreach($colname in $collist) | ||
104 | #if("$!selectedColumn" == "" && !$colname.startsWith("_")) | ||
105 | #set($selectedColumn = $colname) | ||
106 | #end | ||
107 | #if($colname != "_actions") | ||
108 | #set($collist2 = "${collist2},${colname}") | ||
109 | #set($propClassName = "") | ||
110 | #set($propClassName = $colprops.get($colname).get("class")) | ||
111 | #if($propClassName!="") | ||
112 | #set($classparams = "${classparams}&${colname}_class=${propClassName}") | ||
113 | #end | ||
114 | #end | ||
115 | #end | ||
116 | #set($collist2 = $collist2.substring(1)) | ||
117 | #set($dataurl = $xwiki.getURL("MMCode.MeetingMyResults","view","xpage=plain&outputSyntax=plain&space=${meetingSpace}&transprefix=meetings.dashboard.grid.&classname=$!{className}&collist=${collist2}${classparams}")) | ||
118 | #livetable("meetingsgrid" $collist $colprops { | ||
119 | "selectedColumn":"date", | ||
120 | "defaultOrder":"asc", | ||
121 | "translationPrefix":"meetings.dashboard.grid.", | ||
122 | "url": $dataurl, | ||
123 | "rowCount": 10, | ||
124 | "tagCloud": true | ||
125 | }) | ||
126 | #else | ||
127 | <h2 class="meetinggridtitle"> $msg.get('meetings.spacehome.seeallmeetings') <span class="meetingviewswap"><a href="$doc.getURL('view', 'my=1')">$msg.get('meetings.spacehome.seemynextmeetings')</a></span></h2> | ||
128 | <br/> | ||
129 | #if($showallspaces) | ||
130 | #livetable("meetingsgrid" $collist $colprops { | ||
131 | "selectedColumn":"doc.creationDate", | ||
132 | "defaultOrder":"desc", | ||
133 | "translationPrefix":"meetings.dashboard.grid.", | ||
134 | "className":"MMCode.MeetingClass", | ||
135 | "rowCount": 10, | ||
136 | "tagCloud": true | ||
137 | }) | ||
138 | #else | ||
139 | #set($className="MMCode.MeetingClass") | ||
140 | #set($collist2 = "") | ||
141 | #set($classparams = "") | ||
142 | #foreach($colname in $collist) | ||
143 | #if("$!selectedColumn" == "" && !$colname.startsWith("_")) | ||
144 | #set($selectedColumn = $colname) | ||
145 | #end | ||
146 | #if($colname != "_actions") | ||
147 | #set($collist2 = "${collist2},${colname}") | ||
148 | #set($propClassName = "") | ||
149 | #set($propClassName = $colprops.get($colname).get("class")) | ||
150 | #if($propClassName!="") | ||
151 | #set($classparams = "${classparams}&${colname}_class=${propClassName}") | ||
152 | #end | ||
153 | #end | ||
154 | #end | ||
155 | #set($collist2 = $collist2.substring(1)) | ||
156 | #set($dataurl = $xwiki.getURL("XWiki.LiveTableResults","view","xpage=plain&outputSyntax=plain&space=${meetingSpace}&transprefix=meetings.dashboard.grid.&classname=$!{className}&collist=${collist2}${classparams}")) | ||
157 | #livetable("meetingsgrid" $collist $colprops { | ||
158 | "selectedColumn":"doc.creationDate", | ||
159 | "defaultOrder":"desc", | ||
160 | "translationPrefix":"meetings.dashboard.grid.", | ||
161 | "className":"MMCode.MeetingClass", | ||
162 | "url": $dataurl, | ||
163 | "rowCount": 10, | ||
164 | "tagCloud": true | ||
165 | }) | ||
166 | #end | ||
167 | #end |