Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gitlab-ce
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
1
Merge Requests
1
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
gitlab-ce
Commits
0ccdb41c
Commit
0ccdb41c
authored
Aug 30, 2016
by
Luke Bennett
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Review changes, simplified dropdown init
parent
bd595eb8
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
13 additions
and
44 deletions
+13
-44
app/assets/javascripts/todos.js
app/assets/javascripts/todos.js
+10
-41
app/views/dashboard/todos/index.html.haml
app/views/dashboard/todos/index.html.haml
+3
-3
No files found.
app/assets/javascripts/todos.js
View file @
0ccdb41c
...
...
@@ -30,9 +30,9 @@
Todos
.
prototype
.
initFilters
=
function
()
{
new
UsersSelect
();
this
.
init
ProjectFilterDropdown
(
);
this
.
init
TypeFilterDropdown
(
);
this
.
init
ActionFilterDropdown
(
);
this
.
init
FilterDropdown
(
$
(
'
.js-project-search
'
),
'
project_id
'
,
true
);
this
.
init
FilterDropdown
(
$
(
'
.js-type-search
'
),
'
type
'
);
this
.
init
FilterDropdown
(
$
(
'
.js-action-search
'
),
'
action_id
'
);
$
(
'
form.filter-form
'
).
on
(
'
submit
'
,
function
(
event
)
{
event
.
preventDefault
();
...
...
@@ -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
)
{
...
...
app/views/dashboard/todos/index.html.haml
View file @
0ccdb41c
...
...
@@ -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?
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment