app/views/users/_form.html.haml
= form_with model: user, data: {turbo: false} do |f|
= render 'notifications/error_messages', object: f.object
.row
.col-12.col-lg-6
.field.mb-3
= f.label :username, class: "form-label"
= f.text_field :username, class: "form-control"
.field.mb-3
= f.label :first_name, class: "form-label"
= f.text_field :first_name, class: "form-control"
.field.mb-3
= f.label :last_name, class: "form-label"
= f.text_field :last_name, class: "form-control"
.col-12.col-lg-6
.field.mb-3
= f.hidden_field :avatar, value: f.object.avatar.signed_id if f.object.avatar.attached?
= f.label :avatar, 'Your avatar', class: "form-label"
= f.file_field :avatar, direct_upload: true, class: "form-control mb-3",
accept: 'image/png,image/jpg,image/jpeg,image/gif'
- if f.object.avatar.attached?
%div= image_tag thumb_image(f.object.avatar)
%br
- if f.object.persisted?
= link_to 'Remove avatar', remove_avatar_user_path(f.object),
class: "btn btn-danger btn-sm"
= render 'profile/form', f: f
= render 'websites/website_form', f: f
.row
.col-12
.field.mb-3
= f.label :timezone, 'Your current timezone', class: "form-label"
= f.time_zone_select :timezone, ActiveSupport::TimeZone.us_zones,
{}, { class: "form-select" }
.actions.mb-3
= f.submit class: 'btn btn-primary'
%span.shift_right
= link_to 'Cancel', f.object, class: 'btn btn-secondary'