diff options
author | Lin Jen-Shin <godfat@godfat.org> | 2016-07-26 14:51:52 +0800 |
---|---|---|
committer | Lin Jen-Shin <godfat@godfat.org> | 2016-07-26 14:51:52 +0800 |
commit | b04f95a2edadd2f84bcecee59bf7001ff6362d00 (patch) | |
tree | 4c6ca2ce730f43668c68bbd11064f1af4cab31f8 /app/assets/javascripts/projects_list.js | |
parent | bd44f1419784ea98ad513f2f2f67ffeb94853c04 (diff) | |
parent | 68162ba900f1b9003fa3d07613333f201be8154a (diff) | |
download | gitlab-ce-b04f95a2edadd2f84bcecee59bf7001ff6362d00.tar.gz |
Merge remote-tracking branch 'upstream/master' into new-issue-by-email
* upstream/master: (620 commits)
Added '*.js.es6 gitlab-language=javascript' to .gitattributes
Fix CI status icon link underline
Update CHANGELOG after 8.10.1
Add CHANGELOG
Add es6 gem
Instrument Nokogiri parsing methods
Fix backup restore
Use project ID in repository cache to prevent stale data from persisting across projects
Add iid to MR API response
`WikiPage` should have a slug even when not persisted.
ES6ify all the things!
Make fork counter always clickable (!5463)
Revert "Merge branch '17073-tagscontroller-index-is-terrible-response-time-goes-up-to-5-…"
Fix CHANGELOG
Add spec for dashes in paths
Fix Error 500 when creating Wiki pages with hyphens or spaces
Add links to the real markdown.md file for all GFM examples
Remove magic comments from Ruby files (!5456)
Ignore invalid trusted proxies in X-Forwarded-For header
remove search_id for label dropdown filter
...
Diffstat (limited to 'app/assets/javascripts/projects_list.js')
-rw-r--r-- | app/assets/javascripts/projects_list.js | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/app/assets/javascripts/projects_list.js b/app/assets/javascripts/projects_list.js new file mode 100644 index 00000000000..4f415b05dbc --- /dev/null +++ b/app/assets/javascripts/projects_list.js @@ -0,0 +1,48 @@ +(function() { + this.ProjectsList = { + init: function() { + $(".projects-list-filter").off('keyup'); + this.initSearch(); + return this.initPagination(); + }, + initSearch: function() { + var debounceFilter, projectsListFilter; + projectsListFilter = $('.projects-list-filter'); + debounceFilter = _.debounce(ProjectsList.filterResults, 500); + return projectsListFilter.on('keyup', function(e) { + if (projectsListFilter.val() !== '') { + return debounceFilter(); + } + }); + }, + filterResults: function() { + var form, project_filter_url, search; + $('.projects-list-holder').fadeTo(250, 0.5); + form = null; + form = $("form#project-filter-form"); + search = $(".projects-list-filter").val(); + project_filter_url = form.attr('action') + '?' + form.serialize(); + return $.ajax({ + type: "GET", + url: form.attr('action'), + data: form.serialize(), + complete: function() { + return $('.projects-list-holder').fadeTo(250, 1); + }, + success: function(data) { + $('.projects-list-holder').replaceWith(data.html); + return history.replaceState({ + page: project_filter_url + }, document.title, project_filter_url); + }, + dataType: "json" + }); + }, + initPagination: function() { + return $('.projects-list-holder .pagination').on('ajax:success', function(e, data) { + return $('.projects-list-holder').replaceWith(data.html); + }); + } + }; + +}).call(this); |