diff -r 000000000000 -r 3906ca745819 packages/ssoinabox-webui/root/usr/local/share/ssoinabox/htdocs/res/group-create-form.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/packages/ssoinabox-webui/root/usr/local/share/ssoinabox/htdocs/res/group-create-form.js Tue Jan 08 23:13:29 2013 -0500 @@ -0,0 +1,92 @@ +$(function() + { + $('.show-tooltip').tooltip(); + window.userList = []; + for ( var i in users ) + { + window.userList.push(i); + } + + $('#groupMemberAdder').typeahead({ + source: window.userList + }).bind('keyup', function(e) + { + if ( e.keyCode != 13 ) + return; + + // user doesn't exist + if ( typeof(window.users[$(this).val()]) != 'object' ) + return; + + $(this).attr('disabled', 'disabled'); + + var gid = $('.put-members-here').data('gid'); + var uid = $(this).val(); + var me = this; + + $.get('/ajax.php?op=addUserToGroup&gid=' + gid + '&uid=' + uid, function(response) + { + $(me).attr('disabled', false).val(''); + + if ( !response ) + return; + + drawGroupMember(gid, uid); + }, 'json'); + }); + + $('#groupCreateForm').bind('shown', function() + { + $('input[name="cn"]', this).focus(); + }); + + $(document.forms.groupCreateForm.cn).bind('keyup', function() + { + if ( (/^[a-z][a-z0-9]{2,31}$/).test($(this).val()) ) + { + $(this).parents('div.control-group').removeClass('error').addClass('success'); + } + else + { + $(this).parents('div.control-group').removeClass('success').addClass('error'); + } + }); + }); + + +function viewGroup(gid) +{ + void(gid); + $.get('/ajax.php?op=getGroup&gid=' + gid, function(response) + { + $('.put-members-here').empty().data('gid', gid); + for ( var i = 0; i < response.memberUid.length; i++ ) + { + drawGroupMember(response.cn, response.memberUid[i]); + } + $('#groupViewModal').modal('show'); + }, 'json'); +} + +function drawGroupMember(gid, uid) +{ + $('') + .append('' + uid + '') + .append('' + users[uid].cn + '') + .append('') + .prependTo('.put-members-here'); +} + +function removeUserFromGroup(a, gid, uid) +{ + void(a); + $.get('/ajax?op=removeUserFromGroup&gid=' + gid + '&uid=' + uid, function(response) + { + if ( response ) + { + $(a).parents('tr').remove(); + } + }, 'json'); +} + +