Initial commit

This commit is contained in:
root
2026-01-19 17:44:46 +01:00
commit 823af8b11d
8721 changed files with 1130846 additions and 0 deletions

View File

@@ -0,0 +1,14 @@
{{#if isEmpty}}
{{translate 'None'}}
{{else}}
<div>(
{{#each viewDataList}}
<div data-view-key="{{key}}" style="margin-left: 15px;">{{{var key ../this}}}</div>
{{#unless isEnd}}
<div style="margin-left: 15px;">
{{translate ../operator category='logicalOperators' scope='Admin'}}
</div>
{{/unless}}
{{/each}}
)</div>
{{/if}}

View File

@@ -0,0 +1,4 @@
<div>{{translate 'not' category='logicalOperators' scope='Admin'}} (
<div data-view-key="{{viewKey}}" style="margin-left: 15px;">{{{var viewKey this}}}</div>
)</div>

View File

@@ -0,0 +1 @@
{{leftString}} {{{operatorString}}} <span data-name="{{valueViewKey}}">{{{value}}}</span>

View File

@@ -0,0 +1,2 @@
{{translate field category='fields' scope=scope}} {{{operatorString}}}
({{#each valueViewDataList}}<span data-name="{{key}}">{{{var key ../this}}}</span>{{#unless isEnd}}, {{/unless}}{{/each}})

View File

@@ -0,0 +1 @@
{{translate field category='fields' scope=scope}} {{{operatorString}}}

View File

@@ -0,0 +1 @@
{{translate field category='fields' scope=scope}} {{{operatorString}}} {{translateOption dateValue field='dateSearchRanges'}}

View File

@@ -0,0 +1,11 @@
<div class="row dynamic-logic-edit-item-row">
<div class="col-sm-2">{{leftString}}</div>
<div class="col-sm-3">
<select data-name="type" class="form-control">{{{options typeList type scope='DynamicLogic' field='operators'}}}</select>
</div>
<div class="col-sm-4 value-container">{{{value}}}</div>
<div class="col-sm-3">
<a class="pull-right" role="button" tabindex="0" data-action="remove"><span class="fas fa-times"></span></a>
<span>{{translate operator category='logicalOperators' scope='Admin'}}</span>
</div>
</div>

View File

@@ -0,0 +1,67 @@
<div class="group-head" data-level="{{level}}">
{{#ifNotEqual level 0}}
<a class="pull-right" role="button" tabindex="0" data-action="remove"><span class="fas fa-times"></span></a>
{{/ifNotEqual}}
{{#ifNotEqual level 0}}
<div>(</div>
{{else}}
&nbsp;
{{/ifNotEqual}}
</div>
<div class="item-list" data-level="{{level}}">
{{#each viewDataList}}
<div data-view-key="{{key}}">{{{var key ../this}}}</div>
<div class="group-operator" data-view-ref-key="{{key}}">{{translate ../groupOperator category='logicalOperators' scope='Admin'}}</div>
{{/each}}
</div>
<div class="group-bottom" data-level="{{level}}">
<div class="btn-group">
<a
class="dropdown-toggle small"
role="button"
tabindex="0"
data-toggle="dropdown"
>{{translate groupOperator category='logicalOperators' scope='Admin'}} <span class="fas fa-plus"></span></a>
<ul class="dropdown-menu">
<li><a
role="button"
tabindex="0"
data-action="addField"
>{{translate 'Field' scope='DynamicLogic'}}</a></li>
<li class="divider"></li>
<li><a
role="button"
tabindex="0"
data-action="addAnd"
>(... {{translate 'and' category='logicalOperators' scope='Admin'}} ...)</a></li>
<li><a
role="button"
tabindex="0"
data-action="addOr"
>(... {{translate 'or' category='logicalOperators' scope='Admin'}} ...)</a></li>
<li><a
role="button"
tabindex="0"
data-action="addNot"
>{{translate 'not' category='logicalOperators' scope='Admin'}} (...)</a></li>
<li class="divider"></li>
<li><a
role="button"
tabindex="0"
data-action="addCurrentUser"
>${{translate 'User' scope='scopeNames'}}</a></li>
<li><a
role="button"
tabindex="0"
data-action="addCurrentUserTeams"
>${{translate 'User' scope='scopeNames'}}.{{translate 'teams' category='fields' scope='User'}}</a></li>
</ul>
</div>
</div>
{{#ifNotEqual level 0}}
<div>)</div>
{{/ifNotEqual}}

View File

@@ -0,0 +1,51 @@
<div class="group-head" data-level="{{level}}">
<a class="pull-right" role="button" data-action="remove"><span class="fas fa-times"></span></a>
<div><span class="not-operator">{{translate 'not' category='logicalOperators' scope='Admin'}}</span> (</div>
</div>
<div class="item-list" data-level="{{level}}">
<div data-view-key="{{viewKey}}">{{#if hasItem}}{{{var viewKey this}}}{{/if}}</div>
</div>
<div class="group-bottom" data-level="{{level}}">
<div class="btn-group">
<a class="dropdown-toggle small" role="button" data-toggle="dropdown"><span class="fas fa-plus"></span></a>
<ul class="dropdown-menu">
<li><a
role="button"
tabindex="0"
data-action="addField"
>{{translate 'Field' scope='DynamicLogic'}}</a></li>
<li class="divider"></li>
<li><a
role="button"
tabindex="0"
data-action="addAnd"
>(... {{translate 'and' category='logicalOperators' scope='Admin'}} ...)</a></li>
<li><a
role="button"
tabindex="0"
data-action="addOr"
>(... {{translate 'or' category='logicalOperators' scope='Admin'}} ...)</a></li>
<li><a
role="button"
tabindex="0"
data-action="addNot"
>{{translate 'not' category='logicalOperators' scope='Admin'}} (...)</a></li>
<li class="divider"></li>
<li><a
role="button"
tabindex="0"
data-action="addCurrentUser"
>${{translate 'User' scope='scopeNames'}}</a></li>
<li><a
role="button"
tabindex="0"
data-action="addCurrentUserTeams"
>${{translate 'User' scope='scopeNames'}}.{{translate 'teams' category='fields' scope='User'}}</a></li>
</ul>
</div>
</div>
<div>)</div>

View File

@@ -0,0 +1,5 @@
<div class="panel panel-default no-side-margin"><div class="panel-body">
<div class="top-group-container dynamic-logic-expression-container">{{{conditionGroup}}}</div>
</div></div>

View File

@@ -0,0 +1,16 @@
<div class="page-header">
<h3><a href="#Admin">{{translate 'Administration'}}</a>
<span class="breadcrumb-separator"><span></span></span>
<a href="#Admin/entityManager">{{translate 'Entity Manager' scope='Admin'}}</a>
<span class="breadcrumb-separator"><span></span></span>
{{#unless isNew}}
<a href="#Admin/entityManager/scope={{scope}}">{{translate scope category='scopeNames'}}</a>
<span class="breadcrumb-separator"><span></span></span>
{{translate 'Edit'}}
{{else}}
{{translate 'Create Entity' scope='Admin'}}
{{/unless}}
</h3>
</div>
<div class="record">{{{record}}}</div>

View File

@@ -0,0 +1,14 @@
<div>
<button
class="btn btn-default pull-right btn-icon"
data-action="selectIcon"
title="{{translate 'Select'}}"
><span class="fas fa-angle-up"></span></button>
<span style="vertical-align: middle;">
{{#if value}}
<span class="{{value}}"></span>
{{else}}
{{translate 'None'}}
{{/if}}
</span>
</div>

View File

@@ -0,0 +1,37 @@
<div class="page-header">
<h3>
<a href="#Admin">{{translate 'Administration'}}</a>
<span class="breadcrumb-separator"><span></span></span>
<a href="#Admin/entityManager">{{translate 'Entity Manager' scope='Admin'}}</a>
<span class="breadcrumb-separator"><span></span></span>
<a href="#Admin/entityManager/scope={{scope}}">{{translate scope category='scopeNames'}}</a>
<span class="breadcrumb-separator"><span></span></span>
{{translate 'Formula' scope='EntityManager'}}
</h3>
</div>
<div class="button-container">
<div class="btn-group actions-btn-group" role="group">
<button class="btn btn-danger btn-xs-wide action" data-action="save">
{{translate 'Save'}}
</button>
<button class="btn btn-default btn-xs-wide action" data-action="close">
{{translate 'Close'}}
</button>
<button
class="btn btn-default dropdown-toggle"
data-toggle="dropdown"
><span class="fas fa-ellipsis-h"></span></button>
<ul class="dropdown-menu pull-right">
<li>
<a
role="button"
tabindex="0"
data-action="resetToDefault"
>{{translate 'Reset to Default' scope='Admin'}}</a>
</li>
</ul>
</div>
</div>
<div class="record">{{{record}}}</div>

View File

@@ -0,0 +1,77 @@
<div class="page-header"><h3><a href="#Admin">{{translate 'Administration'}}</a>
<span class="breadcrumb-separator"><span></span></span>
{{translate 'Entity Manager' scope='Admin'}}</h3></div>
<div class="button-container">
<div class="btn-group">
<button class="btn btn-default" data-action="createEntity">
<span class="fas fa-plus fa-sm"></span><span>{{translate 'Create Entity' scope='Admin'}}</span>
</button>
<button
class="btn btn-default dropdown-toggle"
data-toggle="dropdown"
><span class="fas fa-ellipsis-h"></span></button>
<ul class="dropdown-menu pull-right">
<li>
<a
role="button"
data-action="export"
tabindex="0"
>{{translate 'Export'}}</a>
</li>
</ul>
</div>
</div>
<div class="row">
<div class="col-md-11">
<div class="margin-bottom-2x margin-top">
<input
type="text"
maxlength="64"
placeholder="{{translate 'Search'}}"
data-name="quick-search"
class="form-control"
spellcheck="false"
>
</div>
<table class="table table-hover table-panel scopes-table">
<thead>
<tr>
<th>{{translate 'label' scope='EntityManager' category='fields'}}</th>
<th style="width: 27%">{{translate 'name' scope='EntityManager' category='fields'}}</th>
<th style="width: 19%">{{translate 'type' scope='EntityManager' category='fields'}}</th>
<th style="width: 19%">{{translate 'module' scope='EntityManager' category='fields'}}</th>
</tr>
</thead>
<tbody>
{{#each scopeDataList}}
<tr data-scope="{{name}}" class="scope-row">
<td>
{{#if hasView}}
<a href="#Admin/entityManager/scope={{name}}">{{label}}</a>
{{else}}
{{label}}
{{/if}}
</td>
<td>
{{name}}
</td>
<td>
{{#if type}}
{{translateOption type field='type' scope='EntityManager'}}
{{/if}}
</td>
<td>
{{#if module}}
{{translateOption module field='module' scope='EntityManager'}}
{{/if}}
</td>
</tr>
{{/each}}
</tbody>
</table>
<div class="no-data hidden">{{translate 'No Data'}}</div>
</div>
</div>

View File

@@ -0,0 +1,30 @@
<div class="margin-top margin-bottom-2x">
<a role="button" tabindex="0" data-action="select" class="action btn btn-default" data-value="" style="cursor: pointer;">
{{translate 'None'}}
</a>
</div>
<div class="margin-top margin-bottom-2x">
<input class="form-control" type="input" data-name="quick-search" placeholder="{{translate 'Search'}}">
</div>
<div class="row icons">
{{#each iconDataList}}
{{#each this}}
<div
class="col-md-2 col-sm-2 icon-container"
style="height: 6em; text-align: center; overflow: hidden;"
data-name="{{./this}}"
>
<span data-action="select" class="action" data-value="{{./this}}" style="cursor: pointer;">
<div style="text-align: center; height: 1.5em;">
<span class="{{./this}}"></span>
</div>
<div style="text-align: center;">
<span>{{./this}}</span>
</div>
</span>
</div>
{{/each}}
{{/each}}
</div>

View File

@@ -0,0 +1,10 @@
<div class="row">
<div data-name="{{field}}" class="cell col-sm-12">
<label class="control-label" data-name="{{field}}">
{{translate field category='fields' scope='EntityManager'}}
</label>
<div class="field" data-name="{{field}}">
{{{var fieldKey this}}}
</div>
</div>
</div>

View File

@@ -0,0 +1,93 @@
<div class="page-header">
<h3><a href="#Admin">{{translate 'Administration'}}</a>
<span class="breadcrumb-separator"><span></span></span>
<a href="#Admin/entityManager">{{translate 'Entity Manager' scope='Admin'}}</a>
<span class="breadcrumb-separator"><span></span></span>
{{translate scope category='scopeNames'}}
</h3>
</div>
<div class="button-container">
<div class="btn-group actions-btn-group" role="group">
{{#if isEditable}}
<button class="btn btn-default action btn-lg action btn-wide" data-action="editEntity">
<span class="icon fas fa-cog"></span>
{{translate 'Edit'}}
</button>
{{/if}}
{{#if isRemovable}}
<button class="btn btn-default btn-lg dropdown-toggle item-dropdown-button" data-toggle="dropdown">
<span class="fas fa-ellipsis-h"></span>
</button>
<ul class="dropdown-menu pull-left">
<li><a role="button" tabindex="0" data-action="removeEntity">{{translate 'Remove'}}</a></li>
</ul>
{{/if}}
</div>
</div>
<div class="record record-container">{{{record}}}</div>
<div class="record">
<div class="record-grid">
<div class="left">
<div class="panel panel-default">
<div class="panel-body panel-body-form">
<div class="row">
<div class="cell col-sm-6 form-group">
{{#if hasFields}}
<div>
<a
class="btn btn-default btn-lg action btn-full-wide"
href="#Admin/fieldManager/scope={{scope}}"
>
<span class="fas fa-asterisk"></span>
{{translate 'Fields' scope='EntityManager'}}
</a>
</div>
{{/if}}
</div>
<div class="cell col-sm-6 form-group">
{{#if hasRelationships}}
<div>
<a
class="btn btn-default btn-lg action btn-full-wide"
href="#Admin/linkManager/scope={{scope}}"
>
<span class="fas fa-link"></span>
{{translate 'Relationships' scope='EntityManager'}}
</a>
</div>
{{/if}}
</div>
<div class="cell col-sm-6 form-group">
{{#if hasLayouts}}
<div>
<a
class="btn btn-default btn-lg action btn-full-wide"
href="#Admin/layouts/scope={{scope}}&em=true"
>
<span class="fas fa-table"></span>
{{translate 'Layouts' scope='EntityManager'}}
</a>
</div>
{{/if}}
</div>
<div class="cell col-sm-6 form-group">
{{#if hasFormula}}
<div>
<a
class="btn btn-default btn-lg action btn-full-wide"
data-action="editFormula"
>
<span class="fas fa-code"></span>
{{translate 'Formula' scope='EntityManager'}}
</a>
</div>
{{/if}}
</div>
</div>
</div>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,5 @@
<p class="text-success">
{{{text}}}
</p>

View File

@@ -0,0 +1,27 @@
<div class="page-header"><h3><a href="#Admin">{{translate 'Administration'}}</a>
<span class="breadcrumb-separator"><span></span></span>
{{translate 'Extensions' scope='Admin'}}</h3></div>
<div class="panel panel-default upload">
<div class="panel-heading">
<h4 class="panel-title">{{translate 'selectExtensionPackage' category='messages' scope='Admin'}}</h4>
</div>
<div class="panel-body">
<div>
<input type="file" name="package" accept="application/zip">
</div>
<div class="message-container text-danger" style="height: 20px; margin-bottom: 10px; margin-top: 10px;"></div>
<div class="buttons-container">
<button
class="btn btn-primary disabled"
data-action="upload"
disabled="disabled"
>{{translate 'Upload' scope='Admin'}}</button>
</div>
</div>
</div>
<p class="text-danger notify-text hidden"></p>
<div class="list-container">{{{list}}}</div>

View File

@@ -0,0 +1,5 @@
<p class="text-danger">
{{{text}}}
</p>

View File

@@ -0,0 +1,85 @@
<div class="button-container">
<div class="btn-group">
<button class="btn btn-primary btn-xs-wide" data-action="save">{{translate 'Save'}}</button>
<button class="btn btn-default btn-xs-wide" data-action="close">{{translate 'Close'}}</button>
{{#if hasResetToDefault}}
<button
class="btn btn-default"
data-action="resetToDefault"
>{{translate 'Reset to Default' scope='Admin'}}</button>
{{/if}}
</div>
</div>
<div class="row middle">
<div class="col-sm-6">
<div class="panel panel-default">
<div class="panel-body panel-body-form">
<div class="cell form-group" data-name="type">
<label class="control-label" data-name="type">{{translate 'type' scope='Admin' category='fields'}}</label>
<div class="field" data-name="type">{{translate type scope='Admin' category='fieldTypes'}}</div>
</div>
<div class="cell form-group" data-name="name">
<label class="control-label" data-name="name">{{translate 'name' scope='Admin' category='fields'}}</label>
<div class="field" data-name="name">{{{name}}}</div>
</div>
<div class="cell form-group" data-name="label">
<label class="control-label" data-name="label">{{translate 'label' scope='Admin' category='fields'}}</label>
<div class="field" data-name="label">{{{label}}}</div>
</div>
{{#each paramDataList}}
{{#unless hidden}}
<div class="cell form-group" data-name="{{name}}">
<label class="control-label" data-name="{{name}}">{{label}}</label>
<div class="field" data-name="{{name}}">{{{var name ../this}}}</div>
</div>
{{/unless}}
{{/each}}
</div>
</div>
{{#if hasDynamicLogicPanel}}
<div class="panel panel-default">
<div class="panel-heading"><h4 class="panel-title">{{translate 'Dynamic Logic' scope='FieldManager'}}</h4></div>
<div class="panel-body panel-body-form">
{{#if dynamicLogicVisible}}
<div class="cell form-group" data-name="dynamicLogicVisible">
<label class="control-label" data-name="dynamicLogicVisible">{{translate 'dynamicLogicVisible' scope='Admin' category='fields'}}</label>
<div class="field" data-name="dynamicLogicVisible">{{{dynamicLogicVisible}}}</div>
</div>
{{/if}}
{{#if dynamicLogicRequired}}
<div class="cell form-group" data-name="dynamicLogicRequired">
<label class="control-label" data-name="dynamicLogicRequired">{{translate 'dynamicLogicRequired' scope='Admin' category='fields'}}</label>
<div class="field" data-name="dynamicLogicRequired">{{{dynamicLogicRequired}}}</div>
</div>
{{/if}}
{{#if dynamicLogicReadOnly}}
<div class="cell form-group" data-name="dynamicLogicReadOnly">
<label class="control-label" data-name="dynamicLogicReadOnly">{{translate 'dynamicLogicReadOnly' scope='Admin' category='fields'}}</label>
<div class="field" data-name="dynamicLogicReadOnly">{{{dynamicLogicReadOnly}}}</div>
</div>
{{/if}}
{{#if dynamicLogicOptions}}
<div class="cell form-group" data-name="dynamicLogicOptions">
<label class="control-label" data-name="dynamicLogicOptions">{{translate 'dynamicLogicOptions' scope='Admin' category='fields'}}</label>
<div class="field" data-name="dynamicLogicOptions">{{{dynamicLogicOptions}}}</div>
</div>
{{/if}}
{{#if dynamicLogicInvalid}}
<div class="cell form-group" data-name="dynamicLogicInvalid">
<label class="control-label" data-name="dynamicLogicInvalid">{{translate 'dynamicLogicInvalid' scope='Admin' category='fields'}}</label>
<div class="field" data-name="dynamicLogicInvalid">{{{dynamicLogicInvalid}}}</div>
</div>
{{/if}}
{{#if dynamicLogicReadOnlySaved}}
<div class="cell form-group" data-name="dynamicLogicReadOnlySaved">
<label class="control-label" data-name="dynamicLogicReadOnlySaved">{{translate 'dynamicLogicReadOnlySaved' scope='Admin' category='fields'}}</label>
<div class="field" data-name="dynamicLogicReadOnlySaved">{{{dynamicLogicReadOnlySaved}}}</div>
</div>
{{/if}}
</div>
</div>
</div>
{{/if}}
</div>

View File

@@ -0,0 +1,13 @@
{{#if isNotEmpty}}
<div>
<div class="top-group-string-container">
{{{conditionGroup}}}
</div>
</div>
{{else}}
{{#if isSet}}
<span class="none-value">{{translate 'None'}}</span>
{{else}}
<span class="loading-value"></span>
{{/if}}
{{/if}}

View File

@@ -0,0 +1,8 @@
<div>
<div class="pull-right">
<a role="button" tabindex="0" data-action="editConditions">{{translate 'Edit'}}</a>
</div>
<div class="top-group-string-container">
{{{conditionGroup}}}
</div>
</div>

View File

@@ -0,0 +1,50 @@
<div class="dynamic-logic-options">
<div class="dynamic-logic-options-list-container list-group">
{{#each itemDataList}}
<div class="list-group-item">
<div class="clearfix option-list-item-header">
<div class="pull-right">
<a
role="button"
tabindex="0"
data-action="removeOptionList"
data-index="{{index}}"
class="remove-option-list"
title="{{translate 'Remove'}}"
>
<span class="fas fa-minus fa-sm"></span>
</a>
</div>
</div>
<div>
<div class="options-container" data-key="{{optionsViewKey}}">
{{{var optionsViewKey ../this}}}
</div>
</div>
<div>
<div class="pull-right">
<a
role="button"
tabindex="0"
data-action="editConditions"
data-index="{{index}}"
>{{translate 'Edit'}}</a>
</div>
<div class="string-container" data-key="{{conditionGroupViewKey}}">
{{{var conditionGroupViewKey ../this}}}
</div>
</div>
</div>
{{/each}}
</div>
<div>
<a
role="button"
tabindex="0"
data-action="addOptionList"
title="{{translate 'Add'}}"
class="add-option-list"
><span class="fas fa-plus fa-sm"></span></a>
</div>
</div>

View File

@@ -0,0 +1,17 @@
<h3>
<a href="#Admin">{{translate 'Administration'}}</a>
<span class="breadcrumb-separator"><span></span></span>
<a href="#Admin/entityManager">{{translate 'Entity Manager' scope='Admin'}}</a>
<span class="breadcrumb-separator"><span></span></span>
<a href="#Admin/entityManager/scope={{scope}}">{{translate scope category='scopeNames'}}</a>
<span class="breadcrumb-separator"><span></span></span>
{{#if field}}
<a href="#Admin/fieldManager/scope={{scope}}">{{translate 'Fields' scope='EntityManager'}}</a>
{{else}}
{{translate 'Fields' scope='EntityManager'}}
{{/if}}
{{#if field}}
<span class="breadcrumb-separator"><span></span></span>
{{translate field category='fields' scope=scope}}
{{/if}}
</h3>

View File

@@ -0,0 +1,11 @@
<div class="page-header">
{{{header}}}
</div>
<div class="row">
<div id="fields-panel" class="col-sm-9">
<div id="fields-content">
{{{content}}}
</div>
</div>
</div>

View File

@@ -0,0 +1,85 @@
<div class="button-container">
<div class="btn-group">
{{#if hasAddField}}
<button
type="button"
class="btn btn-default btn-wide"
data-action="addField"
><span class="fas fa-plus fa-sm"></span><span>{{translate 'Add Field' scope='Admin'}}</span></button>
{{/if}}
</div>
</div>
<div class="margin-bottom-2x margin-top">
<input
type="text"
maxlength="64"
placeholder="{{translate 'Search'}}"
data-name="quick-search"
class="form-control"
spellcheck="false"
>
</div>
<table class="table fields-table table-panel table-hover">
<thead>
<th style="width: 35%">{{translate 'Label' scope='FieldManager'}}</th>
<th style="width: 35%">{{translate 'Name' scope='FieldManager'}}</th>
<th style="width: 20%">{{translate 'Type' scope='FieldManager'}}</th>
<th style="width: 8%; text-align: right;"></th>
</thead>
<tbody>
{{#each fieldDefsArray}}
<tr data-name="{{name}}" class="field-row">
<td>
{{#if isEditable}}
<a
href="#Admin/fieldManager/scope={{../scope}}&field={{name}}"
class="field-link"
data-scope="{{../scope}}"
data-field="{{name}}"
>{{translate name scope=../scope category='fields'}}</a>
{{else}}
{{translate name scope=../scope category='fields'}}
{{/if}}
</td>
<td>
<span class="{{#if isCustom}} text-info {{/if}}">{{name}}</span>
</td>
<td>{{translate type category='fieldTypes' scope='Admin'}}</td>
<td style="text-align: right">
<div class="btn-group row-dropdown-group">
<button
class="btn btn-link btn-sm dropdown-toggle"
data-toggle="dropdown"
><span class="caret"></span></button>
<ul class="dropdown-menu pull-right">
<li>
<a
role="button"
tabindex="0"
data-action="viewDetails"
data-name="{{name}}"
>{{translate 'View Details' scope='FieldManager'}}</a>
</li>
{{#if isCustom}}
<li class="divider"></li>
<li>
<a
role="button"
tabindex="0"
data-action="removeField"
data-name="{{name}}"
>{{translate 'Remove'}}</a>
</li>
{{/if}}
</ul>
</div>
</td>
</tr>
{{/each}}
</tbody>
</table>
<div class="no-data hidden">{{translate 'No Data'}}</div>

View File

@@ -0,0 +1,25 @@
<div class="margin-bottom-2x margin-top">
<input
type="text"
maxlength="64"
placeholder="{{translate 'Search'}}"
data-name="quick-search"
class="form-control"
spellcheck="false"
>
</div>
<ul class="list-group no-side-margin">
{{#each typeList}}
<li class="list-group-item" data-name="{{./this}}">
<a role="button" tabindex="0" data-action="addField" data-type="{{./this}}" class="text-bold">
{{translate this category='fieldTypes' scope='Admin'}}
</a>
<a role="button" tabindex="0" class="text-muted pull-right info" data-name="{{./this}}">
<span class="fas fa-info-circle"></span>
</a>
</li>
{{/each}}
</ul>
<div class="no-data hidden">{{translate 'No Data'}}</div>

View File

@@ -0,0 +1,6 @@
<div class="page-header"><h3><a href="#Admin">{{translate 'Administration'}}</a>
<span class="breadcrumb-separator"><span></span></span>
{{translate 'Formula Sandbox' scope='Admin'}}</h3></div>
<div class="record">{{{record}}}</div>

View File

@@ -0,0 +1,12 @@
<div class="complex-text margin-bottom-2x">{{{text}}}</div>
<ul class="list-group no-side-margin array-add-list-group">
{{#each functionDataList}}
<li class="list-group-item clearfix">
<button class="btn btn-default pull-right btn-sm btn-icon" data-action="add" data-value="{{insertText}}">
<span class="fas fa-plus"></span>
</button>
{{insertText}}
</li>
{{/each}}
</ul>

View File

@@ -0,0 +1,57 @@
<div class="page-header"><h3>{{translate 'Administration' scope='Admin'}}</h3></div>
<div class="admin-content">
<div class="row">
<div class="col-md-7">
<div class="admin-search-container">
<input
type="text"
maxlength="64"
placeholder="{{translate 'Search'}}"
data-name="quick-search"
class="form-control"
spellcheck="false"
>
</div>
<div class="admin-tables-container">
{{#each panelDataList}}
<div class="admin-content-section" data-index="{{@index}}">
<h4>{{label}}</h4>
<table class="table table-admin-panel" data-name="{{name}}">
{{#each itemList}}
<tr class="admin-content-row" data-index="{{@index}}">
<td>
<div>
{{#if iconClass}}
<span class="icon {{iconClass}}"></span>
{{/if}}
<a
{{#if url}}href="{{url}}"{{else}}role="button"{{/if}}
tabindex="0"
{{#if action}} data-action="{{action}}"{{/if}}
>{{label}}</a>
</div>
</td>
<td>{{translate description scope='Admin' category='descriptions'}}</td>
</tr>
{{/each}}
</table>
</div>
{{/each}}
<div class="no-data hidden">{{translate 'No Data'}}</div>
</div>
</div>
<div class="col-md-5 admin-right-column">
<div class="notifications-panel-container">{{{notificationsPanel}}}</div>
{{#unless iframeDisabled}}
<iframe
src="{{iframeUrl}}"
style="width: 100%; height: {{iframeHeight}}px"
frameborder="0"
webkitallowfullscreen mozallowfullscreen allowfullscreen
></iframe>
{{/unless}}
</div>
</div>
</div>

View File

@@ -0,0 +1,44 @@
<div class="button-container">
<div class="btn-group">
<button class="btn btn-primary btn-xs-wide" data-action="save">{{translate 'Save'}}</button>
<button class="btn btn-default btn-xs-wide" data-action="cancel">{{translate 'Cancel'}}</button>
</div>
</div>
<div class="row">
<div class="col-sm-6">
<div class="panel panel-default">
<div class="panel-body panel-body-form">
<div class="cell form-group" data-name="enabled">
<label
class="control-label"
data-name="enabled"
>{{translate 'enabled' scope='Integration' category='fields'}}</label>
<div class="field" data-name="enabled">{{{enabled}}}</div>
</div>
{{#each fieldDataList}}
<div
class="cell form-group"
data-name="{{name}}"
>
<label
class="control-label"
data-name="{{name}}"
>{{label}}</label>
<div
class="field"
data-name="{{name}}"
>{{{var name ../this}}}</div>
</div>
{{/each}}
</div>
</div>
</div>
<div class="col-sm-6">
{{#if helpText}}
<div class="well">
{{complexText helpText}}
</div>
{{/if}}
</div>
</div>

View File

@@ -0,0 +1,30 @@
<div class="page-header">
<h3>
<a href="#Admin">{{translate 'Administration'}}</a>
<span class="breadcrumb-separator"><span></span></span>
{{translate 'Integrations' scope='Admin'}}
</h3>
</div>
<div class="row">
<div id="integrations-menu" class="col-sm-3">
<ul class="list-group list-group-panel">
{{#each integrationDataList}}
<li
class="list-group-item"
><a
role="button"
tabindex="0"
class="integration-link {{#if active}} disabled text-muted {{/if}}"
data-name="{{name}}"
>{{{translate name scope='Integration' category='titles'}}}</a></li>
{{/each}}
</ul>
</div>
<div id="integration-panel" class="col-sm-9">
<h4 id="integration-header" style="margin-top: 0px;"></h4>
<div id="integration-content">
{{{content}}}
</div>
</div>
</div>

View File

@@ -0,0 +1,47 @@
<div class="button-container">
<div class="btn-group">
<button class="btn btn-primary btn-xs-wide" data-action="save">{{translate 'Save'}}</button>
<button class="btn btn-default btn-xs-wide" data-action="cancel">{{translate 'Cancel'}}</button>
</div>
</div>
<div class="row">
<div class="col-sm-6">
<div class="panel panel-default">
<div class="panel-body panel-body-form">
<div class="cell form-group" data-name="enabled">
<label
class="control-label"
data-name="enabled"
>{{translate 'enabled' scope='Integration' category='fields'}}</label>
<div class="field" data-name="enabled">{{{enabled}}}</div>
</div>
{{#each dataFieldList}}
<div class="cell form-group" data-name="{{./this}}">
<label
class="control-label"
data-name="{{./this}}"
>{{translate this scope='Integration' category='fields'}}</label>
<div class="field" data-name="{{./this}}">{{{var this ../this}}}</div>
</div>
{{/each}}
<div class="cell form-group" data-name="redirectUri">
<label
class="control-label"
data-name="redirectUri"
>{{translate 'redirectUri' scope='Integration' category='fields'}}</label>
<div class="field" data-name="redirectUri">
<input type="text" class="form-control" readonly value="{{redirectUri}}">
</div>
</div>
</div>
</div>
</div>
<div class="col-sm-6">
{{#if helpText}}
<div class="well">
{{{helpText}}}
</div>
{{/if}}
</div>
</div>

View File

@@ -0,0 +1,12 @@
{{#each categoryDataList}}
<div class="row" data-name="{{name}}">
<div class="cell col-md-5 form-group">
<div class="field detail-field-container">{{label}}</div>
</div>
<div class="cell col-md-7 form-group" data-name="{{name}}">
<div class="field">
<input type="input" class="form-control label-value" value="{{value}}" data-name="{{name}}">
</div>
</div>
</div>
{{/each}}

View File

@@ -0,0 +1,61 @@
<div class="page-header">
<h4>{{translate scope category='scopeNames'}}</h4>
</div>
{{#unless categoryList.length}}
{{translate 'No Data'}}
{{else}}
<div class="button-container">
<div class="btn-group">
<button class="btn btn-primary btn-xs-wide" data-action="save">{{translate 'Save'}}</button>
<button class="btn btn-default btn-xs-wide" data-action="cancel">{{translate 'Cancel'}}</button>
</div>
</div>
<div class="button-container negate-no-side-margin">
<input
type="text"
maxlength="64"
placeholder="{{translate 'Search'}}"
data-name="quick-search"
class="form-control"
spellcheck="false"
>
</div>
{{/unless}}
{{#each categoryList}}
<div class="panel panel-default category-panel" data-name="{{./this}}" style="overflow: hidden;">
<div class="panel-heading clearfix">
<div
class="pull-left"
style="
margin-right: 10px;
padding-top: calc((var(--panel-heading-height) - var(--panel-heading-font-size)) / 2 - 1px);
"
>
<a
role="button"
tabindex="0"
data-action="showCategory"
data-name="{{./this}}"
class="action"
><span class="fas fa-chevron-down"></span></a>
<a
role="button"
tabindex="0"
data-action="hideCategory"
data-name="{{./this}}"
class="hidden action"
><span class="fas fa-chevron-up"></span></a>
</div>
<h4 class="panel-title">
<span class="action" style="cursor: pointer;" data-action="toggleCategory" data-name="{{./this}}">
{{translate this}}
</span>
</h4>
</div>
<div class="panel-body hidden" data-name="{{./this}}">{{{var this ../this}}}</div>
</div>
{{/each}}
<div class="no-data hidden">{{translate 'No Data'}}</div>

View File

@@ -0,0 +1,45 @@
<div class="page-header"><h3><a href="#Admin">{{translate 'Administration'}}</a>
<span class="breadcrumb-separator"><span></span></span>
{{translate 'Label Manager' scope='Admin'}}</h3></div>
<div class="row">
<div class="col-sm-3">
<div class="panel panel-default">
<div class="panel-body">
<div class="cell">
<div class="field">
<select data-name="language" class="form-control">
{{#each languageList}}
<option
value="{{this}}"
{{#ifEqual this ../language}} selected{{/ifEqual}}
>{{translateOption this field='language'}}</option>
{{/each}}
</select>
</div>
</div>
</div>
</div>
<div class="panel panel-default">
<div class="panel-body">
<ul class="list-unstyled" style="overflow-x: hidden;">
{{#each scopeList}}
<li>
<button
class="btn btn-link"
data-name="{{./this}}"
data-action="selectScope"
>{{translate this category='scopeNames'}}</button>
</li>
{{/each}}
</ul>
</div>
</div>
</div>
<div class="col-sm-9">
<div class="language-record">
{{{record}}}
</div>
</div>
</div>

View File

@@ -0,0 +1,84 @@
<header data-name="{{name}}">
<a
role="button"
tabindex="0"
data-action="edit-panel-label"
class="edit-panel-label"
><i class="fas fa-pencil-alt fa-sm"></i></a>
<label
data-is-custom="{{#if isCustomLabel}}true{{/if}}"
data-label="{{label}}"
class="panel-label"
>{{labelTranslated}}</label>&nbsp;
<a
role="button"
tabindex="0"
style="float: right;"
data-action="removePanel"
class="remove-panel"
data-number="{{number}}"
><i class="fas fa-times"></i></a>
</header>
<ul class="rows">
{{#each rows}}
<li data-cell-count="{{./this.length}}">
<div class="row-actions clear-fix">
<a
role="button"
tabindex="0"
data-action="removeRow"
class="remove-row"
><i class="fas fa-times"></i></a>
<a
role="button"
tabindex="0"
data-action="plusCell"
class="add-cell"
><i class="fas fa-plus"></i></a>
</div>
<ul class="cells" data-cell-count="{{./this.length}}">
{{#each this}}
{{#if this}}
<li
class="cell"
data-name="{{name}}"
{{#if hasCustomLabel}}
data-custom-label="{{customLabel}}"
{{/if}}
data-no-label="{{noLabel}}"
title="{{label}}"
>
<div class="left" style="width: calc(100% - 14px);">{{label}}</div>
<div class="right" style="width: 14px;">
<a
role="button"
tabindex="0"
data-action="removeField"
class="remove-field"
><i class="fas fa-times"></i></a>
</div>
</li>
{{else}}
<li class="empty cell">
<div class="right" style="width: 14px;">
<a
role="button"
tabindex="0"
data-action="minusCell"
class="remove-field"
><i class="fas fa-minus"></i></a>
</div>
</li>
{{/if}}
{{/each}}
</ul>
</li>
{{/each}}
</ul>
<div>
<a
role="button"
tabindex="0"
data-action="addRow"
><i class="fas fa-plus"></i></a>
</div>

View File

@@ -0,0 +1,82 @@
<div class="button-container">
<div class="btn-group">
{{#each buttonList}}
{{button name label=label scope='Admin' style=style className='btn-xs-wide'}}
{{/each}}
</div>
</div>
<div id="layout" class="row">
<div class="col-md-8">
<div class="well enabled-well" tabindex="-1">
<header>{{translate 'Layout' scope='LayoutManager'}}</header>
<ul class="panels">
{{#each panelDataList}}
<li data-number="{{number}}" class="panel-layout" data-tab-break="{{tabBreak}}">
{{{var viewKey ../this}}}
</li>
{{/each}}
</ul>
<div><a role="button" tabindex="0" data-action="addPanel">{{translate 'Add Panel' scope='Admin'}}</a></div>
</div>
</div>
<div class="col-md-4">
<div class="well">
<header>{{translate 'Available Fields' scope='Admin'}}</header>
<ul class="disabled cells clearfix">
{{#each disabledFields}}
<li class="cell" data-name="{{./this}}" title="{{translate this scope=../scope category='fields'}}">
<div class="left" style="width: calc(100% - 14px);">
{{translate this scope=../scope category='fields'}}
</div>
<div class="right" style="width: 14px;">
<a
role="button"
tabindex="0"
data-action="removeField"
class="remove-field"
><i class="fas fa-times"></i></a>
</div>
</li>
{{/each}}
</ul>
</div>
</div>
</div>
<div id="layout-row-tpl" style="display: none;">
<li data-cell-count="{{columnCount}}">
<div class="row-actions clear-fix">
<a role="button" tabindex="0" data-action="removeRow" class="remove-row"><i class="fas fa-times"></i></a>
<a role="button" tabindex="0" data-action="plusCell" class="add-cell"><i class="fas fa-plus"></i></a>
</div>
<ul class="cells" data-cell-count="{{columnCount}}">
<% for (var i = 0; i < {{columnCount}}; i++) { %>
<li class="empty cell">
<div class="right" style="width: 14px;">
<a
role="button"
tabindex="0"
data-action="minusCell"
class="remove-field"
><i class="fas fa-minus"></i></a>
</div>
</li>
<% } %>
</ul>
</li>
</div>
<div id="empty-cell-tpl" style="display: none;">
<li class="empty cell disabled">
<div class="right" style="width: 14px;">
<a
role="button"
tabindex="0"
data-action="minusCell"
class="remove-field"
><i class="fas fa-minus"></i></a>
</div>
</li>
</div>

View File

@@ -0,0 +1,41 @@
<div class="page-header"><h3>{{{headerHtml}}}</h3></div>
<div class="row">
<div id="layouts-menu" class="col-sm-3">
<div class="panel-group panel-group-accordion" id="layout-accordion">
{{#each layoutScopeDataList}}
<div class="panel panel-default">
<div class="panel-heading">
<a
class="accordion-toggle{{#if ../em}} btn btn-link{{/if}}"
data-scope="{{scope}}" href="{{url}}"
>{{translate scope category='scopeNamesPlural'}}</a>
</div>
<div class="panel-collapse collapse{{#ifEqual scope ../scope}} in{{/ifEqual}}" data-scope="{{scope}}">
<div class="panel-body">
<ul class="list-unstyled" style="overflow-x: hidden;">
{{#each typeDataList}}
<li>
<a
class="layout-link btn btn-link"
data-type="{{type}}"
data-scope="{{../scope}}"
href="{{url}}"
>{{label}}</a>
</li>
{{/each}}
</ul>
</div>
</div>
</div>
{{/each}}
</div>
</div>
<div id="layouts-panel" class="col-sm-9">
<h4 id="layout-header" style="margin-top: 0px;"></h4>
<div id="layout-content" class="">
{{{content}}}
</div>
</div>
</div>

View File

@@ -0,0 +1,17 @@
{{#each attributeDataList}}
<div class="row">
<div
class="cell form-group {{#if isWide}}col-md-12{{else}}col-md-6{{/if}}"
data-name="{{name}}"
>
<label
class="control-label"
data-name="{{name}}"
>{{label}}</label>
<div
class="field"
data-name="{{name}}"
>{{{var viewKey ../this}}}</div>
</div>
</div>
{{/each}}

View File

@@ -0,0 +1,83 @@
<div class="button-container">
<div class="btn-group">
{{#each buttonList}}
{{button name label=label scope='Admin' style=style className='btn-xs-wide'}}
{{/each}}
</div>
</div>
<style>
ul.enabled {
li {
&[data-hidden="true"] {
.left {
color: var(--text-muted-color);
}
}
}
}
</style>
<div id="layout" class="row">
<div class="col-sm-5">
<div class="well enabled-well" tabindex="-1">
<header>{{translate 'Enabled' scope='Admin'}}</header>
<ul class="enabled connected">
{{#each layout}}
<li
class="cell"
draggable="true"
{{#each ../dataAttributeList}}data-{{toDom this}}="{{prop ../this this}}" {{/each}}
title="{{labelText}}"
>
<div class="left" style="width: calc(100% - var(--17px));">
<span>{{labelText}}</span>
</div>
{{#if ../editable}}
{{#unless notEditable}}
<div class="right" style="width: 17px;"><a
role="button"
tabindex="0"
data-action="editItem"
class="edit-field"
><i class="fas fa-pencil-alt fa-sm"></i></a></div>
{{/unless}}
{{/if}}
</li>
{{/each}}
</ul>
</div>
</div>
<div class="col-sm-5">
<div class="well">
<header>{{translate 'Disabled' scope='Admin'}}</header>
<ul class="disabled connected">
{{#each disabledFields}}
<li
class="cell"
draggable="true"
{{#each ../dataAttributeList}}data-{{toDom this}}="{{prop ../this this}}" {{/each}}
title="{{labelText}}"
>
<div class="left" style="width: calc(100% - var(--17px));">
<span>{{labelText}}</span>
</div>
{{#if ../editable}}
{{#unless notEditable}}
<div class="right" style="width: 17px;"><a
role="button"
tabindex="0"
data-action="editItem"
class="edit-field"
><i class="fas fa-pencil-alt fa-sm"></i></a></div>
{{/unless}}
{{/if}}
</li>
{{/each}}
</ul>
</div>
</div>
</div>

View File

@@ -0,0 +1,124 @@
<div class="page-header">
<h3>
<a href="#Admin">{{translate 'Administration'}}</a>
<span class="breadcrumb-separator"><span></span></span>
<a href="#Admin/entityManager">{{translate 'Entity Manager' scope='Admin'}}</a>
<span class="breadcrumb-separator"><span></span></span>
<a href="#Admin/entityManager/scope={{scope}}">{{translate scope category='scopeNames'}}</a>
<span class="breadcrumb-separator"><span></span></span>
{{translate 'Relationships' scope='EntityManager'}}
</h3>
</div>
<div class="button-container">
{{#if isCreatable}}
<button class="btn btn-default btn-wide" data-action="createLink">
<span class="fas fa-plus fa-sm"></span><span>{{translate 'Create Link' scope='Admin'}}</span>
</button>
{{/if}}
</div>
{{#if linkDataList.length}}
<div class="margin-bottom-2x margin-top">
<input
type="text"
maxlength="64"
placeholder="{{translate 'Search'}}"
data-name="quick-search"
class="form-control"
spellcheck="false"
>
</div>
{{/if}}
<table class="table table-panel table-hover">
{{#unless linkDataList.length}}
<tr>
<td>
{{translate 'No Data'}}
</td>
</tr>
{{else}}
<thead>
<tr>
<th style="width: 20%;">{{translate 'linkForeign' category='fields' scope='EntityManager'}}</th>
<th style="width: 20%;">
{{translate 'linkType' category='fields' scope='EntityManager'}}
</th>
<th style="width: 20%;">
{{translate 'link' category='fields' scope='EntityManager'}}
</th>
<th style="width: 20%;">
{{translate 'entityForeign' category='fields' scope='EntityManager'}}
</th>
<th style="width: 10%"></th>
</tr>
</thead>
{{/unless}}
{{#each linkDataList}}
<tr data-link="{{link}}" class="link-row">
<td style="">
<span title="{{translate linkForeign category='links' scope=entityForeign}}">
{{linkForeign}}
</span>
</td>
<td>
<span style="color: var(--gray-soft); font-weight: 600;">
{{translateOption type field='linkType' scope='EntityManager'}}
</span>
</td>
<td>
<span title="{{translate link category='links' scope=entity}}">
{{link}}
</span>
</td>
<td>
{{translate entityForeign category='scopeNames'}}
</td>
<td style="text-align: right">
{{#if hasDropdown}}
<div class="btn-group row-dropdown-group">
<button
class="btn btn-link btn-sm dropdown-toggle"
data-toggle="dropdown"
><span class="caret"></span></button>
<ul class="dropdown-menu pull-right">
{{#if isEditable}}
<li>
<a
role="button"
tabindex="0"
data-action="editLink"
data-link="{{link}}"
>{{translate 'Edit'}}</a>
</li>
{{/if}}
{{#if hasEditParams}}
<li>
<a
role="button"
tabindex="0"
data-action="editParams"
data-link="{{link}}"
>{{translate 'Parameters' scope='EntityManager'}}</a>
</li>
{{/if}}
{{#if isRemovable}}
<li>
<a
role="button"
tabindex="0"
data-action="removeLink"
data-link="{{link}}"
>{{translate 'Remove'}}</a>
</li>
{{/if}}
</ul>
</div>
{{/if}}
</td>
</tr>
{{/each}}
</table>
<div class="no-data hidden">{{translate 'No Data'}}</div>

View File

@@ -0,0 +1,147 @@
<div class="panel panel-default no-side-margin">
<div class="panel-body">
<div class="row">
<div class="cell form-group col-md-4" data-name="entity">
<label class="control-label" data-name="entity">{{translate 'entity' category='fields' scope='EntityManager'}}</label>
<div class="field" data-name="entity">
{{{entity}}}
</div>
</div>
<div class="cell form-group col-md-4" data-name="linkType">
<label class="control-label" data-name="linkType">{{translate 'linkType' category='fields' scope='EntityManager'}}</label>
<div class="field" data-name="linkType">
{{{linkType}}}
</div>
</div>
<div class="cell form-group col-md-4" data-name="entityForeign">
<label class="control-label" data-name="entityForeign">{{translate 'entityForeign' category='fields' scope='EntityManager'}}</label>
<div class="field" data-name="entityForeign">
{{{entityForeign}}}
</div>
</div>
</div>
<div class="row">
<div class="cell form-group col-md-4" data-name="linkForeign">
<label class="control-label" data-name="linkForeign">{{translate 'name' category='fields' scope='EntityManager'}}</label>
<div class="field" data-name="linkForeign">
{{{linkForeign}}}
</div>
</div>
<div class="cell form-group col-md-4" data-name="relationName">
{{#if relationName}}
<label class="control-label" data-name="relationName">{{translate 'relationName' category='fields' scope='EntityManager'}}</label>
<div class="field" data-name="relationName">
{{{relationName}}}
</div>
{{/if}}
</div>
<div class="cell form-group col-md-4" data-name="link">
<label class="control-label" data-name="link">{{translate 'name' category='fields' scope='EntityManager'}}</label>
<div class="field" data-name="link">
{{{link}}}
</div>
</div>
</div>
<div class="row">
<div class="cell form-group col-md-4" data-name="labelForeign">
<label class="control-label" data-name="labelForeign">{{translate 'label' category='fields' scope='EntityManager'}}</label>
<div class="field" data-name="labelForeign">
{{{labelForeign}}}
</div>
</div>
<div class="cell form-group col-md-4"></div>
<div class="cell form-group col-md-4" data-name="label">
<label class="control-label" data-name="label">{{translate 'label' category='fields' scope='EntityManager'}}</label>
<div class="field" data-name="label">
{{{label}}}
</div>
</div>
</div>
<div class="row">
<div class="cell form-group col-md-4" data-name="linkMultipleFieldForeign">
<label class="control-label" data-name="linkMultipleFieldForeign">{{translate 'linkMultipleField' category='fields' scope='EntityManager'}}</label>
<div class="field" data-name="linkMultipleFieldForeign">
{{{linkMultipleFieldForeign}}}
</div>
</div>
<div class="cell form-group col-md-4"></div>
<div class="cell form-group col-md-4" data-name="linkMultipleField">
<label class="control-label" data-name="linkMultipleField">{{translate 'linkMultipleField' category='fields' scope='EntityManager'}}</label>
<div class="field" data-name="linkMultipleField">
{{{linkMultipleField}}}
</div>
</div>
</div>
<div class="row">
<div class="cell form-group col-md-4" data-name="auditedForeign">
<label class="control-label" data-name="auditedForeign">{{translate 'audited' category='fields' scope='EntityManager'}}</label>
<div class="field" data-name="auditedForeign">
{{{auditedForeign}}}
</div>
</div>
<div class="cell form-group col-md-4"></div>
<div class="cell form-group col-md-4" data-name="audited">
<label class="control-label" data-name="audited">{{translate 'audited' category='fields' scope='EntityManager'}}</label>
<div class="field" data-name="audited">
{{{audited}}}
</div>
</div>
</div>
<div class="row">
<div class="cell form-group col-md-4" data-name="layoutForeign">
<label class="control-label" data-name="layoutForeign">{{translate 'layout' category='fields' scope='EntityManager'}}</label>
<div class="field" data-name="layoutForeign">
{{{layoutForeign}}}
</div>
</div>
<div class="cell form-group col-md-4"></div>
<div class="cell form-group col-md-4" data-name="layout">
<label class="control-label" data-name="layout">{{translate 'layout' category='fields' scope='EntityManager'}}</label>
<div class="field" data-name="layout">
{{{layout}}}
</div>
</div>
</div>
<div class="row">
<div class="cell form-group col-md-4" data-name="selectFilterForeign">
<label class="control-label" data-name="selectFilterForeign">{{translate 'selectFilter' category='fields' scope='EntityManager'}}</label>
<div class="field" data-name="selectFilterForeign">
{{{selectFilterForeign}}}
</div>
</div>
<div class="cell form-group col-md-4"></div>
<div class="cell form-group col-md-4" data-name="selectFilter">
<label class="control-label" data-name="selectFilter">{{translate 'selectFilter' category='fields' scope='EntityManager'}}</label>
<div class="field" data-name="selectFilter">
{{{selectFilter}}}
</div>
</div>
</div>
<div class="row">
<div class="cell form-group col-md-4"></div>
<div class="cell form-group col-md-4" data-name="parentEntityTypeList">
<label class="control-label" data-name="parentEntityTypeList">
{{translate 'parentEntityTypeList' category='fields' scope='EntityManager'}}
</label>
<div class="field" data-name="parentEntityTypeList">
{{{parentEntityTypeList}}}
</div>
</div>
</div>
<div class="row">
<div class="cell form-group col-md-4"></div>
<div class="cell form-group col-md-4" data-name="foreignLinkEntityTypeList">
<label class="control-label" data-name="foreignLinkEntityTypeList">
{{translate 'foreignLinkEntityTypeList' category='fields' scope='EntityManager'}}
</label>
<div class="field" data-name="foreignLinkEntityTypeList">
{{{foreignLinkEntityTypeList}}}
</div>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,15 @@
{{#if notificationList}}
<div class="panel panel-danger">
<div class="panel-body">
<div class="list-container">
<div class="list-group list list-expanded">
{{#each notificationList}}
<div data-id="{{id}}" class="list-group-item notification-item">
<div class="text-danger complex-text">{{complexText message}}</div>
</div>
{{/each}}
</div>
</div>
</div>
</div>
{{/if}}

View File

@@ -0,0 +1,3 @@
<h3><a href="#Admin">{{translate 'Administration'}}</a>
<span class="breadcrumb-separator"><span></span></span>
{{translate viewObject.options.label category='labels' scope='Admin'}}</h3>

View File

@@ -0,0 +1,112 @@
<div class="page-header"><h3><a href="#Admin">{{translate 'Administration'}}</a>
<span class="breadcrumb-separator"><span></span></span>
{{translate 'System Requirements' scope='Admin'}}</h3></div>
{{#if noAccess}}
<div class="panel panel-default">
<div class="panel-body">
{{translate 'error403' category='messages'}}
</div>
</div>
{{else}}
<div class="panel panel-default">
<table class="table table-striped table-no-overflow table-fixed">
<thead>
<tr>
<th><h5>{{translate 'PHP Settings' scope='Admin'}}</h5></th>
<th style="width: 24%"></th>
<th style="width: 24%"></th>
</tr>
</thead>
<tbody>
{{#each phpRequirementList}}
<tr class="list-row">
<td class="cell">
{{translate @key scope='Admin' category='systemRequirements'}}
</td>
<td class="cell">{{actual}}</td>
<td class="cell">
{{#if acceptable}} <span class="text-success">{{translate 'Success' scope='Admin'}}</span>
{{else}}
<span class="text-danger">{{translate 'Fail' scope='Admin'}}
{{#ifEqual type 'lib'}} ({{translate 'extension is missing' scope='Admin'}}) {{/ifEqual}}
{{#ifEqual type 'param'}} ({{required}} {{translate 'is recommended' scope='Admin'}}) {{/ifEqual}}
</span> {{/if}}
</td>
</tr>
{{/each}}
</tbody>
</table>
</div>
<div class="panel panel-default">
<table class="table table-striped table-no-overflow table-fixed">
<thead>
<tr>
<th><h5>{{translate 'Database Settings' scope='Admin'}}</h5></th>
<th style="width: 24%"></th>
<th style="width: 24%"></th>
</tr>
</thead>
<tbody>
{{#each databaseRequirementList}}
<tr class="">
<td class="cell">
{{translate @key scope='Admin' category='systemRequirements'}}
</td>
<td class="cell" style="width: 24%">{{actual}}</td>
<td class="cell" style="width: 24%">
{{#if acceptable}}
<span class="text-success">{{translate 'Success' scope='Admin'}}</span>
{{else}}
<span class="text-danger">{{translate 'Fail' scope='Admin'}}
{{#ifEqual type 'param'}} ({{required}} {{translate 'is recommended' scope='Admin'}}) {{/ifEqual}}
</span>
{{/if}}
</td>
</tr>
{{/each}}
</tbody>
</table>
</div>
<div class="panel panel-default">
<table class="table table-striped table-no-overflow table-fixed">
<thead>
<tr>
<th><h5>{{translate 'Permissions' scope='Admin'}}</h5></th>
<th style="width: 24%"></th>
<th style="width: 24%"></th>
</tr>
</thead>
<tbody>
{{#each permissionRequirementList}}
<tr>
<td class="cell">
{{translate @key scope='Admin' category='systemRequirements'}}
</td>
<td class="cell" style="width: 24%">{{translate type scope='Admin' category='systemRequirements'}}</td>
<td class="cell" style="width: 24%">
{{#if acceptable}}
<span class="text-success">{{translate 'Success' scope='Admin'}}</span>
{{else}}
<span class="text-danger">{{translate 'Fail' scope='Admin'}}</span>
{{/if}}
</td>
</tr>
{{/each}}
</tbody>
</table>
</div>
<div class="row">
<div class="col-md-12">
<div class="pull-right">
<a
target="_blank"
href="https://docs.espocrm.com/administration/server-configuration/"
><strong>{{translate 'Configuration Instructions' scope='Admin'}}</strong></a>
</div>
</div>
</div>
{{/if}}

View File

@@ -0,0 +1,29 @@
<div class="page-header">
<h4>{{{title}}}</h4>
</div>
<div class="button-container">
<div class="btn-group">
<button class="btn btn-primary btn-xs-wide" data-action="save">{{translate 'Save'}}</button>
<button class="btn btn-default btn-xs-wide" data-action="cancel">{{translate 'Cancel'}}</button>
<button class="btn btn-default btn-xs-wide" data-action="resetToDefault"
>{{translate 'Reset to Default' scope='Admin'}}</button>
</div>
</div>
<div class="panel panel-default">
<div class="panel-body panel-body-form">
{{#if hasSubject}}
<div class="row">
<div class="cell col-sm-12 form-group">
<div class="field subject-field">{{{subjectField}}}</div>
</div>
</div>
{{/if}}
<div class="row">
<div class="cell col-sm-12 form-group">
<div class="field body-field">{{{bodyField}}}</div>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,23 @@
<div class="page-header"><h3><a href="#Admin">{{translate 'Administration'}}</a>
<span class="breadcrumb-separator"><span></span></span>
{{translate 'Template Manager' scope='Admin'}}</h3></div>
<div class="row">
<div class="col-sm-3">
<div class="panel panel-default">
<div class="panel-body">
<ul class="list-unstyled" style="overflow-x: hidden;">
{{#each templateDataList}}
<li>
<button class="btn btn-link" data-name="{{name}}" data-action="selectTemplate">{{{text}}}</button>
</li>
{{/each}}
</ul>
</div>
</div>
</div>
<div class="col-sm-9">
<div class="template-record">{{{record}}}</div>
</div>
</div>

View File

@@ -0,0 +1,4 @@
<p class="text-success">
{{complexText text inline=true}}
</p>

View File

@@ -0,0 +1,40 @@
<div class="page-header"><h3><a href="#Admin">{{translate 'Administration'}}</a>
<span class="breadcrumb-separator"><span></span></span>
{{translate 'Upgrade' scope='Admin'}}</h3></div>
<div class="row">
<div class="col-md-8">
<div class="panel panel-danger notify">
<div class="panel-body">
<p class="notify-text">
{{versionMsg}}
<br><br>
{{complexText infoMsg inline=true}}
<br><br>
{{backupsMsg}}
</p>
</div>
</div>
<div class="panel panel-default upload">
<div class="panel-heading">
<h4 class="panel-title">{{translate 'selectUpgradePackage' scope='Admin' category="messages"}}</h4>
</div>
<div class="panel-body">
<p class="text-danger" style="font-weight: 600;">{{{upgradeRecommendation}}}</p>
<p class="">
{{complexText downloadMsg inline=true}}
</p>
<div>
<input type="file" name="package" accept="application/zip">
</div>
<div class="message-container text-danger" style="height: 20px; margin-bottom: 10px; margin-top: 10px;"></div>
<div class="buttons-container">
<button class="btn btn-primary disabled" disabled="disabled" data-action="upload">{{translate 'Upload' scope='Admin'}}</button>
</div>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,4 @@
<p class="text-danger">
{{complexText text inline=true}}
</p>