Browse Source

fix(admin-ui): Update PermissionGridComponent to show all existing perms

Michael Bromley 7 years ago
parent
commit
14f87aef5b

+ 4 - 4
admin-ui/src/app/core/components/main-nav/main-nav.component.html

@@ -63,16 +63,16 @@
             <ul class="nav-list">
                 <li>
                     <a class="nav-link"
-                       [routerLink]="['/settings', 'administrators']"
+                       [routerLink]="['/settings', 'channels']"
                        routerLinkActive="active">
-                        <clr-icon shape="administrator" size="20"></clr-icon>{{ 'nav.administrators' | translate }}
+                        <clr-icon shape="layers" size="20"></clr-icon>{{ 'nav.channels' | translate }}
                     </a>
                 </li>
                 <li>
                     <a class="nav-link"
-                       [routerLink]="['/settings', 'channels']"
+                       [routerLink]="['/settings', 'administrators']"
                        routerLinkActive="active">
-                        <clr-icon shape="layers" size="20"></clr-icon>{{ 'nav.channels' | translate }}
+                        <clr-icon shape="administrator" size="20"></clr-icon>{{ 'nav.administrators' | translate }}
                     </a>
                 </li>
                 <li>

+ 8 - 75
admin-ui/src/app/settings/components/permission-grid/permission-grid.component.html

@@ -7,81 +7,14 @@
         <th>{{ 'settings.delete' | translate }}</th>
     </tr>
     <tbody>
-    <tr>
-        <td>{{ 'settings.catalog' | translate }}</td>
-        <td><vdr-select-toggle size="small"
-                               [disabled]="readonly"
-                               [selected]="permissions['CreateCatalog']"
-                               (selectedChange)="setPermission('CreateCatalog', $event)"></vdr-select-toggle></td>
-        <td><vdr-select-toggle size="small"
-                               [disabled]="readonly"
-                               [selected]="permissions['ReadCatalog']"
-                               (selectedChange)="setPermission('ReadCatalog', $event)"></vdr-select-toggle></td>
-        <td><vdr-select-toggle size="small"
-                               [disabled]="readonly"
-                               [selected]="permissions['UpdateCatalog']"
-                               (selectedChange)="setPermission('UpdateCatalog', $event)"></vdr-select-toggle></td>
-        <td><vdr-select-toggle size="small"
-                               [disabled]="readonly"
-                               [selected]="permissions['DeleteCatalog']"
-                               (selectedChange)="setPermission('DeleteCatalog', $event)"></vdr-select-toggle></td>
-    </tr>
-    <tr>
-        <td>{{ 'settings.customer' | translate }}</td>
-        <td><vdr-select-toggle size="small"
-                               [disabled]="readonly"
-                               [selected]="permissions['CreateCustomer']"
-                               (selectedChange)="setPermission('CreateCustomer', $event)"></vdr-select-toggle></td>
-        <td><vdr-select-toggle size="small"
-                               [disabled]="readonly"
-                               [selected]="permissions['ReadCustomer']"
-                               (selectedChange)="setPermission('ReadCustomer', $event)"></vdr-select-toggle></td>
-        <td><vdr-select-toggle size="small"
-                               [disabled]="readonly"
-                               [selected]="permissions['UpdateCustomer']"
-                               (selectedChange)="setPermission('UpdateCustomer', $event)"></vdr-select-toggle></td>
-        <td><vdr-select-toggle size="small"
-                               [disabled]="readonly"
-                               [selected]="permissions['DeleteCustomer']"
-                               (selectedChange)="setPermission('DeleteCustomer', $event)"></vdr-select-toggle></td>
-    </tr>
-    <tr>
-        <td>{{ 'settings.order' | translate }}</td>
-        <td><vdr-select-toggle size="small"
-                               [disabled]="readonly"
-                               [selected]="permissions['CreateOrder']"
-                               (selectedChange)="setPermission('CreateOrder', $event)"></vdr-select-toggle></td>
-        <td><vdr-select-toggle size="small"
-                               [disabled]="readonly"
-                               [selected]="permissions['ReadOrder']"
-                               (selectedChange)="setPermission('ReadOrder', $event)"></vdr-select-toggle></td>
-        <td><vdr-select-toggle size="small"
-                               [disabled]="readonly"
-                               [selected]="permissions['UpdateOrder']"
-                               (selectedChange)="setPermission('UpdateOrder', $event)"></vdr-select-toggle></td>
-        <td><vdr-select-toggle size="small"
-                               [disabled]="readonly"
-                               [selected]="permissions['DeleteOrder']"
-                               (selectedChange)="setPermission('DeleteOrder', $event)"></vdr-select-toggle></td>
-    </tr>
-    <tr>
-        <td>{{ 'settings.administrator' | translate }}</td>
-        <td><vdr-select-toggle size="small"
-                               [disabled]="readonly"
-                               [selected]="permissions['CreateAdministrator']"
-                               (selectedChange)="setPermission('CreateAdministrator', $event)"></vdr-select-toggle></td>
-        <td><vdr-select-toggle size="small"
-                               [disabled]="readonly"
-                               [selected]="permissions['ReadAdministrator']"
-                               (selectedChange)="setPermission('ReadAdministrator', $event)"></vdr-select-toggle></td>
-        <td><vdr-select-toggle size="small"
-                               [disabled]="readonly"
-                               [selected]="permissions['UpdateAdministrator']"
-                               (selectedChange)="setPermission('UpdateAdministrator', $event)"></vdr-select-toggle></td>
-        <td><vdr-select-toggle size="small"
-                               [disabled]="readonly"
-                               [selected]="permissions['DeleteAdministrator']"
-                               (selectedChange)="setPermission('DeleteAdministrator', $event)"></vdr-select-toggle></td>
+    <tr *ngFor="let section of gridData">
+        <td>{{ section.label | translate }}</td>
+        <td *ngFor="let permission of section.permissions">
+            <vdr-select-toggle size="small"
+                               [disabled]="readonly"
+                               [selected]="permissions[permission]"
+                               (selectedChange)="setPermission(permission, $event)"></vdr-select-toggle>
+        </td>
     </tr>
     </tbody>
 </table>

+ 29 - 0
admin-ui/src/app/settings/components/permission-grid/permission-grid.component.ts

@@ -1,6 +1,8 @@
 import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
 import { Permission } from 'shared/generated-types';
 
+import { _ } from '../../../core/providers/i18n/mark-for-extraction';
+
 /**
  * A table showing and allowing the setting of all possible CRUD permissions.
  */
@@ -14,6 +16,33 @@ export class PermissionGridComponent {
     @Input() permissions: { [K in Permission]: boolean } = {} as any;
     @Input() readonly = false;
     @Output() permissionChange = new EventEmitter<{ permission: string; value: boolean }>();
+    readonly gridData = [
+        {
+            label: _('settings.catalog'),
+            permissions: ['CreateCatalog', 'ReadCatalog', 'UpdateCatalog', 'DeleteCatalog'],
+        },
+        {
+            label: _('settings.customer'),
+            permissions: ['CreateCustomer', 'ReadCustomer', 'UpdateCustomer', 'DeleteCustomer'],
+        },
+        {
+            label: _('settings.order'),
+            permissions: ['CreateOrder', 'ReadOrder', 'UpdateOrder', 'DeleteOrder'],
+        },
+        {
+            label: _('settings.administrator'),
+            permissions: [
+                'CreateAdministrator',
+                'ReadAdministrator',
+                'UpdateAdministrator',
+                'DeleteAdministrator',
+            ],
+        },
+        {
+            label: _('settings.settings'),
+            permissions: ['CreateSettings', 'ReadSettings', 'UpdateSettings', 'DeleteSettings'],
+        },
+    ];
 
     setPermission(permission: string, value: boolean) {
         this.permissionChange.emit({ permission, value });

+ 1 - 0
admin-ui/src/i18n-messages/en.json

@@ -174,6 +174,7 @@
     "roles": "Roles",
     "section": "Section",
     "select-zone": "Select zone",
+    "settings": "Settings",
     "tax-category": "Tax category",
     "tax-rate": "Tax rate",
     "update": "Update",

File diff suppressed because it is too large
+ 0 - 0
schema.json


+ 0 - 4
server/e2e/__snapshots__/administrator.e2e-spec.ts.snap

@@ -36,10 +36,6 @@ Object {
           "ReadOrder",
           "UpdateOrder",
           "DeleteOrder",
-          "CreateAdjustmentSource",
-          "ReadAdjustmentSource",
-          "UpdateAdjustmentSource",
-          "DeleteAdjustmentSource",
           "CreateSettings",
           "ReadSettings",
           "UpdateSettings",

+ 0 - 5
server/src/common/types/permission.graphql

@@ -29,11 +29,6 @@ enum Permission {
     UpdateOrder
     DeleteOrder
 
-    CreateAdjustmentSource
-    ReadAdjustmentSource
-    UpdateAdjustmentSource
-    DeleteAdjustmentSource
-
     CreateSettings
     ReadSettings
     UpdateSettings

+ 1 - 4
shared/generated-types.ts

@@ -1418,10 +1418,6 @@ export enum Permission {
     ReadOrder = 'ReadOrder',
     UpdateOrder = 'UpdateOrder',
     DeleteOrder = 'DeleteOrder',
-    CreateAdjustmentSource = 'CreateAdjustmentSource',
-    ReadAdjustmentSource = 'ReadAdjustmentSource',
-    UpdateAdjustmentSource = 'UpdateAdjustmentSource',
-    DeleteAdjustmentSource = 'DeleteAdjustmentSource',
     CreateSettings = 'CreateSettings',
     ReadSettings = 'ReadSettings',
     UpdateSettings = 'UpdateSettings',
@@ -4908,6 +4904,7 @@ export namespace OrderWithLines {
         __typename?: 'ProductVariant';
         id: string;
         name: string;
+        sku: string;
     };
 
     export type Items = {

Some files were not shown because too many files changed in this diff