diff --git a/app/controllers/admin/budget_investment_milestones_controller.rb b/app/controllers/admin/budget_investment_milestones_controller.rb index 7736732a3..73989939b 100644 --- a/app/controllers/admin/budget_investment_milestones_controller.rb +++ b/app/controllers/admin/budget_investment_milestones_controller.rb @@ -14,7 +14,8 @@ class Admin::BudgetInvestmentMilestonesController < Admin::BaseController @milestone = Budget::Investment::Milestone.new(milestone_params) @milestone.investment = @investment if @milestone.save - redirect_to admin_budget_budget_investment_path(@investment.budget, @investment), notice: t('admin.milestones.create.notice') + redirect_to admin_budget_budget_investment_path(@investment.budget, @investment), + notice: t('admin.milestones.create.notice') else render :new end @@ -25,7 +26,8 @@ class Admin::BudgetInvestmentMilestonesController < Admin::BaseController def update if @milestone.update(milestone_params) - redirect_to admin_budget_budget_investment_path(@investment.budget, @investment), notice: t('admin.milestones.update.notice') + redirect_to admin_budget_budget_investment_path(@investment.budget, @investment), + notice: t('admin.milestones.update.notice') else render :edit end @@ -33,25 +35,25 @@ class Admin::BudgetInvestmentMilestonesController < Admin::BaseController def destroy @milestone.destroy - redirect_to admin_budget_budget_investment_path(@investment.budget, @investment), notice: t('admin.milestones.delete.notice') + redirect_to admin_budget_budget_investment_path(@investment.budget, @investment), + notice: t('admin.milestones.delete.notice') end private def milestone_params params.require(:budget_investment_milestone) - .permit(:title, :description, :budget_investment_id, + .permit(:title, :description, :publication_date, :budget_investment_id, image_attributes: [:id, :title, :attachment, :cached_attachment, :user_id, :_destroy], documents_attributes: [:id, :title, :attachment, :cached_attachment, :user_id, :_destroy]) end def load_budget_investment - @investment = Budget::Investment.find params[:budget_investment_id] + @investment = Budget::Investment.find(params[:budget_investment_id]) end def load_budget_investment_milestone - @milestone = Budget::Investment::Milestone.find params[:id] + @milestone = Budget::Investment::Milestone.find(params[:id]) end - end diff --git a/app/models/budget/investment/milestone.rb b/app/models/budget/investment/milestone.rb index a70bd31d5..13724be21 100644 --- a/app/models/budget/investment/milestone.rb +++ b/app/models/budget/investment/milestone.rb @@ -11,6 +11,7 @@ class Budget validates :title, presence: true validates :investment, presence: true + validates :publication_date, presence: true def self.title_max_length 80 diff --git a/app/views/admin/budget_investment_milestones/_form.html.erb b/app/views/admin/budget_investment_milestones/_form.html.erb index 40586986e..93cd31f63 100644 --- a/app/views/admin/budget_investment_milestones/_form.html.erb +++ b/app/views/admin/budget_investment_milestones/_form.html.erb @@ -2,6 +2,10 @@ <%= f.text_field :title, maxlength: Budget::Investment::Milestone.title_max_length %> <%= f.text_area :description, rows: 5 %> + <%= f.text_field :publication_date, + value: @milestone.publication_date.present? ? l(@milestone.publication_date.to_date) : nil, + class: "js-calendar-full" %> + <%= render 'images/admin_image', imageable: @milestone, f: f %>
diff --git a/app/views/admin/budget_investments/_milestones.html.erb b/app/views/admin/budget_investments/_milestones.html.erb index 98a774ca5..6f30f8ad2 100644 --- a/app/views/admin/budget_investments/_milestones.html.erb +++ b/app/views/admin/budget_investments/_milestones.html.erb @@ -5,6 +5,7 @@ <%= t("admin.milestones.index.table_id") %> <%= t("admin.milestones.index.table_title") %> <%= t("admin.milestones.index.table_description") %> + <%= t("admin.milestones.index.table_publication_date") %> <%= t("admin.milestones.index.image") %> <%= t("admin.milestones.index.documents") %> <%= t("admin.milestones.index.table_actions") %> @@ -13,17 +14,21 @@ <% @investment.milestones.each do |milestone| %> + <%= milestone.id %> - <%= milestone.id %> - - - <%= link_to milestone.title, edit_admin_budget_budget_investment_budget_investment_milestone_path(@investment.budget, @investment, milestone) %> + <%= link_to milestone.title, + edit_admin_budget_budget_investment_budget_investment_milestone_path(@investment.budget, + @investment, + milestone) %> + <%= milestone.description %> + <% if milestone.publication_date.present? %> + <%= l(milestone.publication_date.to_date) %> + <% end %> - <%= milestone.description %> - - - <%= link_to t("admin.milestones.index.show_image"), milestone.image_url(:large), target: :_blank if milestone.image.present? %> + <%= link_to t("admin.milestones.index.show_image"), + milestone.image_url(:large), + target: :_blank if milestone.image.present? %> <% if milestone.documents.present? %> @@ -36,16 +41,17 @@ <% end %> - <%= link_to t("admin.milestones.index.delete"), admin_budget_budget_investment_budget_investment_milestone_path(@investment.budget, @investment, milestone), + <%= link_to t("admin.milestones.index.delete"), + admin_budget_budget_investment_budget_investment_milestone_path(@investment.budget, + @investment, + milestone), method: :delete, - class: 'button hollow alert expanded' %> + class: "button hollow alert expanded" %> <% end %> <% else %> -

- <%= t('admin.milestones.index.no_milestones') %> -

+

<%= t("admin.milestones.index.no_milestones") %>

<% end %> diff --git a/app/views/budgets/investments/_milestones.html.erb b/app/views/budgets/investments/_milestones.html.erb index f175475bf..8065b6142 100644 --- a/app/views/budgets/investments/_milestones.html.erb +++ b/app/views/budgets/investments/_milestones.html.erb @@ -12,10 +12,13 @@
  • <%= milestone.title %>

    - - <%= t("budgets.investments.show.milestone_publish_date", publish_date: l(milestone.created_at.to_date)) %> - - <%= image_tag(milestone.image_url(:large), {alt: milestone.image.title, class: "margin", id: "image_#{milestone.id}"}) if milestone.image.present? %> + <% if milestone.publication_date.present? %> + + <%= t("budgets.investments.show.milestone_publication_date", + publication_date: l(milestone.publication_date.to_date)) %> + + <% end %> + <%= image_tag(milestone.image_url(:large), { alt: milestone.image.title, class: "margin", id: "image_#{milestone.id}" }) if milestone.image.present? %>

    <%= milestone.description %>

    <% if milestone.documents.present? %>