diff --git a/app/assets/stylesheets/dashboard.scss b/app/assets/stylesheets/dashboard.scss index a61301d24..82c9804df 100644 --- a/app/assets/stylesheets/dashboard.scss +++ b/app/assets/stylesheets/dashboard.scss @@ -99,6 +99,7 @@ .action-content { display: inline-block; margin-left: $line-height / 4; + max-width: 90%; h4, p { diff --git a/app/controllers/dashboard/actions_controller.rb b/app/controllers/dashboard/actions_controller.rb index 7035658ec..1e6119750 100644 --- a/app/controllers/dashboard/actions_controller.rb +++ b/app/controllers/dashboard/actions_controller.rb @@ -1,4 +1,4 @@ -class Dashboard::ActionsController < Dashboard::BaseController +class Dashboard::ActionsController < Dashboard::BaseController helper_method :dashboard_action def new_request @@ -10,8 +10,8 @@ class Dashboard::ActionsController < Dashboard::BaseController authorize! :dashboard, proposal source_params = { - proposal: proposal, - action: dashboard_action, + proposal: proposal, + action: dashboard_action, executed_at: Time.now } @@ -30,7 +30,7 @@ class Dashboard::ActionsController < Dashboard::BaseController authorize! :dashboard, proposal Dashboard::ExecutedAction.create(proposal: proposal, action: dashboard_action, executed_at: Time.now) - redirect_to progress_proposal_dashboard_path(proposal.to_param) + redirect_to request.referer end private @@ -39,4 +39,3 @@ class Dashboard::ActionsController < Dashboard::BaseController @dashboard_action ||= Dashboard::Action.find(params[:id]) end end - diff --git a/app/controllers/dashboard_controller.rb b/app/controllers/dashboard_controller.rb index 4ba6a6edb..6bc3f2059 100644 --- a/app/controllers/dashboard_controller.rb +++ b/app/controllers/dashboard_controller.rb @@ -1,5 +1,6 @@ class DashboardController < Dashboard::BaseController helper_method :dashboard_action, :active_resources, :course + before_action :set_done_and_pending_actions, only: [:recommended_actions, :progress] def show authorize! :dashboard, proposal @@ -20,6 +21,10 @@ class DashboardController < Dashboard::BaseController authorize! :dashboard, proposal end + def recommended_actions + authorize! :dashboard, proposal + end + private def active_resources @@ -32,4 +37,9 @@ class DashboardController < Dashboard::BaseController def course @course ||= Dashboard::Action.course_for(proposal) end + + def set_done_and_pending_actions + @done_actions = proposed_actions.joins(:proposals).where("proposals.id = ?", proposal.id) + @pending_actions = proposed_actions - @done_actions + end end diff --git a/app/helpers/proposals_dashboard_helper.rb b/app/helpers/proposals_dashboard_helper.rb index 3c5497fcb..58d468e1b 100644 --- a/app/helpers/proposals_dashboard_helper.rb +++ b/app/helpers/proposals_dashboard_helper.rb @@ -11,6 +11,10 @@ module ProposalsDashboardHelper is_proposed_action_request? || (controller_name == 'dashboard' && action_name == 'progress') end + def recommended_actions_menu_active? + controller_name == "dashboard" && action_name == "recommended_actions" + end + def resources_menu_visible?(proposal, resources) can?(:manage_polls, proposal) || resources.any? end diff --git a/app/views/dashboard/_menu.html.erb b/app/views/dashboard/_menu.html.erb index e5704fdde..463ad470c 100644 --- a/app/views/dashboard/_menu.html.erb +++ b/app/views/dashboard/_menu.html.erb @@ -13,6 +13,13 @@ <% end %> +
<%= l(proposed_action.executed_actions.find_by(proposal: proposal).executed_at.to_date) %>
- <% else %> - <% if proposed_action.short_description.present? %> -<%= proposed_action.short_description %>
++ <%= l(proposed_action.executed_actions.find_by(proposal: proposal).executed_at.to_date) %> +
+ <% if proposed_action.description.present? %> + + <%= t("dashboard.recommended_actions.show_description") %> + +<%= link_to link.label, link.url, target: "_blank" %>
<% end %> - <%= render partial: 'document', collection: proposed_action.documents %> <% end %>