--- /dev/null
+//- Copyright (c) 2019 AT&T Intellectual Property. #\r
+//- #\r
+//- Licensed under the Apache License, Version 2.0 (the "License"); #\r
+//- you may not use this file except in compliance with the License. #\r
+//- You may obtain a copy of the License at #\r
+//- #\r
+//- http://www.apache.org/licenses/LICENSE-2.0 #\r
+//- #\r
+//- Unless required by applicable law or agreed to in writing, software #\r
+//- distributed under the License is distributed on an "AS IS" BASIS, #\r
+//- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. #\r
+//- See the License for the specific language governing permissions and #\r
+//- limitations under the License. #\r
+//- #############################################################################\r
+\r
+\r
+div([@routerTransition])\r
+ .card-md-12\r
+ .pull-left\r
+ app-page-header([heading]="'Custom Role Management'") \r
+ h5 {{ groupName }}\r
+ \r
+ \r
+\r
+ .pull-right\r
+ button(mat-raised-button color="primary", (click)="update()") Update All Rows\r
+ \r
+ .card-md-12.mt-3\r
+\r
+ div(style="width: 100%", [hidden]="!loading")\r
+ mat-spinner(style="margin: auto", color="primary")\r
+ table(mat-table, [dataSource]="dataSource", style="width: 100%", [hidden]="loading")\r
+\r
+ ng-container(matColumnDef="roleName")\r
+ th(mat-header-cell, *matHeaderCellDef) Role Name\r
+ td(mat-cell, *matCellDef="let element") {{ element.roleName }}\r
+\r
+ ng-container(matColumnDef="read")\r
+ th(mat-header-cell, *matHeaderCellDef) Read\r
+ td(mat-cell, *matCellDef="let element")\r
+ mat-checkbox([(ngModel)]="element.readPermission", [disabled]="true") \r
+ \r
+\r
+\r
+\r
+ ng-container(matColumnDef="write")\r
+ th(mat-header-cell, *matHeaderCellDef) Write\r
+ td(mat-cell, *matCellDef="let element") \r
+ mat-checkbox([(ngModel)]="element.writePermission", [disabled]="(element.roleName == 'admin')") \r
+ \r
+ ng-container(matColumnDef="execute")\r
+ th(mat-header-cell, *matHeaderCellDef) Execute\r
+ td(mat-cell, *matCellDef="let element")\r
+ mat-checkbox([(ngModel)]="element.executePermission", [disabled]="(element.roleName == 'admin')")\r
+ \r
+ ng-container(matColumnDef="delete")\r
+ th(mat-header-cell, *matHeaderCellDef) Delete\r
+ td(mat-cell, *matCellDef="let element") \r
+ mat-checkbox([(ngModel)]="element.deletePermission", [disabled]="(element.roleName == 'admin')") \r
+\r
+ ng-container(matColumnDef="management")\r
+ th(mat-header-cell, *matHeaderCellDef) Management\r
+ td(mat-cell, *matCellDef="let element")\r
+ mat-checkbox([(ngModel)]="element.managementPermission", [disabled]="true") \r
+\r
+ ng-container(matColumnDef="actions")\r
+ th(mat-header-cell, *matHeaderCellDef) Actions\r
+ td(mat-cell, *matCellDef="let element")\r
+ button(color="warn", matTooltip="Delete Role Permissions", mat-icon-button, (click)="deleteRole(element)", [disabled]="((element.roleName == 'admin') || (element.roleName == 'user') || (element.roleName == 'developer'))")\r
+ mat-icon delete_forever\r
+ button(color="primary", matTooltip="Save Role Permissions", mat-icon-button, (click)="update()", [disabled]="(element.roleName == 'admin')")\r
+ mat-icon save\r
+ \r
+\r
+\r
+\r
+ tr(mat-header-row *matHeaderRowDef="displayedColumns")\r
+ tr(mat-row *matRowDef="let row; columns: displayedColumns;")\r
+\r
+ \r
+\r
+\r
+\r
+ div(style="width: 100%;height:50px")\r
+\r
+ .card-md-12\r
+ .row\r
+ .col-sm-4\r
+ h3 Add New Role\r
+ .row\r
+ .col-sm-4\r
+ mat-form-field\r
+ input(matInput [(ngModel)]="roleName", id="roleName", name="roleName", placeholder="Role Name", required)\r
+ button(mat-raised-button color="primary", (click)="create()", style="margin-left:20px;", [disabled]="!roleName") Add Role\r
+\r
+\r