From 853ced644d6984ffa7260015851646717855a6c6 Mon Sep 17 00:00:00 2001 From: Arthur Schiwon Date: Tue, 25 Feb 2014 15:41:03 +0100 Subject: [PATCH] hide Add Group when clicking away or pressing ESC --- settings/js/users/groups.js | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/settings/js/users/groups.js b/settings/js/users/groups.js index 7c8b6608f11..9f8225294b9 100644 --- a/settings/js/users/groups.js +++ b/settings/js/users/groups.js @@ -74,6 +74,11 @@ OC.Notification.showHtml(t('settings', 'deleted') + ' ' + escapeHTML(gid) + '' + t('settings', 'undo') + ''); }, + elementBelongsToAddGroup: function(el) { + return !(el !== $('#newgroup-form').get(0) + && $('#newgroup-form').find($(el)).length === 0); + }, + showGroup: function (gid) { UserList.empty(); UserList.update(gid); @@ -84,8 +89,12 @@ } }, + isAddGroupButtonVisible: function() { + return $('#newgroup-init').is(":visible"); + }, + toggleAddGroup: function(event) { - if($('#newgroup-init').is(":visible")) { + if(GroupList.isAddGroupButtonVisible()) { event.stopPropagation(); $('#newgroup-form').show(); $('#newgroup-init').hide(); @@ -149,6 +158,18 @@ $(document).ready( function () { GroupList.toggleAddGroup(e); }); + $(document).on('click keydown keyup', function(event) { + if(!GroupList.isAddGroupButtonVisible() + && !GroupList.elementBelongsToAddGroup(event.target)) { + GroupList.toggleAddGroup(); + } + // Escape + if(!GroupList.isAddGroupButtonVisible() && event.keyCode && event.keyCode === 27) { + GroupList.toggleAddGroup(); + } + }); + + // Responsible for Creating Groups. $('#newgroup-form form').submit(function (event) { event.preventDefault(); -- 2.39.5