new-user.component.html 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. <h2 class="floating-title">{{title}}</h2>
  2. <div class="main-content">
  3. <div class="container-fluid">
  4. <div class="row">
  5. <div class="col-12">
  6. <nav aria-label="breadcrumb">
  7. <ol class="breadcrumb">
  8. <li class="breadcrumb-item"><a [routerLink]="['/']">Dashboard</a></li>
  9. <li class="breadcrumb-item"><a [routerLink]="['/users']">Usuarios</a></li>
  10. <li class="breadcrumb-item">Nuevo Usuario</li>
  11. </ol>
  12. </nav>
  13. </div>
  14. </div>
  15. <br>
  16. <div class="row justify-content-center">
  17. <div class="col-8">
  18. <div class="align-container">
  19. <div class="card">
  20. <div class="card-header card-header-icon card-header-rose">
  21. <div class="card-icon"><i class="material-icons">person_add</i></div>
  22. <h4 class="card-title">Nuevo Usuario - <small class="category">Complete la información básica</small></h4>
  23. </div>
  24. <div class="card-body">
  25. <div class="align-container">
  26. <form class="form-auth-small ng-untouched ng-pristine ng-valid" [formGroup]="userForm" (ngSubmit)="createUser()">
  27. <div class="form-group">
  28. <label for="first_name">Nombre: </label>
  29. <input type="text" formControlName="first_name" class="form-control" [ngClass]="{ 'is-invalid': submitted && f.first_name.errors }"/>
  30. <div *ngIf="submitted && f.first_name.errors" class="invalid-feedback">
  31. <div *ngIf="f.first_name.errors.required">Campo requerido</div>
  32. </div>
  33. </div>
  34. <div class="form-group">
  35. <label for="last_name">Apellido: </label>
  36. <input type="text" formControlName="last_name" class="form-control" [ngClass]="{ 'is-invalid': submitted && f.last_name.errors }"/>
  37. <div *ngIf="submitted && f.last_name.errors" class="invalid-feedback">
  38. <div *ngIf="f.last_name.errors.required">Campo requerido</div>
  39. </div>
  40. </div>
  41. <div class="form-group">
  42. <label for="email">Email: </label>
  43. <input type="text" formControlName="email" class="form-control" [ngClass]="{ 'is-invalid': submitted && f.email.errors }"/>
  44. <div *ngIf="submitted && f.email.errors" class="invalid-feedback">
  45. <div *ngIf="f.email.errors.required">Campo requerido</div>
  46. </div>
  47. </div>
  48. <div class="form-group">
  49. <label for="role">Rol: </label>
  50. <br>
  51. <div class="form-check form-check-inline">
  52. <input class="form-check-input" type="radio" formControlName="role" id="roleRadios1" value="0"
  53. [ngClass]="{ 'is-invalid': submitted && f.role.errors }">
  54. <label class="form-check-label" for="roleRadios1">
  55. Invitado
  56. </label>
  57. </div>
  58. <div class="form-check form-check-inline">
  59. <input class="form-check-input" type="radio" formControlName="role" id="roleRadios2" value="1"
  60. [ngClass]="{ 'is-invalid': submitted && f.role.errors }">
  61. <label class="form-check-label" for="roleRadios2">
  62. Usuario
  63. </label>
  64. </div>
  65. <div class="form-check form-check-inline">
  66. <input class="form-check-input" type="radio" formControlName="role" id="roleRadios3" value="2"
  67. [ngClass]="{ 'is-invalid': submitted && f.role.errors }">
  68. <label class="form-check-label" for="roleRadios3">
  69. Administrador
  70. </label>
  71. </div>
  72. <div class="form-check form-check-inline">
  73. <input class="form-check-input" type="radio" formControlName="role" id="roleRadios4" value="3"
  74. [ngClass]="{ 'is-invalid': submitted && f.role.errors }">
  75. <label class="form-check-label" for="roleRadios4">
  76. Super Admin
  77. </label>
  78. </div>
  79. </div>
  80. <div class="form-group" *ngIf="!isLoadingOrganization; else loadingTmpl">
  81. <label>Organizaciones:</label>
  82. <div *ngFor="let item of listOrganization; let i = index" class="checkbox">
  83. <label>
  84. <input type="checkbox" [formControl]="organizationsFormGroup?.controls[item.id]" /> {{ item.name }}
  85. </label>
  86. </div>
  87. </div>
  88. <br>
  89. <button class="btn btn-primary">
  90. Crear usuario
  91. </button>
  92. </form>
  93. </div>
  94. </div>
  95. </div>
  96. </div>
  97. </div>
  98. </div>
  99. </div>
  100. </div>
  101. <ng-template #loadingTmpl>
  102. <div>Cargando...</div>
  103. </ng-template>