diff --git a/public/css/style.less b/public/css/style.less index 350deb5391..0c950bc15d 100644 --- a/public/css/style.less +++ b/public/css/style.less @@ -262,6 +262,9 @@ footer.footer { word-wrap: break-word; } +#users-container { + padding: 0; +} .users-box{ display: inline-block; margin-top: 20px; diff --git a/public/src/forum/users.js b/public/src/forum/users.js index 1812f78faa..2592b800fa 100644 --- a/public/src/forum/users.js +++ b/public/src/forum/users.js @@ -8,6 +8,8 @@ parts = url.split('/'), active = parts[parts.length-1]; + var lastSearch = null; + app.addCommasToNumbers(); jQuery('.nav-pills li').removeClass('active'); @@ -27,22 +29,30 @@ timeoutId = setTimeout(function() { var username = $('#search-user').val(); - jQuery('.icon-spinner').removeClass('none'); - socket.emit('api:admin.user.search', username); + if (username == '') { + jQuery('#user-notfound-notify').html(''); + jQuery('#user-notfound-notify').parent().removeClass('btn-warning label-warning btn-success label-success'); + return; + } + + if (lastSearch === username) return; + lastSearch = username; + + jQuery('#user-notfound-notify').html(''); + + setTimeout(function() { + socket.emit('api:admin.user.search', username); + }, 500); //replace this with global throttling function/constant + }, 250); }); socket.removeAllListeners('api:admin.user.search'); socket.on('api:admin.user.search', function(data) { - - jQuery('.icon-spinner').addClass('none'); - if(data === null) { - $('#user-notfound-notify').html('You need to be logged in to search!') - .show() - .addClass('label-danger') - .removeClass('label-success'); + $('#user-notfound-notify').html('You need to be logged in to search!'); + $('#user-notfound-notify').parent().addClass('btn-warning label-warning'); return; } @@ -55,16 +65,12 @@ if(data && data.length === 0) { - $('#user-notfound-notify').html('User not found!') - .show() - .addClass('label-danger') - .removeClass('label-success'); + $('#user-notfound-notify').html('User not found!'); + $('#user-notfound-notify').parent().addClass('btn-warning label-warning'); } else { - $('#user-notfound-notify').html(data.length + ' user'+(data.length>1?'s':'') + ' found!') - .show() - .addClass('label-success') - .removeClass('label-danger'); + $('#user-notfound-notify').html(data.length + ' user'+(data.length>1?'s':'') + ' found!'); + $('#user-notfound-notify').parent().addClass('btn-success label-success'); } }); diff --git a/public/templates/users.tpl b/public/templates/users.tpl index 11ee202132..8d1e8519ca 100644 --- a/public/templates/users.tpl +++ b/public/templates/users.tpl @@ -7,11 +7,15 @@
  • Search
  • - +