move approvals to the new controller
This commit is contained in:
21
app/controllers/approvals_controller.rb
Normal file
21
app/controllers/approvals_controller.rb
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
class ApprovalsController < ApplicationController
|
||||||
|
include MedicalReleaseContext
|
||||||
|
|
||||||
|
before_action :set_medical_release
|
||||||
|
before_action :set_project
|
||||||
|
|
||||||
|
layout "project"
|
||||||
|
|
||||||
|
def create
|
||||||
|
@medical_release.approve_by(current_user)
|
||||||
|
if @medical_release.save
|
||||||
|
redirect_to [@project, :medical_releases], notice: t('.release_approved')
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
private
|
||||||
|
|
||||||
|
def set_project
|
||||||
|
@project = @medical_release.project
|
||||||
|
end
|
||||||
|
end
|
||||||
@@ -2,7 +2,7 @@ class MedicalReleasesController < ApplicationController
|
|||||||
include ProjectContext, MedicalReleaseContext
|
include ProjectContext, MedicalReleaseContext
|
||||||
|
|
||||||
before_action :set_project, only: [:index]
|
before_action :set_project, only: [:index]
|
||||||
before_action :set_medical_release, only: [:destroy, :review, :approve]
|
before_action :set_medical_release, only: [:destroy]
|
||||||
|
|
||||||
include ProjectLayout
|
include ProjectLayout
|
||||||
|
|
||||||
@@ -18,19 +18,6 @@ class MedicalReleasesController < ApplicationController
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def review
|
|
||||||
@project = @medical_release.project
|
|
||||||
end
|
|
||||||
|
|
||||||
def approve
|
|
||||||
@project = @medical_release.project
|
|
||||||
|
|
||||||
@medical_release.approve_by(current_user)
|
|
||||||
if @medical_release.save
|
|
||||||
redirect_to [@project, :medical_releases], notice: t('.release_approved')
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
def medical_releases
|
def medical_releases
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<embed class="embeded-contract-preview" type="application/pdf" src="<%= url_for [@medical_release, :contracts, format: "pdf"] %>" width="90%" height="1200" />
|
<embed class="embeded-contract-preview" type="application/pdf" src="<%= url_for [@medical_release, :contracts, format: "pdf"] %>" width="90%" height="1200" />
|
||||||
|
|
||||||
<%= bootstrap_form_with model: @medical_release, method: :patch, url: [:approve, @medical_release], local: true do |form| %>
|
<%= bootstrap_form_with model: @medical_release, method: :post, url: medical_release_approvals_path(@medical_release), local: true do |form| %>
|
||||||
<div class="row align-items-center text-center mt-4">
|
<div class="row align-items-center text-center mt-4">
|
||||||
<%= link_to t("shared.cancel"), [@medical_release.project, :medical_releases], class: "col-3 text-reset" %>
|
<%= link_to t("shared.cancel"), [@medical_release.project, :medical_releases], class: "col-3 text-reset" %>
|
||||||
<div class="col-9">
|
<div class="col-9">
|
||||||
@@ -50,7 +50,7 @@
|
|||||||
<%= link_to fa_icon("tags fw", text: "Tags"), [:new, medical_release, :acts_as_taggable_on_tag], class: "dropdown-item", remote: true %>
|
<%= link_to fa_icon("tags fw", text: "Tags"), [:new, medical_release, :acts_as_taggable_on_tag], class: "dropdown-item", remote: true %>
|
||||||
<% end %>
|
<% end %>
|
||||||
<% if policy(MedicalRelease).review? %>
|
<% if policy(MedicalRelease).review? %>
|
||||||
<%= link_to fa_icon("search fw", text: t('.actions.review')), review_medical_release_path(medical_release), class: "dropdown-item" %>
|
<%= link_to fa_icon("search fw", text: t('.actions.review')), new_medical_release_approvals_path(medical_release), class: "dropdown-item" %>
|
||||||
<% end %>
|
<% end %>
|
||||||
<% if policy(MedicalRelease).download_single? && policy(Contract).show? && (medical_release.contract.attached? || medical_release.contract_template.present?) %>
|
<% if policy(MedicalRelease).download_single? && policy(Contract).show? && (medical_release.contract.attached? || medical_release.contract_template.present?) %>
|
||||||
<%= link_to fa_icon("download fw", text: "Download"), [medical_release, :contracts, format: "pdf"], class: "dropdown-item", target: "_blank" %>
|
<%= link_to fa_icon("download fw", text: "Download"), [medical_release, :contracts, format: "pdf"], class: "dropdown-item", target: "_blank" %>
|
||||||
|
|||||||
@@ -171,6 +171,13 @@ en:
|
|||||||
sidebar:
|
sidebar:
|
||||||
files: Files
|
files: Files
|
||||||
team_member: Team Member
|
team_member: Team Member
|
||||||
|
approvals:
|
||||||
|
create:
|
||||||
|
release_approved: Medical release has been approved
|
||||||
|
new:
|
||||||
|
actions:
|
||||||
|
approve: Approve
|
||||||
|
heading: Review Medical Release
|
||||||
blank_contracts:
|
blank_contracts:
|
||||||
new:
|
new:
|
||||||
number_of_copies_label: Number of copies
|
number_of_copies_label: Number of copies
|
||||||
@@ -781,8 +788,6 @@ en:
|
|||||||
update:
|
update:
|
||||||
notice: The material release has been updated
|
notice: The material release has been updated
|
||||||
medical_releases:
|
medical_releases:
|
||||||
approve:
|
|
||||||
release_approved: Medical release has been approved
|
|
||||||
custom_validation_errors:
|
custom_validation_errors:
|
||||||
question_answer_is_required: answer is required
|
question_answer_is_required: answer is required
|
||||||
destroy:
|
destroy:
|
||||||
@@ -802,10 +807,6 @@ en:
|
|||||||
review: Review
|
review: Review
|
||||||
messages:
|
messages:
|
||||||
approved_tooltip: Approved by %{user} on %{timestamp}
|
approved_tooltip: Approved by %{user} on %{timestamp}
|
||||||
review:
|
|
||||||
actions:
|
|
||||||
approve: Approve
|
|
||||||
heading: Review Medical Release
|
|
||||||
misc_releases:
|
misc_releases:
|
||||||
destroy:
|
destroy:
|
||||||
alert: The misc release has been deleted
|
alert: The misc release has been deleted
|
||||||
|
|||||||
@@ -50,6 +50,13 @@ es:
|
|||||||
all_releases: All Releases (ES)
|
all_releases: All Releases (ES)
|
||||||
complete_releases: Complete Releases (ES)
|
complete_releases: Complete Releases (ES)
|
||||||
incomplete_releases: Incomplete Releases (ES)
|
incomplete_releases: Incomplete Releases (ES)
|
||||||
|
approvals:
|
||||||
|
create:
|
||||||
|
release_approved: Medical release has been approved (ES)
|
||||||
|
new:
|
||||||
|
actions:
|
||||||
|
approve: Approve (ES)
|
||||||
|
heading: Review Medical Release (ES)
|
||||||
blank_contracts:
|
blank_contracts:
|
||||||
new:
|
new:
|
||||||
number_of_copies_label: Number of copies (ES)
|
number_of_copies_label: Number of copies (ES)
|
||||||
@@ -294,8 +301,6 @@ es:
|
|||||||
photos:
|
photos:
|
||||||
dropzone_label: Tap to take a photo of Licensed Material (optional) (ES)
|
dropzone_label: Tap to take a photo of Licensed Material (optional) (ES)
|
||||||
medical_releases:
|
medical_releases:
|
||||||
approve:
|
|
||||||
release_approved: Medical release has been approved (ES)
|
|
||||||
custom_validation_errors:
|
custom_validation_errors:
|
||||||
question_answer_is_required: answer is required (ES)
|
question_answer_is_required: answer is required (ES)
|
||||||
index:
|
index:
|
||||||
@@ -306,10 +311,6 @@ es:
|
|||||||
review: Review (ES)
|
review: Review (ES)
|
||||||
messages:
|
messages:
|
||||||
approved_tooltip: ""
|
approved_tooltip: ""
|
||||||
review:
|
|
||||||
actions:
|
|
||||||
approve: Approve (ES)
|
|
||||||
heading: Review Medical Release (ES)
|
|
||||||
public:
|
public:
|
||||||
appearance_releases:
|
appearance_releases:
|
||||||
create:
|
create:
|
||||||
|
|||||||
@@ -145,10 +145,7 @@ Rails.application.routes.draw do
|
|||||||
|
|
||||||
# Customization for medical releases
|
# Customization for medical releases
|
||||||
resources :medical_releases, only: [], concerns: :taggable do
|
resources :medical_releases, only: [], concerns: :taggable do
|
||||||
member do
|
resource :approvals, only: [:new, :create]
|
||||||
get :review
|
|
||||||
patch :approve
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
resources :bulk_taggings, only: [:new, :create]
|
resources :bulk_taggings, only: [:new, :create]
|
||||||
|
|||||||
Reference in New Issue
Block a user