Prod build process
This commit is contained in:
@@ -1,23 +0,0 @@
|
||||
<div id="<%= dom_id article %>" class="scaffold_record">
|
||||
<p>
|
||||
<strong>Title:</strong>
|
||||
<%= article.title %>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Posted <%= time_tag article.created_at %>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<strong><%= pluralize article.comments.count, "comment" %></strong>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<strong>Content:</strong>
|
||||
<%= article.content %>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<%= link_to "Show this article", article %>
|
||||
</p>
|
||||
</div>
|
||||
@@ -1,2 +0,0 @@
|
||||
json.extract! article, :id, :title, :content, :created_at, :updated_at
|
||||
json.url article_url(article, format: :json)
|
||||
@@ -1,7 +0,0 @@
|
||||
<h2>Comments</h2>
|
||||
|
||||
<div id="comments">
|
||||
<%= render article.comments %>
|
||||
</div>
|
||||
|
||||
<%= render "comments/new", article: article %>
|
||||
@@ -1,27 +0,0 @@
|
||||
<%= form_with(model: article) do |form| %>
|
||||
<% if article.errors.any? %>
|
||||
<div id="error_explanation">
|
||||
<h2><%= pluralize(article.errors.count, "error") %> prohibited this article from being saved:</h2>
|
||||
|
||||
<ul>
|
||||
<% article.errors.each do |error| %>
|
||||
<li><%= error.full_message %></li>
|
||||
<% end %>
|
||||
</ul>
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<div class="field">
|
||||
<%= form.label :title %>
|
||||
<%= form.text_field :title %>
|
||||
</div>
|
||||
|
||||
<div class="field">
|
||||
<%= form.label :content %>
|
||||
<%= form.rich_text_area :content %>
|
||||
</div>
|
||||
|
||||
<div class="actions">
|
||||
<%= form.submit %>
|
||||
</div>
|
||||
<% end %>
|
||||
@@ -1,10 +0,0 @@
|
||||
<h1>Editing article</h1>
|
||||
|
||||
<%= render "form", article: @article %>
|
||||
|
||||
<br>
|
||||
|
||||
<div>
|
||||
<%= link_to "Show this article", @article %> |
|
||||
<%= link_to "Back to articles", articles_path %>
|
||||
</div>
|
||||
@@ -1,9 +0,0 @@
|
||||
<p id="notice"><%= notice %></p>
|
||||
|
||||
<h1>Article</h1>
|
||||
|
||||
<div id="articles">
|
||||
<%= render @articles %>
|
||||
</div>
|
||||
|
||||
<%= link_to "New article", new_article_path %>
|
||||
@@ -1 +0,0 @@
|
||||
json.array! @articles, partial: "articles/article", as: :article
|
||||
@@ -1,9 +0,0 @@
|
||||
<h1>New article</h1>
|
||||
|
||||
<%= render "form", article: @article %>
|
||||
|
||||
<br>
|
||||
|
||||
<div>
|
||||
<%= link_to "Back to articles", articles_path %>
|
||||
</div>
|
||||
@@ -1,13 +0,0 @@
|
||||
<%= turbo_stream_from @article %>
|
||||
|
||||
<p id="notice"><%= notice %></p>
|
||||
|
||||
<%= render @article %>
|
||||
<%= render "articles/comments", article: @article %>
|
||||
|
||||
<div>
|
||||
<%= link_to "Edit this article", edit_article_path(@article) %> |
|
||||
<%= link_to "Back to articles", articles_path %>
|
||||
|
||||
<%= button_to "Destroy this article", article_path(@article), method: :delete %>
|
||||
</div>
|
||||
@@ -1 +0,0 @@
|
||||
json.partial! "articles/article", article: @article
|
||||
@@ -1,166 +0,0 @@
|
||||
<div id="<%= dom_id card_provider %>" class="w-full sm:w-auto my-5 space-y-5">
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Provider code:</strong>
|
||||
<%= card_provider.provider_code %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Provider line 1:</strong>
|
||||
<%= card_provider.provider_line_1 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Provider line 2:</strong>
|
||||
<%= card_provider.provider_line_2 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Provider line 3:</strong>
|
||||
<%= card_provider.provider_line_3 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Provider line 4:</strong>
|
||||
<%= card_provider.provider_line_4 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Provider line 5:</strong>
|
||||
<%= card_provider.provider_line_5 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Mail to:</strong>
|
||||
<%= card_provider.mail_to %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Mail to 2:</strong>
|
||||
<%= card_provider.mail_to_2 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Contact line 1:</strong>
|
||||
<%= card_provider.contact_line_1 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Contact line 2:</strong>
|
||||
<%= card_provider.contact_line_2 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Contact line 3:</strong>
|
||||
<%= card_provider.contact_line_3 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Group number:</strong>
|
||||
<%= card_provider.group_number %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Claim to 1:</strong>
|
||||
<%= card_provider.claim_to_1 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Claim to 2:</strong>
|
||||
<%= card_provider.claim_to_2 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Claim to 3:</strong>
|
||||
<%= card_provider.claim_to_3 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Claim to 4:</strong>
|
||||
<%= card_provider.claim_to_4 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Claim to 5:</strong>
|
||||
<%= card_provider.claim_to_5 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Claim to 6:</strong>
|
||||
<%= card_provider.claim_to_6 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Claim to 7:</strong>
|
||||
<%= card_provider.claim_to_7 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Claim to 8:</strong>
|
||||
<%= card_provider.claim_to_8 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Claim to 9:</strong>
|
||||
<%= card_provider.claim_to_9 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Claim to 10:</strong>
|
||||
<%= card_provider.claim_to_10 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Claim to 11:</strong>
|
||||
<%= card_provider.claim_to_11 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Provider line 6:</strong>
|
||||
<%= card_provider.provider_line_6 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Provider line 7:</strong>
|
||||
<%= card_provider.provider_line_7 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Provider line 8:</strong>
|
||||
<%= card_provider.provider_line_8 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Provider line 9:</strong>
|
||||
<%= card_provider.provider_line_9 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Provider line 10:</strong>
|
||||
<%= card_provider.provider_line_10 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Provider line 11:</strong>
|
||||
<%= card_provider.provider_line_11 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Rx group:</strong>
|
||||
<%= card_provider.rx_group_id %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Rx contact:</strong>
|
||||
<%= card_provider.rx_contact %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Provider lookup 1:</strong>
|
||||
<%= card_provider.provider_lookup_1 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Provider lookup 2:</strong>
|
||||
<%= card_provider.provider_lookup_2 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Precert 1:</strong>
|
||||
<%= card_provider.precert_1 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Precert 2:</strong>
|
||||
<%= card_provider.precert_2 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Precert 3:</strong>
|
||||
<%= card_provider.precert_3 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Precert 4:</strong>
|
||||
<%= card_provider.precert_4 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Precert 5:</strong>
|
||||
<%= card_provider.precert_5 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Precert 6:</strong>
|
||||
<%= card_provider.precert_6 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Provider line 12:</strong>
|
||||
<%= card_provider.provider_line_12 %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Claim to 12:</strong>
|
||||
<%= card_provider.claim_to_12 %>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1,2 +0,0 @@
|
||||
json.extract! card_provider, :id, :provider_code, :provider_line_1, :provider_line_2, :provider_line_3, :provider_line_4, :provider_line_5, :mail_to, :mail_to_2, :contact_line_1, :contact_line_2, :contact_line_3, :group_number, :claim_to_1, :claim_to_2, :claim_to_3, :claim_to_4, :claim_to_5, :claim_to_6, :claim_to_7, :claim_to_8, :claim_to_9, :claim_to_10, :claim_to_11, :provider_line_6, :provider_line_7, :provider_line_8, :provider_line_9, :provider_line_10, :provider_line_11, :rx_group_id, :rx_contact, :provider_lookup_1, :provider_lookup_2, :precert_1, :precert_2, :precert_3, :precert_4, :precert_5, :precert_6, :provider_line_12, :claim_to_12, :created_at, :updated_at
|
||||
json.url card_provider_url(card_provider, format: :json)
|
||||
@@ -1,222 +0,0 @@
|
||||
<%= form_with(model: card_provider, class: "contents") do |form| %>
|
||||
<% if card_provider.errors.any? %>
|
||||
<div id="error_explanation" class="bg-red-50 text-red-500 px-3 py-2 font-medium rounded-md mt-3">
|
||||
<h2><%= pluralize(card_provider.errors.count, "error") %> prohibited this card_provider from being saved:</h2>
|
||||
|
||||
<ul class="list-disc ml-6">
|
||||
<% card_provider.errors.each do |error| %>
|
||||
<li><%= error.full_message %></li>
|
||||
<% end %>
|
||||
</ul>
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :provider_code %>
|
||||
<%= form.text_field :provider_code, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:provider_code].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:provider_code].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :provider_line_1 %>
|
||||
<%= form.text_field :provider_line_1, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:provider_line_1].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:provider_line_1].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :provider_line_2 %>
|
||||
<%= form.text_field :provider_line_2, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:provider_line_2].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:provider_line_2].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :provider_line_3 %>
|
||||
<%= form.text_field :provider_line_3, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:provider_line_3].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:provider_line_3].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :provider_line_4 %>
|
||||
<%= form.text_field :provider_line_4, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:provider_line_4].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:provider_line_4].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :provider_line_5 %>
|
||||
<%= form.text_field :provider_line_5, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:provider_line_5].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:provider_line_5].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :mail_to %>
|
||||
<%= form.text_field :mail_to, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:mail_to].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:mail_to].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :mail_to_2 %>
|
||||
<%= form.text_field :mail_to_2, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:mail_to_2].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:mail_to_2].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :contact_line_1 %>
|
||||
<%= form.text_field :contact_line_1, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:contact_line_1].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:contact_line_1].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :contact_line_2 %>
|
||||
<%= form.text_field :contact_line_2, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:contact_line_2].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:contact_line_2].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :contact_line_3 %>
|
||||
<%= form.text_field :contact_line_3, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:contact_line_3].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:contact_line_3].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :group_number %>
|
||||
<%= form.text_field :group_number, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:group_number].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:group_number].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :claim_to_1 %>
|
||||
<%= form.text_field :claim_to_1, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:claim_to_1].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:claim_to_1].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :claim_to_2 %>
|
||||
<%= form.text_field :claim_to_2, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:claim_to_2].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:claim_to_2].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :claim_to_3 %>
|
||||
<%= form.text_field :claim_to_3, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:claim_to_3].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:claim_to_3].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :claim_to_4 %>
|
||||
<%= form.text_field :claim_to_4, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:claim_to_4].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:claim_to_4].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :claim_to_5 %>
|
||||
<%= form.text_field :claim_to_5, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:claim_to_5].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:claim_to_5].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :claim_to_6 %>
|
||||
<%= form.text_field :claim_to_6, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:claim_to_6].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:claim_to_6].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :claim_to_7 %>
|
||||
<%= form.text_field :claim_to_7, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:claim_to_7].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:claim_to_7].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :claim_to_8 %>
|
||||
<%= form.text_field :claim_to_8, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:claim_to_8].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:claim_to_8].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :claim_to_9 %>
|
||||
<%= form.text_field :claim_to_9, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:claim_to_9].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:claim_to_9].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :claim_to_10 %>
|
||||
<%= form.text_field :claim_to_10, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:claim_to_10].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:claim_to_10].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :claim_to_11 %>
|
||||
<%= form.text_field :claim_to_11, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:claim_to_11].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:claim_to_11].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :provider_line_6 %>
|
||||
<%= form.text_field :provider_line_6, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:provider_line_6].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:provider_line_6].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :provider_line_7 %>
|
||||
<%= form.text_field :provider_line_7, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:provider_line_7].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:provider_line_7].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :provider_line_8 %>
|
||||
<%= form.text_field :provider_line_8, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:provider_line_8].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:provider_line_8].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :provider_line_9 %>
|
||||
<%= form.text_field :provider_line_9, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:provider_line_9].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:provider_line_9].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :provider_line_10 %>
|
||||
<%= form.text_field :provider_line_10, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:provider_line_10].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:provider_line_10].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :provider_line_11 %>
|
||||
<%= form.text_field :provider_line_11, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:provider_line_11].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:provider_line_11].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :rx_group_id %>
|
||||
<%= form.text_field :rx_group_id, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:rx_group_id].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:rx_group_id].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :rx_contact %>
|
||||
<%= form.text_field :rx_contact, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:rx_contact].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:rx_contact].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :provider_lookup_1 %>
|
||||
<%= form.text_field :provider_lookup_1, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:provider_lookup_1].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:provider_lookup_1].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :provider_lookup_2 %>
|
||||
<%= form.text_field :provider_lookup_2, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:provider_lookup_2].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:provider_lookup_2].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :precert_1 %>
|
||||
<%= form.text_field :precert_1, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:precert_1].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:precert_1].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :precert_2 %>
|
||||
<%= form.text_field :precert_2, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:precert_2].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:precert_2].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :precert_3 %>
|
||||
<%= form.text_field :precert_3, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:precert_3].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:precert_3].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :precert_4 %>
|
||||
<%= form.text_field :precert_4, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:precert_4].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:precert_4].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :precert_5 %>
|
||||
<%= form.text_field :precert_5, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:precert_5].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:precert_5].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :precert_6 %>
|
||||
<%= form.text_field :precert_6, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:precert_6].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:precert_6].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :provider_line_12 %>
|
||||
<%= form.text_field :provider_line_12, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:provider_line_12].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:provider_line_12].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :claim_to_12 %>
|
||||
<%= form.text_field :claim_to_12, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_provider.errors[:claim_to_12].none?, "border-red-400 focus:outline-red-600": card_provider.errors[:claim_to_12].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="inline">
|
||||
<%= form.submit class: "w-full sm:w-auto rounded-md px-3.5 py-2.5 bg-blue-600 hover:bg-blue-500 text-white inline-block font-medium cursor-pointer" %>
|
||||
</div>
|
||||
<% end %>
|
||||
@@ -1,10 +0,0 @@
|
||||
<% content_for :title, "Editing card provider" %>
|
||||
|
||||
<div class="md:w-2/3 w-full">
|
||||
<h1 class="font-bold text-4xl">Editing card provider</h1>
|
||||
|
||||
<%= render "form", card_provider: @card_provider %>
|
||||
|
||||
<%= link_to "Show this card provider", @card_provider, class: "w-full sm:w-auto text-center mt-2 sm:mt-0 sm:ml-2 rounded-md px-3.5 py-2.5 bg-gray-100 hover:bg-gray-50 inline-block font-medium" %>
|
||||
<%= link_to "Back to card providers", card_providers_path, class: "w-full sm:w-auto text-center mt-2 sm:mt-0 sm:ml-2 rounded-md px-3.5 py-2.5 bg-gray-100 hover:bg-gray-50 inline-block font-medium" %>
|
||||
</div>
|
||||
@@ -1,29 +0,0 @@
|
||||
<% content_for :title, "Card providers" %>
|
||||
|
||||
<div class="w-full">
|
||||
<% if notice.present? %>
|
||||
<p class="py-2 px-3 bg-green-50 mb-5 text-green-500 font-medium rounded-md inline-block" id="notice"><%= notice %></p>
|
||||
<% end %>
|
||||
|
||||
<div class="flex justify-between items-center">
|
||||
<h1 class="font-bold text-4xl">Card providers</h1>
|
||||
<%= link_to "New card provider", new_card_provider_path, class: "rounded-md px-3.5 py-2.5 bg-blue-600 hover:bg-blue-500 text-white block font-medium" %>
|
||||
</div>
|
||||
|
||||
<div id="card_providers" class="min-w-full divide-y divide-gray-200 space-y-5">
|
||||
<% if @card_providers.any? %>
|
||||
<% @card_providers.each do |card_provider| %>
|
||||
<div class="flex flex-col sm:flex-row justify-between items-center pb-5 sm:pb-0">
|
||||
<%= render card_provider %>
|
||||
<div class="w-full sm:w-auto flex flex-col sm:flex-row space-x-2 space-y-2">
|
||||
<%= link_to "Show", card_provider, class: "w-full sm:w-auto text-center rounded-md px-3.5 py-2.5 bg-gray-100 hover:bg-gray-50 inline-block font-medium" %>
|
||||
<%= link_to "Edit", edit_card_provider_path(card_provider), class: "w-full sm:w-auto text-center rounded-md px-3.5 py-2.5 bg-gray-100 hover:bg-gray-50 inline-block font-medium" %>
|
||||
<%= button_to "Destroy", card_provider, method: :delete, class: "w-full sm:w-auto rounded-md px-3.5 py-2.5 text-white bg-red-600 hover:bg-red-500 font-medium cursor-pointer", data: { turbo_confirm: "Are you sure?" } %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
<% else %>
|
||||
<p class="text-center my-10">No card providers found.</p>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1 +0,0 @@
|
||||
json.array! @card_providers, partial: "card_providers/card_provider", as: :card_provider
|
||||
@@ -1,9 +0,0 @@
|
||||
<% content_for :title, "New card provider" %>
|
||||
|
||||
<div class="md:w-2/3 w-full">
|
||||
<h1 class="font-bold text-4xl">New card provider</h1>
|
||||
|
||||
<%= render "form", card_provider: @card_provider %>
|
||||
|
||||
<%= link_to "Back to card providers", card_providers_path, class: "w-full sm:w-auto text-center mt-2 sm:mt-0 sm:ml-2 rounded-md px-3.5 py-2.5 bg-gray-100 hover:bg-gray-50 inline-block font-medium" %>
|
||||
</div>
|
||||
@@ -1,15 +0,0 @@
|
||||
<% content_for :title, "Showing card provider" %>
|
||||
|
||||
<div class="md:w-2/3 w-full">
|
||||
<% if notice.present? %>
|
||||
<p class="py-2 px-3 bg-green-50 mb-5 text-green-500 font-medium rounded-md inline-block" id="notice"><%= notice %></p>
|
||||
<% end %>
|
||||
|
||||
<h1 class="font-bold text-4xl">Showing card provider</h1>
|
||||
|
||||
<%= render @card_provider %>
|
||||
|
||||
<%= link_to "Edit this card provider", edit_card_provider_path(@card_provider), class: "w-full sm:w-auto text-center rounded-md px-3.5 py-2.5 bg-gray-100 hover:bg-gray-50 inline-block font-medium" %>
|
||||
<%= link_to "Back to card providers", card_providers_path, class: "w-full sm:w-auto text-center mt-2 sm:mt-0 sm:ml-2 rounded-md px-3.5 py-2.5 bg-gray-100 hover:bg-gray-50 inline-block font-medium" %>
|
||||
<%= button_to "Destroy this card provider", @card_provider, method: :delete, form_class: "sm:inline-block mt-2 sm:mt-0 sm:ml-2", class: "w-full rounded-md px-3.5 py-2.5 text-white bg-red-600 hover:bg-red-500 font-medium cursor-pointer", data: { turbo_confirm: "Are you sure?" } %>
|
||||
</div>
|
||||
@@ -1 +0,0 @@
|
||||
json.partial! "card_providers/card_provider", card_provider: @card_provider
|
||||
@@ -1,14 +0,0 @@
|
||||
<div id="<%= dom_id card_rx %>" class="w-full sm:w-auto my-5 space-y-5">
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Help desk:</strong>
|
||||
<%= card_rx.help_desk %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Customer service:</strong>
|
||||
<%= card_rx.customer_service %>
|
||||
</div>
|
||||
<div>
|
||||
<strong class="block font-medium mb-1">Web url:</strong>
|
||||
<%= card_rx.web_url %>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1,2 +0,0 @@
|
||||
json.extract! card_rx, :id, :help_desk, :customer_service, :web_url, :created_at, :updated_at
|
||||
json.url card_rx_url(card_rx, format: :json)
|
||||
@@ -1,32 +0,0 @@
|
||||
<%= form_with(model: card_rx, class: "contents") do |form| %>
|
||||
<% if card_rx.errors.any? %>
|
||||
<div id="error_explanation" class="bg-red-50 text-red-500 px-3 py-2 font-medium rounded-md mt-3">
|
||||
<h2><%= pluralize(card_rx.errors.count, "error") %> prohibited this card_rx from being saved:</h2>
|
||||
|
||||
<ul class="list-disc ml-6">
|
||||
<% card_rx.errors.each do |error| %>
|
||||
<li><%= error.full_message %></li>
|
||||
<% end %>
|
||||
</ul>
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :help_desk %>
|
||||
<%= form.text_field :help_desk, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_rx.errors[:help_desk].none?, "border-red-400 focus:outline-red-600": card_rx.errors[:help_desk].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :customer_service %>
|
||||
<%= form.text_field :customer_service, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_rx.errors[:customer_service].none?, "border-red-400 focus:outline-red-600": card_rx.errors[:customer_service].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="my-5">
|
||||
<%= form.label :web_url %>
|
||||
<%= form.text_field :web_url, class: ["block shadow-sm rounded-md border px-3 py-2 mt-2 w-full", {"border-gray-400 focus:outline-blue-600": card_rx.errors[:web_url].none?, "border-red-400 focus:outline-red-600": card_rx.errors[:web_url].any?}] %>
|
||||
</div>
|
||||
|
||||
<div class="inline">
|
||||
<%= form.submit class: "w-full sm:w-auto rounded-md px-3.5 py-2.5 bg-blue-600 hover:bg-blue-500 text-white inline-block font-medium cursor-pointer" %>
|
||||
</div>
|
||||
<% end %>
|
||||
@@ -1,10 +0,0 @@
|
||||
<% content_for :title, "Editing card rx" %>
|
||||
|
||||
<div class="md:w-2/3 w-full">
|
||||
<h1 class="font-bold text-4xl">Editing card rx</h1>
|
||||
|
||||
<%= render "form", card_rx: @card_rx %>
|
||||
|
||||
<%= link_to "Show this card rx", @card_rx, class: "w-full sm:w-auto text-center mt-2 sm:mt-0 sm:ml-2 rounded-md px-3.5 py-2.5 bg-gray-100 hover:bg-gray-50 inline-block font-medium" %>
|
||||
<%= link_to "Back to card rxes", card_rxes_path, class: "w-full sm:w-auto text-center mt-2 sm:mt-0 sm:ml-2 rounded-md px-3.5 py-2.5 bg-gray-100 hover:bg-gray-50 inline-block font-medium" %>
|
||||
</div>
|
||||
@@ -1,29 +0,0 @@
|
||||
<% content_for :title, "Card rxes" %>
|
||||
|
||||
<div class="w-full">
|
||||
<% if notice.present? %>
|
||||
<p class="py-2 px-3 bg-green-50 mb-5 text-green-500 font-medium rounded-md inline-block" id="notice"><%= notice %></p>
|
||||
<% end %>
|
||||
|
||||
<div class="flex justify-between items-center">
|
||||
<h1 class="font-bold text-4xl">Card rxes</h1>
|
||||
<%= link_to "New card rx", new_card_rx_path, class: "rounded-md px-3.5 py-2.5 bg-blue-600 hover:bg-blue-500 text-white block font-medium" %>
|
||||
</div>
|
||||
|
||||
<div id="card_rxes" class="min-w-full divide-y divide-gray-200 space-y-5">
|
||||
<% if @card_rxes.any? %>
|
||||
<% @card_rxes.each do |card_rx| %>
|
||||
<div class="flex flex-col sm:flex-row justify-between items-center pb-5 sm:pb-0">
|
||||
<%= render card_rx %>
|
||||
<div class="w-full sm:w-auto flex flex-col sm:flex-row space-x-2 space-y-2">
|
||||
<%= link_to "Show", card_rx, class: "w-full sm:w-auto text-center rounded-md px-3.5 py-2.5 bg-gray-100 hover:bg-gray-50 inline-block font-medium" %>
|
||||
<%= link_to "Edit", edit_card_rx_path(card_rx), class: "w-full sm:w-auto text-center rounded-md px-3.5 py-2.5 bg-gray-100 hover:bg-gray-50 inline-block font-medium" %>
|
||||
<%= button_to "Destroy", card_rx, method: :delete, class: "w-full sm:w-auto rounded-md px-3.5 py-2.5 text-white bg-red-600 hover:bg-red-500 font-medium cursor-pointer", data: { turbo_confirm: "Are you sure?" } %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
<% else %>
|
||||
<p class="text-center my-10">No card rxes found.</p>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1 +0,0 @@
|
||||
json.array! @card_rxes, partial: "card_rxes/card_rx", as: :card_rx
|
||||
@@ -1,9 +0,0 @@
|
||||
<% content_for :title, "New card rx" %>
|
||||
|
||||
<div class="md:w-2/3 w-full">
|
||||
<h1 class="font-bold text-4xl">New card rx</h1>
|
||||
|
||||
<%= render "form", card_rx: @card_rx %>
|
||||
|
||||
<%= link_to "Back to card rxes", card_rxes_path, class: "w-full sm:w-auto text-center mt-2 sm:mt-0 sm:ml-2 rounded-md px-3.5 py-2.5 bg-gray-100 hover:bg-gray-50 inline-block font-medium" %>
|
||||
</div>
|
||||
@@ -1,15 +0,0 @@
|
||||
<% content_for :title, "Showing card rx" %>
|
||||
|
||||
<div class="md:w-2/3 w-full">
|
||||
<% if notice.present? %>
|
||||
<p class="py-2 px-3 bg-green-50 mb-5 text-green-500 font-medium rounded-md inline-block" id="notice"><%= notice %></p>
|
||||
<% end %>
|
||||
|
||||
<h1 class="font-bold text-4xl">Showing card rx</h1>
|
||||
|
||||
<%= render @card_rx %>
|
||||
|
||||
<%= link_to "Edit this card rx", edit_card_rx_path(@card_rx), class: "w-full sm:w-auto text-center rounded-md px-3.5 py-2.5 bg-gray-100 hover:bg-gray-50 inline-block font-medium" %>
|
||||
<%= link_to "Back to card rxes", card_rxes_path, class: "w-full sm:w-auto text-center mt-2 sm:mt-0 sm:ml-2 rounded-md px-3.5 py-2.5 bg-gray-100 hover:bg-gray-50 inline-block font-medium" %>
|
||||
<%= button_to "Destroy this card rx", @card_rx, method: :delete, form_class: "sm:inline-block mt-2 sm:mt-0 sm:ml-2", class: "w-full rounded-md px-3.5 py-2.5 text-white bg-red-600 hover:bg-red-500 font-medium cursor-pointer", data: { turbo_confirm: "Are you sure?" } %>
|
||||
</div>
|
||||
@@ -1 +0,0 @@
|
||||
json.partial! "card_rxes/card_rx", card_rx: @card_rx
|
||||
@@ -1,4 +0,0 @@
|
||||
<div id="<%= dom_id comment %>">
|
||||
<%= comment.content %>
|
||||
- <%= time_tag comment.created_at %>
|
||||
</div>
|
||||
@@ -1,5 +0,0 @@
|
||||
<%= form_with model: [ article, Comment.new ] do |form| %>
|
||||
Your comment:<br>
|
||||
<%= form.text_area :content, size: "20x5" %>
|
||||
<%= form.submit %>
|
||||
<% end %>
|
||||
@@ -0,0 +1,29 @@
|
||||
<div
|
||||
class="min-h-full w-2/3 flex-col items-center justify-center py-12 px-4 sm:px-6 lg:px-8 space-y-15"
|
||||
>
|
||||
<div class="flex items-center justify-center text-8xl font-bold text-[#2A4B6F]">
|
||||
<span class="[text-shadow:0_0_20px_#fff,0_0_50px_#0090D9,0_0_80px_#0ff] text-[#04153E]">B</span>acl<span class="relative inline-block">i<span class="absolute top-0 right-0 h-5 w-5 rounded-full bg-[#CD7F32] translate-y-[12px] -translate-x-[4px]"></span></span>ght
|
||||
</div>
|
||||
<div class="flex justify-around space-y w-full">
|
||||
<div class="flex flex-col w-[40%] h-1/2">
|
||||
<div class="flex flex-col items-center h-40 w-full border-l-4 border-b-4 border-atmosphere rounded-xl pl-2 pb-2">
|
||||
<%= link_to employers_path, data: { turbo: false }, class: "flex justify-center items-center w-full h-34 cursor-pointer bg-atmosphere hover:bg-deepcove border-4 border-atmosphere text-platinum hover:text-copper text-xl font-bold px-3 rounded-md mt-3 transition duration-100" do %>
|
||||
<%= icon "layout-dashboard", library: "lucide", class: "h-3/4 w-3/4 text-center rounded-md" %>
|
||||
<% end %>
|
||||
<h3 class="font-bold text-2xl text-platinum my-5">
|
||||
<%= "Employer Control" %>
|
||||
</h2>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex flex-col w-[40%] h-1/2">
|
||||
<div class="flex flex-col items-center h-40 w-full border-l-4 border-b-4 border-cobalt-vivid rounded-xl pl-2 pb-2">
|
||||
<%= link_to id_card_print_index_path, data: { turbo: false }, class: "flex justify-center items-center w-full h-34 cursor-pointer bg-cobalt-vivid hover:bg-deepcove border-4 border-cobalt-vivid text-platinum hover:text-copper text-xl font-bold px-3 rounded-md mt-3 transition duration-100" do %>
|
||||
<%= icon "printer", library: "lucide", class: "h-3/4 w-3/4 text-center rounded-md" %>
|
||||
<% end %>
|
||||
<h3 class="font-bold text-2xl text-platinum my-5">
|
||||
<%= "ID Card Printer" %>
|
||||
</h2>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,14 @@
|
||||
<div class="flex items-center justify-center min-h-full w-full">
|
||||
<div class="flex flex-col text-7xl font-bold text-[#2A4B6F] space-y-30">
|
||||
<div>
|
||||
<span class="[text-shadow:0_0_20px_#fff,0_0_50px_#0090D9,0_0_80px_#0ff] text-[#04153E]">B</span>acl<span class="text-[#CD7F32]">i</span>ght
|
||||
</div>
|
||||
<div>
|
||||
<span class="[text-shadow:0_0_20px_#fff,0_0_50px_#0090D9,0_0_80px_#0ff] text-[#04153E]">B</span>acl<span class="relative inline-block">i<span class="absolute top-0 right-0 h-3 w-3 rounded-full bg-[#CD7F32] translate-y-[12px] -translate-x-[4px]"></span></span>ght
|
||||
</div>
|
||||
<div>
|
||||
<span class="justify-self-end [text-shadow:0_0_20px_#fff,0_0_50px_#0090D9,0_0_80px_#0ff] text-[#04153E]">B</span>acl<span class="relative inline-block">i<span class="absolute top-0 right-0 h-3 w-3 rounded-full bg-[#CD7F32] translate-y-[13px] -translate-x-[4px] shadow-[0_0_7px_2px_#93c5fd]"></span></span>ght
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
<div
|
||||
class="min-h-full flex items-center justify-center py-12 px-4 sm:px-6 lg:px-8"
|
||||
>
|
||||
<div class="max-w-md w-full space-y-8">
|
||||
<div>
|
||||
<div class="flex flex-col text-8xl font-bold text-[#2A4B6F] space-y-30">
|
||||
<div>
|
||||
<span class="[text-shadow:0_0_20px_#fff,0_0_50px_#0090D9,0_0_80px_#0ff] text-[#04153E]">B</span>acl<span class="relative inline-block">i<span class="absolute top-0 right-0 h-5 w-5 rounded-full bg-[#CD7F32] translate-y-[12px] -translate-x-[4px]"></span></span>ght
|
||||
</div>
|
||||
</div>
|
||||
<h2 class="mt-10 text-center text-2xl font-extrabold text-[#CD7F32]">
|
||||
Britton Ancillary Center
|
||||
</h2>
|
||||
</div>
|
||||
<%= form_for(resource, as: resource_name, url: session_path(resource_name), html: { data: { turbo: false} }) do |f| %>
|
||||
<div class="mt-8 space-y-6">
|
||||
<input type="hidden" name="remember" value="true" />
|
||||
<div class="rounded-md shadow-sm -space-y-px">
|
||||
<div>
|
||||
<%= f.label :email, class: "sr-only", for: "email-address" %>
|
||||
<%= f.email_field :email, id: "email-address", autofocus: true, autocomplete: "email", placeholder: "Email address", class: "appearance-none rounded-none relative block w-full px-3 py-2 border border-gray-300 placeholder-bluetang text-deepcove rounded-t-md focus:outline-none focus:ring-indigo-500 focus:border-indigo-500 focus:z-10 sm:text-sm" %>
|
||||
</div>
|
||||
<div>
|
||||
<%= f.label :password, for: "password", class: "sr-only" %>
|
||||
<%= f.password_field :password, id: "password", autocomplete: "current-password", placeholder: "Password", class: "appearance-none rounded-none relative block w-full px-3 py-2 border border-gray-300 placeholder-bluetang text-deepcove rounded-b-md focus:outline-none focus:ring-indigo-500 focus:border-indigo-500 focus:z-10 sm:text-sm" %>
|
||||
</div>
|
||||
</div>
|
||||
<% if devise_mapping.rememberable? %>
|
||||
<div class="flex items-center justify-between">
|
||||
<div class="field flex items-center">
|
||||
<%= f.check_box :remember_me, class: "h-4 w-4 text-[#CD7F32] focus:ring-indigo-500 border-[#CD7F32] rounded" %>
|
||||
<%= f.label :remember_me, class: "ml-2 block font-semibold text-md text-[#CD7F32]" %>
|
||||
</div>
|
||||
<div class="text-md">
|
||||
<%- if devise_mapping.recoverable? && controller_name != 'passwords' && controller_name != 'registrations' %>
|
||||
<%= link_to "Forgot your password?", new_password_path(resource_name), class: "font-semibold text-atmosphere hover:text-bluemana" %>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
<div>
|
||||
<%= f.submit "Sign in", { class: "relative w-full flex justify-center py-2 px-4 border-4 font-bold rounded-lg text-platinum" } %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,15 @@
|
||||
<% if resource.errors.any? %>
|
||||
<div id="error_explanation" data-turbo-temporary>
|
||||
<h2>
|
||||
<%= I18n.t("errors.messages.not_saved",
|
||||
count: resource.errors.count,
|
||||
resource: resource.class.model_name.human.downcase)
|
||||
%>
|
||||
</h2>
|
||||
<ul>
|
||||
<% resource.errors.full_messages.each do |message| %>
|
||||
<li><%= message %></li>
|
||||
<% end %>
|
||||
</ul>
|
||||
</div>
|
||||
<% end %>
|
||||
@@ -0,0 +1,25 @@
|
||||
<%- if controller_name != 'sessions' %>
|
||||
<p><%= link_to "Log in", new_session_path(resource_name) %></p>
|
||||
<% end %>
|
||||
|
||||
<%- if devise_mapping.registerable? && controller_name != 'registrations' %>
|
||||
<p><%= link_to "Sign up", new_registration_path(resource_name) %></p>
|
||||
<% end %>
|
||||
|
||||
<%- if devise_mapping.recoverable? && controller_name != 'passwords' && controller_name != 'registrations' %>
|
||||
<p><%= link_to "Forgot your password?", new_password_path(resource_name) %></p>
|
||||
<% end %>
|
||||
|
||||
<%- if devise_mapping.confirmable? && controller_name != 'confirmations' %>
|
||||
<p><%= link_to "Didn't receive confirmation instructions?", new_confirmation_path(resource_name) %></p>
|
||||
<% end %>
|
||||
|
||||
<%- if devise_mapping.lockable? && resource_class.unlock_strategy_enabled?(:email) && controller_name != 'unlocks' %>
|
||||
<p><%= link_to "Didn't receive unlock instructions?", new_unlock_path(resource_name) %></p>
|
||||
<% end %>
|
||||
|
||||
<%- if devise_mapping.omniauthable? %>
|
||||
<%- resource_class.omniauth_providers.each do |provider| %>
|
||||
<p><%= button_to "Sign in with #{OmniAuth::Utils.camelize(provider)}", omniauth_authorize_path(resource_name, provider), data: { turbo: false } %></p>
|
||||
<% end %>
|
||||
<% end %>
|
||||
@@ -1,32 +0,0 @@
|
||||
<div class="flex space-x-5 items-center mt-4">
|
||||
<div class="flex flex-col items-start w-full">
|
||||
<div class="flex items-end w-full">
|
||||
<div class="flex flex-col">
|
||||
<%= f.select :network_logo, options_for_select(CardLogoFile.where(logo_type: 'network').pluck(:filename).map { |fn| [fn, fn]}), { include_blank: "Select or Add Network Logo", class: "rounded-r-none" }, { data: { logo_upload_target: "logoSelect" }} %>
|
||||
</div>
|
||||
<div class="flex items-center justify-center cursor-pointer bg-NEXT_COLOR hover:bg-deepcove border-2 border-NEXT_COLOR text-platinum font-bold px-3 rounded-r h-10 transition duration-100">
|
||||
<label for="file_upload_input_NEW_RECORD" class="text-center cursor-pointer">
|
||||
<%= icon "image-plus", library: "lucide" %>
|
||||
</label>
|
||||
</div>
|
||||
<div class="hidden flex justify-center ml-4 rounded-lg border-4 border-NEXT_COLOR" data-logo-upload-target="previewContainer">
|
||||
<img data-logo-upload-target="preview" src="#" alt="Network Logo preview" class="max-h-[100px] max-w-[133px] m-1 bg-platinum"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<%= network_fields.file_field :network_logo_file, class: "hidden", id: "file_upload_input_NEW_RECORD", data: { add_alt_network_logo_target: "networkLogo", logo_upload_type_param: "network", action: "change->logo-upload#uploadLogo" }, direct_upload: true %>
|
||||
</div>
|
||||
<div class="flex items-end space-x-6 w-full">
|
||||
<div class="w-full">
|
||||
<%= network_fields.select :exception_type, options_for_select(["Zip","State"]), label: { text: "Exception Type" }, prompt: "Select Type", class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= network_fields.text_field :exception_values, label: { text: "Exception Values" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex justify-center items-end w-full">
|
||||
<div class="w-1/2">
|
||||
<%= network_fields.hidden_field :_destroy %>
|
||||
<%= button_tag "Remove", class: "cursor-pointer bg-deepcove hover:bg-brightlava text-xl font-bold text-NEXT_SECONDARY_COLOR hover:text-platinum py-1 px-2 font-semibold leading-tight rounded-lg border-3 border-NEXT_SECONDARY_COLOR w-full", data: { action: "add-alt-network-logo#remove" } %>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1,23 +0,0 @@
|
||||
<div class="flex flex-col items-stretch justify-end pr-6 pl-1 w-1/4">
|
||||
<%= plan_fields.fields_for :plan_benefits do |plan_benefits_fields| %>
|
||||
<%= render 'plan_benefits_desc_fields', plan_benefits_fields: plan_benefits_fields %>
|
||||
<% end %>
|
||||
</div>
|
||||
<div class="inline-flex flex-col justify-end pr-6 pl-1 mt-10 relative w-1/4" data-controller="benefits-template-picker">
|
||||
<div class="absolute left-0 top-[2%] h-[98%] border-l-4 <%= "border-#{IdCard::Setup::FORM_COLORS[i]}" %> rounded-bl-lg"></div>
|
||||
<div class="font-bold text-2xl <%= "text-#{IdCard::Setup::FORM_COLORS[i]}" %> -ml-[6px] z-2 w-full">
|
||||
<%= "Plan #{i + 1}" %>
|
||||
</div>
|
||||
<div class="pl-1 w-full">
|
||||
<%= plan_fields.text_field :title, label: { text: "Plan Title" }, class: "w-full", data: { add_plan_target: "plan" } %>
|
||||
</div>
|
||||
<div class="pl-1 w-full">
|
||||
<%= plan_fields.text_field :plan_id, label: { text: "Plan Id" }, class: "w-full" %>
|
||||
</div>
|
||||
<div class="pl-1">
|
||||
<%= f.select :template_id, options_from_collection_for_select(@form.plan_templates, :id, :title), { prompt: "Select Plan Template" }, { data: { action: "benefits-template-picker#fetchData" }} %>
|
||||
</div>
|
||||
<%= plan_fields.fields_for :plan_benefits do |plan_benefits_fields| %>
|
||||
<%= render 'plan_benefits_fields', plan_benefits_fields: plan_benefits_fields %>
|
||||
<% end %>
|
||||
</div>
|
||||
@@ -1,4 +0,0 @@
|
||||
<div class="pl-1 w-full">
|
||||
<%= plan_benefits_fields.text_field :benefit, label: { text: "#{plan_benefits_fields.object.benefit_desc}" }, data: { benefits_template_picker_target: "benefit", sequence: plan_benefits_fields.object.sequence}, class: "w-full" %>
|
||||
<%= plan_benefits_fields.hidden_field :sequence %>
|
||||
</div>
|
||||
@@ -1,3 +0,0 @@
|
||||
<div class="pl-1 w-full">
|
||||
<%= plan_benefits_fields.text_field :benefit_desc, label: { text: "Benefit Description #{plan_benefits_fields.object.sequence}" }, class: "w-full" %>
|
||||
</div>
|
||||
@@ -1,5 +0,0 @@
|
||||
<div class="pl-1 pt-2 w-full">
|
||||
<%= plan_benefits_fields.text_field :benefit, label: { text: "#{plan_benefits_fields.object.benefit_desc}" }, data: { benefits_template_picker_target: "benefit", sequence: plan_benefits_fields.object.sequence}, class: "w-full" %>
|
||||
<%= plan_benefits_fields.hidden_field :benefit_desc %>
|
||||
<%= plan_benefits_fields.hidden_field :sequence %>
|
||||
</div>
|
||||
@@ -1,13 +0,0 @@
|
||||
<div class="pl-1 w-full">
|
||||
<%= plan_fields.text_field :title, label: { text: "Plan Title" }, class: "w-full", data: { add_plan_target: "plan" } %>
|
||||
</div>
|
||||
<% if f.object.persisted? %>
|
||||
<div class="pl-1 w-full">
|
||||
<%= plan_fields.text_field :plan_id, label: { text: "Plan Id" }, class: "w-full" %>
|
||||
</div>
|
||||
<% end %>
|
||||
<div class="pl-1 pb-2 w-full">
|
||||
<%= f.select :template_id, options_from_collection_for_select(@plan_templates, :id, :title), { prompt: "Select Plan Template", class: "w-full" }, { data: { action: "benefits-template-picker#fetchData" }} %>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -1,126 +0,0 @@
|
||||
<div class="bg-deepcove h-full w-full flex flex-col">
|
||||
<h1 class="font-bold text-4xl text-platinum my-5">Edit Employer</h1>
|
||||
<%= form_with model: @employer_setup, url: employer_setup_index_path, local: true, multipart: true do |f| %>
|
||||
<div class="flex flex-col space-y-6">
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="font-bold text-2xl text-bluemana">General Information</h3>
|
||||
<div class="h-[1px] w-1/2 mt-2 bg-bluemana"></div>
|
||||
</div>
|
||||
<div class="flex w-full items-end" data-controller="logo-upload">
|
||||
<div class="flex flex-col space-y-6 w-3/5">
|
||||
<div class="flex space-x-10">
|
||||
<div class="w-full">
|
||||
<%= f.text_field :employer_name, label: { text: "Employer Name" }, class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= f.text_field :slug, label: { text: "Slug" }, class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= f.text_field :group_number, label: { text: "Group/Medical Number" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex space-x-10">
|
||||
<div class="w-full">
|
||||
<%= f.text_field :pl_plan_key, label: { text: "Pl Plan Key" }, class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= f.text_field :effective_date, label: { text: "Effective Date" }, class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= f.select :network_provider, options_for_select(["Cigna", "Medcost"]), label: { text: "Provider Network" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex items-end">
|
||||
<div class="flex flex-col">
|
||||
<%= f.text_field :employer_logo, data: { logo_upload_target: "logofield" }, class: "w-full rounded-r-none", readonly: true %>
|
||||
</div>
|
||||
<div class="flex items-center justify-center cursor-pointer bg-atmosphere hover:bg-deepcove border-2 border-atmosphere text-platinum font-bold px-3 rounded-r h-10 transition duration-100">
|
||||
<label for="file_upload_input_employer" class="text-center cursor-pointer">
|
||||
<%= icon "image-plus", library: "lucide" %>
|
||||
</label>
|
||||
</div>
|
||||
<%= f.file_field :add_or_update_logo, class: "hidden", id: "file_upload_input_employer", data: { logo_upload_target: "input", logo_upload_type_param: "employer", action: "change->logo-upload#uploadLogo" }, direct_upload: true %>
|
||||
<div class="ml-15">
|
||||
<img data-logo-upload-target="preview" src="#" alt="Employer Logo preview" class="hidden max-h-[150px] max-w-[200px] bg-platinum"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="font-bold text-2xl text-bluemana">Plans Information</h3>
|
||||
<div class="h-[1px] w-1/2 mt-2 bg-bluemana"></div>
|
||||
</div>
|
||||
<div class="w-full flex my-8" data-controller="add-plan" data-add-plan-form-color-value="<%= IdCard::Setup::FORM_COLORS.to_json %>" >
|
||||
<div class="flex flex-wrap w-full" data-add-plan-target="container">
|
||||
<% @employer_setup.plans.each_with_index do |plan, index| %>
|
||||
<%= f.fields_for :plans, plan, child_index: index do |plan_fields| %>
|
||||
<div class="inline-flex flex-col pr-6 w-1/4 relative pl-1" data-controller="benefits-template-picker">
|
||||
<div class="absolute left-0 top-[2%] h-[98%] border-l-4 <%= "border-#{IdCard::Setup::FORM_COLORS[index]}" %>"></div>
|
||||
<div class="font-bold text-2xl <%= "text-#{IdCard::Setup::FORM_COLORS[index]}" %> -ml-[6px] z-2 w-full">
|
||||
<%= "Plan #{index + 1}" %>
|
||||
</div>
|
||||
<%= render 'plan_fields', plan_fields: plan_fields, f: f, index: index %>
|
||||
<div class="text-xl text-left font-bold pl-[2px] mb-[-4px] z-1 <%= "text-#{IdCard::Setup::FORM_COLORS[index]}" %>">
|
||||
Benefit Values
|
||||
</div>
|
||||
<div class="w-full h-[3px] rounded-r <%= "bg-#{index % 2 == 1 ? 'bronze' : 'copper'}" %> ml-[3px]"></div>
|
||||
<%= plan_fields.fields_for :plan_benefits do |plan_benefits_fields| %>
|
||||
<%= render 'plan_benefits_fields', plan_benefits_fields: plan_benefits_fields %>
|
||||
<% end %>
|
||||
<div class="mt-4 pl-1">
|
||||
<%= plan_fields.hidden_field :_destroy %>
|
||||
<%= button_tag "Remove Plan #{index + 1}", class: "cursor-pointer bg-deepcove hover:bg-brightlava text-xl font-bold text-#{index % 2 == 1 ? 'bronze' : 'copper'} hover:text-platinum py-2 px-4 font-semibold leading-tight rounded-lg border-3 border-NEXT_SECONDARY_COLOR w-full", data: { action: "add-plan#remove" } %>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<% end %>
|
||||
<% end %>
|
||||
<%= button_tag "Add a Plan", class: "cursor-pointer text-2xl font-bold py-2 pr-6 mt-10 w-[calc(24%-1rem)] w-1/4 min-h-[940px] text-[#E0E0E0] rounded-lg font-medium border border-[#E0E0E0] bg-[#173057] hover:bg-transparent hover:shadow-[0_0_10px_3px_#93c5fd] transition-colors duration-150", data: { action: "add-plan#add", add_plan_target: "button" } %>
|
||||
<template data-add-plan-target="template">
|
||||
<%= f.fields_for :plans, Plan.new, child_index: 'NEW_RECORD' do |plan_fields| %>
|
||||
<div class="inline-flex flex-col justify-end pr-6 w-1/4 relative pl-1" data-controller="benefits-template-picker">
|
||||
<div class="absolute left-0 top-[2%] h-[98%] border-l-4 border-NEXT_COLOR"></div>
|
||||
<div class="font-bold text-2xl text-NEXT_COLOR -ml-[6px] z-2 w-full">
|
||||
<%= "Plan NEW_PLAN" %>
|
||||
</div>
|
||||
<%= render 'plan_fields', plan_fields: plan_fields, f: f, index: "NEW_RECORD".to_i %>
|
||||
<div class="text-xl text-left font-bold pl-[2px] mb-[-4px] z-1 text-NEXT_COLOR">
|
||||
Benefit Values
|
||||
</div>
|
||||
<div class="w-full h-[3px] rounded-r bg-NEXT_SECONDARY_COLOR ml-[3px]"></div>
|
||||
<%= plan_fields.fields_for :plan_benefits do |plan_benefits_fields| %>
|
||||
<%= render 'plan_benefits_fields', plan_benefits_fields: plan_benefits_fields %>
|
||||
<% end %>
|
||||
<div class="mt-4 pl-1">
|
||||
<%= plan_fields.hidden_field :_destroy %>
|
||||
<%= button_tag "Remove Plan NEW_PLAN", class: "cursor-pointer bg-deepcove hover:bg-brightlava text-xl font-bold text-NEXT_SECONDARY_COLOR hover:text-platinum py-2 px-4 font-semibold leading-tight rounded-lg border-3 border-NEXT_SECONDARY_COLOR w-full", data: { action: "add-plan#remove" } %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</template>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="font-bold text-2xl text-bluemana">Alternative Network Information</h3>
|
||||
<div class="h-[1px] w-1/2 mt-2 bg-bluemana"></div>
|
||||
</div>
|
||||
<div class="flex w-full justify-start" data-controller="add-alt-network-logo" data-add-alt-network-logo-form-color-value="<%= IdCard::Setup::FORM_COLORS.to_json %>">
|
||||
<div class="flex flex-wrap w-full" data-add-alt-network-logo-target="container">
|
||||
<%= button_tag "Add a Regional Logo", class: "cursor-pointer text-lg font-medium py-2 px-4 rounded w-1/7 h-75 my-8 text-[#E0E0E0] rounded-lg border border-[#C2C2C2] hover:shadow-[0_0_10px_3px_#93c5fd]", data: { action: "add-alt-network-logo#add", add_alt_network_logo_target: "button" } %>
|
||||
</div>
|
||||
<template data-add-alt-network-logo-target="template">
|
||||
<%= f.fields_for :alternate_network_logos, AlternateNetworkLogo.new, child_index: 'NEW_RECORD' do |network_fields| %>
|
||||
<div class="flex flex-col my-8 mr-3 space-y-6 px-3" data-controller="add-network-exception" data-add-network-exception-parent-color-value="NEXT_SECONDARY_COLOR">
|
||||
<%= render 'alt_network_logo_fields', network_fields: network_fields, f: f %>
|
||||
</div>
|
||||
<% end %>
|
||||
</template>
|
||||
</div>
|
||||
<div class="pt-8">
|
||||
<%= f.submit "Submit" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
@@ -1,47 +0,0 @@
|
||||
<div class="bg-deepcove h-full w-full flex flex-col">
|
||||
<h1 class="font-bold text-4xl text-platinum">New Employer Setup</h1>
|
||||
<h3 class="font-bold text-2xl text-bluemana">General Information</h3>
|
||||
<%= form_with model: @form, url: employer_setup_index_path, local: true do |f| %>
|
||||
<div class="flex flex-col space-y-6">
|
||||
<div class="flex space-x-10">
|
||||
<div class="w-1/5">
|
||||
<%= f.text_field :name, label: { text: "Employer Name" }, class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-1/5">
|
||||
<%= f.text_field :group_number, label: { text: "Group/Medical Number" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex space-x-10">
|
||||
<div class="w-1/5">
|
||||
<%= f.text_field :pl_plan_key, label: { text: "Pl Plan Key" }, class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-1/5">
|
||||
<%= f.text_field :effective_date, label: { text: "Effective Date" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex space-x-10">
|
||||
<div class="w-1/5">
|
||||
<%= f.select :network, options_for_select(["Cigna", "Cigna+Regional", "Medcost"]), label: { text: "Provider Network" }, data: { controller: "form-toggle", action: "change->form-toggle#toggleDivs" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex space-x-5 items-center mt-4">
|
||||
<label for="file_upload_input" class="cursor-pointer bg-atmosphere hover:bg-bluetang text-platinum font-bold py-2 px-4 rounded border border-platinum">
|
||||
Choose Employer Logo File
|
||||
</label>
|
||||
<span id="file_name_display" class="ml-2 text-bluemana font-semibold">No file chosen</span>
|
||||
<%= f.file_field :employer_logo, class: "hidden", id: "file_upload_input" %>
|
||||
</div>
|
||||
<div class="pt-8">
|
||||
<%= f.submit "Continue to Plans" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
|
||||
|
||||
<script>
|
||||
document.getElementById('file_upload_input').addEventListener('change', function(e) {
|
||||
var fileName = e.target.files[0] ? e.target.files[0].name : 'No file chosen';
|
||||
document.getElementById('file_name_display').textContent = fileName;
|
||||
});
|
||||
</script>
|
||||
@@ -1,10 +0,0 @@
|
||||
<div class="bg-deepcove h-full w-full flex flex-col">
|
||||
<h1 class="font-bold text-4xl text-platinum my-5">Employer Setups</h1>
|
||||
<% plan_colors = IdCard::Setup::FORM_COLORS.push('copper', 'bronze').shuffle %>
|
||||
<% @employer_setups.each_with_index do |es, index| %>
|
||||
<% item_color_index = index == 0 ? 0 : index % plan_colors.length %>
|
||||
<div class="w-full flex text-2xl text-platinum font-bold px-4 py-4 ml-10 rounded-lg border-l-5 border-b-2 <%= "border-#{plan_colors[item_color_index]}" %>">
|
||||
<%= es.employer_name %>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
@@ -1,68 +0,0 @@
|
||||
<div class="min-h-screen w-full flex flex-col" data-controller="add-alt-network-logo" data-add-alt-network-logo-form-color-value="<%= IdCard::Setup::FORM_COLORS.to_json %>">
|
||||
<h1 class="font-bold text-4xl text-platinum">New Employer Setup</h1>
|
||||
<h3 class="font-bold text-2xl text-bluemana">Provider Network</h3>
|
||||
<%= form_with model: @form, url: employer_setup_index_path, local: true do |f| %>
|
||||
|
||||
<div class="flex w-full justify-start">
|
||||
<div class="flex flex-wrap w-full" data-add-alt-network-logo-target="container">
|
||||
<%= button_tag "Add a Regional Logo", class: "cursor-pointer text-lg font-medium py-2 px-4 rounded w-1/7 h-75 my-8 text-[#E0E0E0] rounded-lg border border-[#C2C2C2] hover:shadow-[0_0_10px_3px_#93c5fd]", data: { action: "add-alt-network-logo#add", add_alt_network_logo_target: "button" } %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="py-10">
|
||||
<%= f.hidden_field :pl_plan_key, value: "fake" %>
|
||||
<%= f.submit "Continue to Summary" %>
|
||||
</div>
|
||||
<template data-add-alt-network-logo-target="template">
|
||||
<%= f.fields_for :network_exceptions, index: 'NEW_RECORD' do |network_fields| %>
|
||||
<div class="flex flex-col my-8 mr-3 space-y-6 px-3" data-controller="add-network-exception">
|
||||
<div class="flex space-x-5 items-center mt-4">
|
||||
<label for="file_upload_input_NEW_RECORD" class="cursor-pointer bg-NEXT_COLOR hover:bg-NEXT_COLOR-tinted text-platinum font-bold py-2 px-4 rounded border border-platinum">
|
||||
Choose Network Logo File
|
||||
</label>
|
||||
<span id="file_name_display_NEW_RECORD" class="ml-2 text-NEXT_COLOR font-semibold">No file chosen</span>
|
||||
<%= network_fields.file_field :network_logo, class: "hidden", id: "file_upload_input_NEW_RECORD", data: { add_alt_network_logo_target: "networkLogo" } %>
|
||||
</div>
|
||||
<%= network_fields.fields_for :exceptions, index: 0 do |exception_fields| %>
|
||||
<div class="flex space-x-6 w-full">
|
||||
<div class="w-full">
|
||||
<%= exception_fields.select :type, options_for_select(["Zip","State"]), label: { text: "Exception Type" }, prompt: "Select Type", class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= exception_fields.text_field :value, label: { text: "Exception Value" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
<div class="flex flex-col w-full space-y-6" data-add-network-exception-target="container"></div>
|
||||
<%= button_tag "Add an exception rule", class: "cursor-pointer bg-NEXT_COLOR hover:bg-NEXT_COLOR-tinted text-platinum text-lg font-bold py-2 px-4 rounded border border-platinum w-full", data: { action: "add-network-exception#add" } %>
|
||||
<template data-add-network-exception-target="template">
|
||||
<%= network_fields.fields_for :exceptions, index: 'NEW_EXC_RECORD' do |exception_fields| %>
|
||||
<div class="flex space-x-6 w-full">
|
||||
<div class="w-full">
|
||||
<%= exception_fields.select :type, options_for_select(["Zip","State"]), label: { text: "Exception Type" }, prompt: "Select Type", class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= exception_fields.text_field :value, label: { text: "Exception Value" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</template>
|
||||
</div>
|
||||
<% end %>
|
||||
</template>
|
||||
|
||||
|
||||
<% end %>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<script>
|
||||
const logoButtons = document.querySelectorAll('[id^="file_upload_input_"]');
|
||||
logoButtons.forEach(button => {
|
||||
button.addEventListener('change', function(e) {
|
||||
var fileName = e.target.files[0] ? e.target.files[0].name : 'No file chosen';
|
||||
var targetIndex = e.target.id.slice(-1);
|
||||
document.getElementById(`file_name_display_${targetIndex}`).textContent = fileName;
|
||||
});
|
||||
})
|
||||
</script>
|
||||
@@ -1,130 +0,0 @@
|
||||
<div class="bg-deepcove h-full w-full flex flex-col">
|
||||
<div class="flex justify-between">
|
||||
<h1 class="font-bold text-4xl text-platinum my-5">New Employer</h1>
|
||||
<%= form_with model: @employer_setup, url: import_employer_setup_index_path, data: { turbo: false }, local: true, multipart: true do |form| %>
|
||||
<div class="flex space-x-4">
|
||||
<div class="flex flex-col">
|
||||
<%= form.label :import_from_word, 'ID Card Setup Word Doc', class: "block text-platinum font-bold mb-1 md:mb-0 pr-4" %>
|
||||
<%= form.file_field :import_from_word %>
|
||||
</div>
|
||||
<%= form.submit "Import" %>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
<%= form_with model: @employer_setup, url: employer_setup_index_path, local: true, multipart: true do |f| %>
|
||||
<div class="flex flex-col space-y-6 pb-10">
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="font-bold text-2xl text-bluemana">General Information</h3>
|
||||
<div class="h-[1px] w-1/2 mt-2 bg-bluemana"></div>
|
||||
</div>
|
||||
<div class="flex w-full items-end" data-controller="logo-upload">
|
||||
<div class="flex flex-col space-y-6 w-2/5">
|
||||
<div class="flex space-x-10">
|
||||
<div class="w-full">
|
||||
<%= f.text_field :employer_name, label: { text: "Employer Name" }, data: { logo_upload_target: "employer" }, class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= f.text_field :group_number, label: { text: "Group/Medical Number" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex space-x-10">
|
||||
<div class="w-full">
|
||||
<%= f.text_field :effective_date, label: { text: "Effective Date" }, class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= f.select :network_provider, options_for_select(["Cigna", "Medcost"]), label: { text: "Provider Network" }, data: { logo_upload_target: "network" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex items-start">
|
||||
<div class="flex">
|
||||
<div class="flex flex-col">
|
||||
<%= f.text_field :employer_logo, value: "No logo added", data: { logo_upload_target: "logofield" }, class: "w-full rounded-r-none", readonly: true %>
|
||||
</div>
|
||||
<div class="flex items-center justify-center self-end cursor-pointer bg-atmosphere hover:bg-deepcove border-2 border-atmosphere text-platinum font-bold px-3 rounded-r h-10 transition duration-100">
|
||||
<label for="file_upload_input_employer" class="text-center cursor-pointer">
|
||||
<%= icon "image-plus", library: "lucide" %>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="hidden flex justify-center ml-15 rounded-lg border-4 border-atmosphere" data-logo-upload-target="previewContainer">
|
||||
<img data-logo-upload-target="preview" src="#" alt="Employer Logo preview" class="max-h-[100px] max-w-[133px] bg-platinum m-1"/>
|
||||
</div>
|
||||
<%= f.file_field :add_or_update_logo, class: "hidden", id: "file_upload_input_employer", data: { logo_upload_target: "previewContainer", logo_upload_type_param: "employer", action: "change->logo-upload#uploadLogo" }, direct_upload: true %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="font-bold text-2xl text-bluemana">Plans Information</h3>
|
||||
<div class="h-[1px] w-1/2 mt-2 bg-bluemana"></div>
|
||||
</div>
|
||||
<div class="w-full flex my-8" data-controller="add-plan" data-add-plan-form-color-value="<%= IdCard::Setup::FORM_COLORS.to_json %>" >
|
||||
<div class="flex flex-wrap w-full" data-add-plan-target="container">
|
||||
<%= f.fields_for :plans, @employer_setup.plans.first, child_index: 0 do |plan_fields| %>
|
||||
<div class="inline-flex flex-col justify-end pr-6 w-1/4 relative pl-1" data-controller="benefits-template-picker">
|
||||
<div class="absolute left-0 top-[2%] h-[98%] border-l-4 <%= "border-#{IdCard::Setup::FORM_COLORS[0]}" %> "></div>
|
||||
<div class="font-bold text-2xl <%= "text-#{IdCard::Setup::FORM_COLORS[0]}" %> -ml-[6px] z-2 w-full">
|
||||
<%= "Plan 1" %>
|
||||
</div>
|
||||
<%= render 'plan_fields', plan_fields: plan_fields, f: f, index: 0 %>
|
||||
<div class="text-xl text-left font-bold pl-[2px] mb-[-4px] z-1 <%= "text-#{IdCard::Setup::FORM_COLORS[0]}" %>">
|
||||
Benefit Values
|
||||
</div>
|
||||
<div class="w-full h-[3px] rounded-r bg-bronze ml-[3px]"></div>
|
||||
<%= plan_fields.fields_for :plan_benefits do |plan_benefits_fields| %>
|
||||
<%= render 'plan_benefits_fields', plan_benefits_fields: plan_benefits_fields %>
|
||||
<% end %>
|
||||
<div class="mt-4 pl-1">
|
||||
<%= plan_fields.hidden_field :_destroy %>
|
||||
<%= button_tag "Remove Plan 1", class: "cursor-pointer bg-deepcove hover:bg-brightlava text-xl font-bold text-copper hover:text-platinum py-2 px-4 font-semibold leading-tight rounded-lg border-3 border-copper w-full", data: { action: "add-plan#remove" } %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
<%= button_tag "Add a Plan", class: "cursor-pointer text-2xl font-bold py-2 pr-6 mt-10 w-[calc(24%-1rem)] w-1/4 min-h-[940px] text-[#E0E0E0] rounded-lg font-medium border border-[#E0E0E0] bg-[#173057] hover:bg-transparent hover:shadow-[0_0_10px_3px_#93c5fd] transition-colors duration-150", data: { action: "add-plan#add", add_plan_target: "button" } %>
|
||||
</div>
|
||||
<template data-add-plan-target="template">
|
||||
<%= f.fields_for :plans, Plan.new, child_index: 'NEW_RECORD' do |plan_fields| %>
|
||||
<div class="inline-flex flex-col justify-end pr-6 w-1/4 relative pl-1" data-controller="benefits-template-picker">
|
||||
<div class="absolute left-0 top-[2%] h-[98%] border-l-4 border-NEXT_COLOR"></div>
|
||||
<div class="font-bold text-2xl text-NEXT_COLOR -ml-[6px] z-2 w-full">
|
||||
<%= "Plan NEW_PLAN" %>
|
||||
</div>
|
||||
<%= render 'plan_fields', plan_fields: plan_fields, f: f, index: "NEW_RECORD".to_i %>
|
||||
<div class="text-xl text-left font-bold pl-[2px] mb-[-4px] z-1 text-NEXT_COLOR">
|
||||
Benefit Values
|
||||
</div>
|
||||
<div class="w-full h-[3px] rounded-r bg-NEXT_SECONDARY_COLOR ml-[3px]"></div>
|
||||
<%= plan_fields.fields_for :plan_benefits do |plan_benefits_fields| %>
|
||||
<%= render 'plan_benefits_fields', plan_benefits_fields: plan_benefits_fields %>
|
||||
<% end %>
|
||||
<div class="mt-4 pl-1">
|
||||
<%= plan_fields.hidden_field :_destroy %>
|
||||
<%= button_tag "Remove Plan NEW_PLAN", class: "cursor-pointer bg-deepcove hover:bg-brightlava text-xl font-bold text-NEXT_SECONDARY_COLOR hover:text-platinum py-2 px-4 font-semibold leading-tight rounded-lg border-3 border-NEXT_SECONDARY_COLOR w-full", data: { action: "add-plan#remove" } %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</template>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="font-bold text-2xl text-bluemana">Alternative Network Information</h3>
|
||||
<div class="h-[1px] w-1/2 mt-2 bg-bluemana"></div>
|
||||
</div>
|
||||
<div class="flex w-full justify-start" data-controller="add-alt-network-logo" data-add-alt-network-logo-form-color-value="<%= IdCard::Setup::FORM_COLORS.to_json %>">
|
||||
<div class="flex flex-wrap w-full" data-add-alt-network-logo-target="container">
|
||||
<%= button_tag "Add a Regional Logo", class: "cursor-pointer text-lg font-medium py-2 px-4 rounded w-1/7 h-55 my-8 text-[#E0E0E0] rounded-lg border border-[#C2C2C2] hover:shadow-[0_0_10px_3px_#93c5fd]", data: { action: "add-alt-network-logo#add", add_alt_network_logo_target: "button" } %>
|
||||
</div>
|
||||
<template data-add-alt-network-logo-target="template">
|
||||
<%= f.fields_for :alternate_network_logos, AlternateNetworkLogo.new, child_index: 'NEW_RECORD' do |network_fields| %>
|
||||
<div class="flex flex-col my-8 mr-3 space-y-6 px-3 min-w-1/3" data-controller="logo-upload" data-add-network-exception-parent-color-value="NEXT_SECONDARY_COLOR">
|
||||
<%= render 'alt_network_logo_fields', network_fields: network_fields, f: f %>
|
||||
</div>
|
||||
<% end %>
|
||||
</template>
|
||||
</div>
|
||||
<div class="pt-8">
|
||||
<%= f.submit "Submit" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
@@ -1,72 +0,0 @@
|
||||
<div class="min-h-screen w-full flex flex-col" data-controller="add-plan" data-add-plan-form-color-value="<%= IdCard::Setup::FORM_COLORS.to_json %>">
|
||||
<h1 class="font-bold text-4xl text-platinum">New Employer Setup</h1>
|
||||
<h3 class="font-bold text-2xl text-bluemana">Medical Plans</h3>
|
||||
<div class="flex flex-col pl-6">
|
||||
<%= form_with model: @form, url: employer_setup_index_path, local: true do |f| %>
|
||||
<div class="w-full flex my-8">
|
||||
<div class="flex flex-wrap w-full" data-add-plan-target="container">
|
||||
<div class="flex flex-col items-stretch justify-end pr-6 pl-1 w-1/4">
|
||||
<%= f.fields_for :benefit_descs do |plan_benefit_fields| %>
|
||||
<%= plan_benefit_fields.hidden_field :plan_id, value: "descriptions" %>
|
||||
<% @form.benefits_template.each do |bene| %>
|
||||
<div>
|
||||
<%= plan_benefit_fields.text_field "benefit_#{bene.sequence}", label: { text: "Benefit Description #{bene.sequence}" }, value: "#{bene.benefit_desc}", class: "w-full" %>
|
||||
</div>
|
||||
<% end %>
|
||||
<% end %>
|
||||
</div>
|
||||
<% @form.plans.each_with_index do |plan, i| %>
|
||||
<div class="inline-flex flex-col justify-end pr-6 pl-1 mt-10 relative w-1/4" data-controller="benefits-template-picker">
|
||||
<div class="absolute left-0 top-[2%] h-[98%] border-l-4 <%= "border-#{IdCard::Setup::FORM_COLORS[i]}" %> rounded-bl-lg"></div>
|
||||
<div class="font-bold text-2xl <%= "text-#{IdCard::Setup::FORM_COLORS[i]}" %> -ml-[6px] z-2 w-full">
|
||||
<%= "Plan #{i + 1}" %>
|
||||
</div>
|
||||
<%= f.fields_for :plans, index: i do |plan_fields| %>
|
||||
<div class="pl-1 w-full">
|
||||
<%= plan_fields.text_field :plan_id, label: { text: "Plan Id" }, class: "w-full", data: { add_plan_target: "plan" } %>
|
||||
</div>
|
||||
<div class="pl-1">
|
||||
<%= f.select :template_id, options_from_collection_for_select(@form.plan_templates, :id, :title), { prompt: "Select Plan Template" }, { data: { action: "benefits-template-picker#fetchData" }} %>
|
||||
</div>
|
||||
<% @form.benefits_template.each do |bene| %>
|
||||
<div>
|
||||
<div class="pl-1 w-full">
|
||||
<%= plan_fields.text_field "benefit_#{bene.sequence}", label: { text: "Benefit Value #{bene.sequence}" }, data: { benefits_template_picker_target: "benefit", sequence: "#{bene.sequence}"}, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
<% end %>
|
||||
</div>
|
||||
<% end %>
|
||||
<%= button_tag "Add a Plan", class: "cursor-pointer text-2xl font-bold py-2 pr-6 mt-10 w-[calc(24%-1rem)] w-1/4 min-h-[940px] text-[#E0E0E0] rounded-lg font-medium border border-[#E0E0E0] bg-[#173057] hover:bg-transparent hover:shadow-[0_0_10px_3px_#93c5fd] transition-colors duration-150", data: { action: "add-plan#add", add_plan_target: "button" } %>
|
||||
<template data-add-plan-target="template">
|
||||
<div class="inline-flex flex-col justify-end pr-6 pl-1 mt-10 relative w-1/4" data-controller="benefits-template-picker">
|
||||
<div class="absolute left-0 top-[2%] h-[98%] border-l-4 border-NEXT_COLOR rounded-bl-lg"></div>
|
||||
<div class="font-bold text-2xl text-NEXT_COLOR -ml-[6px] z-2 w-full">
|
||||
<%= "Plan NEW_PLAN" %>
|
||||
</div>
|
||||
<%= f.fields_for :plans, index: 'NEW_RECORD' do |plan_fields| %>
|
||||
<div class="pl-1 w-full">
|
||||
<%= plan_fields.text_field :plan_id, label: { text: "Plan Id" }, class: "w-full", data: { add_plan_target: "plan" } %>
|
||||
</div>
|
||||
<div class="pl-1">
|
||||
<%= f.select :template_id, options_from_collection_for_select(@form.plan_templates, :id, :title), { prompt: "Select Plan Template" }, { data: { action: "benefits-template-picker#fetchData" }} %>
|
||||
</div>
|
||||
<% @form.benefits_template.each do |bene| %>
|
||||
<div>
|
||||
<div class="pl-1 w-full">
|
||||
<%= plan_fields.text_field "benefit_#{bene.sequence}", label: { text: "Benefit Value #{bene.sequence}" }, data: { benefits_template_picker_target: "benefit", sequence: "#{bene.sequence}"}, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
<% end %>
|
||||
</div>
|
||||
</template>
|
||||
</div>
|
||||
</div>
|
||||
<div class="py-10">
|
||||
<%= f.submit "Continue to Provider Network" %>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1,9 +0,0 @@
|
||||
<div class="bg-deepcove min-h-screen w-full flex flex-col">
|
||||
<h1 class="font-bold text-4xl text-platinum">New Employer Setup</h1>
|
||||
<h3 class="font-bold text-2xl text-bluemana">Summary</h3>
|
||||
<%= form_with model: @form, url: employer_setup_index_path, local: true do |f| %>
|
||||
<div class="py-10">
|
||||
<%= f.submit "Submit" %>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
@@ -1,10 +1,20 @@
|
||||
<div class="bg-deepcove h-full w-full flex flex-col">
|
||||
<div class="flex items-center">
|
||||
<%= link_to employer_path(@employer.slug), class: "flex items-center h-14 space-x" do %>
|
||||
<div class="flex items-center h-14 text-bluemana hover:text-bronze">
|
||||
<%= icon "arrow-big-left-dash", library: "lucide", class: "h-full w-20 text-center" %>
|
||||
<div class="w-full pb-1 font-bold text-2xl">
|
||||
<%= "Back to Employer" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
<h1 class="font-bold text-4xl text-platinum my-5">Edit Employer</h1>
|
||||
<%= form_with model: @employer, local: true, multipart: true do |f| %>
|
||||
<div class="flex flex-col space-y-6">
|
||||
<div class="flex w-full items-end" data-controller="logo-upload">
|
||||
<div class="flex flex-col space-y-6 w-3/5">
|
||||
<div class="flex space-x-10">
|
||||
<div class="flex flex-col space-y-6 w-4/5">
|
||||
<div class="flex items-end space-x-10">
|
||||
<div class="w-full">
|
||||
<%= f.text_field :name, label: { text: "Employer Name" }, class: "w-full" %>
|
||||
</div>
|
||||
@@ -15,19 +25,22 @@
|
||||
<%= f.text_field :group_number, label: { text: "Group/Medical Number" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex space-x-10">
|
||||
<div class="w-full flex items-center pt-6">
|
||||
<h3 class="flex-none font-bold text-2xl text-brightlava">Admin</h3>
|
||||
<div class="grow h-[1px] mt-2 ml-1 bg-brightlava"></div>
|
||||
</div>
|
||||
<div class="flex items-end space-x-10">
|
||||
<div class="w-full">
|
||||
<%= f.text_field :slug, label: { text: "Slug" }, class: "w-full" %>
|
||||
<%= f.text_field :slug, label: { text: "URL Slug" }, class: "w-full pointer-events-none opacity-65 cursor-not-allowed" %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= f.text_field :pl_plan_key, label: { text: "Pl Plan Key" }, class: "w-full" %>
|
||||
<%= f.text_field :pl_plan_key, label: { text: "Pl Plan Key" }, class: "w-full pointer-events-none opacity-65 cursor-not-allowed" %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex py-8 space-x-4">
|
||||
<%= f.submit "Save Employer" %>
|
||||
<%= link_to "Back", employer_path(@employer.slug), class: "flex justify-center items-center cursor-pointer bg-atmosphere hover:bg-deepcove border-2 border-atmosphere text-platinum font-bold px-3 rounded-sm h-10 transition duration-100" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
@@ -1,18 +1,37 @@
|
||||
<div class="bg-deepcove h-full w-full flex flex-col justify-start">
|
||||
<div class="flex items-center justify-between">
|
||||
<h1 class="font-bold text-4xl text-platinum my-5">Employers</h1>
|
||||
<div class="w-30 inline-flex flex-col text-platinum hover:text-limegreen font-bold px-4 mr-20 rounded-l-lg border-l-5 border-b-2 border-limegreen">
|
||||
<div class="w-full flex text-3xl">
|
||||
<%= link_to "NEW", new_employer_path %>
|
||||
<div class="bg-deepcove h-full w-full flex flex-col justify-start pb-10">
|
||||
<div class="flex items-center gap-x-40">
|
||||
<%= link_to dashboard_path, class: "flex items-center h-14 space-x" do %>
|
||||
<div class="flex items-center h-14 text-bluemana hover:text-bronze">
|
||||
<%= icon "arrow-big-left-dash", library: "lucide", class: "h-full w-20 text-center" %>
|
||||
<div class="w-full pb-1 font-bold text-2xl">
|
||||
<%= "Back to Dashboard" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
<%= link_to 'Run Employer Automations (Beta)', beta_automation_simulation_employers_path, data: { turbo: false }, class: "flex justify-center items-center cursor-pointer hover:bg-yellow-300 bg-deepcove border-2 border-yellow-300 text-yellow-300 hover:text-deepcove text-lg font-bold px-3 rounded-lg h-10" %>
|
||||
<div class="flex flex-col font-bold">
|
||||
<div class="text-md text-yellow-300">
|
||||
Unassigned VHCS Group Numbers (Beta):
|
||||
</div>
|
||||
<div class="text-sm text-platinum">
|
||||
<%= @beta_unassigned_group_numbers.present? ? @beta_unassigned_group_numbers.join(', ') : "None" %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex flex-col items-start w-full">
|
||||
<h1 class="w-1/2 font-bold text-4xl text-platinum my-5">Employers</h1>
|
||||
<div class="flex w-full px-10">
|
||||
<div class="w-[23%] inline-flex flex-col text-platinum hover:text-limegreen font-bold px-4 rounded-l-lg border-l-5 border-b-2 border-limegreen">
|
||||
<%= link_to "NEW", new_employer_path, class: "w-full flex text-3xl" %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<% if @uninitialized.present? %>
|
||||
<h2 class="font-bold text-3xl text-brightlava my-5">In Process:</h2>
|
||||
<div class="flex flex-none items-center w-full px-10">
|
||||
<h3 class="flex-none font-bold text-xl text-bronze my-5">
|
||||
<%= "Waiting for Groups Number Entry" %>
|
||||
</h2>
|
||||
<h3 class="w-[25%] flex flex-none font-bold text-xl text-bronze my-5">
|
||||
<%= "Needs Group Number Entry" %>
|
||||
</h3>
|
||||
<% if @uninitialized.not_automation_ready.present? %>
|
||||
<div class="flex flex-wrap w-full gap-x-4 gap-y-3">
|
||||
<% @uninitialized.not_automation_ready.each do |emp| %>
|
||||
@@ -31,15 +50,15 @@
|
||||
<% end %>
|
||||
</div>
|
||||
<div class="flex flex-none items-center w-full px-10">
|
||||
<h3 class="font-bold text-xl text-verdigris-vivid my-5">
|
||||
<%= "Waiting for Employer to be created in VHCS" %>
|
||||
<h3 class="w-[25%] flex flex-none font-bold text-xl text-bluemana my-5">
|
||||
<%= "Waiting for VHCS Employer" %>
|
||||
</h3>
|
||||
<% if @uninitialized.missing_keychain_initialization.present? %>
|
||||
<div class="flex flex-wrap w-full pl-20 pr-10 gap-x-4 gap-y-3">
|
||||
<div class="flex flex-wrap w-full gap-x-4 gap-y-3">
|
||||
<% @uninitialized.missing_keychain_initialization.each do |emp| %>
|
||||
<div class="w-[23%] inline-flex flex-col text-platinum font-bold px-4 rounded-l-lg border-l-5 border-b-2 border-verdigris-vivid">
|
||||
<div class="w-[23%] inline-flex flex-col text-platinum font-bold px-4 rounded-l-lg border-l-5 border-b-2 border-bluemana">
|
||||
<div class="w-full flex text-xl">
|
||||
<%= link_to emp.name, employer_path(emp.slug), class: "text-verdigris-vivid hover:text-platinum" %>
|
||||
<%= link_to emp.name, employer_path(emp.slug), class: "text-bluemana hover:text-platinum" %>
|
||||
</div>
|
||||
<div class="w-full flex text-md font-medium">
|
||||
<%= "(Effective #{emp.effective_date})" %>
|
||||
@@ -48,19 +67,19 @@
|
||||
<% end %>
|
||||
</div>
|
||||
<% else %>
|
||||
<div class="grow h-[1px] mt-2 ml-1 bg-verdigris-vivid"></div>
|
||||
<div class="grow h-[1px] mt-2 ml-1 bg-bluemana"></div>
|
||||
<% end %>
|
||||
</div>
|
||||
<div class="flex flex-none items-center w-full px-10">
|
||||
<h3 class="font-bold text-xl text-copper my-5">
|
||||
<%= "Waiting for Plans to be created in VHCS" %>
|
||||
<h3 class="w-[25%] flex flex-none font-bold text-xl text-[#4FA8F8] my-5">
|
||||
<%= "Waiting for VHCS Plans" %>
|
||||
</h3>
|
||||
<% if @uninitialized.missing_plans_initialization.present? %>
|
||||
<div class="flex flex-wrap w-full pl-20 pr-10 gap-x-4 gap-y-3">
|
||||
<div class="flex flex-wrap w-full gap-x-4 gap-y-3">
|
||||
<% @uninitialized.missing_plans_initialization.each do |emp| %>
|
||||
<div class="w-[23%] inline-flex flex-col text-platinum font-bold px-4 rounded-l-lg border-l-5 border-b-2 border-copper">
|
||||
<div class="w-[23%] inline-flex flex-col text-platinum font-bold px-4 rounded-l-lg border-l-5 border-b-2 border-[#4FA8F8]">
|
||||
<div class="w-full flex text-xl">
|
||||
<%= link_to emp.name, employer_path(emp.slug), class: "text-copper hover:text-platinum" %>
|
||||
<%= link_to emp.name, employer_path(emp.slug), class: "text-[#4FA8F8] hover:text-platinum" %>
|
||||
</div>
|
||||
<div class="w-full flex text-md font-medium">
|
||||
<%= "(Effective #{emp.effective_date})" %>
|
||||
@@ -69,19 +88,19 @@
|
||||
<% end %>
|
||||
</div>
|
||||
<% else %>
|
||||
<div class="grow h-[1px] mt-2 ml-1 bg-copper"></div>
|
||||
<div class="grow h-[1px] mt-2 ml-1 bg-[#4FA8F8]"></div>
|
||||
<% end %>
|
||||
</div>
|
||||
<div class="flex flex-none items-center w-full px-10">
|
||||
<h3 class="flex flex-none font-bold text-xl text-bluemana my-5">
|
||||
<%= "Waiting for Inital Members to be created in VHCS" %>
|
||||
<h3 class="w-[25%] flex flex-none font-bold text-xl text-[#3388FF] my-5">
|
||||
<%= "Waiting for VHCS Members" %>
|
||||
</h3>
|
||||
<% if @uninitialized.missing_members_initialization.present? %>
|
||||
<div class="flex flex-wrap w-full pl-20 pr-10 gap-x-4 gap-y-3">
|
||||
<div class="flex flex-wrap w-full gap-x-4 gap-y-3">
|
||||
<% @uninitialized.missing_members_initialization.each do |emp| %>
|
||||
<div class="w-[23%] inline-flex flex-col text-platinum font-bold px-4 rounded-l-lg border-l-5 border-b-2 border-bluemana">
|
||||
<div class="w-full flex">
|
||||
<%= link_to emp.name, employer_path(emp.slug), class: "text-bluemana hover:text-platinum" %>
|
||||
<div class="w-80 inline-flex flex-col text-platinum font-bold pl-4 pr-1 rounded-l-lg border-l-5 border-b-2 border-[#3388FF]">
|
||||
<div class="w-full flex text-xl">
|
||||
<%= link_to emp.name, employer_path(emp.slug), class: "text-[#3388FF] hover:text-platinum" %>
|
||||
</div>
|
||||
<div class="w-full flex justify-between text-md font-medium">
|
||||
<% member_counter_color = "text-".concat(emp.members.present? ? "limegreen" : "brightlava") %>
|
||||
@@ -99,7 +118,37 @@
|
||||
<% end %>
|
||||
</div>
|
||||
<% else %>
|
||||
<div class="grow h-[1px] mt-2 ml-1 bg-bluemana"></div>
|
||||
<div class="grow h-[1px] mt-2 ml-1 bg-[#3388FF]"></div>
|
||||
<% end %>
|
||||
</div>
|
||||
<div class="flex flex-none items-center w-full px-10">
|
||||
<h3 class="w-[25%] flex flex-none font-bold text-xl text-copper my-5">
|
||||
<%= "Ready for ID Card Activation" %>
|
||||
</h3>
|
||||
<% if @uninitialized.ready_for_id_card_activation.present? %>
|
||||
<div class="flex flex-wrap w-full gap-x-4 gap-y-3">
|
||||
<% @uninitialized.ready_for_id_card_activation.each do |emp| %>
|
||||
<div class="w-80 inline-flex flex-col text-platinum font-bold pl-4 pr-1 rounded-l-lg border-l-5 border-b-2 border-copper">
|
||||
<div class="w-full flex text-xl">
|
||||
<%= link_to emp.name, employer_path(emp.slug), class: "text-copper hover:text-platinum" %>
|
||||
</div>
|
||||
<div class="w-full flex justify-between text-md font-medium">
|
||||
<% member_counter_color = "text-".concat(emp.members.present? ? "limegreen" : "brightlava") %>
|
||||
<div>
|
||||
Members:
|
||||
<span class="ml-2 <%= member_counter_color %>">
|
||||
<%= emp.members.count %>
|
||||
</span>
|
||||
</div>
|
||||
<div class="ml-2">
|
||||
<%= "(Effective #{emp.effective_date})" %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
<% else %>
|
||||
<div class="grow h-[1px] mt-2 ml-1 bg-copper"></div>
|
||||
<% end %>
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
@@ -1,21 +1,20 @@
|
||||
<div class="bg-deepcove h-full w-full flex flex-col">
|
||||
<div class="flex justify-between">
|
||||
<h1 class="font-bold text-4xl text-platinum my-5">New Employer</h1>
|
||||
<%= form_with model: @employer, url: import_employers_path, data: { turbo: false }, local: true, multipart: true do |form| %>
|
||||
<div class="flex items-end space-x-4">
|
||||
<div class="flex flex-col">
|
||||
<%= form.label :import_from_word, 'ID Card Setup Word Doc', class: "block text-platinum font-bold mb-1 md:mb-0 pr-4" %>
|
||||
<%= form.file_field :import_from_word %>
|
||||
<div class="flex items-center">
|
||||
<%= link_to employers_path, class: "flex items-center h-14 space-x" do %>
|
||||
<div class="flex items-center h-14 text-bluemana hover:text-bronze">
|
||||
<%= icon "arrow-big-left-dash", library: "lucide", class: "h-full w-20 text-center" %>
|
||||
<div class="w-full pb-1 font-bold text-2xl">
|
||||
<%= "Back to Employer Control" %>
|
||||
</div>
|
||||
</div>
|
||||
<%= form.submit "Import", class: "h-[40px]" %>
|
||||
</div>
|
||||
<% end %>
|
||||
<% end %>
|
||||
</div>
|
||||
<h1 class="font-bold text-4xl text-platinum my-5">New Employer</h1>
|
||||
<%= form_with model: @employer, local: true, multipart: true do |f| %>
|
||||
<div class="flex flex-col space-y-6 pb-10">
|
||||
<div class="flex w-full items-end" data-controller="logo-upload">
|
||||
<div class="flex flex-col space-y-6 w-2/5">
|
||||
<div class="flex space-x-10">
|
||||
<div class="flex flex-col space-y-6 w-4/5">
|
||||
<div class="flex items-end space-x-10">
|
||||
<div class="w-full">
|
||||
<%= f.text_field :name, label: { text: "Employer Name" }, data: { logo_upload_target: "employer" }, class: "w-full" %>
|
||||
</div>
|
||||
|
||||
@@ -0,0 +1,46 @@
|
||||
<div class="bg-deepcove h-full w-full flex flex-col">
|
||||
<div class="flex items-center">
|
||||
<%= link_to employers_path, class: "flex items-center h-14 space-x" do %>
|
||||
<div class="flex items-center h-14 text-bluemana hover:text-bronze">
|
||||
<%= icon "arrow-big-left-dash", library: "lucide", class: "h-full w-20 text-center" %>
|
||||
<div class="w-full pb-1 font-bold text-2xl">
|
||||
<%= "Back to Employer Control" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
<div class="flex justify-between">
|
||||
<h1 class="font-bold text-4xl text-platinum my-5">New Employer</h1>
|
||||
<%= form_with model: @employer, url: import_employers_path, data: { turbo: false }, local: true, multipart: true do |form| %>
|
||||
<div class="flex items-end space-x-4">
|
||||
<div class="flex flex-col">
|
||||
<%= form.label :import_from_word, 'ID Card Setup Word Doc', class: "block text-platinum font-bold mb-1 md:mb-0 pr-4" %>
|
||||
<%= form.file_field :import_from_word %>
|
||||
</div>
|
||||
<%= form.submit "Import", class: "h-[40px]" %>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
<%= form_with model: @employer, local: true, multipart: true do |f| %>
|
||||
<div class="flex flex-col space-y-6 pb-10">
|
||||
<div class="flex w-full items-end" data-controller="logo-upload">
|
||||
<div class="flex flex-col space-y-6 w-2/5">
|
||||
<div class="flex space-x-10">
|
||||
<div class="w-full">
|
||||
<%= f.text_field :name, label: { text: "Employer Name" }, data: { logo_upload_target: "employer" }, class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= f.text_field :effective_date, label: { text: "Effective Date" }, class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= f.text_field :group_number, label: { text: "Group/Medical Number" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="py-8">
|
||||
<%= f.submit "Create New Employer" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
@@ -1,7 +1,14 @@
|
||||
<div class="bg-deepcove text-platinum h-full w-full flex flex-col">
|
||||
<%= link_to employers_path, class: "flex h-10 w-10 text-xl transition duration-100" do %>
|
||||
<%= icon "arrow-big-left-dash", library: "lucide", class: "h-full w-full text-center text-bluemana hover:text-bronze" %>
|
||||
<% end %>
|
||||
<div class="flex items-center">
|
||||
<%= link_to employers_path, class: "flex items-center h-14 space-x" do %>
|
||||
<div class="flex items-center h-14 text-bluemana hover:text-bronze">
|
||||
<%= icon "arrow-big-left-dash", library: "lucide", class: "h-full w-20 text-center" %>
|
||||
<div class="w-full pb-1 font-bold text-2xl">
|
||||
<%= "Back to Employer Control" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
<div class="flex w-full items-center space-x-8">
|
||||
<h1 class="font-bold text-4xl text-platinum my-5"><%= @employer.name %></h1>
|
||||
<div class="h-[50px] max-w-[200px]">
|
||||
@@ -9,8 +16,11 @@
|
||||
<%= image_tag image_id_card_employer_logo_path(@employer.id_card_setup.employer_logo.id), class: "max-h-[50px] object-contain shadow-[0_0_10px_3px_#93c5fd] bg-platinum" %>
|
||||
<% end %>
|
||||
</div>
|
||||
<div class="w-1/2 flex ml-8">
|
||||
<%= link_to 'Edit Employer', edit_employer_path(@employer.slug), data: { turbo: false }, class: "flex justify-center items-center w-1/3 cursor-pointer bg-bluetang hover:bg-deepcove border-2 border-bluetang text-platinum text-lg font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
<div class="flex ml-8">
|
||||
<%= link_to 'Edit Employer', edit_employer_path(@employer.slug), data: { turbo: false }, class: "flex justify-center items-center cursor-pointer bg-bluetang hover:bg-deepcove border-2 border-bluetang text-platinum text-lg font-bold px-10 rounded-lg h-10 transition duration-100" %>
|
||||
</div>
|
||||
<div class="flex ml-8">
|
||||
<%= link_to 'Delete Employer (Beta)', employer_path(@employer), data: { turbo_method: :delete }, class: "flex justify-center items-center cursor-pointer hover:bg-yellow-300 bg-deepcove border-2 border-yellow-300 text-yellow-300 hover:text-deepcove text-lg font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex space-x-6">
|
||||
@@ -83,9 +93,9 @@
|
||||
<div class="flex flex-col items-center space-y-6 w-full">
|
||||
<%= link_to "General", employer_id_card_setup_index_path(employer_id: @employer.slug), data: { turbo: false }, class: "flex justify-center items-center w-full cursor-pointer bg-#{module_color} hover:bg-deepcove border-2 border-#{module_color} text-platinum font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
<%= link_to "Plans", plans_employer_id_card_setup_index_path(employer_id: @employer.slug), data: { turbo: false }, class: "flex justify-center items-center w-full cursor-pointer bg-#{module_color} hover:bg-deepcove border-2 border-#{module_color} text-platinum font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
<%= link_to 'Exceptions (Optional)', field_exceptions_employer_id_card_setup_index_path(employer_id: @employer.slug ), data: { turbo: false }, class: "flex justify-center items-center w-full cursor-pointer bg-#{module_color} hover:bg-deepcove border-2 border-#{module_color} text-platinum font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
<% unless @employer.id_card_setup.active %>
|
||||
<%= link_to 'Activate ID Cards', update_active_status_employer_id_card_setup_index_path(employer_id: @employer.slug ), data: { turbo: false }, class: "flex justify-center items-center w-full cursor-pointer bg-brightlava hover:bg-deepcove border-2 border-brightlava text-platinum font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
<%= link_to 'Alternate ID Cards (Optional)', field_exceptions_employer_id_card_setup_index_path(employer_id: @employer.slug ), data: { turbo: false }, class: "flex justify-center items-center w-full cursor-pointer bg-#{module_color} hover:bg-deepcove border-2 border-#{module_color} text-platinum font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
<% if @employer.id_card_setup.activation_ready? %>
|
||||
<%= link_to 'Activate ID Card Setup', update_active_status_employer_id_card_setup_index_path(employer_id: @employer.slug ), data: { turbo: false }, class: "flex justify-center items-center w-full cursor-pointer bg-brightlava hover:bg-deepcove border-2 border-brightlava text-platinum font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
@@ -97,10 +107,9 @@
|
||||
<span class="block w-full h-0.5 bg-copper mt-[-4]"></span>
|
||||
</div>
|
||||
<div class="flex flex-col items-center space-y-6 w-full">
|
||||
<%= link_to 'Generate Sample Cards', generate_sample_id_card_print_path(id: @employer.slug), data: { turbo: false }, class: "flex justify-center items-center w-full cursor-pointer bg-#{module_color} hover:bg-deepcove border-2 border-#{module_color} text-platinum font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
<%= link_to 'Generate Group Cards (for print)', generate_print_id_card_print_path(id: @employer.slug),data: { turbo: false }, class: "flex justify-center items-center w-full #{@employer.active ? "" : "pointer-events-none opacity-50 cursor-not-allowed"} bg-#{module_color} hover:bg-deepcove border-2 border-#{module_color} text-platinum font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
<%= link_to 'Generate Group Cards (for display)', generate_mobile_display_id_card_print_path(id: @employer.slug), data: { turbo: false }, class: "flex justify-center items-center w-full #{@employer.active ? "" : "pointer-events-none opacity-50 cursor-not-allowed"} bg-#{module_color} hover:bg-deepcove border-2 border-#{module_color} text-platinum font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
<%= link_to 'Generate Group Cards (for download)', generate_full_page_id_card_print_path(id: @employer.slug), data: { turbo: false }, class: "flex justify-center items-center w-full #{@employer.active ? "" : "pointer-events-none opacity-50 cursor-not-allowed"} bg-#{module_color} hover:bg-deepcove border-2 border-#{module_color} text-platinum font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
<%= link_to 'Generate Sample Cards', generate_sample_id_card_print_path(id: @employer.id), data: { turbo: false }, class: "flex justify-center items-center w-full cursor-pointer bg-#{module_color} #{@employer.id_card_setup.sample_card_print_ready? ? "" : "pointer-events-none opacity-50 cursor-not-allowed"} hover:bg-deepcove border-2 border-#{module_color} text-platinum font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
<%= link_to 'Generate Group Cards (for print)', generate_print_id_card_print_path(id: @employer.slug),data: { turbo: false }, class: "flex justify-center items-center w-full #{@employer.id_card_setup.member_cards_print_ready? ? "" : "pointer-events-none opacity-50 cursor-not-allowed"} bg-#{module_color} hover:bg-deepcove border-2 border-#{module_color} text-platinum font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
<%= link_to 'Generate Group Cards (for download)', generate_full_page_id_card_print_path(id: @employer.slug), data: { turbo: false }, class: "flex justify-center items-center w-full #{@employer.id_card_setup.member_cards_print_ready? ? "" : "pointer-events-none opacity-50 cursor-not-allowed"} bg-#{module_color} hover:bg-deepcove border-2 border-#{module_color} text-platinum font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
</div>
|
||||
</div>
|
||||
<% else %>
|
||||
@@ -108,46 +117,5 @@
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex flex-col space-y w-[23%] mb-5">
|
||||
<div class="flex flex-col space-y w-full h-1/2 mb-2">
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="flex-none font-bold text-2xl text-copper">Britton Web Module</h3>
|
||||
<div class="grow h-[1px] mt-2 ml-1 bg-bronze"></div>
|
||||
</div>
|
||||
<div class="grow flex flex-col w-full border-l-4 border-b-4 border-copper rounded-xl pl-2 pb-2">
|
||||
<% if @employer.claims_check_enabled? %>
|
||||
|
||||
<% else %>
|
||||
<%= link_to "Enable Britton Web", employer_id_card_setup_index_path(employer_id: @employer.slug), data: { turbo: false }, class: "flex justify-center items-center w-full h-full cursor-pointer bg-copper hover:bg-deepcove border-4 border-copper text-platinum text-xl font-bold px-3 rounded-md mt-3 transition duration-100" %>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex flex-col space-y w-full h-1/2">
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="flex-none font-bold text-2xl text-cobalt-vivid">Claims Check Module</h3>
|
||||
<div class="grow h-[1px] mt-2 ml-1 bg-bronze"></div>
|
||||
</div>
|
||||
<div class="grow flex flex-col w-full border-l-4 border-b-4 border-cobalt-vivid rounded-xl pl-2 pb-2">
|
||||
<% if @employer.claims_check_enabled? %>
|
||||
|
||||
<% else %>
|
||||
<%= link_to "Enable Claims Check", employer_id_card_setup_index_path(employer_id: @employer.slug), data: { turbo: false }, class: "flex justify-center items-center w-full h-full cursor-pointer bg-cobalt-vivid hover:bg-deepcove border-4 border-cobalt-vivid text-platinum text-xl font-bold px-3 rounded-md mt-3 transition duration-100 pointer-events-none opacity-50 cursor-not-allowed" %>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex flex-col space-y w-[23%] mb-5">
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="flex-none font-bold text-2xl text-verdigris-vivid">FairosRx Eligibility Module</h3>
|
||||
<div class="grow h-[1px] mt-2 ml-1 bg-bronze"></div>
|
||||
</div>
|
||||
<div class="grow flex flex-col w-full border-l-4 border-b-4 border-verdigris-vivid rounded-xl pl-2 pb-2">
|
||||
<% if @employer.claims_check_enabled? %>
|
||||
|
||||
<% else %>
|
||||
<%= link_to "Enable FairosRx Eligibility", employer_id_card_setup_index_path(employer_id: @employer.slug), data: { turbo: false }, class: "flex justify-center items-center w-full h-full cursor-pointer bg-verdigris-vivid hover:bg-deepcove border-4 border-verdigris-vivid text-platinum text-xl font-bold px-3 rounded-md mt-3 transition duration-100 pointer-events-none opacity-50 cursor-not-allowed" %>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,160 @@
|
||||
<div class="bg-deepcove text-platinum h-full w-full flex flex-col">
|
||||
<div class="flex items-center">
|
||||
<%= link_to employers_path, class: "flex items-center h-14 space-x" do %>
|
||||
<div class="flex items-center h-14 text-bluemana hover:text-bronze">
|
||||
<%= icon "arrow-big-left-dash", library: "lucide", class: "h-full w-20 text-center" %>
|
||||
<div class="w-full pb-1 font-bold text-2xl">
|
||||
<%= "Back to Employer Control" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
<div class="flex w-full items-center space-x-8">
|
||||
<h1 class="font-bold text-4xl text-platinum my-5"><%= @employer.name %></h1>
|
||||
<div class="h-[50px] max-w-[200px]">
|
||||
<% if @employer&.id_card_setup&.employer_logo&.filename %>
|
||||
<%= image_tag image_id_card_employer_logo_path(@employer.id_card_setup.employer_logo.id), class: "max-h-[50px] object-contain shadow-[0_0_10px_3px_#93c5fd] bg-platinum" %>
|
||||
<% end %>
|
||||
</div>
|
||||
<div class="w-1/2 flex ml-8">
|
||||
<%= link_to 'Edit Employer', edit_employer_path(@employer.slug), data: { turbo: false }, class: "flex justify-center items-center w-1/3 cursor-pointer bg-bluetang hover:bg-deepcove border-2 border-bluetang text-platinum text-lg font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex space-x-6">
|
||||
<div class="flex flex-col space-y-1 w-1/4">
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="flex-none font-bold text-2xl text-bluemana">Employer Information</h3>
|
||||
<div class="grow h-[1px] mt-2 ml-1 bg-bronze"></div>
|
||||
</div>
|
||||
<div class="flex flex-col space-y-1 ml-4">
|
||||
<p class="text-<%="#{@employer.active == false ? "brightlava" : "limegreen"}" %>">
|
||||
<strong class="text-platinum mr-2">└── Status:</strong>
|
||||
<%= @employer.active == false ? "inactive" : "active" %>
|
||||
</p>
|
||||
<p class="ml-9 text-bluemana">
|
||||
<strong class="text-platinum mr-2">├── Effective Date:</strong>
|
||||
<%= @employer.effective_date %>
|
||||
</p>
|
||||
<div>
|
||||
<strong class="text-bluemana mr-2">└── Key Chain</strong>
|
||||
</div>
|
||||
<% @employer.attributes.with_indifferent_access.slice(:pl_plan_key, :company_pb_entity_key, :group_number).each do |attribute_name, attribute_value| %>
|
||||
<p class="ml-9 text-<%="#{attribute_value.present? ? "limegreen" : "brightlava"}" %>">
|
||||
<strong class="text-platinum mr-2">├── <%= attribute_name.titleize %>:</strong>
|
||||
<%= attribute_value.present? ? attribute_value.to_s : "waiting" %>
|
||||
</p>
|
||||
<% end %>
|
||||
<% if @employer&.id_card_setup&.plans.present? %>
|
||||
<div>
|
||||
<strong class="text-atmosphere mr-2">└── Plans</strong>
|
||||
</div>
|
||||
<% @employer.id_card_setup.plans.pluck(:title, :pb_product_key).each do |plan| %>
|
||||
<div class="ml-9">
|
||||
├── <%= plan.first %>
|
||||
</div>
|
||||
<p class="ml-14 text-<%="#{plan.last.present? ? "limegreen" : "brightlava"}" %>">
|
||||
<strong class="text-platinum mr-2">└── PB Product Key:</strong>
|
||||
<%= plan.last.present? ? plan.last.to_s : "waiting" %>
|
||||
</p>
|
||||
<% end %>
|
||||
<% end %>
|
||||
</div>
|
||||
<div class="flex flex-col items-center w-full my-8">
|
||||
<div class="w-full flex flex-col items-center my-3">
|
||||
<div class="font-bold text-lg text-bronze">
|
||||
Admin
|
||||
</div>
|
||||
<span class="block w-full h-0.5 bg-copper mt-[-4]"></span>
|
||||
</div>
|
||||
<div class="flex flex-col items-center space-y-6 w-full">
|
||||
<%= link_to 'Sync Employer with VHCS', refresh_employer_information_employers_path(id: @employer.id), data: { turbo: false }, class: "flex justify-center items-center w-full cursor-pointer bg-brightlava hover:bg-deepcove border-2 border-brightlava text-platinum text-lg font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
<%= link_to 'Sync Members with VHCS', refresh_employer_members_information_employers_path(id: @employer.id),data: { turbo: false }, class: "flex justify-center items-center w-full bg-brightlava hover:bg-deepcove border-2 border-brightlava text-platinum text-lg font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex flex-col space-y w-[23%] mb-5">
|
||||
<% module_color = IdCard::Setup::MODULE_COLOR %>
|
||||
<div class="w-full flex flex-none items-center justify-between">
|
||||
<h3 class="flex-none font-bold text-2xl text-<%= module_color %>">ID Card Module</h3>
|
||||
<div class="grow h-[1px] mt-2 ml-1 bg-bronze"></div>
|
||||
</div>
|
||||
<div class="grow flex flex-col w-full border-l-4 border-b-4 border-<%= module_color %> rounded-xl pl-2 pb-2">
|
||||
<% if @employer.id_card_enabled? %>
|
||||
<div class="grow-1 flex flex-col items-center w-full">
|
||||
<div class="w-full flex flex-col items-center my-3">
|
||||
<div class="font-bold text-lg text-bronze">
|
||||
Setup
|
||||
</div>
|
||||
<span class="block w-full h-0.5 bg-copper mt-[-4]"></span>
|
||||
</div>
|
||||
<div class="flex flex-col items-center space-y-6 w-full">
|
||||
<%= link_to "General", employer_id_card_setup_index_path(employer_id: @employer.slug), data: { turbo: false }, class: "flex justify-center items-center w-full cursor-pointer bg-#{module_color} hover:bg-deepcove border-2 border-#{module_color} text-platinum font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
<%= link_to "Plans", plans_employer_id_card_setup_index_path(employer_id: @employer.slug), data: { turbo: false }, class: "flex justify-center items-center w-full cursor-pointer bg-#{module_color} hover:bg-deepcove border-2 border-#{module_color} text-platinum font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
<%= link_to 'Exceptions (Optional)', field_exceptions_employer_id_card_setup_index_path(employer_id: @employer.slug ), data: { turbo: false }, class: "flex justify-center items-center w-full cursor-pointer bg-#{module_color} hover:bg-deepcove border-2 border-#{module_color} text-platinum font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
<% unless @employer.id_card_setup.active %>
|
||||
<%= link_to 'Activate ID Cards', update_active_status_employer_id_card_setup_index_path(employer_id: @employer.slug ), data: { turbo: false }, class: "flex justify-center items-center w-full cursor-pointer bg-brightlava hover:bg-deepcove border-2 border-brightlava text-platinum font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="grow-1 flex flex-col items-center w-full">
|
||||
<div class="w-full flex flex-col items-center my-3">
|
||||
<div class="font-bold text-lg text-bronze">
|
||||
Actions
|
||||
</div>
|
||||
<span class="block w-full h-0.5 bg-copper mt-[-4]"></span>
|
||||
</div>
|
||||
<div class="flex flex-col items-center space-y-6 w-full">
|
||||
<%= link_to 'Generate Sample Cards', generate_sample_id_card_print_path(id: @employer.slug), data: { turbo: false }, class: "flex justify-center items-center w-full cursor-pointer bg-#{module_color} hover:bg-deepcove border-2 border-#{module_color} text-platinum font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
<%= link_to 'Generate Group Cards (for print)', generate_print_id_card_print_path(id: @employer.slug),data: { turbo: false }, class: "flex justify-center items-center w-full #{@employer.active ? "" : "pointer-events-none opacity-50 cursor-not-allowed"} bg-#{module_color} hover:bg-deepcove border-2 border-#{module_color} text-platinum font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
<%= link_to 'Generate Group Cards (for display)', generate_mobile_display_id_card_print_path(id: @employer.slug), data: { turbo: false }, class: "flex justify-center items-center w-full #{@employer.active ? "" : "pointer-events-none opacity-50 cursor-not-allowed"} bg-#{module_color} hover:bg-deepcove border-2 border-#{module_color} text-platinum font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
<%= link_to 'Generate Group Cards (for download)', generate_full_page_id_card_print_path(id: @employer.slug), data: { turbo: false }, class: "flex justify-center items-center w-full #{@employer.active ? "" : "pointer-events-none opacity-50 cursor-not-allowed"} bg-#{module_color} hover:bg-deepcove border-2 border-#{module_color} text-platinum font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
</div>
|
||||
</div>
|
||||
<% else %>
|
||||
<%= link_to "Enable ID Card", employer_id_card_setup_index_path(employer_id: @employer.slug), data: { turbo: false }, class: "flex justify-center items-center w-full h-full cursor-pointer bg-#{module_color} hover:bg-deepcove border-4 border-atmosphere text-platinum text-xl font-bold px-3 rounded-md mt-3 transition duration-100" %>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex flex-col space-y w-[23%] mb-5">
|
||||
<div class="flex flex-col space-y w-full h-1/2 mb-2">
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="flex-none font-bold text-2xl text-copper">Britton Web Module</h3>
|
||||
<div class="grow h-[1px] mt-2 ml-1 bg-bronze"></div>
|
||||
</div>
|
||||
<div class="grow flex flex-col w-full border-l-4 border-b-4 border-copper rounded-xl pl-2 pb-2">
|
||||
<% if @employer.claims_check_enabled? %>
|
||||
|
||||
<% else %>
|
||||
<%= link_to "Enable Britton Web", employer_id_card_setup_index_path(employer_id: @employer.slug), data: { turbo: false }, class: "flex justify-center items-center w-full h-full cursor-pointer bg-copper hover:bg-deepcove border-4 border-copper text-platinum text-xl font-bold px-3 rounded-md mt-3 transition duration-100" %>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex flex-col space-y w-full h-1/2">
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="flex-none font-bold text-2xl text-cobalt-vivid">Claims Check Module</h3>
|
||||
<div class="grow h-[1px] mt-2 ml-1 bg-bronze"></div>
|
||||
</div>
|
||||
<div class="grow flex flex-col w-full border-l-4 border-b-4 border-cobalt-vivid rounded-xl pl-2 pb-2">
|
||||
<% if @employer.claims_check_enabled? %>
|
||||
|
||||
<% else %>
|
||||
<%= link_to "Enable Claims Check", employer_id_card_setup_index_path(employer_id: @employer.slug), data: { turbo: false }, class: "flex justify-center items-center w-full h-full cursor-pointer bg-cobalt-vivid hover:bg-deepcove border-4 border-cobalt-vivid text-platinum text-xl font-bold px-3 rounded-md mt-3 transition duration-100 pointer-events-none opacity-50 cursor-not-allowed" %>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex flex-col space-y w-[23%] mb-5">
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="flex-none font-bold text-2xl text-verdigris-vivid">FairosRx Eligibility Module</h3>
|
||||
<div class="grow h-[1px] mt-2 ml-1 bg-bronze"></div>
|
||||
</div>
|
||||
<div class="grow flex flex-col w-full border-l-4 border-b-4 border-verdigris-vivid rounded-xl pl-2 pb-2">
|
||||
<% if @employer.claims_check_enabled? %>
|
||||
|
||||
<% else %>
|
||||
<%= link_to "Enable FairosRx Eligibility", employer_id_card_setup_index_path(employer_id: @employer.slug), data: { turbo: false }, class: "flex justify-center items-center w-full h-full cursor-pointer bg-verdigris-vivid hover:bg-deepcove border-4 border-verdigris-vivid text-platinum text-xl font-bold px-3 rounded-md mt-3 transition duration-100 pointer-events-none opacity-50 cursor-not-allowed" %>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1,32 +0,0 @@
|
||||
<div class="flex space-x-5 items-center mt-4">
|
||||
<div class="flex flex-col items-start w-full">
|
||||
<div class="flex items-end w-full">
|
||||
<div class="flex flex-col">
|
||||
<%= f.select :network_logo, options_for_select(CardLogoFile.where(logo_type: 'network').pluck(:filename).map { |fn| [fn, fn]}), { include_blank: "Select or Add Network Logo", class: "rounded-r-none" }, { data: { logo_upload_target: "logoSelect" }} %>
|
||||
</div>
|
||||
<div class="flex items-center justify-center cursor-pointer bg-NEXT_COLOR hover:bg-deepcove border-2 border-NEXT_COLOR text-platinum font-bold px-3 rounded-r h-10 transition duration-100">
|
||||
<label for="file_upload_input_NEW_RECORD" class="text-center cursor-pointer">
|
||||
<%= icon "image-plus", library: "lucide" %>
|
||||
</label>
|
||||
</div>
|
||||
<div class="hidden flex justify-center ml-4 rounded-lg border-4 border-NEXT_COLOR" data-logo-upload-target="previewContainer">
|
||||
<img data-logo-upload-target="preview" src="#" alt="Network Logo preview" class="max-h-[100px] max-w-[133px] m-1 bg-platinum"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<%= network_fields.file_field :network_logo_file, class: "hidden", id: "file_upload_input_NEW_RECORD", data: { add_alt_network_logo_target: "networkLogo", logo_upload_type_param: "network", action: "change->logo-upload#uploadLogo" }, direct_upload: true %>
|
||||
</div>
|
||||
<div class="flex items-end space-x-6 w-full">
|
||||
<div class="w-full">
|
||||
<%= network_fields.select :exception_type, options_for_select(["Zip","State"]), label: { text: "Exception Type" }, prompt: "Select Type", class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= network_fields.text_field :exception_value, label: { text: "Exception Value" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex justify-center items-end w-full">
|
||||
<div class="w-1/2">
|
||||
<%= network_fields.hidden_field :_destroy %>
|
||||
<%= button_tag "Remove", class: "cursor-pointer bg-deepcove hover:bg-brightlava text-xl font-bold text-NEXT_SECONDARY_COLOR hover:text-platinum py-1 px-2 font-semibold leading-tight rounded-lg border-3 border-NEXT_SECONDARY_COLOR w-full", data: { action: "add-alt-network-logo#remove" } %>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1,15 +0,0 @@
|
||||
|
||||
<div class="flex items-end w-[42%] hidden exception-item" data-controller="logo-upload">
|
||||
<div class="flex flex-col w-full">
|
||||
<%= exception_item_fields.select :card_logo_file_id, options_for_select(CardLogoFile.where(logo_type: 'network').pluck(:filename)), { include_blank: "Select/Add Network Logo", class: "rounded-r-none flex flex-col" }, { data: { logo_upload_target: "logofield", general_form_target: "dependentField", parent_value: "network_logo", add_exception_target: "exception" }} %>
|
||||
</div>
|
||||
<div class="flex items-center justify-center cursor-pointer bg-NEXT_COLOR hover:bg-deepcove border-2 border-NEXT_COLOR text-platinum font-bold px-3 rounded-r h-10 transition duration-100">
|
||||
<label for="file_upload_input_NEW_ITEM_RECORD" class="text-center cursor-pointer">
|
||||
<%= icon "image-plus", library: "lucide" %>
|
||||
</label>
|
||||
</div>
|
||||
<div class="hidden flex justify-center ml-4 rounded-lg border-4 border-NEXT_COLOR" data-logo-upload-target="previewContainer">
|
||||
<img data-logo-upload-target="preview" src="#" alt="Network Logo preview" class="max-h-[100px] max-w-[133px] m-1 bg-platinum"/>
|
||||
</div>
|
||||
<%= exception_item_fields.file_field :logo_file, class: "hidden", id: "file_upload_input_NEW_ITEM_RECORD", data: { add_alt_network_logo_target: "networkLogo", logo_upload_type_param: "network", action: "change->logo-upload#uploadLogo" }, direct_upload: true %>
|
||||
</div>
|
||||
@@ -1,23 +0,0 @@
|
||||
<div class="flex flex-col items-stretch justify-end pr-6 pl-1 w-1/4">
|
||||
<%= plan_fields.fields_for :plan_benefits do |plan_benefits_fields| %>
|
||||
<%= render 'plan_benefits_desc_fields', plan_benefits_fields: plan_benefits_fields %>
|
||||
<% end %>
|
||||
</div>
|
||||
<div class="inline-flex flex-col justify-end pr-6 pl-1 mt-10 relative w-1/4" data-controller="benefits-template-picker">
|
||||
<div class="absolute left-0 top-[2%] h-[98%] border-l-4 <%= "border-#{IdCard::Setup::FORM_COLORS[i]}" %> rounded-bl-lg"></div>
|
||||
<div class="font-bold text-2xl <%= "text-#{IdCard::Setup::FORM_COLORS[i]}" %> -ml-[6px] z-2 w-full">
|
||||
<%= "Plan #{i + 1}" %>
|
||||
</div>
|
||||
<div class="pl-1 w-full">
|
||||
<%= plan_fields.text_field :title, label: { text: "Plan Title" }, class: "w-full", data: { add_plan_target: "plan" } %>
|
||||
</div>
|
||||
<div class="pl-1 w-full">
|
||||
<%= plan_fields.text_field :plan_id, label: { text: "Plan Id" }, class: "w-full" %>
|
||||
</div>
|
||||
<div class="pl-1">
|
||||
<%= f.select :template_id, options_from_collection_for_select(@form.plan_templates, :id, :title), { prompt: "Select Plan Template" }, { data: { action: "benefits-template-picker#fetchData" }} %>
|
||||
</div>
|
||||
<%= plan_fields.fields_for :plan_benefits do |plan_benefits_fields| %>
|
||||
<%= render 'plan_benefits_fields', plan_benefits_fields: plan_benefits_fields %>
|
||||
<% end %>
|
||||
</div>
|
||||
@@ -1,4 +0,0 @@
|
||||
<div class="pl-1 w-full">
|
||||
<%= plan_benefits_fields.text_field :benefit, label: { text: "#{plan_benefits_fields.object.benefit_desc}" }, data: { benefits_template_picker_target: "benefit", sequence: plan_benefits_fields.object.sequence}, class: "w-full" %>
|
||||
<%= plan_benefits_fields.hidden_field :sequence %>
|
||||
</div>
|
||||
@@ -1,3 +0,0 @@
|
||||
<div class="pl-1 w-full">
|
||||
<%= plan_benefits_fields.text_field :benefit_desc, label: { text: "Benefit Description #{plan_benefits_fields.object.sequence}" }, class: "w-full" %>
|
||||
</div>
|
||||
@@ -1,5 +0,0 @@
|
||||
<div class="pl-1 pt-2 w-full">
|
||||
<%= plan_benefits_fields.text_field :benefit, label: { text: "#{plan_benefits_fields.object.benefit_desc}" }, data: { benefits_template_picker_target: "benefit", sequence: plan_benefits_fields.object.sequence}, class: "w-full" %>
|
||||
<%= plan_benefits_fields.hidden_field :benefit_desc %>
|
||||
<%= plan_benefits_fields.hidden_field :sequence %>
|
||||
</div>
|
||||
@@ -1,14 +0,0 @@
|
||||
<div class="pl-1 w-full">
|
||||
<%= plan_fields.text_field :title, label: { text: "Plan Title" }, class: "w-full", data: { add_plan_target: "plan" } %>
|
||||
</div>
|
||||
<% if f.object.persisted? %>
|
||||
<div class="pl-1 w-full">
|
||||
<%= plan_fields.text_field :pb_product_key, label: { text: "Plan Product Key" }, class: "w-full" %>
|
||||
</div>
|
||||
<% else %>
|
||||
<div class="pl-1 pb-2 w-full">
|
||||
<%= f.select :template_id, options_from_collection_for_select(@plan_templates, :id, :title), { prompt: "Select Plan Template", class: "w-full" }, { data: { action: "benefits-template-picker#fetchData" }} %>
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
|
||||
@@ -1,127 +0,0 @@
|
||||
<div class="bg-deepcove h-full w-full flex flex-col">
|
||||
<h1 class="font-bold text-4xl text-platinum my-5">Edit Employer</h1>
|
||||
<%= form_with model: @employer, local: true, multipart: true do |f| %>
|
||||
<div class="flex flex-col space-y-6">
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="font-bold text-2xl text-bluemana">General Information</h3>
|
||||
<div class="h-[1px] w-1/2 mt-2 bg-bluemana"></div>
|
||||
</div>
|
||||
<div class="flex w-full items-end" data-controller="logo-upload">
|
||||
<div class="flex flex-col space-y-6 w-3/5">
|
||||
<div class="flex space-x-10">
|
||||
<div class="w-full">
|
||||
<%= f.text_field :name, label: { text: "Employer Name" }, class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= f.text_field :slug, label: { text: "Slug" }, class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= f.text_field :group_number, label: { text: "Group/Medical Number" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex space-x-10">
|
||||
<div class="w-full">
|
||||
<%= f.text_field :pl_plan_key, label: { text: "Pl Plan Key" }, class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= f.text_field :effective_date, label: { text: "Effective Date" }, class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= f.select :network_provider, options_for_select(["Cigna", "Medcost"]), label: { text: "Provider Network" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex items-end">
|
||||
<div class="flex flex-col">
|
||||
<%= f.text_field :employer_logo_filename, data: { logo_upload_target: "logofield" }, class: "w-full rounded-r-none", readonly: true %>
|
||||
</div>
|
||||
<div class="flex items-center justify-center cursor-pointer bg-atmosphere hover:bg-deepcove border-2 border-atmosphere text-platinum font-bold px-3 rounded-r h-10 transition duration-100">
|
||||
<label for="file_upload_input_employer" class="text-center cursor-pointer">
|
||||
<%= icon "image-plus", library: "lucide" %>
|
||||
</label>
|
||||
</div>
|
||||
<div class="hidden flex justify-center ml-15 rounded-lg border-4 border-atmosphere" data-logo-upload-target="previewContainer">
|
||||
<img data-logo-upload-target="preview" src="#" alt="Employer Logo preview" class="max-h-[100px] max-w-[133px] bg-platinum m-1"/>
|
||||
</div>
|
||||
<%= f.file_field :add_or_update_logo, class: "hidden", id: "file_upload_input_employer", data: { logo_upload_target: "previewContainer", logo_upload_type_param: "employer", action: "change->logo-upload#uploadLogo" }, direct_upload: true %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="font-bold text-2xl text-bluemana">Plans Information</h3>
|
||||
<div class="h-[1px] w-1/2 mt-2 bg-bluemana"></div>
|
||||
</div>
|
||||
<div class="w-full flex my-8" data-controller="add-plan" data-add-plan-form-color-value="<%= IdCard::Setup::FORM_COLORS.to_json %>" >
|
||||
<div class="flex flex-wrap w-full" data-add-plan-target="container">
|
||||
<% @employer.plans.each_with_index do |plan, index| %>
|
||||
<%= f.fields_for :plans, plan, child_index: index do |plan_fields| %>
|
||||
<div class="inline-flex flex-col pr-6 w-1/4 relative pl-1" data-controller="benefits-template-picker">
|
||||
<div class="absolute left-0 top-[2%] h-[98%] border-l-4 <%= "border-#{IdCard::Setup::FORM_COLORS[index]}" %>"></div>
|
||||
<div class="font-bold text-2xl <%= "text-#{IdCard::Setup::FORM_COLORS[index]}" %> -ml-[6px] z-2 w-full">
|
||||
<%= "Plan #{index + 1}" %>
|
||||
</div>
|
||||
<%= render 'plan_fields', plan_fields: plan_fields, f: f, index: index %>
|
||||
<div class="text-xl text-left font-bold pl-[2px] mb-[-4px] z-1 <%= "text-#{IdCard::Setup::FORM_COLORS[index]}" %>">
|
||||
Benefit Values
|
||||
</div>
|
||||
<div class="w-full h-[3px] rounded-r <%= "bg-#{index % 2 == 1 ? 'bronze' : 'copper'}" %> ml-[3px]"></div>
|
||||
<%= plan_fields.fields_for :plan_benefits do |plan_benefits_fields| %>
|
||||
<%= render 'plan_benefits_fields', plan_benefits_fields: plan_benefits_fields %>
|
||||
<% end %>
|
||||
<div class="mt-4 pl-1">
|
||||
<%= plan_fields.hidden_field :_destroy %>
|
||||
<%= button_tag "Remove Plan #{index + 1}", class: "cursor-pointer bg-deepcove hover:bg-brightlava text-xl font-bold text-#{index % 2 == 1 ? 'bronze' : 'copper'} hover:text-platinum py-2 px-4 font-semibold leading-tight rounded-lg border-3 border-NEXT_SECONDARY_COLOR w-full", data: { action: "add-plan#remove" } %>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<% end %>
|
||||
<% end %>
|
||||
<%= button_tag "Add a Plan", class: "cursor-pointer text-2xl font-bold py-2 pr-6 mt-10 w-[calc(24%-1rem)] w-1/4 min-h-[940px] text-[#E0E0E0] rounded-lg font-medium border border-[#E0E0E0] bg-[#173057] hover:bg-transparent hover:shadow-[0_0_10px_3px_#93c5fd] transition-colors duration-150", data: { action: "add-plan#add", add_plan_target: "button" } %>
|
||||
<template data-add-plan-target="template">
|
||||
<%= f.fields_for :plans, @employer.build_plan_with_default_benefits, child_index: 'NEW_RECORD' do |plan_fields| %>
|
||||
<div class="inline-flex flex-col justify-end pr-6 w-1/4 relative pl-1" data-controller="benefits-template-picker">
|
||||
<div class="absolute left-0 top-[2%] h-[98%] border-l-4 border-NEXT_COLOR"></div>
|
||||
<div class="font-bold text-2xl text-NEXT_COLOR -ml-[6px] z-2 w-full">
|
||||
<%= "Plan NEW_PLAN" %>
|
||||
</div>
|
||||
<%= render 'plan_fields', plan_fields: plan_fields, f: f, index: "NEW_RECORD".to_i %>
|
||||
<div class="text-xl text-left font-bold pl-[2px] mb-[-4px] z-1 text-NEXT_COLOR">
|
||||
Benefit Values
|
||||
</div>
|
||||
<div class="w-full h-[3px] rounded-r bg-NEXT_SECONDARY_COLOR ml-[3px]"></div>
|
||||
<%= plan_fields.fields_for :plan_benefits do |plan_benefits_fields| %>
|
||||
<%= render 'plan_benefits_fields', plan_benefits_fields: plan_benefits_fields %>
|
||||
<% end %>
|
||||
<div class="mt-4 pl-1">
|
||||
<%= plan_fields.hidden_field :_destroy %>
|
||||
<%= button_tag "Remove Plan NEW_PLAN", class: "cursor-pointer bg-deepcove hover:bg-brightlava text-xl font-bold text-NEXT_SECONDARY_COLOR hover:text-platinum py-2 px-4 font-semibold leading-tight rounded-lg border-3 border-NEXT_SECONDARY_COLOR w-full", data: { action: "add-plan#remove" } %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</template>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="font-bold text-2xl text-bluemana">Alternative Network Information</h3>
|
||||
<div class="h-[1px] w-1/2 mt-2 bg-bluemana"></div>
|
||||
</div>
|
||||
<div class="flex w-full justify-start" data-controller="add-alt-network-logo" data-add-alt-network-logo-form-color-value="<%= IdCard::Setup::FORM_COLORS.to_json %>">
|
||||
<div class="flex flex-wrap w-full" data-add-alt-network-logo-target="container">
|
||||
<%= button_tag "Add a Regional Logo", class: "cursor-pointer text-lg font-medium py-2 px-4 rounded w-1/7 h-75 my-8 text-[#E0E0E0] rounded-lg border border-[#C2C2C2] hover:shadow-[0_0_10px_3px_#93c5fd]", data: { action: "add-alt-network-logo#add", add_alt_network_logo_target: "button" } %>
|
||||
</div>
|
||||
<template data-add-alt-network-logo-target="template">
|
||||
<%= f.fields_for :alternate_network_logos, AlternateNetworkLogo.new, child_index: 'NEW_RECORD' do |network_fields| %>
|
||||
<div class="flex flex-col my-8 mr-3 space-y-6 px-3" data-controller="add-network-exception" data-add-network-exception-parent-color-value="NEXT_SECONDARY_COLOR">
|
||||
<%= render 'alt_network_logo_fields', network_fields: network_fields, f: f %>
|
||||
</div>
|
||||
<% end %>
|
||||
</template>
|
||||
</div>
|
||||
<div class="flex py-8 space-x-4">
|
||||
<%= f.submit "Submit" %>
|
||||
<%= link_to "Back", employer_path(@employer.slug), class: "flex justify-center items-center cursor-pointer bg-atmosphere hover:bg-deepcove border-2 border-atmosphere text-platinum font-bold px-3 rounded-sm h-10 transition duration-100" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
@@ -1,47 +0,0 @@
|
||||
<div class="bg-deepcove h-full w-full flex flex-col">
|
||||
<h1 class="font-bold text-4xl text-platinum">New Employer Setup</h1>
|
||||
<h3 class="font-bold text-2xl text-bluemana">General Information</h3>
|
||||
<%= form_with model: @form, url: employer_setup_index_path, local: true do |f| %>
|
||||
<div class="flex flex-col space-y-6">
|
||||
<div class="flex space-x-10">
|
||||
<div class="w-1/5">
|
||||
<%= f.text_field :name, label: { text: "Employer Name" }, class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-1/5">
|
||||
<%= f.text_field :group_number, label: { text: "Group/Medical Number" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex space-x-10">
|
||||
<div class="w-1/5">
|
||||
<%= f.text_field :pl_plan_key, label: { text: "Pl Plan Key" }, class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-1/5">
|
||||
<%= f.text_field :effective_date, label: { text: "Effective Date" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex space-x-10">
|
||||
<div class="w-1/5">
|
||||
<%= f.select :network, options_for_select(["Cigna", "Cigna+Regional", "Medcost"]), label: { text: "Provider Network" }, data: { controller: "form-toggle", action: "change->form-toggle#toggleDivs" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex space-x-5 items-center mt-4">
|
||||
<label for="file_upload_input" class="cursor-pointer bg-atmosphere hover:bg-bluetang text-platinum font-bold py-2 px-4 rounded border border-platinum">
|
||||
Choose Employer Logo File
|
||||
</label>
|
||||
<span id="file_name_display" class="ml-2 text-bluemana font-semibold">No file chosen</span>
|
||||
<%= f.file_field :employer_logo, class: "hidden", id: "file_upload_input" %>
|
||||
</div>
|
||||
<div class="pt-8">
|
||||
<%= f.submit "Continue to Plans" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
|
||||
|
||||
<script>
|
||||
document.getElementById('file_upload_input').addEventListener('change', function(e) {
|
||||
var fileName = e.target.files[0] ? e.target.files[0].name : 'No file chosen';
|
||||
document.getElementById('file_name_display').textContent = fileName;
|
||||
});
|
||||
</script>
|
||||
@@ -1,33 +0,0 @@
|
||||
<div class="bg-deepcove h-full w-full flex flex-col justify-start">
|
||||
<div class="flex items-center">
|
||||
<h1 class="font-bold text-4xl text-platinum my-5">Employers</h1>
|
||||
<%= link_to new_employer_path, class: "flex justify-center items-center h-8 w-8 ml-2 mb-6 text-sm text-bronze bg-deepcove hover:bg-cobalt font-semibold p-1 rounded-lg border-2 border-cobalt" do %>
|
||||
<%= icon "clipboard-plus", library: "lucide" %>
|
||||
<% end %>
|
||||
|
||||
</div>
|
||||
<% plan_colors = IdCard::Setup::FORM_COLORS.push('copper', 'bronze').shuffle %>
|
||||
<% @color_index = 0 %>
|
||||
<h2 class="font-bold text-3xl text-brightlava my-5">In Process:</h2>
|
||||
<% @employers.inactive.each_with_index do |emp, index| %>
|
||||
<% item_color_index = @color_index == 0 ? 0 : @color_index % plan_colors.length %>
|
||||
<div class="w-1/2 flex text-2xl text-platinum font-bold px-4 py-4 ml-10 space-x-4 rounded-lg border-l-5 border-b-2 <%= "border-#{plan_colors[item_color_index]}" %>">
|
||||
<%= link_to emp.name, employer_path(emp.slug), class: "hover:text-#{plan_colors[item_color_index]}" %>
|
||||
<div>
|
||||
<%= "(Effective #{emp.effective_date})" %>
|
||||
</div>
|
||||
</div>
|
||||
<% @color_index += 1 %>
|
||||
<% end %>
|
||||
<h2 class="font-bold text-3xl text-limegreen my-5">Live:</h2>
|
||||
<% @employers.active.each_with_index do |emp, index| %>
|
||||
<% item_color_index = @color_index == 0 ? 0 : @color_index % plan_colors.length %>
|
||||
<div class="w-1/2 flex text-2xl text-platinum font-bold px-4 py-4 ml-10 space-x-4 rounded-lg border-l-5 border-b-2 <%= "border-#{plan_colors[item_color_index]}" %>">
|
||||
<%= link_to emp.name, employer_path(emp.slug), class: "hover:text-#{plan_colors[item_color_index]}" %>
|
||||
<div>
|
||||
<%= "(#{emp.members.count} Members)" %>
|
||||
</div>
|
||||
</div>
|
||||
<% @color_index += 1 %>
|
||||
<% end %>
|
||||
</div>
|
||||
@@ -1,68 +0,0 @@
|
||||
<div class="min-h-screen w-full flex flex-col" data-controller="add-alt-network-logo" data-add-alt-network-logo-form-color-value="<%= IdCard::Setup::FORM_COLORS.to_json %>">
|
||||
<h1 class="font-bold text-4xl text-platinum">New Employer Setup</h1>
|
||||
<h3 class="font-bold text-2xl text-bluemana">Provider Network</h3>
|
||||
<%= form_with model: @form, url: employer_setup_index_path, local: true do |f| %>
|
||||
|
||||
<div class="flex w-full justify-start">
|
||||
<div class="flex flex-wrap w-full" data-add-alt-network-logo-target="container">
|
||||
<%= button_tag "Add a Regional Logo", class: "cursor-pointer text-lg font-medium py-2 px-4 rounded w-1/7 h-75 my-8 text-[#E0E0E0] rounded-lg border border-[#C2C2C2] hover:shadow-[0_0_10px_3px_#93c5fd]", data: { action: "add-alt-network-logo#add", add_alt_network_logo_target: "button" } %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="py-10">
|
||||
<%= f.hidden_field :pl_plan_key, value: "fake" %>
|
||||
<%= f.submit "Continue to Summary" %>
|
||||
</div>
|
||||
<template data-add-alt-network-logo-target="template">
|
||||
<%= f.fields_for :network_exceptions, index: 'NEW_RECORD' do |network_fields| %>
|
||||
<div class="flex flex-col my-8 mr-3 space-y-6 px-3" data-controller="add-network-exception">
|
||||
<div class="flex space-x-5 items-center mt-4">
|
||||
<label for="file_upload_input_NEW_RECORD" class="cursor-pointer bg-NEXT_COLOR hover:bg-NEXT_COLOR-tinted text-platinum font-bold py-2 px-4 rounded border border-platinum">
|
||||
Choose Network Logo File
|
||||
</label>
|
||||
<span id="file_name_display_NEW_RECORD" class="ml-2 text-NEXT_COLOR font-semibold">No file chosen</span>
|
||||
<%= network_fields.file_field :network_logo, class: "hidden", id: "file_upload_input_NEW_RECORD", data: { add_alt_network_logo_target: "networkLogo" } %>
|
||||
</div>
|
||||
<%= network_fields.fields_for :exceptions, index: 0 do |exception_fields| %>
|
||||
<div class="flex space-x-6 w-full">
|
||||
<div class="w-full">
|
||||
<%= exception_fields.select :type, options_for_select(["Zip","State"]), label: { text: "Exception Type" }, prompt: "Select Type", class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= exception_fields.text_field :value, label: { text: "Exception Value" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
<div class="flex flex-col w-full space-y-6" data-add-network-exception-target="container"></div>
|
||||
<%= button_tag "Add an exception rule", class: "cursor-pointer bg-NEXT_COLOR hover:bg-NEXT_COLOR-tinted text-platinum text-lg font-bold py-2 px-4 rounded border border-platinum w-full", data: { action: "add-network-exception#add" } %>
|
||||
<template data-add-network-exception-target="template">
|
||||
<%= network_fields.fields_for :exceptions, index: 'NEW_EXC_RECORD' do |exception_fields| %>
|
||||
<div class="flex space-x-6 w-full">
|
||||
<div class="w-full">
|
||||
<%= exception_fields.select :type, options_for_select(["Zip","State"]), label: { text: "Exception Type" }, prompt: "Select Type", class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= exception_fields.text_field :value, label: { text: "Exception Value" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</template>
|
||||
</div>
|
||||
<% end %>
|
||||
</template>
|
||||
|
||||
|
||||
<% end %>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<script>
|
||||
const logoButtons = document.querySelectorAll('[id^="file_upload_input_"]');
|
||||
logoButtons.forEach(button => {
|
||||
button.addEventListener('change', function(e) {
|
||||
var fileName = e.target.files[0] ? e.target.files[0].name : 'No file chosen';
|
||||
var targetIndex = e.target.id.slice(-1);
|
||||
document.getElementById(`file_name_display_${targetIndex}`).textContent = fileName;
|
||||
});
|
||||
})
|
||||
</script>
|
||||
@@ -1,136 +0,0 @@
|
||||
<div class="bg-deepcove h-full w-full flex flex-col">
|
||||
<div class="flex justify-between">
|
||||
<h1 class="font-bold text-4xl text-platinum my-5">New Employer</h1>
|
||||
<%= form_with model: @employer, url: import_employers_path, data: { turbo: false }, local: true, multipart: true do |form| %>
|
||||
<div class="flex items-end space-x-4">
|
||||
<div class="flex flex-col">
|
||||
<%= form.label :import_from_word, 'ID Card Setup Word Doc', class: "block text-platinum font-bold mb-1 md:mb-0 pr-4" %>
|
||||
<%= form.file_field :import_from_word %>
|
||||
</div>
|
||||
<%= form.submit "Import", class: "h-[40px]" %>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
<%= form_with model: @employer, local: true, multipart: true do |f| %>
|
||||
<div class="flex flex-col space-y-6 pb-10">
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="font-bold text-2xl text-bluemana">General Information</h3>
|
||||
<div class="h-[1px] w-1/2 mt-2 bg-bluemana"></div>
|
||||
</div>
|
||||
<div class="flex w-full items-end" data-controller="logo-upload">
|
||||
<div class="flex flex-col space-y-6 w-2/5">
|
||||
<div class="flex space-x-10">
|
||||
<div class="w-full">
|
||||
<%= f.text_field :name, label: { text: "Employer Name" }, data: { logo_upload_target: "employer" }, class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= f.text_field :group_number, label: { text: "Group/Medical Number" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex space-x-10">
|
||||
<div class="w-full">
|
||||
<%= f.text_field :effective_date, label: { text: "Effective Date" }, class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= f.select :network_provider, options_for_select(["Cigna", "Medcost"]), label: { text: "Provider Network" }, data: { logo_upload_target: "network" }, class: "w-full" %>
|
||||
<%= f.hidden_field :single_card_template, value: @employer.single_card_template %>
|
||||
<%= f.hidden_field :default_network_logo, value: @employer.default_network_logo %>
|
||||
<%= f.hidden_field :card_provider_id, value: @employer.card_provider_id %>
|
||||
<%= f.hidden_field :card_rx_id, value: @employer.card_rx_id %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex items-end">
|
||||
<div class="flex">
|
||||
<div class="flex flex-col">
|
||||
<%= f.text_field :employer_logo_filename, label: { text: "Employer Logo" }, default: "No logo added", data: { logo_upload_target: "logofield" }, class: "w-full rounded-r-none", readonly: true %>
|
||||
</div>
|
||||
<div class="flex items-center justify-center self-end cursor-pointer bg-atmosphere hover:bg-deepcove border-2 border-atmosphere text-platinum font-bold px-3 rounded-r h-10 transition duration-100">
|
||||
<label for="file_upload_input_employer" class="text-center cursor-pointer">
|
||||
<%= icon "image-plus", library: "lucide" %>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="hidden flex justify-center ml-15 rounded-lg border-4 border-atmosphere" data-logo-upload-target="previewContainer">
|
||||
<img data-logo-upload-target="preview" src="#" alt="Employer Logo preview" class="max-h-[100px] max-w-[133px] bg-platinum m-1"/>
|
||||
</div>
|
||||
<%= f.file_field :add_or_update_logo, class: "hidden", id: "file_upload_input_employer", data: { logo_upload_target: "previewContainer", logo_upload_type_param: "employer", action: "change->logo-upload#uploadLogo" }, direct_upload: true %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="font-bold text-2xl text-bluemana">Plans Information</h3>
|
||||
<div class="h-[1px] w-1/2 mt-2 bg-bluemana"></div>
|
||||
</div>
|
||||
<div class="w-full flex my-8" data-controller="add-plan" data-add-plan-form-color-value="<%= IdCard::Setup::FORM_COLORS.to_json %>" >
|
||||
<div class="flex flex-wrap w-full" data-add-plan-target="container">
|
||||
<% @employer.plans.each_with_index do |plan, index| %>
|
||||
<%= f.fields_for :plans, plan, child_index: index do |plan_fields| %>
|
||||
<div class="inline-flex flex-col justify-end pr-6 w-1/4 relative pl-1 plan-item" data-controller="benefits-template-picker">
|
||||
<div class="absolute left-0 top-[2%] h-[98%] border-l-4 <%= "border-#{IdCard::Setup::FORM_COLORS[index]}" %> "></div>
|
||||
<div class="font-bold text-2xl <%= "text-#{IdCard::Setup::FORM_COLORS[index]}" %> -ml-[6px] z-2 w-full">
|
||||
<%= "Plan #{index + 1}" %>
|
||||
</div>
|
||||
<%= render 'plan_fields', plan_fields: plan_fields, f: f, index: index %>
|
||||
<div class="text-xl text-left font-bold pl-[2px] mb-[-4px] z-1 <%= "text-#{IdCard::Setup::FORM_COLORS[index]}" %>">
|
||||
Benefit Values
|
||||
</div>
|
||||
<div class="w-full h-[3px] rounded-r <%= "bg-#{index % 2 == 1 ? 'bronze' : 'copper'}" %> ml-[3px]"></div>
|
||||
<%= plan_fields.fields_for :plan_benefits do |plan_benefits_fields| %>
|
||||
<%= render 'plan_benefits_fields', plan_benefits_fields: plan_benefits_fields %>
|
||||
<% end %>
|
||||
<div class="mt-4 pl-1">
|
||||
<%= plan_fields.hidden_field :_destroy %>
|
||||
<%= button_tag "Remove Plan #{index + 1}", class: "cursor-pointer bg-deepcove hover:bg-brightlava text-xl font-bold text-copper hover:text-platinum py-2 px-4 font-semibold leading-tight rounded-lg border-3 border-copper w-full", data: { action: "add-plan#remove" } %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
<% end %>
|
||||
<%= button_tag "Add a Plan", class: "cursor-pointer text-2xl font-bold py-2 pr-6 mt-10 w-[calc(24%-1rem)] w-1/4 min-h-[940px] text-[#E0E0E0] rounded-lg font-medium border border-[#E0E0E0] bg-[#173057] hover:bg-transparent hover:shadow-[0_0_10px_3px_#93c5fd] transition-colors duration-150", data: { action: "add-plan#add", add_plan_target: "button" } %>
|
||||
</div>
|
||||
<template data-add-plan-target="template">
|
||||
<%= f.fields_for :plans, @employer.build_plan_with_default_benefits, child_index: 'NEW_RECORD' do |plan_fields| %>
|
||||
<div class="inline-flex flex-col justify-end pr-6 w-1/4 relative pl-1 plan-item" data-controller="benefits-template-picker">
|
||||
<div class="absolute left-0 top-[2%] h-[98%] border-l-4 border-NEXT_COLOR"></div>
|
||||
<div class="font-bold text-2xl text-NEXT_COLOR -ml-[6px] z-2 w-full">
|
||||
<%= "Plan NEW_PLAN" %>
|
||||
</div>
|
||||
<%= render 'plan_fields', plan_fields: plan_fields, f: f, index: "NEW_RECORD".to_i %>
|
||||
<div class="text-xl text-left font-bold pl-[2px] mb-[-4px] z-1 text-NEXT_COLOR">
|
||||
Benefit Values
|
||||
</div>
|
||||
<div class="w-full h-[3px] rounded-r bg-NEXT_SECONDARY_COLOR ml-[3px]"></div>
|
||||
<%= plan_fields.fields_for :plan_benefits do |plan_benefits_fields| %>
|
||||
<%= render 'plan_benefits_fields', plan_benefits_fields: plan_benefits_fields %>
|
||||
<% end %>
|
||||
<div class="mt-4 pl-1">
|
||||
<%= plan_fields.hidden_field :_destroy %>
|
||||
<%= button_tag "Remove Plan NEW_PLAN", class: "cursor-pointer bg-deepcove hover:bg-brightlava text-xl font-bold text-NEXT_SECONDARY_COLOR hover:text-platinum py-2 px-4 font-semibold leading-tight rounded-lg border-3 border-NEXT_SECONDARY_COLOR w-full", data: { action: "add-plan#remove" } %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</template>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="font-bold text-2xl text-bluemana">Alternative Network Information</h3>
|
||||
<div class="h-[1px] w-1/2 mt-2 bg-bluemana"></div>
|
||||
</div>
|
||||
<div class="flex w-full justify-start" data-controller="add-alt-network-logo" data-add-alt-network-logo-form-color-value="<%= IdCard::Setup::FORM_COLORS.to_json %>">
|
||||
<div class="flex flex-wrap w-full" data-add-alt-network-logo-target="container">
|
||||
<%= button_tag "Add a Regional Logo", class: "cursor-pointer text-lg font-medium py-2 px-4 rounded w-1/7 h-55 my-8 text-[#E0E0E0] rounded-lg border border-[#C2C2C2] hover:shadow-[0_0_10px_3px_#93c5fd]", data: { action: "add-alt-network-logo#add", add_alt_network_logo_target: "button" } %>
|
||||
</div>
|
||||
<template data-add-alt-network-logo-target="template">
|
||||
<%= f.fields_for :alternate_network_logos, AlternateNetworkLogo.new, child_index: 'NEW_RECORD' do |network_fields| %>
|
||||
<div class="flex flex-col my-8 mr-3 space-y-6 px-3 min-w-1/3 network-item" data-controller="logo-upload" data-add-network-exception-parent-color-value="NEXT_SECONDARY_COLOR">
|
||||
<%= render 'alt_network_logo_fields', network_fields: network_fields, f: f %>
|
||||
</div>
|
||||
<% end %>
|
||||
</template>
|
||||
</div>
|
||||
<div class="py-8">
|
||||
<%= f.submit "Submit" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
@@ -1,170 +0,0 @@
|
||||
<div class="bg-deepcove h-full w-full flex flex-col">
|
||||
<div class="flex justify-between">
|
||||
<h1 class="font-bold text-4xl text-platinum my-5">New Employer</h1>
|
||||
<%= form_with model: @employer, url: import_employers_path, data: { turbo: false }, local: true, multipart: true do |form| %>
|
||||
<div class="flex items-end space-x-4">
|
||||
<div class="flex flex-col">
|
||||
<%= form.label :import_from_word, 'ID Card Setup Word Doc', class: "block text-platinum font-bold mb-1 md:mb-0 pr-4" %>
|
||||
<%= form.file_field :import_from_word %>
|
||||
</div>
|
||||
<%= form.submit "Import", class: "h-[40px]" %>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
<%= form_with model: @employer, local: true, multipart: true do |f| %>
|
||||
<div class="flex flex-col space-y-6 pb-10">
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="font-bold text-2xl text-bluemana">General Information</h3>
|
||||
<div class="h-[1px] w-1/2 mt-2 bg-bluemana"></div>
|
||||
</div>
|
||||
<div class="flex w-full items-end" data-controller="logo-upload">
|
||||
<div class="flex flex-col space-y-6 w-2/5">
|
||||
<div class="flex space-x-10">
|
||||
<div class="w-full">
|
||||
<%= f.text_field :name, label: { text: "Employer Name" }, data: { logo_upload_target: "employer" }, class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= f.text_field :group_number, label: { text: "Group/Medical Number" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex space-x-10">
|
||||
<div class="w-full">
|
||||
<%= f.text_field :effective_date, label: { text: "Effective Date" }, class: "w-full" %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= f.select :network_provider, options_for_select(["Cigna", "Medcost"]), label: { text: "Provider Network" }, data: { logo_upload_target: "network" }, class: "w-full" %>
|
||||
<%= f.hidden_field :single_card_template, value: @employer.single_card_template %>
|
||||
<%= f.hidden_field :default_network_logo, value: @employer.default_network_logo %>
|
||||
<%= f.hidden_field :card_provider_id, value: @employer.card_provider_id %>
|
||||
<%= f.hidden_field :card_rx_id, value: @employer.card_rx_id %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex items-end">
|
||||
<div class="flex">
|
||||
<div class="flex flex-col">
|
||||
<%= f.text_field :employer_logo_filename, label: { text: "Employer Logo" }, default: "No logo added", data: { logo_upload_target: "logofield" }, class: "w-full rounded-r-none", readonly: true %>
|
||||
</div>
|
||||
<div class="flex items-center justify-center self-end cursor-pointer bg-atmosphere hover:bg-deepcove border-2 border-atmosphere text-platinum font-bold px-3 rounded-r h-10 transition duration-100">
|
||||
<label for="file_upload_input_employer" class="text-center cursor-pointer">
|
||||
<%= icon "image-plus", library: "lucide" %>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="hidden flex justify-center ml-15 rounded-lg border-4 border-atmosphere" data-logo-upload-target="previewContainer">
|
||||
<img data-logo-upload-target="preview" src="#" alt="Employer Logo preview" class="max-h-[100px] max-w-[133px] bg-platinum m-1"/>
|
||||
</div>
|
||||
<%= f.file_field :add_or_update_logo, class: "hidden", id: "file_upload_input_employer", data: { logo_upload_target: "previewContainer", logo_upload_type_param: "employer", action: "change->logo-upload#uploadLogo" }, direct_upload: true %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="font-bold text-2xl text-bluemana">Plans Information</h3>
|
||||
<div class="h-[1px] w-1/2 mt-2 bg-bluemana"></div>
|
||||
</div>
|
||||
<div class="w-full flex my-8" data-controller="add-plan" data-add-plan-form-color-value="<%= IdCard::Setup::FORM_COLORS.to_json %>" >
|
||||
<div class="flex flex-wrap w-full" data-add-plan-target="container">
|
||||
<% @employer.plans.each_with_index do |plan, index| %>
|
||||
<%= f.fields_for :plans, plan, child_index: index do |plan_fields| %>
|
||||
<div class="inline-flex flex-col justify-end pr-6 w-1/4 relative pl-1 plan-item" data-controller="benefits-template-picker">
|
||||
<div class="absolute left-0 top-[2%] h-[98%] border-l-4 <%= "border-#{IdCard::Setup::FORM_COLORS[index]}" %> "></div>
|
||||
<div class="font-bold text-2xl <%= "text-#{IdCard::Setup::FORM_COLORS[index]}" %> -ml-[6px] z-2 w-full">
|
||||
<%= "Plan #{index + 1}" %>
|
||||
</div>
|
||||
<%= render 'plan_fields', plan_fields: plan_fields, f: f, index: index %>
|
||||
<div class="text-xl text-left font-bold pl-[2px] mb-[-4px] z-1 <%= "text-#{IdCard::Setup::FORM_COLORS[index]}" %>">
|
||||
Benefit Values
|
||||
</div>
|
||||
<div class="w-full h-[3px] rounded-r <%= "bg-#{index % 2 == 1 ? 'bronze' : 'copper'}" %> ml-[3px]"></div>
|
||||
<%= plan_fields.fields_for :plan_benefits do |plan_benefits_fields| %>
|
||||
<%= render 'plan_benefits_fields', plan_benefits_fields: plan_benefits_fields %>
|
||||
<% end %>
|
||||
<div class="mt-4 pl-1">
|
||||
<%= plan_fields.hidden_field :_destroy %>
|
||||
<%= button_tag "Remove Plan #{index + 1}", class: "cursor-pointer bg-deepcove hover:bg-brightlava text-xl font-bold text-copper hover:text-platinum py-2 px-4 font-semibold leading-tight rounded-lg border-3 border-copper w-full", data: { action: "add-plan#remove" } %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
<% end %>
|
||||
<%= button_tag "Add a Plan", class: "cursor-pointer text-2xl font-bold py-2 pr-6 mt-10 w-[calc(24%-1rem)] w-1/4 min-h-[940px] text-[#E0E0E0] rounded-lg font-medium border border-[#E0E0E0] bg-[#173057] hover:bg-transparent hover:shadow-[0_0_10px_3px_#93c5fd] transition-colors duration-150", data: { action: "add-plan#add", add_plan_target: "button" } %>
|
||||
</div>
|
||||
<template data-add-plan-target="template">
|
||||
<%= f.fields_for :plans, @employer.build_plan_with_default_benefits, child_index: 'NEW_RECORD' do |plan_fields| %>
|
||||
<div class="inline-flex flex-col justify-end pr-6 w-1/4 relative pl-1 plan-item" data-controller="benefits-template-picker">
|
||||
<div class="absolute left-0 top-[2%] h-[98%] border-l-4 border-NEXT_COLOR"></div>
|
||||
<div class="font-bold text-2xl text-NEXT_COLOR -ml-[6px] z-2 w-full">
|
||||
<%= "Plan NEW_PLAN" %>
|
||||
</div>
|
||||
<%= render 'plan_fields', plan_fields: plan_fields, f: f, index: "NEW_RECORD".to_i %>
|
||||
<div class="text-xl text-left font-bold pl-[2px] mb-[-4px] z-1 text-NEXT_COLOR">
|
||||
Benefit Values
|
||||
</div>
|
||||
<div class="w-full h-[3px] rounded-r bg-NEXT_SECONDARY_COLOR ml-[3px]"></div>
|
||||
<%= plan_fields.fields_for :plan_benefits do |plan_benefits_fields| %>
|
||||
<%= render 'plan_benefits_fields', plan_benefits_fields: plan_benefits_fields %>
|
||||
<% end %>
|
||||
<div class="mt-4 pl-1">
|
||||
<%= plan_fields.hidden_field :_destroy %>
|
||||
<%= button_tag "Remove Plan NEW_PLAN", class: "cursor-pointer bg-deepcove hover:bg-brightlava text-xl font-bold text-NEXT_SECONDARY_COLOR hover:text-platinum py-2 px-4 font-semibold leading-tight rounded-lg border-3 border-NEXT_SECONDARY_COLOR w-full", data: { action: "add-plan#remove" } %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</template>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="font-bold text-2xl text-bluemana">ID Card Exceptions Information</h3>
|
||||
<div class="h-[1px] w-1/2 mt-2 bg-bluemana"></div>
|
||||
</div>
|
||||
<div class="flex flex-wrap w-full justify-start my-8" data-controller="add-exception" data-add-exception-form-color-value="<%= IdCard::Setup::FORM_COLORS.to_json %>">
|
||||
<%= button_tag "Add an Exception", class: "cursor-pointer text-lg font-medium py-2 px-4 rounded w-1/7 h-35 my-8 text-[#E0E0E0] rounded-lg border border-[#C2C2C2] hover:shadow-[0_0_10px_3px_#93c5fd]", data: { action: "add-exception#addExemption", add_exception_target: "exceptionButton" } %>
|
||||
<template data-add-exception-target="exceptionTemplate">
|
||||
<%= f.fields_for :card_exceptions, CardException.new, child_index: 'NEW_RECORD' do |exception_fields| %>
|
||||
<div class="flex flex-col pr-6 w-1/2 pl-1">
|
||||
<div class="flex justify-between items-end w-full pb-2">
|
||||
<div class="w-[48%]">
|
||||
<%= exception_fields.select :type, options_for_select(CardException::VALID_TYPES.map { |type| [type.titleize(keep_id_suffix: true), type] }), { label: { text: "Exception Based On" }, prompt: "Select Type", class: "w-full" } %>
|
||||
</div>
|
||||
<div class="w-[48%]">
|
||||
<%= exception_fields.text_field :value, label: { text: "Exception Value" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="text-xl text-left font-bold mb-[-4px] z-1 text-platinum">
|
||||
Exception Items
|
||||
</div>
|
||||
<div class="w-full h-[3px] rounded-r bg-NEXT_COLOR ml-[1px] mb-1"></div>
|
||||
<div class="flex flex-col w-full justify-start" data-controller="add-exception-item">
|
||||
<%= button_tag "Add Another Item To Exception", class: "cursor-pointer bg-NEXT_COLOR hover:bg-deepcove text-xl font-bold text-platinum my-3 py-1 font-semibold leading-tight rounded border-3 border-NEXT_COLOR w-full", data: { action: "add-exception-item#addExemptionItem", add_exception_item_target: "exceptionItemButton" } %>
|
||||
<template data-add-exception-item-target="exceptionItemTemplate">
|
||||
<%= exception_fields.fields_for :card_exception_items, CardExceptionItem.new, child_index: 'NEW_ITEM_RECORD' do |exception_item_fields| %>
|
||||
<div class="flex justify-between items-end w-full" data-controller="general-form">
|
||||
<div class="w-[42%]">
|
||||
<%= exception_item_fields.select :field_name, options_for_select(CardExceptionItem::VALID_FIELD_NAMES.map { |field_name| [field_name.titleize, field_name] }), { label: { text: "Card Field" }, prompt: "Select Card Field", class: "w-full" }, { data: { action: "change->general-form#toggleFields"} } %>
|
||||
</div>
|
||||
<div class="w-[42%] hidden">
|
||||
<%= exception_item_fields.text_field :field_value, label: { text: "New Value" }, data: { general_form_target: "dependentField", parent_value: "default" }, class: "w-full" %>
|
||||
</div>
|
||||
<%= render 'alt_network_logo_fields_new', exception_item_fields: exception_item_fields %>
|
||||
<div class="w-[42%] hidden">
|
||||
<%= exception_item_fields.select :card_provider_id, options_for_select(CardProvider.where.not(title: nil).map { |provider| [provider.title, provider.id] }), { prompt: "Select Provider Template", class: "w-full" }, { data: { general_form_target: "dependentField", parent_value: "provider_section" } } %>
|
||||
</div>
|
||||
<div class="mt-4 ml-1">
|
||||
<%= exception_item_fields.hidden_field :_destroy %>
|
||||
<%= button_tag "Remove", class: "cursor-pointer flex items-center justify-center bg-brightlava font-bold text-lg text-platinum py-2 px-1 font-semibold leading-tight rounded-lg border-3 border-brightlava w-full", data: { action: "add-exception-item#removeExemptionItem" } %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</template>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<% end %>
|
||||
</template>
|
||||
</div>
|
||||
<div class="py-8">
|
||||
<%= f.submit "Submit" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
@@ -1,72 +0,0 @@
|
||||
<div class="min-h-screen w-full flex flex-col" data-controller="add-plan" data-add-plan-form-color-value="<%= IdCard::Setup::FORM_COLORS.to_json %>">
|
||||
<h1 class="font-bold text-4xl text-platinum">New Employer Setup</h1>
|
||||
<h3 class="font-bold text-2xl text-bluemana">Medical Plans</h3>
|
||||
<div class="flex flex-col pl-6">
|
||||
<%= form_with model: @form, url: employer_setup_index_path, local: true do |f| %>
|
||||
<div class="w-full flex my-8">
|
||||
<div class="flex flex-wrap w-full" data-add-plan-target="container">
|
||||
<div class="flex flex-col items-stretch justify-end pr-6 pl-1 w-1/4">
|
||||
<%= f.fields_for :benefit_descs do |plan_benefit_fields| %>
|
||||
<%= plan_benefit_fields.hidden_field :plan_id, value: "descriptions" %>
|
||||
<% @form.benefits_template.each do |bene| %>
|
||||
<div>
|
||||
<%= plan_benefit_fields.text_field "benefit_#{bene.sequence}", label: { text: "Benefit Description #{bene.sequence}" }, value: "#{bene.benefit_desc}", class: "w-full" %>
|
||||
</div>
|
||||
<% end %>
|
||||
<% end %>
|
||||
</div>
|
||||
<% @form.plans.each_with_index do |plan, i| %>
|
||||
<div class="inline-flex flex-col justify-end pr-6 pl-1 mt-10 relative w-1/4" data-controller="benefits-template-picker">
|
||||
<div class="absolute left-0 top-[2%] h-[98%] border-l-4 <%= "border-#{IdCard::Setup::FORM_COLORS[i]}" %> rounded-bl-lg"></div>
|
||||
<div class="font-bold text-2xl <%= "text-#{IdCard::Setup::FORM_COLORS[i]}" %> -ml-[6px] z-2 w-full">
|
||||
<%= "Plan #{i + 1}" %>
|
||||
</div>
|
||||
<%= f.fields_for :plans, index: i do |plan_fields| %>
|
||||
<div class="pl-1 w-full">
|
||||
<%= plan_fields.text_field :plan_id, label: { text: "Plan Id" }, class: "w-full", data: { add_plan_target: "plan" } %>
|
||||
</div>
|
||||
<div class="pl-1">
|
||||
<%= f.select :template_id, options_from_collection_for_select(@form.plan_templates, :id, :title), { prompt: "Select Plan Template" }, { data: { action: "benefits-template-picker#fetchData" }} %>
|
||||
</div>
|
||||
<% @form.benefits_template.each do |bene| %>
|
||||
<div>
|
||||
<div class="pl-1 w-full">
|
||||
<%= plan_fields.text_field "benefit_#{bene.sequence}", label: { text: "Benefit Value #{bene.sequence}" }, data: { benefits_template_picker_target: "benefit", sequence: "#{bene.sequence}"}, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
<% end %>
|
||||
</div>
|
||||
<% end %>
|
||||
<%= button_tag "Add a Plan", class: "cursor-pointer text-2xl font-bold py-2 pr-6 mt-10 w-[calc(24%-1rem)] w-1/4 min-h-[940px] text-[#E0E0E0] rounded-lg font-medium border border-[#E0E0E0] bg-[#173057] hover:bg-transparent hover:shadow-[0_0_10px_3px_#93c5fd] transition-colors duration-150", data: { action: "add-plan#add", add_plan_target: "button" } %>
|
||||
<template data-add-plan-target="template">
|
||||
<div class="inline-flex flex-col justify-end pr-6 pl-1 mt-10 relative w-1/4" data-controller="benefits-template-picker">
|
||||
<div class="absolute left-0 top-[2%] h-[98%] border-l-4 border-NEXT_COLOR rounded-bl-lg"></div>
|
||||
<div class="font-bold text-2xl text-NEXT_COLOR -ml-[6px] z-2 w-full">
|
||||
<%= "Plan NEW_PLAN" %>
|
||||
</div>
|
||||
<%= f.fields_for :plans, index: 'NEW_RECORD' do |plan_fields| %>
|
||||
<div class="pl-1 w-full">
|
||||
<%= plan_fields.text_field :plan_id, label: { text: "Plan Id" }, class: "w-full", data: { add_plan_target: "plan" } %>
|
||||
</div>
|
||||
<div class="pl-1">
|
||||
<%= f.select :template_id, options_from_collection_for_select(@form.plan_templates, :id, :title), { prompt: "Select Plan Template" }, { data: { action: "benefits-template-picker#fetchData" }} %>
|
||||
</div>
|
||||
<% @form.benefits_template.each do |bene| %>
|
||||
<div>
|
||||
<div class="pl-1 w-full">
|
||||
<%= plan_fields.text_field "benefit_#{bene.sequence}", label: { text: "Benefit Value #{bene.sequence}" }, data: { benefits_template_picker_target: "benefit", sequence: "#{bene.sequence}"}, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
<% end %>
|
||||
</div>
|
||||
</template>
|
||||
</div>
|
||||
</div>
|
||||
<div class="py-10">
|
||||
<%= f.submit "Continue to Provider Network" %>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1,62 +0,0 @@
|
||||
<div class="bg-deepcove text-platinum h-full w-full flex flex-col">
|
||||
<div class="flex w-full items-center space-x-4">
|
||||
<h1 class="font-bold text-4xl text-platinum my-5"><%= @employer.name %></h1>
|
||||
<div class="h-[50px] max-w-[200px]">
|
||||
<%= image_tag image_card_logo_file_path(@employer.employer_logo_filename), class: "max-h-[50px] object-contain shadow-[0_0_10px_3px_#93c5fd]" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex space-x-6">
|
||||
<div class="flex flex-col space-y-1 w-1/3">
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="grow-0 font-bold text-2xl text-bluemana">Employer Information</h3>
|
||||
<div class="h-[1px] grow mt-2 bg-bluemana"></div>
|
||||
</div>
|
||||
<div class="flex flex-col space-y-1 ml-4">
|
||||
<p class="text-<%="#{@employer.active == false ? "brightlava" : "limegreen"}" %>">
|
||||
<strong class="text-platinum mr-2">└── Status:</strong>
|
||||
<%= @employer.active == false ? "inactive" : "active" %>
|
||||
</p>
|
||||
<p class="ml-9 text-bluemana">
|
||||
<strong class="text-platinum mr-2">├── Effective Date:</strong>
|
||||
<%= @employer.effective_date %>
|
||||
</p>
|
||||
<div>
|
||||
<strong class="text-atmosphere mr-2">└── Key Chain</strong>
|
||||
</div>
|
||||
<% @employer.attributes.with_indifferent_access.slice(:pl_plan_key, :company_pb_entity_key, :group_number).each do |attribute_name, attribute_value| %>
|
||||
<p class="ml-9 text-<%="#{attribute_value.present? ? "limegreen" : "brightlava"}" %>">
|
||||
<strong class="text-platinum mr-2">├── <%= attribute_name.titleize %>:</strong>
|
||||
<%= attribute_value.present? ? attribute_value.to_s : "waiting" %>
|
||||
</p>
|
||||
<% end %>
|
||||
<div>
|
||||
<strong class="text-atmosphere mr-2">└── Plans</strong>
|
||||
</div>
|
||||
<% @employer.plans.pluck(:title, :pb_product_key).each do |plan| %>
|
||||
<div class="ml-9">
|
||||
├── <%= plan.first %>
|
||||
</div>
|
||||
<p class="ml-14 text-<%="#{plan.last.present? ? "limegreen" : "brightlava"}" %>">
|
||||
<strong class="text-platinum mr-2">└── PB Product Key:</strong>
|
||||
<%= plan.last.present? ? plan.last.to_s : "waiting" %>
|
||||
</p>
|
||||
<% end %>
|
||||
</div>
|
||||
<div class="w-full flex items-center space-x-2 mt-10 ml-14">
|
||||
<%= link_to 'Edit', edit_employer_path(@employer.slug), class: "hover:text-atmosphere" %>
|
||||
<p>|</p>
|
||||
<%= link_to 'Back', employers_path, class: "hover:text-atmosphere" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex flex-col space-y-6 w-1/3">
|
||||
<div class="w-full flex items-center">
|
||||
<h3 class="font-bold text-2xl text-bluemana">Actions</h3>
|
||||
<div class="h-[1px] w-2/3 mt-2 bg-bluemana"></div>
|
||||
</div>
|
||||
<%= link_to 'Generate Sample Cards', generate_sample_sample_id_cards_path(employer_slug: @employer.slug ), data: { turbo: false }, class: "flex justify-center items-center w-2/3 cursor-pointer bg-atmosphere hover:bg-deepcove border-2 border-atmosphere text-platinum font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
<%= link_to 'Generate Group Cards (for print)', generate_print_sample_id_cards_path(employer_slug: @employer.slug ),data: { turbo: false }, class: "flex justify-center items-center w-2/3 #{@employer.active ? "" : "pointer-events-none opacity-50 cursor-not-allowed"} bg-atmosphere hover:bg-deepcove border-2 border-atmosphere text-platinum font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
<%= link_to 'Generate Group Cards (for display)', generate_mobile_display_sample_id_cards_path(employer_slug: @employer.slug ), data: { turbo: false }, class: "flex justify-center items-center w-2/3 #{@employer.active ? "" : "pointer-events-none opacity-50 cursor-not-allowed"} bg-atmosphere hover:bg-deepcove border-2 border-atmosphere text-platinum font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
<%= link_to 'Generate Group Cards (for download)', generate_full_page_sample_id_cards_path(employer_slug: @employer.slug ), data: { turbo: false }, class: "flex justify-center items-center w-2/3 #{@employer.active ? "" : "pointer-events-none opacity-50 cursor-not-allowed"} bg-atmosphere hover:bg-deepcove border-2 border-atmosphere text-platinum font-bold px-3 rounded-lg h-10 transition duration-100" %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1,9 +0,0 @@
|
||||
<div class="bg-deepcove min-h-screen w-full flex flex-col">
|
||||
<h1 class="font-bold text-4xl text-platinum">New Employer Setup</h1>
|
||||
<h3 class="font-bold text-2xl text-bluemana">Summary</h3>
|
||||
<%= form_with model: @form, url: employer_setup_index_path, local: true do |f| %>
|
||||
<div class="py-10">
|
||||
<%= f.submit "Submit" %>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
@@ -1,4 +1,14 @@
|
||||
<div class="bg-deepcove h-full w-full flex flex-col justify-start font-bold">
|
||||
<div class="flex items-center">
|
||||
<%= link_to dashboard_path, class: "flex items-center h-14 space-x" do %>
|
||||
<div class="flex items-center h-14 text-bluemana hover:text-bronze">
|
||||
<%= icon "arrow-big-left-dash", library: "lucide", class: "h-full w-20 text-center" %>
|
||||
<div class="w-full pb-1 font-bold text-2xl">
|
||||
<%= "Back to Dashboard" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
<div class="w-full flex flex-col items-center mb-3">
|
||||
<div class="text-5xl text-platinum">
|
||||
ID Card Printer
|
||||
@@ -20,7 +30,7 @@
|
||||
<div class="grow h-[1px] mx-1 bg-cobalt-vivid"></div>
|
||||
<div class="flex flex-none items-center text-xs">
|
||||
<%= link_to print_queued_by_employer_id_card_print_path(qu.pl_plan_key), data: { turbo: false }, class: "flex h-7 w-14 transition duration-100" do %>
|
||||
<%= icon "printer", library: "lucide", class: "h-full w-full text-center text-platinum bg-atmosphere hover:bg-deepcove border-2 border-atmosphere rounded-md p-0.5" %>
|
||||
<%= icon "printer", library: "lucide", class: "h-full w-full text-center text-platinum hover:text-bronze bg-atmosphere hover:bg-deepcove border-2 border-atmosphere rounded-md p-0.5" %>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
@@ -49,14 +59,14 @@
|
||||
</div>
|
||||
<div class="w-1/2 flex flex-col">
|
||||
<div class="w-full flex justify-center items-center text-center text-2xl">
|
||||
<%= link_to "Print All Queued", print_all_queued_id_card_print_index_path, data: { turbo: false }, class: "flex justify-center items-center w-1/2 h-15 text-platinum bg-cobalt-vivid hover:bg-deepcove border-2 border-cobalt-vivid rounded-lg p-2" %>
|
||||
<%= link_to "Print All Queued", print_all_queued_id_card_print_index_path, data: { turbo: false }, class: "flex justify-center items-center w-1/2 h-15 text-platinum hover:text-bronze bg-cobalt-vivid hover:bg-deepcove border-2 border-cobalt-vivid rounded-lg p-2" %>
|
||||
</div>
|
||||
<div class="w-full flex flex-col justify-center items-center text-center mt-15 text-2xl" data-controller="link-updater" data-link-updater-url-template-value="<%= generate_print_id_card_print_path(':id') %>">
|
||||
<div class="w-full flex justify-center text-platinum">Print ALL Cards for Group</div>
|
||||
<div class="w-1/2 flex justify-center text-lg font-medium">
|
||||
<%= select_tag "employer_select", options_for_select(Employer.all.pluck(:name, :pl_plan_key)), include_blank: "Select Group", data: { action: "change->link-updater#update", link_updater_target: "selector" }, class: "w-full rounded-lg rounded-r-none #{TailwindFormBuilder::SELECT_FIELD_STYLE}" %>
|
||||
<%= link_to "#", class: 'w-1/4 h-11 bg-cobalt-vivid hover:bg-deepcove border-2 border-cobalt-vivid text-platinum font-bold px-3 rounded-r-lg h-10 transition duration-100', data: { turbo: false, link_updater_target: "link" } do %>
|
||||
<%= icon "printer", library: "lucide", class: "h-full w-full text-center text-platinum rounded-md p-0.5" %>
|
||||
<%= link_to "#", class: 'w-1/4 h-11 bg-cobalt-vivid hover:bg-deepcove border-2 border-cobalt-vivid text-platinum hover:text-bronze font-bold px-3 rounded-r-lg h-10 transition duration-100', data: { turbo: false, link_updater_target: "link" } do %>
|
||||
<%= icon "printer", library: "lucide", class: "h-full w-full text-center rounded-md p-0.5" %>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
<div class="pl-1 w-full">
|
||||
<%= plan_fields.text_field :title, label: { text: "Plan Title" }, class: "w-full", data: { add_plan_target: "plan", benefits_template_picker_target: "title" } %>
|
||||
</div>
|
||||
<% if plan_fields.object.persisted? %>
|
||||
<div class="pl-1 w-full">
|
||||
<%= plan_fields.text_field :pb_product_key, label: { text: "Plan Product Key" }, class: "w-full" %>
|
||||
</div>
|
||||
<%= plan_fields.hidden_field :id %>
|
||||
<% end %>
|
||||
<div class="pl-1 w-full">
|
||||
<%= plan_fields.text_field :pb_product_key, label: { text: "Plan Product Key" }, class: "w-full pointer-events-none opacity-65 cursor-not-allowed" %>
|
||||
</div>
|
||||
<%= plan_fields.hidden_field :id %>
|
||||
<% unless plan_fields.object.setup.active %>
|
||||
<div class="pl-1 pb-2 w-full">
|
||||
<%= f.select :template_id, options_from_collection_for_select(@plan_templates, :id, :title), { prompt: "Select Plan Template", class: "w-full" }, { data: { action: "benefits-template-picker#fetchData" }} %>
|
||||
|
||||
@@ -1,6 +1,16 @@
|
||||
<div class="bg-deepcove h-full w-full flex flex-col">
|
||||
<div class="flex items-center">
|
||||
<%= link_to employer_path(@employer.slug), class: "flex items-center h-14 space-x" do %>
|
||||
<div class="flex items-center h-14 text-bluemana hover:text-bronze">
|
||||
<%= icon "arrow-big-left-dash", library: "lucide", class: "h-full w-20 text-center" %>
|
||||
<div class="w-full pb-1 font-bold text-2xl">
|
||||
<%= "Back to Employer" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
<div class="flex space-x-6 my-5 font-bold text-4xl">
|
||||
<h1 class="text-platinum">ID Card Exceptions:</h1>
|
||||
<h1 class="text-platinum">Alternate ID Cards:</h1>
|
||||
<h1 class="text-atmosphere">(<%= @employer.name %>)</h1>
|
||||
</div>
|
||||
<div class="flex flex-col">
|
||||
@@ -12,16 +22,22 @@
|
||||
<div class="flex flex-col pr-6 w-1/2">
|
||||
<div class="flex justify-between items-end w-full pb-2">
|
||||
<div class="w-[48%]">
|
||||
<%= exception_fields.select :exception_type, options_for_select(IdCard::FieldException::VALID_TYPES.map { |type| [type.titleize(keep_id_suffix: true), type]}, exc.exception_type), { label: { text: "Exception Based On" }, prompt: "Select Type", class: "w-full" }, data: { add_exception_target: "exception" } %>
|
||||
<%= exception_fields.select :exception_type, options_for_select(IdCard::FieldException::VALID_TYPES.map { |type| [type.titleize(keep_id_suffix: true), type]}, exc.exception_type), { label: { text: "Alternate ID Card Determined By" }, prompt: "Select Type", class: "w-full" }, data: { add_exception_target: "exception" } %>
|
||||
</div>
|
||||
<div class="w-[48%]">
|
||||
<%= exception_fields.text_field :exception_values, value: exc.exception_values.join(', '), label: { text: "Exception Values" }, class: "w-full" %>
|
||||
<%= exception_fields.text_field :exception_values, value: exc.exception_values.join(', '), label: { text: "Alternate ID Card Determination Value(s)" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="text-xl text-left font-bold mb-[-4px] z-1 text-platinum">
|
||||
Field Exception Items
|
||||
<div class="flex flex-none items-center w-full pt-4 z-1">
|
||||
<div class="flex flex-none text-xl text-left font-bold <%= "text-#{IdCard::Setup::FORM_COLORS[index]}" %>">
|
||||
Alternate ID Card Change Items
|
||||
</div>
|
||||
<div class="grow h-[1px] mt-2 mx-1 <%= "bg-#{IdCard::Setup::FORM_COLORS[index]}" %>"></div>
|
||||
<div class="flex flex-none text-xl text-left font-bold text-platinum">
|
||||
(Changes to Employer Default Card)
|
||||
</div>
|
||||
<div class="flex flex-none w-3 h-[1px] mt-2 mx-1 <%= "bg-#{IdCard::Setup::FORM_COLORS[index]}" %>"></div>
|
||||
</div>
|
||||
<div class="w-full h-[3px] rounded-r bg-NEXT_COLOR ml-[1px] mb-1"></div>
|
||||
<div class="flex flex-col w-full justify-start" data-controller="add-exception-item">
|
||||
<%= exception_fields.fields_for :field_exception_items do |exception_item_fields| %>
|
||||
<div class="flex justify-between items-start w-full" data-controller="exceptions-toggle">
|
||||
@@ -41,7 +57,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
<%= button_tag "Add Another Item To Exception", class: "cursor-pointer bg-NEXT_COLOR hover:bg-deepcove text-xl font-bold text-platinum my-3 py-1 font-semibold leading-tight rounded border-3 border-NEXT_COLOR w-full", data: { action: "add-exception-item#addExemptionItem", add_exception_item_target: "exceptionItemButton" } %>
|
||||
<%= button_tag "Add Another Alternate ID Card Change Item", class: "cursor-pointer bg-#{IdCard::Setup::FORM_COLORS[index]} hover:bg-deepcove text-xl font-bold text-platinum my-3 py-1 font-semibold leading-tight rounded border-3 border-#{IdCard::Setup::FORM_COLORS[index]} w-full", data: { action: "add-exception-item#addExemptionItem", add_exception_item_target: "exceptionItemButton" } %>
|
||||
<template data-add-exception-item-target="exceptionItemTemplate">
|
||||
<%= exception_fields.fields_for :field_exception_items, IdCard::FieldExceptionItem.new, child_index: 'NEW_ITEM_RECORD' do |exception_item_fields| %>
|
||||
<div class="flex justify-between items-start w-full" data-controller="exceptions-toggle">
|
||||
@@ -66,24 +82,30 @@
|
||||
</div>
|
||||
<% end %>
|
||||
<% end %>
|
||||
<%= button_tag "Add an Exception", class: "cursor-pointer text-lg font-medium py-2 px-4 rounded w-1/2 min-h-[340px] mt-3 text-[#E0E0E0] rounded-lg border border-[#C2C2C2] hover:shadow-[0_0_10px_3px_#93c5fd]", data: { action: "add-exception#addExemption", add_exception_target: "exceptionButton" } %>
|
||||
<%= button_tag "Add an Alternate ID Card", class: "cursor-pointer text-lg font-medium py-2 px-4 rounded w-1/2 min-h-[340px] mt-3 text-[#E0E0E0] rounded-lg border border-[#C2C2C2] hover:shadow-[0_0_10px_3px_#93c5fd]", data: { action: "add-exception#addExemption", add_exception_target: "exceptionButton" } %>
|
||||
<template data-add-exception-target="exceptionTemplate">
|
||||
<%= f.fields_for :field_exceptions, @setup.field_exceptions.build, child_index: 'NEW_RECORD' do |exception_fields| %>
|
||||
<div class="flex flex-col pr-6 w-1/2 pl-1">
|
||||
<div class="flex justify-between items-end w-full pb-2">
|
||||
<div class="w-[48%]">
|
||||
<%= exception_fields.select :exception_type, options_for_select(IdCard::FieldException::VALID_TYPES.map { |type| [type.titleize(keep_id_suffix: true), type] }), { label: { text: "Exception Based On" }, prompt: "Select Type", class: "w-full" }, data: { add_exception_target: "exception" } %>
|
||||
<%= exception_fields.select :exception_type, options_for_select(IdCard::FieldException::VALID_TYPES.map { |type| [type.titleize(keep_id_suffix: true), type] }), { label: { text: "Alternate ID Card Determined By" }, prompt: "Select Type", class: "w-full" }, data: { add_exception_target: "exception" } %>
|
||||
</div>
|
||||
<div class="w-[48%]">
|
||||
<%= exception_fields.text_field :exception_values, label: { text: "Exception Values" }, class: "w-full" %>
|
||||
<%= exception_fields.text_field :exception_values, label: { text: "Alternate ID Card Determination Value(s)" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="text-xl text-left font-bold mb-[-4px] z-1 text-platinum">
|
||||
Field Exception Items
|
||||
<div class="flex flex-none items-center w-full pt-4 z-1">
|
||||
<div class="flex flex-none text-xl text-left font-bold text-NEXT_COLOR">
|
||||
Alternate ID Card Change Items
|
||||
</div>
|
||||
<div class="grow h-[1px] mt-2 mx-1 bg-NEXT_COLOR"></div>
|
||||
<div class="flex flex-none text-xl text-left font-bold text-platinum">
|
||||
(Changes to Employer Default Card)
|
||||
</div>
|
||||
<div class="flex flex-none w-3 h-[1px] mt-2 mx-1 bg-NEXT_COLOR"></div>
|
||||
</div>
|
||||
<div class="w-full h-[3px] rounded-r bg-NEXT_COLOR ml-[1px] mb-1"></div>
|
||||
<div class="flex flex-col w-full justify-start" data-controller="add-exception-item">
|
||||
<%= button_tag "Add Another Item To Exception", class: "cursor-pointer bg-NEXT_COLOR hover:bg-deepcove text-xl font-bold text-platinum my-3 py-1 font-semibold leading-tight rounded border-3 border-NEXT_COLOR w-full", data: { action: "add-exception-item#addExemptionItem", add_exception_item_target: "exceptionItemButton" } %>
|
||||
<%= button_tag "Add Alternate ID Card Change Item", class: "cursor-pointer bg-NEXT_COLOR hover:bg-deepcove text-xl font-bold text-platinum my-3 py-1 font-semibold leading-tight rounded border-3 border-NEXT_COLOR w-full", data: { action: "add-exception-item#addExemptionItem", add_exception_item_target: "exceptionItemButton" } %>
|
||||
<template data-add-exception-item-target="exceptionItemTemplate">
|
||||
<%= exception_fields.fields_for :field_exception_items, IdCard::FieldExceptionItem.new, child_index: 'NEW_ITEM_RECORD' do |exception_item_fields| %>
|
||||
<div class="flex justify-between items-start w-full" data-controller="exceptions-toggle">
|
||||
@@ -110,8 +132,8 @@
|
||||
</template>
|
||||
</div>
|
||||
</div>
|
||||
<div class="py-8">
|
||||
<%= f.submit "Submit Network" %>
|
||||
<div class="flex space-x-3 py-8">
|
||||
<%= f.submit "Save Alternate ID Cards" %>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
|
||||
@@ -1,4 +1,14 @@
|
||||
<div class="bg-deepcove h-full w-full flex flex-col">
|
||||
<div class="flex items-center">
|
||||
<%= link_to employer_path(@employer.slug), class: "flex items-center h-14 space-x" do %>
|
||||
<div class="flex items-center h-14 text-bluemana hover:text-bronze">
|
||||
<%= icon "arrow-big-left-dash", library: "lucide", class: "h-full w-20 text-center" %>
|
||||
<div class="w-full pb-1 font-bold text-2xl">
|
||||
<%= "Back to Employer" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
<div class="flex space-x-6 my-5 font-bold text-4xl">
|
||||
<h1 class="text-platinum">ID Card Setup:</h1>
|
||||
<h1 class="text-atmosphere">(<%= @employer.name %>)</h1>
|
||||
@@ -6,49 +16,47 @@
|
||||
<%= form_with model: @setup, url: employer_id_card_setup_path(id: @employer.slug), local: true, multipart: true do |f| %>
|
||||
<div class="flex flex-col space-y-6 pb-10">
|
||||
<div class="flex w-full items-end">
|
||||
<div class="flex flex-col space-y-6 w-3/5" data-controller="general-form provider-update">
|
||||
<div class="flex flex-col space-y-6 w-4/5" data-controller="general-form provider-update">
|
||||
<div class="flex space-x-10">
|
||||
<div class="w-full">
|
||||
<%= f.text_field :print_name, label: { text: "Print Name" }, class: "w-full" %>
|
||||
<div class="w-full flex flex-col items-start" data-controller="font-validator">
|
||||
<div class="w-full">
|
||||
<%= f.text_field :print_name, { label: { text: "Print Name" }, data: { font_validator_target: "textField", action: "input->font-validator#measure" }, class: "w-full" } %>
|
||||
</div>
|
||||
<div class="text-platinum font-md font-bold self-end"><span class="text-atmosphere" data-font-validator-target="countDisplayField"></span>/100px</div>
|
||||
|
||||
<%= f.hidden_field :print_name_pixel_width, data: { font_validator_target: "hiddenField" } %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= f.text_field :rx_group_number, label: { text: "Rx Group Number" }, class: "w-full" %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex space-x-10">
|
||||
<div class="w-full">
|
||||
<%= f.select :network_provider, options_for_select(["Cigna", "MedCost", "Other"], @setup.network_provider), { label: { text: "Provider Network" }, include_blank: "Select", class: "w-full" }, data: { provider_update_target: "providerNetworkField", action: "change->provider-update#syncDefaults" } %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= f.select :card_template, options_for_select([["FairosRx", "FairosRxIDCard"], ["Tandemloc", "TandemlocIDCard"], ["smART", "SmartIDCard"], ["QRCode (Healthbus)", "QRCodeIDCard"]], @setup.card_template || "FairosRxIDCard" ), { label: { text: "Card Template" }, include_blank: "Select", class: "w-full" } %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= f.select :card_color, options_for_select([["White", "white"], ["Blue", "blue"]], @setup.card_color || "white" ), { label: { text: "Card Color" }, include_blank: "Select", class: "w-full" } %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex space-x-10">
|
||||
<div class="flex flex-col items-start space-y-3 w-full" data-controller="logo-upload" data-logo-upload-logo-type-value="employer" data-logo-upload-employer-name-value=<%= @employer.name %>>
|
||||
<div class="flex w-full">
|
||||
<div class="flex flex-col w-full">
|
||||
<%= f.text_field :employer_logo_filename, label: { text: "Employer Logo" }, default: "No logo added", data: { logo_upload_target: "logoNameField" }, class: "w-full rounded-r-none", readonly: true %>
|
||||
<%= f.fields_for :employer_logo, @setup.employer_logo do |employer_logo_fields| %>
|
||||
<div class="flex space-x-10">
|
||||
<div class="flex flex-col items-start space-y-3 w-full" data-controller="logo-upload" data-logo-upload-logo-type-value="employer" data-logo-upload-employer-name-value="<%= @employer.name %>" data-logo-upload-employer-id-value="<%= @employer.id %>">
|
||||
<div class="flex w-full">
|
||||
<div class="flex flex-col w-full">
|
||||
<%= employer_logo_fields.text_field :filename, label: { text: "Employer Logo" }, default: "No logo added", data: { logo_upload_target: "logoNameField" }, class: "w-full rounded-r-none", readonly: true %>
|
||||
</div>
|
||||
<div class="flex items-center justify-center self-end cursor-pointer bg-atmosphere hover:bg-deepcove border-2 border-atmosphere text-platinum font-bold px-3 rounded-r h-10 transition duration-100">
|
||||
<label for="employer_logo_file" class="text-center cursor-pointer">
|
||||
<%= icon "image-plus", library: "lucide" %>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="hidden flex ml-10 rounded-lg border-4 border-atmosphere" data-logo-upload-target="previewContainer">
|
||||
<img data-logo-upload-target="preview" src="#" alt="Employer Logo preview" class="max-h-[100px] max-w-[133px] bg-platinum m-1"/>
|
||||
</div>
|
||||
<div class="flex items-center justify-center self-end cursor-pointer bg-atmosphere hover:bg-deepcove border-2 border-atmosphere text-platinum font-bold px-3 rounded-r h-10 transition duration-100">
|
||||
<label for="employer_logo_file" class="text-center cursor-pointer">
|
||||
<%= icon "image-plus", library: "lucide" %>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="hidden flex ml-10 rounded-lg border-4 border-atmosphere" data-logo-upload-target="previewContainer">
|
||||
<img data-logo-upload-target="preview" src="#" alt="Employer Logo preview" class="max-h-[100px] max-w-[133px] bg-platinum m-1"/>
|
||||
<%= employer_logo_fields.hidden_field :id, value: @setup&.employer_logo&.id, label: { text: "Employer Logo" }, data: { logo_upload_target: "logoIdField" } %>
|
||||
<%= f.file_field :employer_logo_file, class: "hidden", id: "employer_logo_file", data: { logo_upload_target: "previewContainer", action: "change->logo-upload#uploadLogo" }, direct_upload: true %>
|
||||
</div>
|
||||
<%= f.hidden_field :employer_logo_id, label: { text: "Employer Logo" }, data: { logo_upload_target: "logoIdField" } %>
|
||||
<%= f.file_field :employer_logo_file, class: "hidden", id: "employer_logo_file", data: { logo_upload_target: "previewContainer", action: "change->logo-upload#uploadLogo" }, direct_upload: true %>
|
||||
</div>
|
||||
|
||||
<% end %>
|
||||
<div class="flex flex-col items-start space-y-3 w-full" data-controller="logo-upload" data-logo-upload-logo-type-value="network">
|
||||
<div class="flex w-full">
|
||||
<div class="flex flex-col w-full">
|
||||
<%= f.select :network_logo_id, options_for_select(IdCard::NetworkLogo.pluck(:filename, :id), @setup.network_logo_id), { include_blank: "Select/Add Network Logo", class: "rounded-r-none flex flex-col" }, data: { provider_update_target: "networkLogoField", logo_upload_target: "logoIdField", action: "change->logo-upload#setSelectPreview" } %>
|
||||
<%= f.select :network_logo_id, options_for_select(IdCard::NetworkLogo.pluck(:filename, :id), @setup.network_logo_id), { include_blank: "Select/Add Network Logo", class: "rounded-r-none w-full" }, data: { provider_update_target: "networkLogoField", logo_upload_target: "logoIdField", action: "change->logo-upload#setSelectPreview" } %>
|
||||
</div>
|
||||
<div class="flex items-center justify-center self-end cursor-pointer bg-atmosphere hover:bg-deepcove border-2 border-atmosphere text-platinum font-bold px-3 rounded-r h-10 transition duration-100">
|
||||
<label for="network_logo_file" class="text-center cursor-pointer">
|
||||
@@ -62,12 +70,22 @@
|
||||
<%= f.file_field :network_logo_file, class: "hidden", id: "network_logo_file", data: { logo_upload_target: "previewContainer", action: "change->logo-upload#uploadLogo" }, direct_upload: true %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex space-x-10">
|
||||
<div class="w-full flex items-center pt-6">
|
||||
<h3 class="flex-none font-bold text-2xl text-brightlava">Admin</h3>
|
||||
<div class="grow h-[1px] mt-2 ml-1 bg-brightlava"></div>
|
||||
</div>
|
||||
<div class="flex flex-none space-x-10">
|
||||
<div class="w-full">
|
||||
<%= f.select :rx_section_id, options_from_collection_for_select(@rx_options, :id, :title, @setup.rx_section_id || @fairos_rx_id), { include_blank: "Select Rx", class: "flex-col w-full" } %>
|
||||
<%= f.select :card_template, options_for_select([["FairosRx", "FairosRxIDCard"], ["Tandemloc", "TandemlocIDCard"], ["smART", "SmartIDCard"], ["QRCode (Healthbus)", "QRCodeIDCard"]], @setup.card_template || "FairosRxIDCard" ), { label: { text: "Card Template" }, include_blank: "Select", class: "w-full pointer-events-none opacity-65 cursor-not-allowed" } %>
|
||||
</div>
|
||||
<div class="w-full hidden">
|
||||
<%= f.select :rx_section_id, options_from_collection_for_select(@rx_options, :id, :title, @setup.rx_section_id || @rx_default.id), { include_blank: "Select Rx", class: "flex-col w-full pointer-events-none opacity-65 cursor-not-allowed" } %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= f.select :provider_section_id, options_for_select(@provider_options, @setup.provider_section_id), { label: { text: "Claims Submission Section" }, include_blank: "Select/Add Claims Submission", class: "flex flex-col w-full" }, data: { provider_update_target: "providerSectionField", general_form_target: "selectField", action: "change->general-form#toggleNewFieldSection" } %>
|
||||
<%= f.select :provider_section_id, options_for_select(@provider_options, @setup.provider_section_id || ""), { label: { text: "Claims Submission Section" }, include_blank: "Select/Add Claims Submission", class: "w-full pointer-events-none opacity-65 cursor-not-allowed" }, data: { provider_update_target: "providerSectionField", general_form_target: "selectField", action: "change->general-form#toggleNewFieldSection" } %>
|
||||
</div>
|
||||
<div class="w-full">
|
||||
<%= f.select :card_color, options_for_select([["White", "white"], ["Blue", "blue"]], @setup.card_color || "white" ), { label: { text: "Card Color" }, include_blank: "Select", class: "w-full pointer-events-none opacity-65 cursor-not-allowed" } %>
|
||||
</div>
|
||||
</div>
|
||||
<div class="w-full hidden" data-general-form-target="dependentField">
|
||||
@@ -88,8 +106,8 @@
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="py-8">
|
||||
<%= f.submit "Create ID Card Setup" %>
|
||||
<div class="flex space-x-3 py-8">
|
||||
<%= f.submit "Save ID Card Setup" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
@@ -1,4 +1,14 @@
|
||||
<div class="bg-deepcove h-full w-full flex flex-col">
|
||||
<div class="flex items-center">
|
||||
<%= link_to employer_path(@employer.slug), class: "flex items-center h-14 space-x" do %>
|
||||
<div class="flex items-center h-14 text-bluemana hover:text-bronze">
|
||||
<%= icon "arrow-big-left-dash", library: "lucide", class: "h-full w-20 text-center" %>
|
||||
<div class="w-full pb-1 font-bold text-2xl">
|
||||
<%= "Back to Employer" %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
<div class="flex space-x-6 my-5 font-bold text-4xl">
|
||||
<h1 class="text-platinum">ID Card Plans:</h1>
|
||||
<h1 class="text-atmosphere">(<%= @employer.name %>)</h1>
|
||||
@@ -29,7 +39,7 @@
|
||||
</div>
|
||||
<% end %>
|
||||
<% end %>
|
||||
<%= button_tag "Add a Plan", class: "cursor-pointer text-2xl font-bold py-2 pr-6 mt-10 w-[calc(24%-1rem)] w-1/4 min-h-[940px] text-[#E0E0E0] rounded-lg font-medium border border-[#E0E0E0] bg-[#173057] hover:bg-transparent hover:shadow-[0_0_10px_3px_#93c5fd] transition-colors duration-150", data: { action: "add-plan#add", add_plan_target: "button" } %>
|
||||
<%= button_tag "Add a Plan", class: "cursor-pointer text-2xl font-bold py-2 pr-6 mt-10 w-[calc(24%-1rem)] w-1/4 h-[200px] text-[#E0E0E0] rounded-lg font-medium border border-[#E0E0E0] bg-[#173057] hover:bg-transparent hover:shadow-[0_0_10px_3px_#93c5fd] transition-colors duration-150", data: { action: "add-plan#add", add_plan_target: "button" } %>
|
||||
</div>
|
||||
<template data-add-plan-target="template">
|
||||
<%= f.fields_for :plans, @setup.plans.build, child_index: 'NEW_RECORD' do |plan_fields| %>
|
||||
@@ -55,8 +65,8 @@
|
||||
</template>
|
||||
</div>
|
||||
</div>
|
||||
<div class="py-8">
|
||||
<%= f.submit "Submit Plans" %>
|
||||
<div class="flex space-x-3 py-8">
|
||||
<%= f.submit "Save Plans", {class: "px-8"} %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
@@ -16,7 +16,10 @@
|
||||
<main>
|
||||
<div class="w-full min-h-screen flex flex-col bg-black justify-center items-center">
|
||||
<div class="min-h-full w-[calc(100%-1rem)] mt-1 mb-2 flex grow justify-center shadow-[0_0_10px_3px_#93c5fd] rounded-xl bg-[#04153E]">
|
||||
<div class="h-full w-11/12 mt-8 px-5 flex grow justify-center">
|
||||
<div class="relative h-full w-11/12 mt-8 px-5 flex flex-col grow items-center">
|
||||
<% if user_signed_in? %>
|
||||
<%= link_to "Sign Out", destroy_user_session_path, data: { turbo_method: :delete }, class: "absolute top-0 right-0 h-14 flex self-end items-center cursor-pointer text-xl text-platinum hover:text-atmosphere font-bold underline px-3" %>
|
||||
<% end %>
|
||||
<%= yield %>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user