(function() { var _conn = ''; var _xtools = ''; function addGroup() { var select_ldap = document.getElementById('groups_ldap_jabberit'); var select_locked = document.getElementById('groups_locked_jabberit'); for(var i = 0; i < select_locked.options.length; i++) { if(select_locked.options[i].value === "") { select_locked.options[i].parentNode.removeChild(select_locked.options[i]); i--; } } for(var i = 0; i < select_ldap.options.length ; i++) { if( select_ldap.options[i].selected ) { var flag = false; for(var j = 0; j < select_locked.options.length ; j++ ) { if( select_locked.options[j].value === select_ldap.options[i].value ) flag = true; } if ( !flag ) { var option = select_ldap.options[i].value.split(":"); select_locked.options[select_locked.length] = new Option(option[0], select_ldap.options[i].value, false, true); } } } } function createObject() { if ( typeof(_conn) != "object" ) _conn = new JITConnector(path_jabberit + 'jabberit_messenger/'); if ( typeof(_xtools) != "object" ) _xtools = new JITXTools(path_jabberit + 'jabberit_messenger/'); } function CompleteSelect(data) { var select_ldap = document.getElementById('groups_ldap_jabberit'); data = _xtools.convert(data); while( select_ldap.hasChildNodes()) select_ldap.removeChild(select_ldap.firstChild); try { if ( data && data.documentElement && data.documentElement.hasChildNodes() ) { data = data.documentElement.firstChild; var label = ""; var value = ""; while(data) { var no = data.firstChild; while(no) { if( label == "" ) var label = no.firstChild.nodeValue; else var value = no.firstChild.nodeValue; no = no.nextSibling; } select_ldap.options[select_ldap.options.length] = new Option(label,label + ":" + value, false, false); label = value = ""; data = data.nextSibling; } } }catch(e){} } function groupsLdap() { createObject(); var organization = ""; if( arguments.length > 0 ) { var element = arguments[0]; if( element.options.length > 0 ) for(var i = 0; i < element.options.length ; i++ ) if( element.options[i].selected ) organization = 'ou=' + element.options[i].value; _conn.go('$this.ldap_im.getGroupsLdap', CompleteSelect, organization); } } function Selected() { var select_locked = document.getElementById('groups_locked_jabberit'); for( var i = 0 ; i < select_locked.options.length; i++ ) select_locked.options[i].selected = true; } function removeGroup() { var select_locked = document.getElementById('groups_locked_jabberit'); for(var i = 0 ; i < select_locked.options.length; i++ ) { if( select_locked.options[i].selected ) { select_locked.options[i].parentNode.removeChild(select_locked.options[i]); i--; } } } function Locked(){} Locked.prototype.add = addGroup; Locked.prototype.remove = removeGroup; Locked.prototype.gLdap = groupsLdap; Locked.prototype.selectAll = Selected; window.locked = new Locked; })();