gitlab-org--gitlab-foss/app/views/dashboard/todos/index.html.haml

87 lines
3.3 KiB
Text
Raw Normal View History

2016-02-20 08:59:59 -05:00
- page_title "Todos"
- header_title "Todos", dashboard_todos_path
2016-02-12 13:45:44 -05:00
.top-area
%ul.nav-links
- todo_pending_active = ('active' if params[:state].blank? || params[:state] == 'pending')
%li{class: "todos-pending #{todo_pending_active}"}
2016-02-20 14:53:25 -05:00
= link_to todos_filter_path(state: 'pending') do
%span
2016-02-20 14:52:57 -05:00
To do
%span.badge
= number_with_delimiter(todos_pending_count)
- todo_done_active = ('active' if params[:state] == 'done')
%li{class: "todos-done #{todo_done_active}"}
2016-02-20 14:53:25 -05:00
= link_to todos_filter_path(state: 'done') do
%span
Done
%span.badge
= number_with_delimiter(todos_done_count)
2016-02-20 14:53:25 -05:00
.nav-controls
- if @todos.any?(&:pending?)
2016-03-17 09:08:59 -04:00
= 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-02-20 14:53:25 -05:00
2016-02-20 08:59:59 -05:00
.todos-filters
2016-04-25 16:02:15 -04:00
.row-content-block.second-block
2016-02-20 14:53:25 -05:00
= form_tag todos_filter_path(without: [:project_id, :author_id, :type, :action_id]), method: :get, class: 'filter-form' do
.filter-item.inline
2016-02-20 08:59:59 -05:00
= 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
2016-02-20 08:59:59 -05:00
= select_tag('type', todo_types_options,
class: 'select2 trigger-submit', include_blank: true,
data: {placeholder: 'Type'})
.filter-item.inline.actions-filter
2016-02-20 08:59:59 -05:00
= select_tag('action_id', todo_actions_options,
class: 'select2 trigger-submit', include_blank: true,
data: {placeholder: 'Action'})
2016-02-12 13:45:44 -05:00
2016-07-26 17:21:20 -04:00
.pull-right
.dropdown.inline.prepend-left-10
%button.dropdown-toggle.btn{type: 'button', 'data-toggle' => 'dropdown'}
%span.light
- if @sort.present?
= sort_options_hash[@sort]
- else
= sort_title_recently_created
%b.caret
%ul.dropdown-menu.dropdown-menu-align-right.dropdown-menu-sort
%li
= link_to todos_filter_path(sort: sort_value_priority) do
= sort_title_priority
= link_to todos_filter_path(sort: sort_value_recently_created) do
= sort_title_recently_created
= link_to todos_filter_path(sort: sort_value_oldest_created) do
= sort_title_oldest_created
2016-02-19 13:37:29 -05:00
.prepend-top-default
2016-02-20 08:59:59 -05:00
- if @todos.any?
2016-04-01 13:55:45 -04:00
.js-todos-options{ data: {per_page: @todos.limit_value, current_page: @todos.current_page, total_pages: @todos.total_pages} }
2016-02-20 08:59:59 -05:00
- @todos.group_by(&:project).each do |group|
.panel.panel-default.panel-small
2016-02-12 13:45:44 -05:00
- project = group[0]
.panel-heading
= link_to project.name_with_namespace, namespace_project_path(project.namespace, project)
%ul.content-list.todos-list
2016-02-12 13:45:44 -05:00
= render group[1]
2016-02-20 08:59:59 -05:00
= paginate @todos, theme: "gitlab"
2016-02-12 13:45:44 -05:00
- else
2016-02-20 14:53:25 -05:00
.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());
});