id="<%= dom_id(f.object) %>"<% end %>
data-inactive-toggle-target="row">
-
-
- <% if f.object.persisted? && f.object.person.present? %>
-
- <% show_email = f.object.person.profile_show_email? || allowed_to?(:manage?, Person) %>
- <%= person_profile_button(f.object.person, truncate_at: 25, subtitle: (f.object.person.preferred_email if show_email)) %>
- <%= f.hidden_field :person_id %>
- <% else %>
-
-
- <%= f.input :person_id,
- include_blank: true,
- required: true,
- wrapper_html: { class: "mb-0 h-full" },
- input_html: {
- class: "h-full border-0",
- data: {
- controller: "remote-select",
- remote_select_model_value: "person"
- }
- },
- label: false
- %>
-
- <% end %>
-
+
+ <% if f.object.persisted? && f.object.person.present? %>
+
+ <% show_email = f.object.person.profile_show_email? || allowed_to?(:manage?, Person) %>
+ <%= person_profile_button(f.object.person, truncate_at: 30, subtitle: (f.object.person.preferred_email if show_email)) %>
+ <%= f.hidden_field :person_id %>
+ <% else %>
+ <%= f.input :person_id,
+ include_blank: true,
+ required: true,
+ input_html: {
+ data: {
+ controller: "remote-select",
+ remote_select_model_value: "person"
+ }
+ },
+ label: "Person"
+ %>
+ <% end %>
+
+
+
+ <%= f.input :title,
+ as: :text,
+ input_html: {
+ rows: 1,
+ value: f.object&.title || "Facilitator",
+ style: "height: 42px; min-height: 42px;",
+ data: {
+ inactive_toggle_target: "title",
+ action: "affiliation-dates#recalculate inactive-toggle#updateBorder"
+ }
+ } %>
+
-
- <%= f.input :title,
- as: :text,
- wrapper_html: { class: "mb-0" },
- input_html: {
- rows: 1,
- value: f.object&.title || "Facilitator",
- style: "height: 56px; min-height: 56px; padding-top: 14px;",
- data: {
- inactive_toggle_target: "title",
- action: "affiliation-dates#recalculate inactive-toggle#updateBorder"
- }
- } %>
-
+
+ <%= f.input :start_date,
+ as: :string,
+ label: "Start",
+ input_html: {
+ type: "date",
+ value: (f.object.start_date || (Date.current unless f.object.persisted?))&.strftime("%Y-%m-%d"),
+ class: "rounded-md border-gray-300 focus:ring-blue-500 focus:border-blue-500 text-sm",
+ data: { action: "change->affiliation-dates#recalculate" }
+ } %>
+
-
- <%= f.input :start_date,
- as: :string,
- label: "Start",
- wrapper_html: { class: "mb-0" },
- input_html: {
- type: "date",
- value: (f.object.start_date || (Date.current unless f.object.persisted?))&.strftime("%Y-%m-%d"),
- class: "rounded-md border-gray-300 focus:ring-blue-500 focus:border-blue-500 text-sm",
- style: "height: 56px;",
- data: { action: "change->affiliation-dates#recalculate" }
- } %>
-
+
+ <%= f.input :end_date,
+ as: :string,
+ label: "End",
+ input_html: {
+ type: "date",
+ value: f.object.end_date&.strftime("%Y-%m-%d"),
+ class: "rounded-md border-gray-300 focus:ring-blue-500 focus:border-blue-500 text-sm",
+ data: {
+ inactive_toggle_target: "endDate",
+ action: "change->inactive-toggle#toggle change->affiliation-dates#recalculate"
+ }
+ } %>
+
-
- <%= f.input :end_date,
- as: :string,
- label: "End",
- wrapper_html: { class: "mb-0" },
- input_html: {
- type: "date",
- value: f.object.end_date&.strftime("%Y-%m-%d"),
- class: "rounded-md border-gray-300 focus:ring-blue-500 focus:border-blue-500 text-sm",
- style: "height: 56px;",
- data: {
- inactive_toggle_target: "endDate",
- action: "change->inactive-toggle#toggle change->affiliation-dates#recalculate"
- }
- } %>
-
+
+
+ <%= f.check_box :primary_contact,
+ checked: f.object.primary_contact? || !f.object.persisted?,
+ class: "h-4 w-4 text-blue-600 border-gray-300 rounded focus:ring-blue-500" %>
+
-
-
-
- <%= f.check_box :primary_contact,
- checked: f.object.primary_contact? || !f.object.persisted?,
- class: "h-4 w-4 text-blue-600 border-gray-300 rounded focus:ring-blue-500" %>
-
-
- <%= link_to_remove_association "Remove",
- f,
- class: "text-sm text-gray-400 hover:text-red-600 underline whitespace-nowrap" %>
-
-
+
+ <%= link_to_remove_association "Remove",
+ f,
+ class: "text-sm text-gray-400 hover:text-red-600 underline whitespace-nowrap admin-only bg-blue-100 rounded px-2 py-1" %>