2016-04-02 18:10:28 +05:30
|
|
|
- page_title "Todos"
|
|
|
|
- header_title "Todos", dashboard_todos_path
|
|
|
|
|
|
|
|
.top-area
|
|
|
|
%ul.nav-links
|
2016-06-02 11:05:42 +05:30
|
|
|
- todo_pending_active = ('active' if params[:state].blank? || params[:state] == 'pending')
|
|
|
|
%li{class: "todos-pending #{todo_pending_active}"}
|
2016-04-02 18:10:28 +05:30
|
|
|
= link_to todos_filter_path(state: 'pending') do
|
|
|
|
%span
|
|
|
|
To do
|
2016-06-02 11:05:42 +05:30
|
|
|
%span.badge
|
2016-04-02 18:10:28 +05:30
|
|
|
= todos_pending_count
|
2016-06-02 11:05:42 +05:30
|
|
|
- todo_done_active = ('active' if params[:state] == 'done')
|
|
|
|
%li{class: "todos-done #{todo_done_active}"}
|
2016-04-02 18:10:28 +05:30
|
|
|
= link_to todos_filter_path(state: 'done') do
|
|
|
|
%span
|
|
|
|
Done
|
2016-06-02 11:05:42 +05:30
|
|
|
%span.badge
|
2016-04-02 18:10:28 +05:30
|
|
|
= todos_done_count
|
|
|
|
|
|
|
|
.nav-controls
|
|
|
|
- if @todos.any?(&:pending?)
|
2016-06-02 11:05:42 +05:30
|
|
|
= link_to destroy_all_dashboard_todos_path(todos_filter_params), class: 'btn btn-loading js-todos-mark-all', method: :delete do
|
|
|
|
Mark all as done
|
|
|
|
= icon('spinner spin')
|
2016-04-02 18:10:28 +05:30
|
|
|
|
|
|
|
.todos-filters
|
2016-06-02 11:05:42 +05:30
|
|
|
.row-content-block.second-block
|
2016-04-02 18:10:28 +05:30
|
|
|
= form_tag todos_filter_path(without: [:project_id, :author_id, :type, :action_id]), method: :get, class: 'filter-form' do
|
|
|
|
.filter-item.inline
|
|
|
|
= select_tag('project_id', todo_projects_options,
|
|
|
|
class: 'select2 trigger-submit', include_blank: true,
|
|
|
|
data: {placeholder: 'Project'})
|
|
|
|
.filter-item.inline
|
|
|
|
= users_select_tag(:author_id, selected: params[:author_id],
|
|
|
|
placeholder: 'Author', class: 'trigger-submit', any_user: "Any Author", first_user: true, current_user: true)
|
|
|
|
.filter-item.inline
|
|
|
|
= select_tag('type', todo_types_options,
|
|
|
|
class: 'select2 trigger-submit', include_blank: true,
|
|
|
|
data: {placeholder: 'Type'})
|
|
|
|
.filter-item.inline.actions-filter
|
|
|
|
= select_tag('action_id', todo_actions_options,
|
|
|
|
class: 'select2 trigger-submit', include_blank: true,
|
|
|
|
data: {placeholder: 'Action'})
|
|
|
|
|
|
|
|
.prepend-top-default
|
|
|
|
- if @todos.any?
|
2016-06-02 11:05:42 +05:30
|
|
|
.js-todos-options{ data: {per_page: @todos.limit_value, current_page: @todos.current_page, total_pages: @todos.total_pages} }
|
2016-04-02 18:10:28 +05:30
|
|
|
- @todos.group_by(&:project).each do |group|
|
2016-06-02 11:05:42 +05:30
|
|
|
.panel.panel-default.panel-small.js-todos-list
|
2016-04-02 18:10:28 +05:30
|
|
|
- project = group[0]
|
|
|
|
.panel-heading
|
|
|
|
= link_to project.name_with_namespace, namespace_project_path(project.namespace, project)
|
|
|
|
|
2016-06-02 11:05:42 +05:30
|
|
|
%ul.content-list.todos-list
|
2016-04-02 18:10:28 +05:30
|
|
|
= render group[1]
|
|
|
|
= paginate @todos, theme: "gitlab"
|
|
|
|
- else
|
|
|
|
.nothing-here-block You're all done!
|
|
|
|
|
|
|
|
:javascript
|
|
|
|
new UsersSelect();
|
|
|
|
|
|
|
|
$('form.filter-form').on('submit', function (event) {
|
|
|
|
event.preventDefault();
|
|
|
|
Turbolinks.visit(this.action + '&' + $(this).serialize());
|
|
|
|
});
|