Mercurial > kallithea
comparison rhodecode/templates/admin/users/user_edit.html @ 895:62c04c5cc971 beta
Added some more details into user edit permissions view
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Wed, 29 Dec 2010 17:50:47 +0100 |
parents | 79f42866bcbb |
children | b232a36cc51f |
comparison
equal
deleted
inserted
replaced
894:1fed3c9161bb | 895:62c04c5cc971 |
---|---|
111 <div class="box box-right"> | 111 <div class="box box-right"> |
112 <!-- box / title --> | 112 <!-- box / title --> |
113 <div class="title"> | 113 <div class="title"> |
114 <h5>${_('Permissions')}</h5> | 114 <h5>${_('Permissions')}</h5> |
115 </div> | 115 </div> |
116 <div class="table"> | 116 <form id="map_form" method="post" action="{%url update_permissions %}"> |
117 Permissions settings goes here ! | 117 <div class="form"> |
118 </div> | 118 <div class="fields"> |
119 | |
120 | |
121 | |
122 <table> | |
123 <tr> | |
124 <td class="label">${_('Permissions')}:</td> | |
125 <td> | |
126 <div> | |
127 <div style="float:left"> | |
128 <div class="text">${_('Granted permissions')}</div> | |
129 ${h.select('granted_permissions',[],c.granted_permissions,multiple=True,size=8,style="min-width:210px")} | |
130 </div> | |
131 <div style="float:left;width:20px;padding-top:50px"> | |
132 <img alt="add" id="add_element" | |
133 style="padding:2px;cursor:pointer" | |
134 src="/images/icons/arrow_left.png"> | |
135 <br /> | |
136 <img alt="remove" id="remove_element" | |
137 style="padding:2px;cursor:pointer" | |
138 src="/images/icons/arrow_right.png"> | |
139 </div> | |
140 <div style="float:left"> | |
141 <div class="text">${_('Available permissions')}</div> | |
142 ${h.select('available_permissions',[],c.available_permissions,multiple=True,size=8,style="min-width:210px")} | |
143 </div> | |
144 </div> | |
145 </td> | |
146 </tr> | |
147 | |
148 </table> | |
149 <div class="buttons"> | |
150 ${h.submit('Save','Save',class_="ui-button")} | |
151 </div> | |
152 </div> | |
153 </div> | |
154 </form> | |
155 | |
156 | |
157 <script type="text/javascript"> | |
158 YAHOO.util.Event.onDOMReady(function(){ | |
159 | |
160 var D = YAHOO.util.Dom; | |
161 var E = YAHOO.util.Event; | |
162 | |
163 //temp container for storage. | |
164 var cache = new Array(); | |
165 var c = D.get('id_granted_permissions'); | |
166 | |
167 //get only selected options for further fullfilment | |
168 for(var i = 0;node =c.options[i];i++){ | |
169 if(node.selected){ | |
170 //push selected to my temp storage left overs :) | |
171 cache.push(node); | |
172 } | |
173 } | |
174 | |
175 //clear select | |
176 c.options.length = 0; | |
177 | |
178 //fill it with remembered options | |
179 for(var i = 0;node = cache[i];i++){ | |
180 c.options[i]=new Option(node.text, node.value, false, false); | |
181 } | |
182 | |
183 function target_callback(e){ | |
184 window.location='/admin/t4?g='+e.target.value; | |
185 } | |
186 | |
187 function prompts_action_callback(e){ | |
188 | |
189 var choosen = D.get('id_granted_permissions'); | |
190 var availible = D.get('id_available_permissions'); | |
191 | |
192 if (this.id=='add_element'){ | |
193 for(var i=0; node = availible.options[i];i++){ | |
194 if(node.selected){ | |
195 choosen.appendChild(new Option(node.text, node.value, false, false)); | |
196 } | |
197 } | |
198 } | |
199 else if (this.id=='remove_element'){ | |
200 | |
201 //temp container for storage. | |
202 cache = new Array(); | |
203 | |
204 for(var i = 0;node = choosen.options[i];i++){ | |
205 if(!node.selected){ | |
206 //push left overs :) | |
207 cache.push(node); | |
208 } | |
209 } | |
210 //clear select | |
211 choosen.options.length = 0; | |
212 for(var i = 0;node = cache[i];i++){ | |
213 choosen.options[i]=new Option(node.text, node.value, false, false); | |
214 } | |
215 } | |
216 else{ | |
217 | |
218 } | |
219 } | |
220 | |
221 E.addListener('id_groups','change',target_callback); | |
222 | |
223 E.addListener(['add_element','remove_element'],'click',prompts_action_callback) | |
224 | |
225 E.addListener('map_form','submit',function(){ | |
226 var choosen = D.get('id_granted_permissions'); | |
227 for (var i = 0; i < choosen.options.length; i++) { | |
228 choosen.options[i].selected = 'selected'; | |
229 } | |
230 }) | |
231 }); | |
232 </script> | |
119 </div> | 233 </div> |
120 </%def> | 234 </%def> |