obdev/app/views/users/_form.html.erb

87 lines
2.7 KiB
Plaintext
Raw Normal View History

<%= form_with(model: user, local: true, html: { class: 'needs-validation', novalidate: true }) do |form| %>
<%# Display validation errors, if any %>
<% if user.errors.any? %>
<%# Error messages display block %>
<% end %>
<%# User attributes fields %>
<%# First Name %>
<div class="mb-3">
<%= form.label :first_name, class: 'form-label' %>
<%= form.text_field :first_name, id: :user_first_name, class: 'form-control' %>
</div>
<%# Last Name %>
<div class="mb-3">
<%= form.label :last_name, class: 'form-label' %>
<%= form.text_field :last_name, id: :user_last_name, class: 'form-control' %>
</div>
<%# Email field %>
<div class="mb-3">
<%= form.label :email, class: 'form-label' %>
<%= form.email_field :email, id: :user_email, class: 'form-control' %>
</div>
<%# Phone Number %>
<div class="mb-3">
<%= form.label :phone, class: 'form-label' %>
<%= form.telephone_field :phone, id: :user_phone, class: 'form-control' %>
</div>
<%# Company %>
<div class="mb-3">
<%= form.label :company, class: 'form-label' %>
<%= form.text_field :company, id: :user_company, class: 'form-control' %>
</div>
<%# Assuming roles are assigned via checkboxes or a select dropdown %>
<div class="mb-3">
<%= form.label :roles, 'Assign Role(s)', class: 'form-label' %>
<%# Adjust this to your roles setup %>
<%= form.collection_select :roles, Role.all, :name, :name, {}, { multiple: true, class: 'form-select' } %>
</div>
<%# Access control fields %>
<div class="mb-3">
<%= form.check_box :access_revoked, class: 'form-check-input' %>
<%= form.label :access_revoked, 'Access Revoked', class: 'form-check-label' %>
</div>
<%# Date fields for access control %>
<%= form.fields_for :access_periods do |period_form| %>
<div class="mb-3">
<%= period_form.label :start_date, 'Access Start Date', class: 'form-label' %>
<%= period_form.date_field :start_date, class: 'form-control' %>
</div>
<div class="mb-3">
<%= period_form.label :end_date, 'Access End Date', class: 'form-label' %>
<%= period_form.date_field :end_date, class: 'form-control' %>
</div>
<% end %>
<h3>Access Periods</h3>
<table class="table">
<thead>
<tr>
<th>Access Start Date</th>
<th>Access End Date</th>
</tr>
</thead>
<tbody>
<% @user.access_periods.each do |period| %>
<tr>
<td><%= period.start_date %></td>
<td><%= period.end_date || 'Currently has access' %></td>
</tr>
<% end %>
</tbody>
</table>
<%# Submit button %>
<div class="actions">
<%= form.submit 'Save', class: 'btn btn-dark' %>
</div>
<% end %>