Wiki source code of Rights Management Proposal v2

Version 29.1 by Ecaterina Valica on 2010/05/18 10:53

Show last authors
1 {{velocity}}
2 #set ($ok = $xwiki.ssx.use("Improvements.Rights2Proposal"))
3 #set ($ok = $xwiki.ssx.use("Improvements.Rights2Wiki"))
4 #set ($ok = $xwiki.ssx.use("XWiki.AdminSheet"))
5 #set ($ok = $xwiki.jsx.use("Improvements.Rights2Wiki"))
6 #set ($ok = $xwiki.ssfx.use("js/xwiki/table/livetable.css", true))
7 #set ($ok = $xwiki.ssfx.use('js/xwiki/importer/import.css', true))
8 #set ($ok = $xwiki.jsfx.use('js/xwiki/editors/dataeditors.js', true))
9 {{/velocity}}
10
11 {{box cssClass="floatinginfobox" title="**Prototypes v2**"}}
12 * [[Wiki Level>>Rights2Wiki]]
13 * [[Space Level>>Rights2Space]]
14 * [[Page Level>>Rights2Page]]
15 {{/box}}
16
17 {{toc/}}
18
19 = Remarks =
20
21 * Makes explicit the meaning of the different fields through tooltips and describing text: Inheritance, View, Comment, Edit, Admin, Programming, Register rights;
22 * The rights are grouped according to their purpose;
23 * The cascading of the rights between wiki, space and document is showed explicitly;
24
25 = Interaction Explanations =
26
27 == Changing Rights ==
28
29 * Rights selection is done through a custom select:
30 [[image:rightsSelection.png]]
31
32 {{velocity}}
33 {{html wiki="true"}}
34 <div class="clearfloats"></div>
35 <div class="rightsUI" id="xwikiobjects">
36 <div class="leftMargin column65">
37 <div class="rightSection">
38 <div class="xclass collapsable">
39 <div class="xclass-content">
40 <table summary="" id="alldocs" class="xwiki-livetable">
41 <tbody
42 <tr><td class="xwiki-livetable-display-container">
43 <table class="xwiki-livetable-display">
44 <thead class="xwiki-livetable-display-header">
45 <tr>
46 <th scope="col" class="xwiki-livetable-display-header-text sortable asc">
47 <a rel="doc.name"><label for="xwiki-livetable-alldocs-filter-1">Type</label></a></th>
48 <th scope="col" class="xwiki-livetable-display-header-text sortable asc">
49 <a rel="doc.space"><label for="xwiki-livetable-alldocs-filter-2">User</label></a></th>
50 <th scope="col" class="xwiki-livetable-display-header-text sortable asc">
51 <a rel="doc.space"><label for="xwiki-livetable-alldocs-filter-2">{{tooltip label="Register"}}Users can create new user accounts{{/tooltip}}</label></a></th>
52 </tr>
53 <tr class="xwiki-livetable-display-filters" id="">
54 <td class="xwiki-livetable-display-header-filter"><select><option value="all">all</option><option value="default">user</option><option value="default">group</option></select></td>
55 <td class="xwiki-livetable-display-header-filter"><input type="text" title="Filter for the Space column" size="${colprop.size}" name="doc.space" id="xwiki-livetable-alldocs-filter-2" value="filter..."></td>
56 <td class="xwiki-livetable-display-header-filter"><select><option value="all">all</option><option value="default">allow</option><option value="default">deny</option></select></td>
57 </tr>
58 </thead>
59 <tbody id="alldocs-display" class="xwiki-livetable-display-body">
60 <tr class="default">
61 <td class="doc_name linkview typetext"><a class="group icon" title="Group" href="#"></a></td>
62 <td class="doc_space linkspace typetext"><span class="tag-wrapper"><a href="#">Registered Users</a><a title="Remove rights for users" href="#" class="tag-tool tag-delete">X</a></span></td>
63 <td class="actions ">
64 <div class="selection">
65 <div class="rightmenu">
66 #xwikitopmenuentrystart('#' '' 'allow icon')
67 #submenuitem('#' '<img src="/xwiki/bin/download/Main/Rights/allowDefault.png" title="Default Value"/>' '')
68 #submenuitem('#' '<img src="/xwiki/bin/download/Main/Rights/allow.png" title="Allow"/>' '')
69 #submenuitem('#' '<img src="/xwiki/bin/download/Main/Rights/deny.png" title="Deny"/>' '')
70 #xwikitopmenuentryend()
71 </div>
72 </div>
73 </td>
74 </tr>
75 <tr class="default">
76 <td class="doc_name linkview typetext"><a class="group icon" title="Group" href="#"></a></td>
77 <td class="doc_space linkspace typetext"><span class="tag-wrapper"><a href="#">Unregistered Users</a><a title="Remove rights for users" href="#" class="tag-tool tag-delete">X</a></span></td>
78 <td class="actions ">
79 <div class="selection">
80 <div class="rightmenu">
81 #xwikitopmenuentrystart('#' '' 'allow icon')
82 #submenuitem('#' '<img src="/xwiki/bin/download/Main/Rights/allowDefault.png" title="Default Value"/>' '')
83 #submenuitem('#' '<img src="/xwiki/bin/download/Main/Rights/allow.png" title="Allow"/>' '')
84 #submenuitem('#' '<img src="/xwiki/bin/download/Main/Rights/deny.png" title="Deny"/>' '')
85 #xwikitopmenuentryend()
86 </div>
87 </div>
88 </td>
89 </tr>
90 </tbody>
91 <thead class="xwiki-livetable-display-header">
92 <tr class="xwiki-livetable-display-filters" id="">
93 <td class="xwiki-livetable-display-header-filter typenumeric">
94 <span title="Add Special Space Rights" class="addCaption">Add rights to:</span>
95 </td>
96 <td class="xwiki-livetable-display-header-filter">
97 <span class="addRight">
98 <input type="text" title="Add specific user" value="user / group">
99 <input type="image" src="/xwiki/resources/icons/silk/bullet_add.gif" alt="Go" value="Go" class="button" title="Add rights to user">
100 </span>
101 </td>
102 <td class="xwiki-livetable-display-header-filter" colspan="2">
103 <span class="buttonwrapper hidden">
104 <a href="#" class="button">Save</a>
105 <span> or </span>
106 <span class="colorLink">Reset</span>
107 </span>
108 </td>
109 </tr>
110 </thead>
111 </table>
112 </td></tr>
113 </tbody>
114 </table>
115 </div>
116 </div>
117 </div>
118 </div>
119 </div>
120 <div class="clearfloats"></div>
121 {{/html}}
122 {{/velocity}}
123
124 == Adding an user ==
125
126 === Use Case 1 ===
127 * There are no rights for Registered Users:
128 [[image:addUser1.png]]
129 * The autosuggest helps me add an user:
130 [[image:addUser2.png]]
131 * The new users has only default values for his rights. "Save" and "Reset" actions appear. I need to save in order to have my changes apply to the system:
132 [[image:addUser3.png]]
133 * If I change a right value, that value is marked highlighted. Also, "Edit" right implies "View" right:
134 [[image:addUser4.png]]
135 * If I save, the rights are marked as applied:
136 [[image:addUser5.png]]
137
138 === Use Case 2 ===
139 * There are rights defined for Registered Users:
140 [[image:add2User1.png]]
141 * The added user inherits those rights:
142 [[image:add2User2.png]]
143 * We define our custom rights for that user:
144 [[image:add2User3.png]]
145
146 == Navigation ==
147 This screenshots only show the "Wiki - Space - Page" case, but the navigation can be easily extended to represent "Main Wiki - SubWiki - Space - Page".
148
149 **Wiki Level**
150 You can use the "Containing Spaces/Pages" to go down the hierarchy.
151 [[[[image:Rights2WikiNavigation.png||width="500px"]]>>http://incubator.myxwiki.org/xwiki/bin/download/Improvements/Rights2Proposal/Rights2WikiNavigation.png]]
152
153 **Page Level**
154 Right after the title "Rights Management", there is a "Inheritance Level" navigation component to go upwards the hierarchy.
155 [[[[image:Rights2Pageclosed.png||width="500px"]]>>http://incubator.myxwiki.org/xwiki/bin/download/Improvements/Rights2Proposal/Rights2Pageclosed.png]]
156
157 = Screenshots=
158 == Wiki Level ==
159 **Prototype**: [[Rights Management at Wiki Level>>Rights2Wiki]]
160 [[[[image:Rights2Wikiclosed.png||width="900px"]]>>http://incubator.myxwiki.org/xwiki/bin/download/Improvements/Rights2Proposal/Rights2Wikiclosed.png]]
161 [[[[image:Rights2Wikiopen.png||width="900px"]]>>http://incubator.myxwiki.org/xwiki/bin/download/Improvements/Rights2Proposal/Rights2Wikiopen.png]]
162
163 == Space Level ==
164 **Prototype**: [[Rights Management at Space Level>>Rights2Space]]
165 [[[[image:Rights2Spaceclosed.png||width="900px"]]>>http://incubator.myxwiki.org/xwiki/bin/download/Improvements/Rights2Proposal/Rights2Spaceclosed.png]]
166 [[[[image:Rights2Spaceopen.png||width="900px"]]>>http://incubator.myxwiki.org/xwiki/bin/download/Improvements/Rights2Proposal/Rights2Spaceopen.png]]
167
168 == Page Level ==
169 **Prototype**: [[Rights Management at Page Level>>Rights2Page]]
170 [[[[image:Rights2Pageclosed.png||width="900px"]]>>http://incubator.myxwiki.org/xwiki/bin/download/Improvements/Rights2Proposal/Rights2Pageclosed.png]]
171 [[[[image:Rights2Pageopen.png||width="900px"]]>>http://incubator.myxwiki.org/xwiki/bin/download/Improvements/Rights2Proposal/Rights2Pageopen.png]]