General Actions:
Log-in
Wiki:
L3D's Wiki
▼
:
Document Index
»
Space:
XWiki
▼
:
Document Index
»
Page:
XWikiGroupSheet
Search
Page Actions:
Export
▼
:
Export as PDF
Export as RTF
Export as HTML
More actions
▼
:
Print preview
View Source
Welcome to your wiki
»
XWiki Space
»
Data types
»
XWiki Group Class
»
XWikiGroupSheet
Wiki source code of
XWikiGroupSheet
Last modified by
Administrator
on 2011/03/02 17:34
Content
·
Comments
(0)
·
Attachments
(0)
·
History
·
Information
Hide line numbers
1: {{velocity output="false"}} 2: #set($mainwk = $xcontext.isMainWiki()) 3: $xwiki.jsfx.use('js/xwiki/usersandgroups/usersandgroups.js', true) 4: $xwiki.ssfx.use('js/xwiki/usersandgroups/usersandgroups.css') 5: $xwiki.jsfx.use('js/xwiki/table/livetable.js', true) 6: $xwiki.ssfx.use('js/xwiki/table/livetable.css', true) 7: #set($groupDoc = $doc) 8: #if($doc.fullName == 'Main.UserDirectory') 9: #set($groupDoc = $xwiki.getDocument('XWiki.XWikiAllGroup')) 10: #end 11: #macro(hasEditGroupRight) 12: #set($hasEditGroupRight = false) 13: #if($hasAdmin && $doc.getObject('XWiki.XWikiGroups', false)) 14: #set($hasEditGroupRight = true) 15: #end 16: #end 17: #hasEditGroupRight() 18: ## 19: ## 20: {{/velocity}} 21: 22: {{velocity}} 23: #if($xcontext.action == 'inline' && $hasEditGroupRight) 24: {{html}} 25: <div id="addNewMember"> 26: <table> 27: <tr> 28: <td class="addlabel">$msg.get('xe.admin.groups.addUser') 29: #if(!$mainwk) 30: </td> 31: <td><select name="wiki" onchange="changeWiki(this);"> 32: <option value="local" selected="selected">$msg.get('xe.admin.local')</option> 33: <option value="global">$msg.get('xe.admin.global')</option> 34: </select> 35: </td> 36: #else 37: <input type="hidden" name="wiki" value="local" /></td> 38: #end 39: <td> 40: <input id="userSuggest" type="text" size="30" name="newMember" autocomplete="off" /> 41: </td> 42: <td> 43: <input type="button" id="addNewUser" class="button" value="$msg.get('xe.admin.groups.addUser.submit')" /> 44: </td> 45: </tr> 46: <tr> 47: <td class="addlabel">$msg.get('xe.admin.groups.addGroup') 48: #if(!$mainwk) 49: </td> 50: <td><select name="wiki" onchange="changeWiki(this);"> 51: <option value="local" selected="selected">$msg.get('xe.admin.local')</option> 52: <option value="global">$msg.get('xe.admin.global')</option> 53: </select> 54: </td> 55: #else 56: <input type="hidden" name="wiki" value="local" /></td> 57: #end 58: <td> 59: <input id="groupSuggest" type="text" size="30" name="newMember" autocomplete="off" /> 60: </td> 61: <td> 62: <input type="button" id="addNewGroup" class="button" value="$msg.get('xe.admin.groups.addGroup.submit')" /> 63: </td> 64: </tr> 65: <tr><td colspan="3" id="errMsg"></td></tr> 66: </table> 67: </div> 68: ## 69: ## 70: <script type="text/javascript"> 71: // <![CDATA[ 72: if (typeof XWiki == "undefined") { 73: var XWiki = {}; 74: } 75: Object.extend(XWiki, { 76: groupmanager : { 77: /* 78: ** Initialize Group Manager javascript widgets (called on document load). 79: */ 80: userSuggest: null, 81: 82: groupSuggest: null, 83: 84: init: function() { 85: if (XWiki.contextaction != 'view') { 86: this.initSuggestWidget(); 87: this.initAddNewMemberWidget(); 88: } 89: }, 90: initSuggestWidget: function() { 91: if ($('userSuggest')) { 92: $('userSuggest').observe('focus', this.createSuggest.bind(this, $('userSuggest'), 'user', true)); 93: } 94: if ($('groupSuggest')) { 95: $('groupSuggest').observe('focus', this.createSuggest.bind(this, $('groupSuggest'), 'group', false)); 96: } 97: }, 98: initAddNewMemberWidget: function() { 99: if ($('addNewUser')) { 100: $('addNewUser').observe('click', this.addNewMember.bind(this, 'user', $('userSuggest'))); 101: } 102: if ($('addNewGroup')) { 103: $('addNewGroup').observe('click', this.addNewMember.bind(this, 'group', $('groupSuggest'))); 104: } 105: }, 106: createSuggest: function(input, uorg, suggestObj) { 107: // Clear the errors 108: $('errMsg').innerHTML = ""; 109: suggesturl = "${doc.getURL('view', 'xpage=uorgsuggest&classname=XWiki.XWikiUsers&wiki=local')}"; 110: 111: if (uorg == "user") { 112: suggesturl += "&uorg=user&"; 113: icon = "$xwiki.getSkinFile('icons/silk/user.gif')"; 114: } else { 115: suggesturl += "&uorg=group&"; 116: icon = "$xwiki.getSkinFile('icons/silk/group.gif')"; 117: } 118: return new XWiki.widgets.Suggest(input, { script: suggesturl, varname:'input', icon:icon }); 119: }, 120: addNewMember: function(uorg, input) { 121: if (input) { 122: var url = "${doc.getURL()}?xpage=adduorg&uorg=" + uorg + "&name=" + input.value; 123: new Ajax.Request(url, { 124: method: 'get', 125: onSuccess: function(transport) { 126: $('userSuggest').value = ""; 127: $('groupSuggest').value = ""; 128: var nr = parseInt(transport.responseText); 129: if (nr == 0) { 130: if (uorg == "user") { 131: $('errMsg').innerHTML = "$msg.get('xe.admin.groups.addUser.duplicate')"; 132: } else { 133: $('errMsg').innerHTML = "$msg.get('xe.admin.groups.addGroup.duplicate')"; 134: } 135: } else { 136: var end = editgrouptable.limit; 137: var start = editgrouptable.lastOffset; 138: editgrouptable.clearCache(); 139: if (start < 1) { 140: start = 1; 141: } 142: editgrouptable.getRows(start, end, start, end); 143: } 144: } 145: }); 146: } 147: } 148: } 149: }); 150: XWiki.groupmanager.init(); 151: // ]]> 152: </script> 153: {{/html}}#end 154: #set($columnOptions = { 155: "member" : {'link': 'auto', 'type': 'text'}, 156: '_avatar' : { 'type' : 'none', 'link' : 'field', 'html' : 'true', 'sortable' : false }, 157: "_actions" : { 158: 'actions': ['delete'], 159: 'actionCallbacks': {'delete': 'table.deleteRow(i);'}, 160: 'ajaxActions': {'delete': true} 161: } 162: }) 163: #if($hasAdmin && $xcontext.action == 'inline' && $hasEditGroupRight) 164: #set($columns = ['_avatar', 'member', '_actions']) 165: #else 166: #set($columns = ['_avatar', 'member']) 167: #end 168: #livetable('groupusers', $columns, $columnOptions, {'url' : "${groupDoc.getURL('view', 'xpage=getgroupmembers')}", 'translationPrefix' : 'xe.admin.groups.', 'javascriptName' : 'editgrouptable'}) 169: {{/velocity}}
Quick Links
L3D Calendar
Wiki Dashboard
Document Index
Blog
Sandbox