<commit_before><div fxLayoutAlign="center">
  <mat-card>

    <h3>Login</h3>

    <div class="form-container" id="login-form">

      <div class="error" *ngIf="error">{{error}}</div>

      <mat-form-field color="accent">
        <mat-label translate>LABEL_EMAIL</mat-label>
        <input id="email" #email name="email"
               [formControl]="emailControl"
               (focus)="this.error=null"
               matInput placeholder="">
        <mat-error *ngIf="emailControl.invalid" translate>MANDATORY_EMAIL</mat-error>
      </mat-form-field>

      <mat-form-field color="accent">
        <mat-label translate>LABEL_PASSWORD</mat-label>
        <input id="password" #password name="password"
               [formControl]="passwordControl"
               (focus)="this.error=null"
               matInput placeholder="" [type]="hide ? 'password' : 'text'">
        <button *ngIf="hide" mat-icon-button matSuffix (click)="hide = !hide">
          <i class="fas fa-eye"></i>
        </button>
        <button *ngIf="!hide" mat-icon-button matSuffix (click)="hide = !hide">
          <i class="fas fa-eye-slash"></i>
        </button>
        <mat-error *ngIf="passwordControl.invalid" translate>MANDATORY_PASSWORD</mat-error>
      </mat-form-field>

      <a class="primary-link forgot-pw" routerLink="/forgot-password" translate>FORGOT_PASSWORD</a>

      <button type="submit" id="loginButton" [disabled]="!emailControl.value||!passwordControl.value" mat-raised-button
              color="primary" (click)="login()">
        <i class="fas fa-key fa-lg"></i>
        {{'BTN_LOGIN' | translate}}
      </button>

      <mat-checkbox [formControl]="rememberMe" id="rememberMe"> {{'REMEMBER_ME' | translate}}</mat-checkbox>

      <div class="breakLine">
        <div class="line"><div></div></div>
        <div class="textOnLine" translate>LABEL_OR</div>
        <div class="line"><div></div></div>
      </div>

      <button id="loginButtonGoogle" *ngIf="!oauthUnavailable" mat-raised-button color="accent" (click)="googleLogin()"><i
        class="fab fa-google fa-lg"></i> {{'BTN_GOOGLE_LOGIN' | translate}}
      </button>

      <div id="newCustomerLink">
        <a class="primary-link" routerLink="/register" translate>NO_CUSTOMER</a>
      </div>
    </div>
  </mat-card>
</div>
<commit_msg>Hide "or"-separator line when Google login is unavailable<commit_after><div fxLayoutAlign="center">
  <mat-card>

    <h3>Login</h3>

    <div class="form-container" id="login-form">

      <div class="error" *ngIf="error">{{error}}</div>

      <mat-form-field color="accent">
        <mat-label translate>LABEL_EMAIL</mat-label>
        <input id="email" #email name="email"
               [formControl]="emailControl"
               (focus)="this.error=null"
               matInput placeholder="">
        <mat-error *ngIf="emailControl.invalid" translate>MANDATORY_EMAIL</mat-error>
      </mat-form-field>

      <mat-form-field color="accent">
        <mat-label translate>LABEL_PASSWORD</mat-label>
        <input id="password" #password name="password"
               [formControl]="passwordControl"
               (focus)="this.error=null"
               matInput placeholder="" [type]="hide ? 'password' : 'text'">
        <button *ngIf="hide" mat-icon-button matSuffix (click)="hide = !hide">
          <i class="fas fa-eye"></i>
        </button>
        <button *ngIf="!hide" mat-icon-button matSuffix (click)="hide = !hide">
          <i class="fas fa-eye-slash"></i>
        </button>
        <mat-error *ngIf="passwordControl.invalid" translate>MANDATORY_PASSWORD</mat-error>
      </mat-form-field>

      <a class="primary-link forgot-pw" routerLink="/forgot-password" translate>FORGOT_PASSWORD</a>

      <button type="submit" id="loginButton" [disabled]="!emailControl.value||!passwordControl.value" mat-raised-button
              color="primary" (click)="login()">
        <i class="fas fa-key fa-lg"></i>
        {{'BTN_LOGIN' | translate}}
      </button>

      <mat-checkbox [formControl]="rememberMe" id="rememberMe"> {{'REMEMBER_ME' | translate}}</mat-checkbox>

      <div class="breakLine" *ngIf="!oauthUnavailable">
        <div class="line"><div></div></div>
        <div class="textOnLine" translate>LABEL_OR</div>
        <div class="line"><div></div></div>
      </div>

      <button id="loginButtonGoogle" *ngIf="!oauthUnavailable" mat-raised-button color="accent" (click)="googleLogin()"><i
        class="fab fa-google fa-lg"></i> {{'BTN_GOOGLE_LOGIN' | translate}}
      </button>

      <div id="newCustomerLink">
        <a class="primary-link" routerLink="/register" translate>NO_CUSTOMER</a>
      </div>
    </div>
  </mat-card>
</div>

{'fraction_non_alphanumeric': 0.18150830847890925, 'fraction_numerical': 0.0008521516829995739, 'mean_word_length': 2.99234693877551, 'pattern_counts': {'":': 0, '<': 123, '<?xml version=': 0, '>': 123, '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': '517136', 'n_tokens_mistral': 1532, 'n_tokens_neox': 1494, 'n_words': 250}