Hide last authors
Julien Fleury 1.1 1 {{velocity output="false"}}
2 #macro (createGroupModal)
3 <div class="modal" id="createGroupModal" tabindex="-1" role="dialog"
4 aria-labelledby="createGroupModal-label" data-backdrop="static" data-keyboard="false">
5 <div class="modal-dialog" role="document">
6 <form class="modal-content xform">
7 <div class="modal-header">
8 <button type="button" class="close" data-dismiss="modal" aria-label="Close">
9 <span aria-hidden="true">&times;</span>
10 </button>
11 <div class="modal-title" id="createGroupModal-label">
12 $escapetool.xml($services.localization.render('rightsmanager.creategroup'))
13 </div>
14 </div>
15 <div class="modal-body">
16 <div class="hidden">
17 <input type="hidden" name="form_token" value="$!services.csrf.token" />
18 <input type="hidden" name="template" value="XWiki.XWikiGroupTemplate" />
19 </div>
20 <dl>
21 <dt>
22 <label for="createGroupModal-groupName" class="sr-only">
23 $escapetool.xml($services.localization.render('xe.admin.groups.name'))
24 </label>
25 </dt>
26 <dd class="form-group has-feedback">
27 <input type="text" class="form-control" id="createGroupModal-groupName" name="name" autocomplete="off"
28 placeholder="$escapetool.xml($services.localization.render('xe.admin.groups.name'))" />
29 <span class="form-control-feedback loading hidden" aria-hidden="true"></span>
30 <span class="form-control-feedback success hidden" aria-hidden="true">$services.icon.renderHTML('check')</span>
31 <span class="form-control-feedback error hidden" aria-hidden="true">$services.icon.renderHTML('cross')</span>
32 <span class="help-block hidden"></span>
33 </dd>
34 </dl>
35 </div>
36 <div class="modal-footer">
37 <button type="button" class="btn btn-default" data-dismiss="modal">
38 $escapetool.xml($services.localization.render('cancel'))
39 </button>
40 <button type="submit" class="btn btn-primary">
41 $escapetool.xml($services.localization.render('create'))
42 </button>
43 </div>
44 </form>
45 </div>
46 </div>
47 #end
48
49 #macro (editGroupModal)
50 <div class="modal" id="editGroupModal" tabindex="-1" role="dialog" aria-labelledby="editGroupModal-label"
51 data-backdrop="static" data-keyboard="false" data-liveTable="#groupstable" data-liveTableAction="edit">
52 <div class="modal-dialog" role="document">
53 <div class="modal-content">
54 <div class="modal-header">
55 <button type="button" class="close" data-dismiss="modal" aria-label="Close">
56 <span aria-hidden="true">&times;</span>
57 </button>
58 <div class="modal-title" id="editGroupModal-label">
59 $escapetool.xml($services.localization.render('xe.admin.groups.editGroup'))
60 </div>
61 </div>
62 <div class="modal-body"></div>
63 </div>
64 </div>
65 </div>
66 #end
67
68 #macro (deleteGroupModal)
69 <div class="modal" id="deleteGroupModal" tabindex="-1" role="dialog" aria-labelledby="deleteGroupModal-label"
70 data-liveTable="#groupstable" data-liveTableAction="delete">
71 <div class="modal-dialog" role="document">
72 <div class="modal-content">
73 <div class="modal-header">
74 <button type="button" class="close" data-dismiss="modal" aria-label="Close">
75 <span aria-hidden="true">&times;</span>
76 </button>
77 <div class="modal-title" id="deleteGroupModal-label">
78 $escapetool.xml($services.localization.render('xe.admin.groups.deleteGroup'))
79 </div>
80 </div>
81 <div class="modal-body">
82 #set ($message = $escapetool.xml($services.localization.render('rightsmanager.confirmdeletegroup')))
83 <p>$message.replace('__name__', '<span class="groupName"></span>')</p>
84 </div>
85 <div class="modal-footer">
86 <button type="button" class="btn btn-default" data-dismiss="modal">
87 $escapetool.xml($services.localization.render('cancel'))
88 </button>
89 <button type="submit" class="btn btn-danger" data-dismiss="modal">
90 $escapetool.xml($services.localization.render('delete'))
91 </button>
92 </div>
93 </div>
94 </div>
95 </div>
96 #end
97
98 #macro (groupScopeFilter)
99 <select name="wiki">
100 <option selected="selected" value="local">
101 $escapetool.xml($services.localization.render('xe.admin.groups.local'))
102 </option>
103 <option value="global">
104 $escapetool.xml($services.localization.render('xe.admin.groups.global'))
105 </option>
106 <option value="both">
107 $escapetool.xml($services.localization.render('xe.admin.groups.both'))
108 </option>
109 </select>
110 #end
111 {{/velocity}}
112
113 {{velocity}}
114 {{html clean="false"}}
115 #set ($discard = $xwiki.ssx.use('XWiki.AdminGroupsSheet'))
116 #set ($discard = $xwiki.jsx.use('XWiki.AdminGroupsSheet'))
117 ## The following are needed when editing a group (e.g. for adding new members).
118 #userPicker_import()
119 #set ($discard = $xwiki.ssx.use('XWiki.XWikiGroupSheet'))
120 #set ($discard = $xwiki.jsx.use('XWiki.XWikiGroupSheet'))
121 #set ($columnOptions = {
122 'name': {'type': 'text', 'html': true, 'sortable': false},
123 'members': {'filterable': false, 'sortable': false},
124 'scope': {'type': 'list', 'sortable': false},
125 '_actions': {
126 'actions': ['edit', 'delete'],
127 'labels': {
128 'delete': $services.localization.render('platform.livetable._actions.delete')
129 },
130 'filterable': false
131 }
132 })
133 #set ($columns = ['name', 'members', '_actions'])
134 #set ($liveTableOptions = {
135 'url': $doc.getURL('view', 'xpage=getgroups'),
136 'translationPrefix': 'xe.admin.groups.',
137 'outputOnlyHtml': true
138 })
139 #if (!$xcontext.isMainWiki())
140 #set ($discard = $columns.add(2, 'scope'))
141 ## We use the top filters option to show only the local groups by default because the JavaScript code from the sheet
142 ## is executed after the livetable is loaded. The JavaScript code removes the top filters and updates the scope filter
143 ## afterwards.
144 #set ($liveTableOptions.topFilters = "#groupScopeFilter")
145 #end
146 <div class="medium-avatars">
147 #livetable('groupstable' $columns $columnOptions $liveTableOptions)
148 </div>
149 <p>
150 <button type="button" class="btn btn-primary" data-toggle="modal" data-target="${escapetool.h}createGroupModal">
151 $escapetool.xml($services.localization.render('rightsmanager.creategroup'))
152 </button>
153 </p>
154 #createGroupModal
155 #editGroupModal
156 #deleteGroupModal
157 {{/html}}
158 {{/velocity}}
This wiki is hosted and managed by iXPath
Powered by XWiki 13.3 debian