0bee2c472069d6de53950f3ed088a85e19ace303
[evergreen-equinox.git] / Open-ILS / src / eg2 / src / app / staff / circ / patron / perms.component.html
1
2 <div class="row" *ngIf="loading">
3   <div class="col-lg-6 offset-lg-3">
4     <eg-progress-inline #progress></eg-progress-inline>
5   </div>
6 </div>
7
8 <ul ngbNav #permsNav="ngbNav" class="nav-tabs" [keyboard]="true" [roles]="false" role="tablist">
9
10   <li role="presentation" ngbNavItem>
11     <a role="tab" ngbNavLink i18n>Working Location(s)</a>
12     <ng-template ngbNavContent>
13
14       <div class="striped-rows-odd mt-3 mb-3">
15         <div class="row mt-2 pt-2 pb-2" *ngFor="let org of workableOrgs">
16           <div class="col-lg-12">
17             <div class="form-check form-check-inline">
18               <input class="form-check-input" type="checkbox" id="work-org-{{org.id()}}" 
19                 [ngModel]="userHasWorkOu(org.id())"
20                 (ngModelChange)="userWorkOuChange(org.id(), $event)"
21                 [disabled]="!canAssignWorkOrgs[org.id()]"/>
22               <label class="form-check-label" for="work-org-{{org.id()}}" i18n>
23                 {{org.shortname()}} ({{org.name()}})
24               </label>
25             </div>
26           </div>
27         </div>
28       </div>
29     </ng-template>
30   </li>
31   <li role="presentation" ngbNavItem>
32     <a role="tab" ngbNavLink i18n>User Permissions</a>
33     <ng-template ngbNavContent>
34
35       <div class="striped-rows-odd mt-3">
36         <div class="row pt-1 pb-1">
37           <div class="col-lg-5 font-weight-bold" i18n>Permission</div>
38           <div class="col-lg-2 font-weight-bold" i18n>Applied</div>
39           <div class="col-lg-2 font-weight-bold" i18n>Depth</div>
40           <div class="col-lg-2 font-weight-bold" i18n>Grantable</div>
41         </div>
42         <div class="row pt-1 pb-1" *ngFor="let perm of allPerms">
43           <div class="col-lg-5">{{perm.code()}}</div>
44           <div class="col-lg-2">
45             <input class="form-check-input ml-0 pl-0" type="checkbox"
46               [disabled]="!canGrantPerm(perm)"
47               [ngModel]="userHasPerm(perm)"
48               (ngModelChange)="permApplyChanged(perm, $event)"/>
49           </div>
50           <div class="col-lg-2">
51             <select class="form-control" 
52               [ngModel]="userHasPermAtDepth(perm)"
53               (ngModelChange)="permDepthChanged(perm, $event)">
54               <ng-container *ngFor="let depth of orgDepths">
55                 <option [disabled]="depth < canGrantPermAtDepth(perm)" 
56                   [value]="depth">{{depth}}</option>
57               </ng-container>
58             </select>
59           </div>
60           <div class="col-lg-2">
61             <input class="form-check-input ml-0 pl-0" type="checkbox"
62               [disabled]="!canGrantPerm(perm)"
63               [ngModel]="userPermIsGrantable(perm)"
64               (ngModelChange)="grantableChanged(perm, $event)"/>
65           </div>
66         </div>
67       </div>
68     </ng-template>
69   </li>
70 </ul>
71
72 <ng-container *ngIf="!loading">
73   <div class="d-flex w-100 mt-2 mb-2">
74     <div class="ml-auto">
75       <button class="btn btn-success" (click)="save()" 
76         [disabled]="cannotSave()" i18n>Apply Changes</button>
77     </div>
78   </div>
79   <div [ngbNavOutlet]="permsNav"></div>
80   <div class="d-flex w-100 mb-2 mt-2">
81     <div class="ml-auto">
82       <button class="btn btn-success" (click)="save()" 
83         [disabled]="cannotSave()" i18n>Apply Changes</button>
84     </div>
85   </div>
86 </ng-container>
87
88
89