]> git.evergreen-ils.org Git - Evergreen.git/blob - Open-ILS/src/eg2/src/app/staff/admin/local/triggers/triggers.component.html
LP#1855780 Angular Notification/Action Triggers port
[Evergreen.git] / Open-ILS / src / eg2 / src / app / staff / admin / local / triggers / triggers.component.html
1 <eg-staff-banner bannerText="Local Admin Notifications/Action Triggers" i18n-bannerText>
2 </eg-staff-banner>
3
4 <ng-template #textAreaTemplate let-field="field" let-record="record">
5     <textarea class="form-control" name="{{field.name}}" [readonly]="field.readOnly"
6         [required]="field.isRequired()" [ngModel]="record[field.name]()" 
7         (ngModelChange)="record[field.name]($event)" style="height: 600px;">
8     </textarea>
9 </ng-template>
10 <eg-fm-record-editor #eventDialog idlClass="atevdef"
11     [fieldOptions]="{message_template:{customTemplate:{template:textAreaTemplate}},template:{customTemplate:{template:textAreaTemplate}}}"
12     fieldOrder="owner,name,hook,active,delay,delay_field,group_field,reactor,validator,repeat_delay,id,cleanup_failure,granularity,max_delay,message_library_path,message_template,message_title,message_usr_path,opt_in_setting,usr_field,retention_interval,cleanup_success,template"
13     hiddenFields="id">
14 </eg-fm-record-editor>
15 <eg-fm-record-editor #hookDialog idlClass="ath"></eg-fm-record-editor>        
16 <eg-fm-record-editor #reactorDialog idlClass="atreact"></eg-fm-record-editor>        
17 <eg-fm-record-editor #validatorDialog idlClass="atval"></eg-fm-record-editor>        
18
19 <ul ngbNav #triggerNav="ngbNav" [activeId]="triggerTab" class="nav-tabs"
20     (navChange)="onTabChange($event)">
21     <li [ngbNavItem]="'eventDefinitions'">
22       <a ngbNavLink i18n>Event Definitions</a>
23       <ng-template ngbNavContent>
24         <h4 class="mb-3 mt-3">Trigger Event Definitions</h4>
25         <eg-grid #eventsGrid idlClass="atevdef" [dataSource]="eventsDataSource" 
26             showFields="owner,name,hook,active,delay,delay_field,group_field,reactor,validator,repeat_delay,granularity,retention_interval"
27             [showLinkSelectors]="true" [sortable]="true" 
28             (onRowActivate)="editSelected([$event])" [filterable]="true">
29             <eg-grid-toolbar-button label="New Event Definition" i18n-label
30                 [action]="createNewEvent"></eg-grid-toolbar-button>
31             <eg-grid-toolbar-action label="Edit Event Definition" i18n-label 
32                 [action]="editEventDefinition"></eg-grid-toolbar-action>
33             <eg-grid-toolbar-action label="Clone Selected" i18n-label 
34                 [action]="cloneSelected"></eg-grid-toolbar-action>
35             <eg-grid-toolbar-action label="Delete Selected" i18n-label 
36                 (onClick)="deleteSelected($event)"></eg-grid-toolbar-action>
37             <eg-grid-column i18n-label label="Owning Library" path="owner">
38             </eg-grid-column>
39             <eg-grid-column i18n-label label="Name" path="name">
40             </eg-grid-column>
41             <eg-grid-column i18n-label label="Hook" path="hook">
42             </eg-grid-column>
43             <eg-grid-column i18n-label label="Enabled" path="active">
44             </eg-grid-column>
45             <eg-grid-column i18n-label label="Processing Delay" path="delay" [filterable]="false">
46             </eg-grid-column>
47             <eg-grid-column i18n-label label="Processing Delay Context Field" path="delay_field">
48             </eg-grid-column>
49             <eg-grid-column i18n-label label="Processing Group Context Field" path="group_field">
50             </eg-grid-column>
51             <eg-grid-column i18n-label label="Reactor" path="reactor">
52             </eg-grid-column>
53             <eg-grid-column i18n-label label="Validator" path="validator">
54             </eg-grid-column>
55             <eg-grid-column i18n-label label="Event Repeatability Delay" path="repeat_delay" [filterable]="false">
56             </eg-grid-column>
57             <eg-grid-column i18n-label label="Granularity" path="granularity">
58             </eg-grid-column>
59             <eg-grid-column i18n-label label="Retention Interval" path="retention_interval" [filterable]="false">
60             </eg-grid-column>
61         </eg-grid>
62       </ng-template>
63     </li>
64     <li [ngbNavItem]="'hooks'">
65       <a ngbNavLink i18n>Hooks</a>
66       <ng-template ngbNavContent>
67         <h4 class="mb-3 mt-3">Trigger Hooks</h4>
68             <eg-grid #hooksGrid idlClass="ath" [dataSource]="hooksDataSource"
69                 (onRowActivate)="editSelected([$event])" [sortable]="true" [filterable]="true">
70                 <eg-grid-toolbar-button label="New Hook" i18n-label [action]="createNewHook">
71                 </eg-grid-toolbar-button>
72                 <eg-grid-toolbar-action label="Edit Selected" i18n-label 
73                     [action]="editSelected"></eg-grid-toolbar-action>
74                 <eg-grid-toolbar-action label="Delete Selected" i18n-label 
75                     (onClick)="deleteSelected($event)"></eg-grid-toolbar-action>
76             </eg-grid>
77       </ng-template>
78     </li>
79     <li [ngbNavItem]="'reactors'">
80       <a ngbNavLink i18n>Reactors</a>
81       <ng-template ngbNavContent>
82         <h4 class="mb-3 mt-3">Trigger Reactors</h4>
83             <eg-grid #reactorsGrid idlClass="atreact" [dataSource]="reactorsDataSource"
84               (onRowActivate)="editSelected([$event])" [sortable]="true" [filterable]="true">
85                 <eg-grid-toolbar-button label="New Reactor" i18n-label 
86                     [action]="createNewReactor"></eg-grid-toolbar-button>
87                 <eg-grid-toolbar-action label="Edit Selected" i18n-label 
88                     [action]="editSelected"></eg-grid-toolbar-action>
89                 <eg-grid-toolbar-action label="Delete Selected" i18n-label 
90                     (onClick)="deleteSelected($event)"></eg-grid-toolbar-action>
91             </eg-grid>
92       </ng-template>
93     </li>
94     <li [ngbNavItem]="'validators'">
95         <a ngbNavLink i18n>Validators</a>
96         <ng-template ngbNavContent>
97             <h4 class="mb-3 mt-3">Trigger Validators</h4>
98             <eg-grid #validatorsGrid idlClass="atval" [dataSource]="validatorsDataSource"
99                 (onRowActivate)="editSelected([$event])" [sortable]="true" [filterable]="true">
100                 <eg-grid-toolbar-button label="New Validator" i18n-label 
101                     [action]="createNewValidator"></eg-grid-toolbar-button>
102                 <eg-grid-toolbar-action label="Edit Selected" i18n-label 
103                     [action]="editSelected"></eg-grid-toolbar-action>
104                 <eg-grid-toolbar-action label="Delete Selected" i18n-label 
105                     (onClick)="deleteSelected($event)"></eg-grid-toolbar-action>
106             </eg-grid>
107         </ng-template>
108       </li>
109   </ul>
110   
111 <div [ngbNavOutlet]="triggerNav" class="mt-2"></div>
112   
113 <eg-string #createSuccessString i18n-text text="New entry Added"></eg-string>
114 <eg-string #createErrString i18n-text text="Failed to create new entry"></eg-string>
115 <eg-string #deleteFailedString i18n-text text="Deletion of entry failed or was not allowed">
116 </eg-string>
117 <eg-string #deleteSuccessString i18n-text text="Delete of entry succeeded"></eg-string>
118 <eg-string #updateFailedString i18n-text text="Update of entry failed or was not allowed">
119 </eg-string>
120 <eg-string #updateSuccessString i18n-text text="Update of entry succeeded"></eg-string>
121 <eg-string #cloneFailedString i18n-text text="Clone of entry failed or was not allowed">
122 </eg-string>
123 <eg-string #cloneSuccessString i18n-text text="Clone of entry succeeded"></eg-string>