<commit_before>- page_title "Account"
%h3.page-title
  = page_title
%p.light
  Change your username and basic account settings.
%hr
- if current_user.ldap_user?
  .alert.alert-info
    Some options are unavailable for LDAP accounts

.account-page
  .panel.panel-default.update-token
    .panel-heading
      Reset Private token
    .panel-body
      = form_for @user, url: reset_private_token_profile_path, method: :put do |f|
        .data
          %p
            Your private token is used to access application resources without authentication.
            %br
            It can be used for atom feeds or the API.
            %span.cred
              Keep it secret!

          %p.cgray
            - if current_user.private_token
              = text_field_tag "token", current_user.private_token, class: "form-control"
              %div
                = f.submit 'Reset private token', data: { confirm: "Are you sure?" }, class: "btn btn-default btn-build-token"
            - else
              %span You don`t have one yet. Click generate to fix it.
              = f.submit 'Generate', class: "btn btn-default btn-build-token"

  - unless current_user.ldap_user?
    .panel.panel-default
      .panel-heading
        Two-factor Authentication
      .panel-body
        - if current_user.otp_required_for_login
          .pull-right
            = link_to 'Disable Two-factor Authentication', profile_two_factor_auth_path, method: :delete, class: 'btn btn-close btn-sm',
                data: { confirm: 'Are you sure?' }
          %p.text-success
            %strong
              Two-factor Authentication is enabled
          %p
            If you lose your recovery codes you can
            %strong
              = succeed ',' do
                = link_to 'generate new ones', codes_profile_two_factor_auth_path, method: :post, data: { confirm: 'Are you sure?' }
            invalidating all previous codes.

        - else
          %p
            Increase your account's security by enabling two-factor authentication (2FA).
          %p
            Each time you log in you’ll be required to provide your username and
            password as usual, plus a randomly-generated code from your phone.
          %div
            = link_to 'Enable Two-factor Authentication', new_profile_two_factor_auth_path, class: 'btn btn-success'

  - if show_profile_social_tab?
    .panel.panel-default
      .panel-heading
        Connected Accounts
      .panel-body
        .oauth-buttons.append-bottom-10
          %p Click on icon to activate signin with one of the following services
          - enabled_social_providers.each do |provider|
            .btn-group
              = link_to oauth_image_tag(provider), omniauth_authorize_path(User, provider),
                method: :post, class: "btn btn-lg #{'active' if oauth_active?(provider)}"
              - if oauth_active?(provider)
                = link_to unlink_profile_account_path(provider: provider), method: :delete, class: 'btn btn-lg' do
                  = icon('close')

  - if show_profile_username_tab?
    .panel.panel-warning.update-username
      .panel-heading
        Change Username
      .panel-body
        = form_for @user, url: update_username_profile_path,  method: :put, remote: true do |f|
          %p
            Changing your username will change path to all personal projects!
          %div
            = f.text_field :username, required: true, class: 'form-control'
            &nbsp;
          .loading-gif.hide
            %p
              = icon('spinner spin')
              Saving new username
          %p.light
            = user_url(@user)
          %div
            = f.submit 'Save username', class: "btn btn-warning"

  - if show_profile_remove_tab?
    .panel.panel-danger.remove-account
      .panel-heading
        Remove account
      .panel-body
        - if @user.can_be_removed?
          %p Deleting an account has the following effects:
          %ul
            %li All user content like authored issues, snippets, comments will be removed
            - rp = current_user.personal_projects.count
            - unless rp.zero?
              %li #{pluralize rp, 'personal project'} will be removed and cannot be restored
          = link_to 'Delete account', user_registration_path, data: { confirm: "REMOVE #{current_user.name}? Are you sure?" }, method: :delete, class: "btn btn-remove"
        - else
          - if @user.solo_owned_groups.present?
            %p
              Your account is currently an owner in these groups:
              %strong #{@user.solo_owned_groups.map(&:name).join(', ')}
            %p
              You must transfer ownership or delete these groups before you can delete yur account.
<commit_msg>Fix typo on account page.<commit_after>- page_title "Account"
%h3.page-title
  = page_title
%p.light
  Change your username and basic account settings.
%hr
- if current_user.ldap_user?
  .alert.alert-info
    Some options are unavailable for LDAP accounts

.account-page
  .panel.panel-default.update-token
    .panel-heading
      Reset Private token
    .panel-body
      = form_for @user, url: reset_private_token_profile_path, method: :put do |f|
        .data
          %p
            Your private token is used to access application resources without authentication.
            %br
            It can be used for atom feeds or the API.
            %span.cred
              Keep it secret!

          %p.cgray
            - if current_user.private_token
              = text_field_tag "token", current_user.private_token, class: "form-control"
              %div
                = f.submit 'Reset private token', data: { confirm: "Are you sure?" }, class: "btn btn-default btn-build-token"
            - else
              %span You don`t have one yet. Click generate to fix it.
              = f.submit 'Generate', class: "btn btn-default btn-build-token"

  - unless current_user.ldap_user?
    .panel.panel-default
      .panel-heading
        Two-factor Authentication
      .panel-body
        - if current_user.otp_required_for_login
          .pull-right
            = link_to 'Disable Two-factor Authentication', profile_two_factor_auth_path, method: :delete, class: 'btn btn-close btn-sm',
                data: { confirm: 'Are you sure?' }
          %p.text-success
            %strong
              Two-factor Authentication is enabled
          %p
            If you lose your recovery codes you can
            %strong
              = succeed ',' do
                = link_to 'generate new ones', codes_profile_two_factor_auth_path, method: :post, data: { confirm: 'Are you sure?' }
            invalidating all previous codes.

        - else
          %p
            Increase your account's security by enabling two-factor authentication (2FA).
          %p
            Each time you log in you’ll be required to provide your username and
            password as usual, plus a randomly-generated code from your phone.
          %div
            = link_to 'Enable Two-factor Authentication', new_profile_two_factor_auth_path, class: 'btn btn-success'

  - if show_profile_social_tab?
    .panel.panel-default
      .panel-heading
        Connected Accounts
      .panel-body
        .oauth-buttons.append-bottom-10
          %p Click on icon to activate signin with one of the following services
          - enabled_social_providers.each do |provider|
            .btn-group
              = link_to oauth_image_tag(provider), omniauth_authorize_path(User, provider),
                method: :post, class: "btn btn-lg #{'active' if oauth_active?(provider)}"
              - if oauth_active?(provider)
                = link_to unlink_profile_account_path(provider: provider), method: :delete, class: 'btn btn-lg' do
                  = icon('close')

  - if show_profile_username_tab?
    .panel.panel-warning.update-username
      .panel-heading
        Change Username
      .panel-body
        = form_for @user, url: update_username_profile_path,  method: :put, remote: true do |f|
          %p
            Changing your username will change path to all personal projects!
          %div
            = f.text_field :username, required: true, class: 'form-control'
            &nbsp;
          .loading-gif.hide
            %p
              = icon('spinner spin')
              Saving new username
          %p.light
            = user_url(@user)
          %div
            = f.submit 'Save username', class: "btn btn-warning"

  - if show_profile_remove_tab?
    .panel.panel-danger.remove-account
      .panel-heading
        Remove account
      .panel-body
        - if @user.can_be_removed?
          %p Deleting an account has the following effects:
          %ul
            %li All user content like authored issues, snippets, comments will be removed
            - rp = current_user.personal_projects.count
            - unless rp.zero?
              %li #{pluralize rp, 'personal project'} will be removed and cannot be restored
          = link_to 'Delete account', user_registration_path, data: { confirm: "REMOVE #{current_user.name}? Are you sure?" }, method: :delete, class: "btn btn-remove"
        - else
          - if @user.solo_owned_groups.present?
            %p
              Your account is currently an owner in these groups:
              %strong #{@user.solo_owned_groups.map(&:name).join(', ')}
            %p
              You must transfer ownership or delete these groups before you can delete your account.

{'fraction_non_alphanumeric': 0.08404333648890291, 'fraction_numerical': 0.0008414852214157989, 'mean_word_length': 1.9564676616915422, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4880569', 'n_tokens_mistral': 2601, 'n_tokens_neox': 2562, 'n_words': 814}