Skip to content
Snippets Groups Projects
Unverified Commit 0ccdb41c authored by Luke Bennett's avatar Luke Bennett
Browse files

Review changes, simplified dropdown init

parent bd595eb8
No related branches found
No related tags found
No related merge requests found
Loading
Loading
@@ -30,9 +30,9 @@
 
Todos.prototype.initFilters = function() {
new UsersSelect();
this.initProjectFilterDropdown();
this.initTypeFilterDropdown();
this.initActionFilterDropdown();
this.initFilterDropdown($('.js-project-search'), 'project_id', true);
this.initFilterDropdown($('.js-type-search'), 'type');
this.initFilterDropdown($('.js-action-search'), 'action_id');
 
$('form.filter-form').on('submit', function (event) {
event.preventDefault();
Loading
Loading
@@ -40,47 +40,16 @@
});
};
 
Todos.prototype.initProjectFilterDropdown = function() {
$projectDropdown = $('.js-project-search');
$projectDropdown.glDropdown({
filterable: true,
Todos.prototype.initFilterDropdown = function($dropdown, fieldName, isFilterable) {
$dropdown.glDropdown({
selectable: true,
fieldName: 'project_id',
data: $projectDropdown.data('data'),
filterable: isFilterable,
fieldName: fieldName,
data: $dropdown.data('data'),
clicked: function() {
if ($projectDropdown.hasClass('js-filter-submit')) {
return $projectDropdown.closest('form.filter-form').submit();
}
return $dropdown.closest('form.filter-form').submit();
}
});
};
Todos.prototype.initTypeFilterDropdown = function() {
$typeDropdown = $('.js-type-search');
$typeDropdown.glDropdown({
selectable: true,
fieldName: 'type',
data: $typeDropdown.data('data'),
clicked: function() {
if ($typeDropdown.hasClass('js-filter-submit')) {
return $typeDropdown.closest('form.filter-form').submit();
}
}
});
};
Todos.prototype.initActionFilterDropdown = function() {
$actionDropdown = $('.js-action-search');
$actionDropdown.glDropdown({
selectable: true,
fieldName: 'action_id',
data: $actionDropdown.data('data'),
clicked: function() {
if ($actionDropdown.hasClass('js-filter-submit')) {
return $actionDropdown.closest('form.filter-form').submit();
}
}
});
})
};
 
Todos.prototype.doneClicked = function(e) {
Loading
Loading
Loading
Loading
@@ -30,12 +30,12 @@
.filter-item.inline
- if params[:project_id].present?
= hidden_field_tag(:project_id, params[:project_id])
= dropdown_tag(project_dropdown_label(params[:project_id], 'Project'), options: { toggle_class: 'js-project-search js-filter-submit', title: 'Filter by project', filter: true, filterInput: 'input#search', dropdown_class: 'dropdown-menu-selectable dropdown-menu-project js-filter-submit',
placeholder: 'Search projects', data: { data: todo_projects_options, selected: params[:project_id], field_name: 'project_id', default_label: 'Project' } })
= dropdown_tag(project_dropdown_label(params[:project_id], 'Project'), options: { toggle_class: 'js-project-search js-filter-submit', title: 'Filter by project', filter: true, filterInput: 'input#project-search', dropdown_class: 'dropdown-menu-selectable dropdown-menu-project js-filter-submit',
placeholder: 'Search projects', data: { data: todo_projects_options } })
.filter-item.inline
- if params[:author_id].present?
= hidden_field_tag(:author_id, params[:author_id])
= dropdown_tag(user_dropdown_label(params[:author_id], 'Author'), options: { toggle_class: 'js-user-search js-filter-submit js-author-search', title: 'Filter by author', filter: true, filterInput: 'input#search', dropdown_class: 'dropdown-menu-user dropdown-menu-selectable dropdown-menu-author js-filter-submit',
= dropdown_tag(user_dropdown_label(params[:author_id], 'Author'), options: { toggle_class: 'js-user-search js-filter-submit js-author-search', title: 'Filter by author', filter: true, filterInput: 'input#author-search', dropdown_class: 'dropdown-menu-user dropdown-menu-selectable dropdown-menu-author js-filter-submit',
placeholder: 'Search authors', data: { any_user: 'Any Author', first_user: (current_user.username if current_user), current_user: true, project_id: (@project.id if @project), selected: params[:author_id], field_name: 'author_id', default_label: 'Author' } })
.filter-item.inline
- if params[:type].present?
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment