1 <ng-template #successStrTmpl i18n>{{idlClassDef.label}} Update Succeeded</ng-template>
2 <eg-string #successString [template]="successStrTmpl"></eg-string>
4 <ng-template #updateFailedStrTmpl i18n>Update of {{idlClassDef.label}} failed</ng-template>
5 <eg-string #updateFailedString [template]="updateFailedStrTmpl"></eg-string>
7 <ng-template #deleteFailedStrTmpl i18n>Delete of {{idlClassDef.label}} failed or was not allowed</ng-template>
8 <eg-string #deleteFailedString [template]="deleteFailedStrTmpl"></eg-string>
10 <ng-template #deleteSuccessStrTmpl i18n>{{idlClassDef.label}} Successfully Deleted</ng-template>
11 <eg-string #deleteSuccessString [template]="deleteSuccessStrTmpl"></eg-string>
13 <ng-template #createStrTmpl i18n>{{idlClassDef.label}} Successfully Created</ng-template>
14 <eg-string #createString [template]="createStrTmpl"></eg-string>
16 <ng-template #createErrStrTmpl i18n>Failed to create new {{idlClassDef.label}}</ng-template>
17 <eg-string #createErrString [template]="createErrStrTmpl"></eg-string>
19 <eg-string #cloneSuccessString i18n-text text="Portal Page Entries Cloning Succeeded"></eg-string>
20 <eg-string #cloneFailedString i18n-text text="Portal Page Entries Cloning Failed"></eg-string>
22 <eg-confirm-dialog #delConfirm
23 i18n-dialogTitle i18n-dialogBody
25 dialogBody="Delete staff portal page entry or entries?">
28 <eg-staff-banner bannerText="Staff Portal Page" i18n-bannerText></eg-staff-banner>
30 <eg-clone-portal-entries-dialog #cloneDialog></eg-clone-portal-entries-dialog>
32 <ng-container *ngIf="orgField || gridFilters">
34 <div class="col-lg-6">
35 <ng-container *ngIf="orgField">
37 [limitPerms]="viewPerms"
38 [selectedOrgId]="contextOrg.id()"
39 [ancestorSelectorChecked]="true"
40 [(ngModel)]="searchOrgs"
41 (ngModelChange)="grid.reload()">
42 </eg-org-family-select>
45 <div class="col-lg-6 d-flex">
46 <div class="flex-1"></div><!-- push right -->
47 <ng-container *ngIf="gridFilters">
48 <span i18n>Filters Applied: {{gridFilters | json}}</span>
49 <a class="pl-2 font-italic"
50 [attr.href]="clearGridFiltersUrl()" i18n>Clear Filters</a>
57 <!-- idlObject and fieldName applied programmatically -->
58 <eg-translate #translator></eg-translate>
60 <ng-container *ngIf="helpTemplate">
61 <ng-container *ngTemplateOutlet="helpTemplate"></ng-container>
64 <ng-template #configFieldLink let-row="row" let-col="col">
65 <a i18n-title title="Link To {{col.label}}"
66 [attr.href]="configFieldLinkUrl(row, col)">{{configLinkLabel(row, col)}}</a>
69 <eg-grid #grid idlClass="{{idlClass}}" [dataSource]="dataSource" hideFields="{{hideGridFields}}"
70 [sortable]="true" persistKey="{{persistKey}}" autoGeneratedColumnOrder="{{fieldOrder}}"
72 (onRowActivate)="showEditDialog($event)"
73 [filterable]="true" [stickyHeader]="true">
74 <eg-grid-toolbar-button [disabled]="!canCreate"
75 label="New {{idlClassDef.label}}" i18n-label (onClick)="createNew()">
76 </eg-grid-toolbar-button>
77 <eg-grid-toolbar-button [disabled]="!canCreate"
78 label="Clone a Library's Portal Page Entries" i18n-label (onClick)="cloneEntries()">
79 </eg-grid-toolbar-button>
80 <eg-grid-toolbar-button [disabled]="translatableFields.length === 0"
81 label="Apply Translations" i18n-label (onClick)="translate()">
82 </eg-grid-toolbar-button>
83 <eg-grid-toolbar-action label="Edit Selected" i18n-label (onClick)="editSelected($event)">
84 </eg-grid-toolbar-action>
85 <eg-grid-toolbar-action label="Delete Selected" i18n-label (onClick)="deleteSelected($event)">
86 </eg-grid-toolbar-action>
87 <ng-container *ngFor="let cf of configFields">
88 <eg-grid-column name="{{cf.name}}" [cellTemplate]="configFieldLink">
93 <ng-template #textTemplate let-field="field" let-record="record">
96 id="{{idPrefix}}-{{field.name}}" name="{{field.name}}"
97 type="text" pattern="[\s\S]*\S[\s\S]*"
98 placeholder="{{field.label}}..." i18n-placeholder
99 [required]="field.isRequired()"
100 [ngModel]="record[field.name]()"
101 (ngModelChange)="record[field.name]($event)"></textarea>
104 <eg-fm-record-editor #editDialog idlClass="{{idlClass}}"
105 [fieldOptions]="fieldOptions"
106 [fieldOrder]="fieldOrder"
107 [defaultNewRecord]="defaultNewRecord"
108 [fieldOptions]="{entry_text:{customTemplate:{template:textTemplate}}}"
109 [preloadLinkedValues]="true"
110 [readonlyFields]="readonlyFields">
111 </eg-fm-record-editor>