github.com/in4it/ecs-deploy@v0.0.42-0.20240508120354-ed77ff16df25/webapp/src/app/login/login.component.html (about)

     1  <div class="container">
     2    <div class="offset-md-3 col-md-6">
     3      <h1>Login</h1>
     4      <form name="form" (ngSubmit)="f.form.valid && login()" #f="ngForm" novalidate>
     5        <div class="form-group" [ngClass]="{ 'has-error': f.submitted && !username.valid }">
     6          <label for="username">Username</label>
     7          <input type="text" class="form-control" name="username" [(ngModel)]="model.username" #username="ngModel" required />
     8          <div *ngIf="f.submitted && !username.valid" class="help-block">Username is required</div>
     9        </div>
    10        <div class="form-group" [ngClass]="{ 'has-error': f.submitted && !password.valid }">
    11          <label for="password">Password</label>
    12          <input type="password" class="form-control" name="password" [(ngModel)]="model.password" #password="ngModel" required />
    13          <div *ngIf="f.submitted && !password.valid" class="help-block">Password is required</div>
    14        </div>
    15        <div class="form-group">
    16          <button [disabled]="loading" class="btn btn-primary">Login</button>
    17          <img *ngIf="loading" src="data:image/gif;base64,R0lGODlhEAAQAPIAAP///wAAAMLCwkJCQgAAAGJiYoKCgpKSkiH/C05FVFNDQVBFMi4wAwEAAAAh/hpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh+QQJCgAAACwAAAAAEAAQAAADMwi63P4wyklrE2MIOggZnAdOmGYJRbExwroUmcG2LmDEwnHQLVsYOd2mBzkYDAdKa+dIAAAh+QQJCgAAACwAAAAAEAAQAAADNAi63P5OjCEgG4QMu7DmikRxQlFUYDEZIGBMRVsaqHwctXXf7WEYB4Ag1xjihkMZsiUkKhIAIfkECQoAAAAsAAAAABAAEAAAAzYIujIjK8pByJDMlFYvBoVjHA70GU7xSUJhmKtwHPAKzLO9HMaoKwJZ7Rf8AYPDDzKpZBqfvwQAIfkECQoAAAAsAAAAABAAEAAAAzMIumIlK8oyhpHsnFZfhYumCYUhDAQxRIdhHBGqRoKw0R8DYlJd8z0fMDgsGo/IpHI5TAAAIfkECQoAAAAsAAAAABAAEAAAAzIIunInK0rnZBTwGPNMgQwmdsNgXGJUlIWEuR5oWUIpz8pAEAMe6TwfwyYsGo/IpFKSAAAh+QQJCgAAACwAAAAAEAAQAAADMwi6IMKQORfjdOe82p4wGccc4CEuQradylesojEMBgsUc2G7sDX3lQGBMLAJibufbSlKAAAh+QQJCgAAACwAAAAAEAAQAAADMgi63P7wCRHZnFVdmgHu2nFwlWCI3WGc3TSWhUFGxTAUkGCbtgENBMJAEJsxgMLWzpEAACH5BAkKAAAALAAAAAAQABAAAAMyCLrc/jDKSatlQtScKdceCAjDII7HcQ4EMTCpyrCuUBjCYRgHVtqlAiB1YhiCnlsRkAAAOwAAAAAAAAAAAA==" />
    18        </div>
    19      </form>
    20    </div>
    21  </div>