Edit

kmx.io/kmxgit/lib/kmxgit_web/templates/user/edit.html.heex

Branch :

  • lib/kmxgit_web/templates/user/edit.html.heex
  • <div class="container-fluid center">
      <h1>Edit user <%= User.login(@user) %></h1>
    
      <%= form_for @changeset, Routes.user_path(@conn, :update, User.login(@user)), [multipart: true], fn f -> %>
    
        <div class="mb-3">
          <%= label f, :name, class: "form-label" %>
          <%= text_input f, :name, class: "form-control" %>
          <%= error_tag f, :name %>
        </div>
    
        <div class="mb-3">
          <%= label f, :slug_, gettext("Login"), class: "form-label" %>
          <%= text_input f, :slug_, class: "form-control" %>
          <%= error_tag f, :slug_ %>
        </div>
    
        <div class="mb-3">
          <%= label f, :avatar, class: "form-label" %>
          <%= file_input f, :avatar, class: "form-control" %>
          <%= error_tag f, :avatar %>
        </div>
    
        <div class="mb-3">
          <%= label f, :description, class: "form-label" %>
          <%= textarea f, :description, class: "form-control" %>
          <%= render LayoutView, "markdown_enabled.html" %>
          <%= error_tag f, :description %>
        </div>
    
        <div class="mb-3">
          <%= label f, :ssh_keys, gettext("SSH keys"), class: "form-label" %>
          <%= textarea f, :ssh_keys, class: "form-control" %>
          <%= error_tag f, :ssh_keys %>
        </div>
    
        <div class="mb-3 form-check">
          <%= checkbox f, :deploy_only, class: "form-check-input" %>
          <%= label f, :deploy_only, class: "form-check-label" %>
          <%= error_tag f, :deploy_only %>
        </div>
    
        <div>
          <%= error_tag f, :owned_repositories %>
        </div>
    
        <div class="mb-3">
          <%= link gettext("Cancel"),
                   to: Routes.slug_path(@conn, :show, User.login(@user)),
                   class: "btn btn-secondary" %>
          <%= link gettext("Delete user"),
              to: Routes.user_path(@conn, :delete, User.login(@user)),
              method: :delete,
              class: "btn btn-danger",
              data: [confirm: gettext("Are you sure you want to delete the user %{user} ?", user: User.login(@user))] %>
          <%= submit gettext("Submit"), class: "btn btn-primary" %>
        </div>
      <% end %>
    
      <hr/>
      <h2><%= gettext "Change email" %></h2>
    
      <.form let={f} for={@email_changeset} action={Routes.user_settings_path(@conn, :update)} id="update_email">
        <%= if @email_changeset.action do %>
          <div class="alert alert-danger">
            <p>Oops, something went wrong! Please check the errors below.</p>
          </div>
        <% end %>
    
        <%= hidden_input f, :action, name: "action", value: "update_email" %>
    
        <div class="mb-3">
          <%= label f, :email, class: "form-label" %>
          <%= email_input f, :email, class: "form-control", required: true %>
          <%= error_tag f, :email %>
        </div>
    
        <div class="mb-3">
          <%= label f, :current_password, for: "current_password_for_email", class: "form-label" %>
          <%= password_input f, :current_password, required: true, name: "current_password", id: "current_password_for_email", class: "form-control" %>
          <%= error_tag f, :current_password %>
        </div>
    
        <div class="mb-3">
          <%= submit gettext("Submit"), class: "btn btn-primary" %>
        </div>
      </.form>
    
      <hr/>
      <h2><%= gettext "Change password" %></h2>
    
      <.form let={f} for={@password_changeset} action={Routes.user_settings_path(@conn, :update)} id="update_password">
        <%= if @password_changeset.action do %>
          <div class="alert alert-danger">
            <p>Oops, something went wrong! Please check the errors below.</p>
          </div>
        <% end %>
    
        <%= hidden_input f, :action, name: "action", value: "update_password" %>
    
        <div class="mb-3">
          <%= label f, :password, gettext("New password"), class: "form-label" %>
          <%= password_input f, :password, class: "form-control", required: true %>
          <%= error_tag f, :password %>
        </div>
    
        <div class="mb-3">
          <%= label f, :password_confirmation, gettext("Confirm new password"), class: "form-label" %>
          <%= password_input f, :password_confirmation, class: "form-control", required: true %>
          <%= error_tag f, :password_confirmation %>
        </div>
    
        <div class="mb-3">
          <%= label f, :current_password, for: "current_password_for_password", class: "form-label" %>
          <%= password_input f, :current_password, required: true, name: "current_password", id: "current_password_for_password", class: "form-control" %>
          <%= error_tag f, :current_password %>
        </div>
    
        <div class="mb-3">
          <%= submit gettext("Submit"), class: "btn btn-primary" %>
        </div>
      </.form>
    
      <hr/>
      <h2><%= gettext "Two factor authentification (2FA)" %></h2>
    
      <%= if @user.totp_last != 0 do %>
        <p>
          <%= gettext "2FA enabled (TOTP)" %>
        </p>
        <p>
          <%= link gettext("Disable TOTP (Google Authenticator)"), to: Routes.user_path(@conn, :totp_delete, User.login(@user)), method: :delete, data: [confirm: gettext("Are you sure you want to disable TOTP (Google Authenticator) for %{site} ?", site: "kmxgit")], class: "btn btn-danger" %>
        </p>
      <% else %>
        <p>
          <%= link gettext("Enable TOTP (Google Authenticator)"), to: Routes.user_path(@conn, :totp, User.login(@user)), class: "btn btn-danger" %>
        </p>
      <% end %>
    
      <br />
    
      <hr/>
    
      <br/>
      <br/>
    </div>