Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
85 changes: 53 additions & 32 deletions app/views/reimbursement/reports/_edit_form.html.erb
Original file line number Diff line number Diff line change
@@ -1,45 +1,66 @@
<%= form_with(model: @report, local: true) do |form| %>
<%= form.label :report_name, "Report name" %>
<%= form.text_field :report_name, placeholder: "Chicago Trip Expenses", required: true %>
<%= form.label :report_to, "Report to", class: "mt2" %>
<%= form.text_field :report_to, value: @report.user.email, readonly: true %>
<div class="flex gap-2 flex-col sm:flex-row">
<div class="flex-1">
<%= form.label :report_name, "Report name" %>
<%= form.text_field :report_name, placeholder: "Chicago Trip Expenses", required: true %>
</div>
<div class="flex-1">
<%= form.label :report_to, "To" %>
<%= form.text_field :report_to, value: @report.user.email, readonly: true %>
</div>
</div>

<% if organizer_signed_in? && (@report.submitted? || @report.draft?) %>
<%= form.label :maximum_amount, "Maximum reimbursable value (optional)", class: "mt2" %>
<%= form.label :maximum_amount, "Maximum reimbursable value", class: "mt2" %>
<div class="field">
<div class="flex items-center">
<div class="flex items-center input pl-3 max-w-full">
<span class="bold muted" style="width: 1rem;">$</span>
<%= form.number_field :maximum_amount, placeholder: "500.00", step: 0.01, min: 0.01, required: false, disabled: !(@current_user.admin? || @current_user != @report.user) && [email protected]?, data: { controller: "truncate-decimal", action: "truncate-decimal#truncate blur->truncate-decimal#pad" } %>
<%= form.number_field :maximum_amount,
placeholder: "Optional",
step: 0.01,
min: 0.01,
required: false,
style: "border: 0; min-height: 0; max-width:100%!important",
disabled: !(@current_user.admin? || @current_user != @report.user) && [email protected]?,
data: {
controller: "truncate-decimal",
action: "truncate-decimal#truncate blur->truncate-decimal#pad"
} %>
</div>
</div>
<% end %>
<% if @report.submitted? || @report.draft? %>
<div class="field event-select-target">
<%= form.label :event_id, "Organization", class: "mt2" %>
<%= form.select(:event_id,
admin_signed_in? ?
Event.not_demo_mode.reorder(Event::CUSTOM_SORT).map { |event| [event.name, event.id] } :
((@report.event ? [@report.event] : []) + current_user.events.not_hidden.filter_demo_mode(false)).uniq.map { |event| [event.name, event.id] },
{ prompt: "Select an event…", required: true }) %>
<% unless admin_signed_in? %>
<span class="muted">You can transfer a report to any organization you're a part of.</span>
<% end %>
</div>
<% end %>
<% if organizer_signed_in? && (@report.submitted? || @report.draft?) && @report.event %>
<div class="field">
<%= form.label :reviewer_id, "Assigned reviewer", class: "mt2" %>
<%= form.collection_select :reviewer_id, @report.event.managers, :id, :name, include_blank: "Anyone" %>
</div>
<% end %>
<div class="flex items-center w-full justify-between">
<%= form.submit "Update report", class: "left mt2" %>

<div class="flex gap-2 flex-col sm:flex-row">
<% if @report.submitted? || @report.draft? %>
<div class="field event-select-target flex-1">
<%= form.label :event_id, "Organization" %>
<%= form.select(:event_id,
admin_signed_in? ?
Event.not_demo_mode.reorder(Event::CUSTOM_SORT).map { |event| [event.name, event.id] } :
((@report.event ? [@report.event] : []) + current_user.events.not_hidden.filter_demo_mode(false)).uniq.map { |event| [event.name, event.id] },
{ prompt: "Select an event…", required: true }) %>
<% unless admin_signed_in? %>
<span class="muted">You can transfer a report to any organization you're a part of.</span>
<% end %>
</div>
<% end %>
<% if organizer_signed_in? && (@report.submitted? || @report.draft?) && @report.event %>
<div class="field flex-1">
<%= form.label :reviewer_id, "Assigned reviewer" %>
<%= form.collection_select :reviewer_id, @report.event.managers, :id, :name, include_blank: "Anyone" %>
</div>
<% end %>
</div>
<div class="flex sm:items-center w-full justify-between gap-2 mt-1 flex-col sm:flex-row">
<button type="submit" class="btn btn-primary">
Save changes
<%= inline_icon "check", class: "!ml-2 !-mr-1" %>
</button>
<% if current_user.admin? && [email protected]? %>
<% admin_tool("right mt2") do %>
<%= button_to "Delete report", reimbursement_report_path(@report), class: "bg-error btn", method: :delete, type: "button" %>
<% admin_tool("") do %>
<%= button_to "Delete", reimbursement_report_path(@report), class: "bg-error btn", method: :delete, type: "button" %>
<% end %>
<% else %>
<%= button_to "Delete report", reimbursement_report_path(@report), class: "right mt2 bg-error btn", method: :delete, type: "button" %>
<%= button_to "Delete", reimbursement_report_path(@report), class: "bg-error btn", method: :delete, type: "button" %>
<% end %>
</div>
<% end %>