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,24 @@
<div class="page-header">
<h3>{{translate 'About'}}</h3>
</div>
<div class="row">
<div class="col-md-8">
<div class="panel panel-default">
<div class="panel-body">
<p>
<span class="text-bold text-soft">Version {{version}}</span>
</p>
</div>
</div>
<div class="panel panel-default">
<div class="panel-body">
<div class="complex-text">
{{text}}
</div>
</div>
</div>
</div>
</div>

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>

View File

@@ -0,0 +1,2 @@
<span class="fas fa-paperclip small"></span> <a href="{{url}}" target="_blank">{{value}}</a>

View File

@@ -0,0 +1,22 @@
<div class="row">
<div class="col-md-6 col-sm-offset-2">
<div class="panel">
<div class="panel-body">
{{#if cacheIsEnabled}}
<button class="btn btn-default action" data-action="clearLocalCache">{{translate 'Clear Local Cache'}}</button>
{{else}}
<div style="margin-bottom: 10px;">
<span class="text-danger">
{{translate 'Cache is not enabled'}}
</span>
</div>
{{/if}}
<div class="hidden message-container margin-bottom"><span class="text-success"></span></div>
<div>
<button class="btn btn-default action {{#if cacheIsEnabled}}hidden{{/if}}" data-action="returnToApplication">{{translate 'Return to Application'}}</button>
</div>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,47 @@
<div class="page-header dashboard-header">
<div class="row">
<div class="col-sm-4">
{{#if displayTitle}}
<h3>{{translate 'Dashboard' category='scopeNames'}}</h3>
{{/if}}
</div>
<div class="col-sm-8 clearfix">
{{#unless layoutReadOnly}}
<div class="btn-group pull-right dashboard-buttons">
<button
class="btn btn-text btn-icon dropdown-toggle"
data-toggle="dropdown"
><span class="fas fa-ellipsis-h"></span></button>
<ul class="dropdown-menu pull-right dropdown-menu-with-icons">
<li>
<a role="button" tabindex="0" data-action="editTabs">
<span class="fas fa-pencil-alt fa-sm"></span>
<span class="item-text">{{translate 'Edit Dashboard'}}</span>
</a>
</li>
{{#if hasAdd}}
<li>
<a role="button" tabindex="0" data-action="addDashlet">
<span class="fas fa-plus"></span>
<span class="item-text">{{translate 'Add Dashlet'}}</span>
</a>
</li>
{{/if}}
</ul>
</div>
{{/unless}}
{{#ifNotEqual dashboardLayout.length 1}}
<div class="btn-group pull-right dashboard-tabs">
{{#each dashboardLayout}}
<button
class="btn btn-text{{#ifEqual @index ../currentTab}} active{{/ifEqual}}"
data-action="selectTab"
data-tab="{{@index}}"
>{{name}}</button>
{{/each}}
</div>
{{/ifNotEqual}}
</div>
</div>
</div>
<div class="dashlets grid-stack grid-stack-12">{{{dashlets}}}</div>

View File

@@ -0,0 +1,59 @@
<div
id="dashlet-{{id}}"
class="panel panel-default headered dashlet{{#if isDoubleHeight}} double-height{{/if}}"
data-name="{{name}}"
data-id="{{id}}"
>
<div class="panel-heading">
<div class="btn-group pull-right">
{{#each buttonList}}
<button
type="button"
class="btn btn-{{#if ../style}}{{../style}}{{else}}default{{/if}} dashlet-action btn-sm action{{#if hidden}} hidden{{/if}}"
data-action="{{name}}"
data-name="{{name}}"
title="{{#if title}}{{translate title}}{{/if}}"
>{{#if html}}{{{html}}}{{else}}{{#if text}}{{text}}{{else}}{{translate label}}{{/if}}{{/if}}</button>
{{/each}}
<button
class="dropdown-toggle btn btn-{{#if ../style}}{{../style}}{{else}}default{{/if}} btn-sm menu-button"
data-toggle="dropdown"
><span class="fas fa-ellipsis-h"></span></button>
<ul class="dropdown-menu dropdown-menu-with-icons" role="menu">
{{#each actionList}}
{{#if this}}
<li>
<a
data-action="{{name}}"
data-name="{{name}}"
class="action dashlet-action"
{{#if url}}href="{{url}}"{{else}}role="button"{{/if}}
tabindex="0"
{{#each data}} data-{{hyphen @key}}="{{./this}}"{{/each}}
>
{{#if iconHtml}}{{{iconHtml}}}
{{else}}
<span class="empty-icon">&nbsp;</span>
{{/if}}
<span class="item-text">{{#if html}}{{{html}}}{{else}}{{#if text}}{{text}}{{else}}{{translate label}}{{/if}}{{/if}}</span>
</a>
</li>
{{else}}
<li class="divider"></li>
{{/if}}
{{/each}}
</ul>
</div>
<h4 class="panel-title">
<span
data-action="refresh"
class="action"
title="{{translate 'Refresh'}}"
>
{{~#if color}}<span class="color-icon fas fa-square" style="color: {{color}}"></span><span>&nbsp;</span>{{/if~}}
{{~#if title}}{{title}}{{else}}&nbsp;{{/if~}}
</span>
</h4>
</div>
<div class="dashlet-body panel-body{{#if noPadding}} no-padding{{/if}}">{{{body}}}</div>
</div>

View File

@@ -0,0 +1,7 @@
<div class="no-side-margin">
<form id="dashlet-options">
<div class="middle record no-side-margin">{{{record}}}</div>
</form>
</div>

View File

@@ -0,0 +1,6 @@
<div class="header page-header">{{{header}}}</div>
{{#if modes}}
<div class="modes">{{{modes}}}</div>
{{/if}}
<div class="record">{{{record}}}</div>
<div class="bottom">{{{bottom}}}</div>

View File

@@ -0,0 +1,2 @@
<div class="header page-header">{{{header}}}</div>
<div class="record">{{{record}}}</div>

View File

@@ -0,0 +1,6 @@
<div class="input-group">
<input class="main-element form-control" type="text" data-name="{{name}}" value="{{value}}" autocomplete="espo-{{name}}">
<span class="input-group-btn">
<button data-action="selectFolder" class="btn btn-default" type="button" tabindex="-1"><i class="fas fa-angle-up"></i></button>
</span>
</div>

View File

@@ -0,0 +1,12 @@
{{#unless folders}}
{{translate 'No Data'}}
{{/unless}}
<ul class="list-group no-side-margin array-add-list-group">
{{#each folders}}
<li class="list-group-item">
<a role="button" data-value="{{./this}}" data-action="select" class="text-bold">
{{./this}}
</a>
</li>
{{/each}}
</ul>

View File

@@ -0,0 +1,33 @@
<ul class="list-group list-group-side list-group-no-border folder-list">
<li
data-id="all"
class="list-group-item{{#ifEqual 'all' selectedFolderId}} selected{{/ifEqual}} droppable"
>
<a
href="#Email/list/folder=all"
data-action="selectFolder"
data-id="all"
class="side-link"
><span class="item-icon-container"><span class="far fa-hdd"></span></span><span>{{translate 'all' category='presetFilters' scope='Email'}}</span></a>
</li>
{{#each collection.models}}
<li
data-id="{{get this 'id'}}"
class="list-group-item {{#ifAttrEquals this 'id' ../selectedFolderId}} selected {{/ifAttrEquals}}{{#if droppable}} droppable {{/if}}{{#if groupStart}} group-start {{/if}}"
>
<a
href="#Email/list/folder={{get this 'id'}}"
data-action="selectFolder"
data-id="{{get this 'id'}}"
class="side-link pull-right count"
></a>
<a
href="#Email/list/folder={{get this 'id'}}"
data-action="selectFolder"
data-id="{{get this 'id'}}"
class="side-link"
{{#if title}}title="{{title}}"{{/if}}
><span class="item-icon-container"><span class="{{iconClass}}"></span></span><span>{{get this 'name'}}</span></a>
</li>
{{/each}}
</ul>

View File

@@ -0,0 +1,14 @@
<ul class="list-group no-side-margin">
{{#each folderDataList}}
<li data-id="{{id}}" class="list-group-item">
<a
role="button"
tabindex="0"
data-action="selectFolder"
data-id="{{id}}"
data-name="{{name}}"
class="side-link text-bold {{#if disabled}} disabled text-muted {{/if}}"
><span class="item-icon-container"><span class="{{iconClass}}"></span></span><span class="text-default">{{name}}</span></a>
</li>
{{/each}}
</ul>

View File

@@ -0,0 +1,11 @@
<div class="row">
<div class="col-sm-4 col-xs-6">
<select class="form-control" data-name="entityType"></select>
</div>
<div class="col-sm-6 col-xs-6">
<select class="form-control" data-name="field"></select>
</div>
<div class="col-sm-2 col-xs-6">
<button class="btn btn-default" type="button" data-action="insert">{{translate 'Insert'}}</button>
</div>
</div>

View File

@@ -0,0 +1,9 @@
{{#if list.length}}
<select data-name="{{name}}" class="form-control main-element">
{{#each list}}
<option value="{{./this}}"{{#ifEqual ../value this}} selected{{/ifEqual}}>{{./this}}</option>
{{/each}}
</select>
{{else}}
{{{noSmtpMessage}}}
{{/if}}

View File

@@ -0,0 +1 @@
<button class="btn btn-default" data-action="createEvent">{{translate 'Create Meeting' scope='Meeting'}}</button>

View File

@@ -0,0 +1,6 @@
{{#if value}}
{{{value}}}
{{else}}
{{#if valueIsSet}}<span class="none-value">{{translate 'None'}}</span>
{{else}}<span class="loading-value"></span>{{/if}}
{{/if}}

View File

@@ -0,0 +1,30 @@
<div class="link-container list-group"></div>
{{#if hasSelectAddress}}
<div class="input-group">
<input
class="form-control"
type="email"
autocomplete="espo-{{name}}"
spellcheck="false"
maxlength="{{maxLength}}"
>
<div class="input-group-btn">
<button
data-action="selectAddress"
class="btn btn-default btn-icon"
type="button"
tabindex="-1"
title="{{translate 'Select'}}"
><i class="fas fa-angle-up"></i></button>
</div>
</div>
{{else}}
<input
class="form-control"
type="email"
autocomplete="espo-{{name}}"
spellcheck="false"
maxlength="{{maxLength}}"
title="{{translate 'Select'}}"
>
{{/if}}

View File

@@ -0,0 +1 @@
{{nameValue}}

View File

@@ -0,0 +1,11 @@
{{#if value~}}
<a
role="button"
tabindex="0"
data-action="show"
class="text-soft"
><span
class="fas fa-paperclip{{#if isSmall}} small{{/if}}"
title="{{translate 'View Attachments' scope='Email'}}"
></span></a>
{{~/if~}}

View File

@@ -0,0 +1 @@
<span class="fas fa-envelope action text-muted" data-action="quickView" data-id="{{model.id}}" style="cursor: pointer; margin-left: -7px; top: 2px;" title="{{translate 'View'}}"></span>

View File

@@ -0,0 +1,7 @@
<span title="{{value}}">{{value}}</span>
<span class="list-icon-container"{{#unless isReplied}} style="display: none;"{{/unless}}>
<span
class="fas icon-is-replied fa-sm text-muted icon-flip-horizontal"
title="{{translate 'isReplied' category='fields' scope='Email'}}"
></span>
</span>

View File

@@ -0,0 +1,4 @@
<span class="list-icon-container pull-right"{{#unless isReplied}} style="visibility: hidden;"{{/unless}}>
<span class="fas icon-is-replied fa-sm text-muted icon-flip-horizontal" title="{{translate 'isReplied' category='fields' scope='Email'}}"></span>
</span>
<span title="{{value}}">{{value}}</span>

View File

@@ -0,0 +1,20 @@
<div class="input-group">
<input
class="main-element form-control"
type="text"
data-name="{{nameName}}"
value="{{nameValue}}"
autocomplete="espo-{{name}}"
spellcheck="false"
>
<span class="input-group-btn">
<button
data-action="selectLink"
class="btn btn-default btn-icon"
type="button"
tabindex="-1"
title="{{translate 'Select'}}"
><i class="fas fa-angle-up"></i></button>
</span>
</div>
<input type="hidden" data-name="{{idName}}" value="{{idValue}}">

View File

@@ -0,0 +1,31 @@
<span>
<span>
<a
href="#{{scope}}/view/{{model.id}}"
class="link {{#if style}}text-{{style}}{{/if}} {{#unless isRead}} text-bold {{/unless}}"
data-id="{{model.id}}"
title="{{value}}"
>{{value}}</a>
</span>
{{#if hasIcon}}
<span class="list-icon-container" data-icon-count="{{iconCount}}">
{{#if hasAttachment}}
<a
role="button"
tabindex="0"
data-action="showAttachments"
class="text-muted"
><span
class="fas fa-paperclip small"
title="{{translate 'hasAttachment' category='fields' scope='Email'}}"
></span></a>
{{/if}}
{{#if isAutoReply}}
<span
class="fas fas fa-robot small text-muted"
title="{{translate 'isAutoReply' category='fields' scope='Email'}}"
></span>
{{/if}}
</span>
{{/if}}
</span>

View File

@@ -0,0 +1,11 @@
<div class="page-header">{{{header}}}</div>
<div class="search-container">{{{search}}}</div>
<div class="row">
{{#unless foldersDisabled}}
<div class="left-container{{#unless foldersDisabled}} col-md-2 col-sm-3{{else}} col-md-12{{/unless}}">
<div class="folders-container">{{{folders}}}</div>
</div>
{{/unless}}
<div class="list-container{{#unless foldersDisabled}} col-md-10 col-sm-9{{else}} col-md-12{{/unless}}">{{{list}}}</div>
</div>

View File

@@ -0,0 +1,8 @@
<div class="container">
<div class="panel panel-default block-center-md margin-top-2x">
<div class="panel-body">
<h1 class="text-5em text-soft margin-bottom-4x">403</h1>
<p class="text-large">{{translate 'error403' category='messages'}}</p>
</div>
</div>
</div>

View File

@@ -0,0 +1,8 @@
<div class="container">
<div class="panel panel-default block-center-md margin-top-2x">
<div class="panel-body">
<h1 class="text-5em text-soft margin-bottom-4x">404</h1>
<p class="text-large">{{translate 'error404' category='messages'}}</p>
</div>
</div>
</div>

View File

@@ -0,0 +1,7 @@
<a
href="#{{model.entityType}}/view/{{model.id}}"
class="link"
data-id="{{model.id}}"
title="{{value}}"
{{#if strikethrough}}style="text-decoration: line-through;"{{/if}}
>{{#if value}}{{value}}{{else}}{{translate 'None'}}{{/if}}</a>

View File

@@ -0,0 +1 @@
<div class="record no-side-margin">{{{record}}}</div>

View File

@@ -0,0 +1,7 @@
<div class="record no-side-margin">{{{record}}}</div>
<div class="well info-text">{{complexText infoText}}</div>
<div class="margin-top download-container hidden">
<button type="button" class="btn btn-default download-button" data-action="download">{{translate 'Download'}}</button>
</div>

View File

@@ -0,0 +1,26 @@
<div class="page-header"><h3>{{translate 'ExternalAccount' category='scopeNamesPlural'}}</h3></div>
<div class="row">
<div id="external-account-menu" class="col-sm-3">
<ul class="list-group list-group-panel{{#unless externalAccountListCount}} hidden{{/unless}}">
{{#each externalAccountList}}
<li class="list-group-item"><a
role="button"
tabindex="0"
class="external-account-link"
data-id="{{id}}"
>{{id}}</a></li>
{{/each}}
</ul>
{{#unless externalAccountListCount}}
{{translate 'No Data'}}
{{/unless}}
</div>
<div id="external-account-panel" class="col-sm-9">
<h4 id="external-account-header" style="margin-top: 0px;"></h4>
<div id="external-account-content">
{{{content}}}
</div>
</div>
</div>

View File

@@ -0,0 +1,37 @@
<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>
<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>
</div>
<div class="data-panel">
<button
type="button"
class="btn btn-danger {{#if isConnected}}hidden{{/if}}"
data-action="connect"
>{{translate 'Connect' scope='ExternalAccount'}}</button>
<span
class="connected-label label label-success {{#unless isConnected}}hidden{{/unless}}"
>{{translate 'Connected' scope='ExternalAccount'}}</span>
</div>
</div>
<div class="col-sm-6">
{{#if helpText}}
<div class="well">
{{{helpText}}}
</div>
{{/if}}
</div>
</div>

View File

@@ -0,0 +1,20 @@
{{#if formattedAddress}}
{{breaklines formattedAddress}}
{{/if}}
{{#if isNone}}
<span class="none-value">{{translate 'None'}}</span>
{{/if}}
{{#if isLoading}}
<span class="loading-value"></span>
{{/if}}
{{#if viewMap}}
<div><a
href="{{viewMapLink}}"
data-action="viewMap"
class="small"
style="user-select: none;"
>{{translate 'View on Map'}}</a></div>
{{/if}}

View File

@@ -0,0 +1,20 @@
<textarea
class="form-control auto-height"
data-name="{{name}}Street"
rows="1" placeholder="{{translate 'Street'}}"
autocomplete="espo-street"
maxlength="{{streetMaxLength}}"
style="resize: none;"
>{{streetValue}}</textarea>
<div class="row">
<div class="col-sm-4 col-xs-4">
<input type="text" class="form-control" data-name="{{name}}City" value="{{cityValue}}" placeholder="{{translate 'City'}}" autocomplete="espo-city" maxlength="{{cityMaxLength}}">
</div>
<div class="col-sm-4 col-xs-4">
<input type="text" class="form-control" data-name="{{name}}State" value="{{stateValue}}" placeholder="{{translate 'State'}}" autocomplete="espo-state" maxlength="{{stateMaxLength}}">
</div>
<div class="col-sm-4 col-xs-4">
<input type="text" class="form-control" data-name="{{name}}PostalCode" value="{{postalCodeValue}}" placeholder="{{translate 'PostalCode'}}" autocomplete="espo-postalCode" maxlength="{{postalCodeMaxLength}}" spellcheck="false">
</div>
</div>
<input type="text" class="form-control" data-name="{{name}}Country" value="{{countryValue}}" placeholder="{{translate 'Country'}}" autocomplete="espo-country" maxlength="{{countryMaxLength}}">

View File

@@ -0,0 +1,24 @@
<textarea
class="form-control auto-height"
data-name="{{name}}Street"
rows="1" placeholder="{{translate 'Street'}}"
autocomplete="espo-street"
maxlength="{{streetMaxLength}}"
style="resize: none;"
>{{streetValue}}</textarea>
<div class="row">
<div class="col-sm-6 col-xs-6">
<input type="text" class="form-control" data-name="{{name}}PostalCode" value="{{postalCodeValue}}" placeholder="{{translate 'PostalCode'}}" autocomplete="espo-postalCode" maxlength="{{postalCodeMaxLength}}" spellcheck="false">
</div>
<div class="col-sm-6 col-xs-6">
<input type="text" class="form-control" data-name="{{name}}City" value="{{cityValue}}" placeholder="{{translate 'City'}}" autocomplete="espo-city" maxlength="{{cityMaxLength}}">
</div>
</div>
<div class="row">
<div class="col-sm-6 col-xs-6">
<input type="text" class="form-control" data-name="{{name}}State" value="{{stateValue}}" placeholder="{{translate 'State'}}" autocomplete="espo-state" maxlength="{{stateMaxLength}}">
</div>
<div class="col-sm-6 col-xs-6">
<input type="text" class="form-control" data-name="{{name}}Country" value="{{countryValue}}" placeholder="{{translate 'Country'}}" autocomplete="espo-country" maxlength="{{countryMaxLength}}">
</div>
</div>

View File

@@ -0,0 +1,20 @@
<input type="text" class="form-control auto-height" data-name="{{name}}Country" value="{{countryValue}}" placeholder="{{translate 'Country'}}" autocomplete="espo-country" maxlength="{{countryMaxLength}}">
<div class="row">
<div class="col-sm-4 col-xs-4">
<input type="text" class="form-control" data-name="{{name}}PostalCode" value="{{postalCodeValue}}" placeholder="{{translate 'PostalCode'}}" autocomplete="espo-postalCode" maxlength="{{postalCodeMaxLength}}" spellcheck="false">
</div>
<div class="col-sm-4 col-xs-4">
<input type="text" class="form-control" data-name="{{name}}State" value="{{stateValue}}" placeholder="{{translate 'State'}}" autocomplete="espo-state" maxlength="{{stateMaxLength}}">
</div>
<div class="col-sm-4 col-xs-4">
<input type="text" class="form-control" data-name="{{name}}City" value="{{cityValue}}" placeholder="{{translate 'City'}}" autocomplete="espo-city" maxlength="{{cityMaxLength}}">
</div>
</div>
<textarea
class="form-control auto-height"
data-name="{{name}}Street"
rows="1" placeholder="{{translate 'Street'}}"
autocomplete="espo-street"
maxlength="{{streetMaxLength}}"
style="resize: none;"
>{{streetValue}}</textarea>

View File

@@ -0,0 +1,20 @@
<textarea
class="form-control auto-height"
data-name="{{name}}Street"
rows="1" placeholder="{{translate 'Street'}}"
autocomplete="espo-street"
maxlength="{{streetMaxLength}}"
style="resize: none;"
>{{streetValue}}</textarea>
<input type="text" class="form-control" data-name="{{name}}City" value="{{cityValue}}" placeholder="{{translate 'City'}}" autocomplete="espo-city" maxlength="{{cityMaxLength}}">
<div class="row">
<div class="col-sm-5 col-xs-5">
<input type="text" class="form-control" data-name="{{name}}Country" value="{{countryValue}}" placeholder="{{translate 'Country'}}" autocomplete="espo-country" maxlength="{{countryMaxLength}}">
</div>
<div class="col-sm-3 col-xs-3">
<input type="text" class="form-control" data-name="{{name}}State" value="{{stateValue}}" placeholder="{{translate 'State'}}" autocomplete="espo-state" maxlength="{{stateMaxLength}}">
</div>
<div class="col-sm-4 col-xs-4">
<input type="text" class="form-control" data-name="{{name}}PostalCode" value="{{postalCodeValue}}" placeholder="{{translate 'PostalCode'}}" autocomplete="espo-postalCode" maxlength="{{postalCodeMaxLength}}" spellcheck="false">
</div>
</div>

View File

@@ -0,0 +1,20 @@
<textarea
class="form-control auto-height"
data-name="{{name}}Street"
rows="1" placeholder="{{translate 'Street'}}"
autocomplete="espo-street"
maxlength="{{streetMaxLength}}"
style="resize: none;"
>{{streetValue}}</textarea>
<div class="row">
<div class="col-sm-4 col-xs-4">
<input type="text" class="form-control" data-name="{{name}}City" value="{{cityValue}}" placeholder="{{translate 'City'}}" autocomplete="espo-city" maxlength="{{cityMaxLength}}">
</div>
<div class="col-sm-4 col-xs-4">
<input type="text" class="form-control" data-name="{{name}}State" value="{{stateValue}}" placeholder="{{translate 'State'}}" autocomplete="espo-state" maxlength="{{stateMaxLength}}">
</div>
<div class="col-sm-4 col-xs-4">
<input type="text" class="form-control" data-name="{{name}}PostalCode" value="{{postalCodeValue}}" placeholder="{{translate 'PostalCode'}}" autocomplete="espo-postalCode" maxlength="{{postalCodeMaxLength}}" spellcheck="false">
</div>
</div>
<input type="text" class="form-control" data-name="{{name}}Country" value="{{countryValue}}" placeholder="{{translate 'Country'}}" autocomplete="espo-country" maxlength="{{countryMaxLength}}">

View File

@@ -0,0 +1,7 @@
{{#if formattedAddress}}
<a
href="#{{scope}}/view/{{model.id}}"
class="link"
data-id="{{model.id}}"
>{{breaklines formattedAddress}}</a>
{{/if}}

View File

@@ -0,0 +1,2 @@
<input type="text" class="main-element form-control input-sm" data-name="{{name}}" value="{{searchData.value}}" {{#if params.maxLength}} maxlength="{{params.maxLength}}"{{/if}}{{#if params.size}} size="{{params.size}}"{{/if}} autocomplete="espo-{{name}}">

View File

@@ -0,0 +1,3 @@
{{#unless isEmpty}}{{{value}}}{{else}}
{{#if valueIsSet}}<span class="none-value">{{translate 'None'}}</span>{{else}}<span class="loading-value"></span>{{/if}}
{{/unless}}

View File

@@ -0,0 +1,32 @@
<div
class="link-container list-group{{#if keepItems}} no-input{{/if}}"
>{{#each itemHtmlList}}{{{./this}}}{{/each}}</div>
<div class="array-control-container">
{{#if hasAdd}}
<button
class="btn btn-default btn-block"
type="button"
data-action="showAddModal"
>{{translate 'Add'}}</button>
{{/if}}
{{#if allowCustomOptions}}
<div class="input-group">
<input
class="main-element form-control select"
type="text"
autocomplete="espo-{{name}}"
placeholder="{{#if this.options}}{{translate 'Select'}}{{else}}{{translate 'typeAndPressEnter' category='messages'}}{{/if}}"
{{#if maxItemLength}} maxlength="{{maxItemLength}}"{{/if}}
>
<span class="input-group-btn">
<button
data-action="addItem"
class="btn btn-default btn-icon"
type="button"
tabindex="-1"
title="{{translate 'Add Item'}}"
><span class="fas fa-plus"></span></button>
</span>
</div>
{{/if}}
</div>

View File

@@ -0,0 +1,6 @@
<a
href="#{{scope}}/view/{{model.id}}"
class="link"
data-id="{{model.id}}"
title="{{value}}"
>{{#if value}}{{{value}}}{{else}}{{translate 'None'}}{{/if}}</a>

View File

@@ -0,0 +1 @@
{{#unless isEmpty}}{{{value}}}{{/unless}}

View File

@@ -0,0 +1,7 @@
<select class="form-control search-type input-sm">
{{options searchTypeList searchType field='searchRanges'}}
</select>
<div class="input-container">
<input class="main-element" type="text" autocomplete="espo-off">
</div>

View File

@@ -0,0 +1,9 @@
{{#if value}}
{{{value}}}
{{else}}
{{#if valueIsSet}}
<span class="none-value">{{translate 'None'}}</span>
{{else}}
<span class="loading-value"></span>
{{/if}}
{{/if}}

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