text usage

This commit is contained in:
Yuri Kuznetsov
2022-08-16 18:07:18 +03:00
parent 9691f62ac3
commit 71dd03c914
26 changed files with 91 additions and 65 deletions
+1 -1
View File
@@ -32,7 +32,7 @@
{{else}}
<span class="empty-icon">&nbsp;</span>
{{/if}}
<span class="item-text">{{#if html}}{{{html}}}{{else}}{{translate label}}{{/if}}</span>
<span class="item-text">{{#if html}}{{{html}}}{{else}}{{#if text}}{{text}}{{else}}{{translate label}}{{/if}}{{/if}}</span>
</a>
</li>
{{/each}}
+7 -5
View File
@@ -11,11 +11,11 @@
class="btn btn-{{#if style}}{{style}}{{else}}default{{/if}} btn-xs-wide action{{#if hidden}} hidden{{/if}}{{#if className}} {{className}}{{/if}}"
data-name="{{name}}"
data-action="{{action}}"
{{#each data}} data-{{@key}}="{{./this}}"{{/each}}{{#if title}}
title="{{title}}"{{/if}}
{{#each data}} data-{{@key}}="{{./this}}"{{/each}}
{{#if title}}title="{{title}}"{{/if}}
>
{{#if iconHtml}}{{{iconHtml}}}{{/if}}
{{#if html}}{{{html}}}{{else}}{{translate label scope=../scope}}{{/if}}
{{#if html}}{{{html}}}{{else}}{{#if text}}{{text}}{{else}}{{translate label scope=../scope}}{{/if}}{{/if}}
</a>
{{/each}}
@@ -34,7 +34,9 @@
data-name="{{name}}"
data-action="{{action}}"
{{#each data}} data-{{@key}}="{{./this}}"{{/each}}
>{{#if html}}{{{html}}}{{else}}{{translate label scope=../scope}}{{/if}}</a></li>
{{#if title}}title="{{title}}"{{/if}}
>{{#if iconHtml}}{{{iconHtml}}}{{/if}}
{{#if html}}{{{html}}}{{else}}{{#if text}}{{text}}{{else}}{{translate label scope=../scope}}{{/if}}{{/if}}</a></li>
{{/each}}
</ul>
</div>
@@ -62,7 +64,7 @@
{{#each data}} data-{{@key}}="{{./this}}"{{/each}}
>
{{#if iconHtml}}{{{iconHtml}}} {{/if}}
{{#if html}}{{{html}}}{{else}}{{translate label scope=../scope}}{{/if}}</a></li>
{{#if html}}{{{html}}}{{else}}{{#if text}}{{text}}{{else}}{{translate label scope=../scope}}{{/if}}{{/if}}</a></li>
{{else}}
{{#unless @first}}
{{#unless @last}}
+4 -2
View File
@@ -10,6 +10,7 @@
hidden=hidden
html=html
title=title
text=text
className='btn-xs-wide'
disabled=disabled
}}
@@ -32,7 +33,7 @@
data-action="{{name}}"
{{#if title}}title="{{title}}"{{/if}}
{{#each data}} data-{{@key}}="{{./this}}"{{/each}}
>{{#if html}}{{{html}}}{{else}}{{translate label scope=../entityType}}{{/if}}</a></li>
>{{#if html}}{{{html}}}{{else}}{{#if text}}{{text}}{{else}}{{translate label scope=../entityType}}{{/if}}{{/if}}</a></li>
{{else}}
{{#unless @first}}
{{#unless @last}}
@@ -77,6 +78,7 @@
hidden=hidden
html=html
title=title
text=text
className='btn-xs-wide'
disabled=disabled
}}
@@ -99,7 +101,7 @@
class="action"
data-action="{{name}}"
{{#if title}}title="{{title}}"{{/if}}
>{{#if html}}{{{html}}}{{else}}{{translate label scope=../entityType}}{{/if}}</a>
>{{#if html}}{{{html}}}{{else}}{{#if text}}{{text}}{{else}}{{translate label scope=../entityType}}{{/if}}{{/if}}</a></li>
</li>
{{else}}
{{#unless @first}}
+2 -1
View File
@@ -11,6 +11,7 @@
html=html
hidden=hidden
title=title
text=text
className='btn-xs-wide'
disabled=disabled
}}
@@ -34,7 +35,7 @@
class="action"
data-action="{{name}}"
{{#if title}}title="{{title}}"{{/if}}
>{{#if html}}{{{html}}}{{else}}{{translate label scope=../entityType}}{{/if}}</a>
>{{#if html}}{{{html}}}{{else}}{{#if text}}{{text}}{{else}}{{translate label scope=../entityType}}{{/if}}{{/if}}</a></li>
</li>
{{else}}
{{#unless @first}}
@@ -5,7 +5,7 @@
data-action="{{action}}"
data-panel="{{../defs.name}}" {{#each data}} data-{{hyphen @key}}="{{./this}}"{{/each}}
title="{{#if title}}{{translate title scope=../scope}}{{/if}}"
>{{#if html}}{{{html}}}{{else}}{{translate label scope=../scope}}{{/if}}</button>
>{{#if html}}{{{html}}}{{else}}{{#if text}}{{text}}{{else}}{{translate label scope=../scope}}{{/if}}{{/if}}</button>
{{/each}}
{{#if actionList}}
@@ -26,7 +26,7 @@
data-action="{{action}}"
{{/if}}
{{#each data}} data-{{hyphen @key}}="{{./this}}"{{/each}}
>{{#if html}}{{{html}}}{{else}}{{translate label scope=../scope}}{{/if}}</a></li>
>{{#if html}}{{{html}}}{{else}}{{#if text}}{{text}}{{else}}{{translate label scope=../scope}}{{/if}}{{/if}}</a></li>
{{else}}
{{#unless @first}}
{{#unless @last}}
@@ -79,7 +79,7 @@ define('views/admin/entity-manager/record/edit', 'views/record/edit', function (
if (!this.isCreate && !this.options.isCustom) {
this.buttonList.push({
name: 'resetToDefault',
html: this.translate('Reset to Default', 'labels', 'Admin'),
text: this.translate('Reset to Default', 'labels', 'Admin'),
});
}
+9 -6
View File
@@ -26,7 +26,7 @@
* these Appropriate Legal Notices must retain the display of the "EspoCRM" word.
************************************************************************/
define('views/admin/job/list', 'views/list', function (Dep) {
define('views/admin/job/list', ['views/list'], function (Dep) {
return Dep.extend({
@@ -38,20 +38,23 @@ define('views/admin/job/list', 'views/list', function (Dep) {
if (!this.getHelper().getAppParam('isRestrictedMode') || this.getUser().isSuperAdmin()) {
this.addMenuItem('buttons', {
link: '#Admin/jobsSettings',
html: this.translate('Settings', 'labels', 'Admin')
text: this.translate('Settings', 'labels', 'Admin'),
});
}
},
getHeader: function () {
return '<a href="#Admin">' + this.translate('Administration') + '</a>' +
' <span class="chevron-right"></span> ' +
this.getLanguage().translate('Jobs', 'labels', 'Admin');
return this.buildHeaderHtml([
$('<a>')
.attr('href', '#Admin')
.text(this.translate('Administration')),
$('<span>')
.text(this.getLanguage().translate('Jobs', 'labels', 'Admin')),
]);
},
updatePageTitle: function () {
this.setPageTitle(this.getLanguage().translate('Jobs', 'labels', 'Admin'));
},
});
});
@@ -38,7 +38,7 @@ define('views/dashboard-template/modals/deploy-to-team', ['views/modal', 'model'
this.buttonList = [
{
name: 'deploy',
html: this.translate('Deploy for Team', 'labels', 'DashboardTemplate'),
text: this.translate('Deploy for Team', 'labels', 'DashboardTemplate'),
style: 'danger',
},
{
@@ -38,7 +38,7 @@ define('views/dashboard-template/modals/deploy-to-users', ['views/modal', 'model
this.buttonList = [
{
name: 'deploy',
html: this.translate('Deploy for Users', 'labels', 'DashboardTemplate'),
text: this.translate('Deploy for Users', 'labels', 'DashboardTemplate'),
style: 'danger',
},
{
@@ -148,7 +148,7 @@ define(
if (this.scope && this.getAcl().checkScope(this.scope, 'create')) {
this.actionList.unshift({
name: 'create',
html: this.translate('Create ' + this.scope, 'labels', this.scope),
text: this.translate('Create ' + this.scope, 'labels', this.scope),
iconHtml: '<span class="fas fa-plus"></span>',
url: '#'+this.scope+'/create',
});
+11 -10
View File
@@ -26,7 +26,7 @@
* these Appropriate Legal Notices must retain the display of the "EspoCRM" word.
************************************************************************/
Espo.define('views/dashlets/emails', 'views/dashlets/abstract/record-list', function (Dep) {
define('views/dashlets/emails', ['views/dashlets/abstract/record-list'], function (Dep) {
return Dep.extend({
@@ -42,7 +42,7 @@ Espo.define('views/dashlets/emails', 'views/dashlets/abstract/record-list', func
if (this.getAcl().checkScope(this.scope, 'create')) {
this.actionList.unshift({
name: 'compose',
html: this.translate('Compose Email', 'labels', this.scope),
text: this.translate('Compose Email', 'labels', this.scope),
iconHtml: '<span class="fas fa-plus"></span>'
});
}
@@ -52,19 +52,20 @@ Espo.define('views/dashlets/emails', 'views/dashlets/abstract/record-list', func
var attributes = this.getCreateAttributes() || {};
this.notify('Loading...');
var viewName = this.getMetadata().get('clientDefs.' + this.scope + '.modalViews.compose') || 'views/modals/compose-email';
var viewName = this.getMetadata().get('clientDefs.' + this.scope + '.modalViews.compose') ||
'views/modals/compose-email';
this.createView('modal', viewName, {
scope: this.scope,
attributes: attributes,
}, function (view) {
}, (view) => {
view.render();
view.notify(false);
this.listenToOnce(view, 'after:save', function () {
this.actionRefresh();
}, this);
}, this);
}
this.listenToOnce(view, 'after:save', () => {
this.actionRefresh();
});
});
},
});
});
+2 -4
View File
@@ -26,7 +26,7 @@
* these Appropriate Legal Notices must retain the display of the "EspoCRM" word.
************************************************************************/
define('views/dashlets/records', 'views/dashlets/abstract/record-list', function (Dep) {
define('views/dashlets/records', ['views/dashlets/abstract/record-list'], function (Dep) {
return Dep.extend({
@@ -70,13 +70,11 @@ define('views/dashlets/records', 'views/dashlets/abstract/record-list', function
if (scope && this.getAcl().checkScope(scope, 'create')) {
this.actionList.unshift({
name: 'create',
html: this.translate('Create ' + scope, 'labels', scope),
text: this.translate('Create ' + scope, 'labels', scope),
iconHtml: '<span class="fas fa-plus"></span>',
url: '#' + scope + '/create',
});
}
},
});
});
+2 -3
View File
@@ -67,7 +67,7 @@ define('views/dashlets/stream', 'views/dashlets/abstract/base', function (Dep) {
setupActionList: function () {
this.actionList.unshift({
name: 'viewList',
html: this.translate('View'),
text: this.translate('View'),
iconHtml: '<span class="fas fa-align-justify"></span>',
url: '#Stream',
});
@@ -75,7 +75,7 @@ define('views/dashlets/stream', 'views/dashlets/abstract/base', function (Dep) {
if (!this.getUser().isPortal()) {
this.actionList.unshift({
name: 'create',
html: this.translate('Create Post', 'labels'),
text: this.translate('Create Post', 'labels'),
iconHtml: '<span class="fas fa-plus"></span>',
});
}
@@ -96,6 +96,5 @@ define('views/dashlets/stream', 'views/dashlets/abstract/base', function (Dep) {
actionViewList: function () {
this.getRouter().navigate('#Stream', {trigger: true});
},
});
});
+2 -1
View File
@@ -103,7 +103,8 @@ define('views/detail', ['views/main'], function (Dep) {
name: 'follow',
label: 'Follow',
style: 'default',
html: '<span class="fas fa-rss fa-sm"></span> ' + this.translate('Follow'),
iconHtml: '<span class="fas fa-rss fa-sm"></span>',
text: this.translate('Follow'),
action: 'follow',
}, true);
},
+1 -1
View File
@@ -95,7 +95,7 @@ define('views/email/detail', ['views/detail', 'email-helper'], function (Dep, Em
this.model.getLinkMultipleIdList('attachments').length
) {
this.addMenuItem('dropdown', {
html: this.translate('Create Document', 'labels', 'Document'),
text: this.translate('Create Document', 'labels', 'Document'),
action: 'createDocument',
acl: 'create',
aclScope: 'Document',
+3 -3
View File
@@ -26,7 +26,7 @@
* these Appropriate Legal Notices must retain the display of the "EspoCRM" word.
************************************************************************/
define('views/import/list', 'views/list', function (Dep) {
define('views/import/list', ['views/list'], function (Dep) {
return Dep.extend({
@@ -36,11 +36,11 @@ define('views/import/list', 'views/list', function (Dep) {
Dep.prototype.setup.call(this);
this.menu.buttons.unshift({
html: '<span class="fas fa-plus fa-sm"></span> ' + this.translate('New Import', 'labels', 'Import'),
iconHtml: '<span class="fas fa-plus fa-sm"></span>',
text: this.translate('New Import', 'labels', 'Import'),
link: '#Import',
acl: 'edit',
});
},
});
});
+4 -5
View File
@@ -309,8 +309,8 @@ function (Dep, /** typeof module:search-manager.Class */SearchManager) {
if (this.quickCreate) {
this.menu.buttons.unshift({
action: 'quickCreate',
html: '<span class="fas fa-plus fa-sm"></span> ' +
this.translate('Create ' + this.scope, 'labels', this.scope),
iconHtml: '<span class="fas fa-plus fa-sm"></span>',
text: this.translate('Create ' + this.scope, 'labels', this.scope),
style: 'default',
acl: 'create',
aclScope: this.entityType || this.scope,
@@ -323,14 +323,13 @@ function (Dep, /** typeof module:search-manager.Class */SearchManager) {
this.menu.buttons.unshift({
link: '#' + this.scope + '/create',
action: 'create',
html: '<span class="fas fa-plus fa-sm"></span> ' +
this.translate('Create ' + this.scope, 'labels', this.scope),
iconHtml: '<span class="fas fa-plus fa-sm"></span>',
text: this.translate('Create ' + this.scope, 'labels', this.scope),
style: 'default',
acl: 'create',
aclScope: this.entityType || this.scope,
title: 'Ctrl+Space',
});
},
/**
+1
View File
@@ -68,6 +68,7 @@ define('views/main', ['view'], function (Dep) {
* @property {string} [title] A title.
* @property {string} [iconHtml] An icon HTML.
* @property {string} [html] An HTML.
* @property {string} [text] A text.
* @property {string} [className] An additional class name. Only for buttons.
*/
+2 -2
View File
@@ -94,7 +94,7 @@ define('views/preferences/record/edit', ['views/record/edit'], function (Dep) {
this.addDropdownItem({
name: 'reset',
html: this.getLanguage().translate('Reset to Default', 'labels', 'Admin'),
text: this.getLanguage().translate('Reset to Default', 'labels', 'Admin'),
style: 'danger'
});
@@ -103,7 +103,7 @@ define('views/preferences/record/edit', ['views/record/edit'], function (Dep) {
if (!~forbiddenEditFieldList.indexOf('dashboardLayout') && !this.model.isPortal()) {
this.addDropdownItem({
name: 'resetDashboard',
html: this.getLanguage().translate('Reset Dashboard to Default', 'labels', 'Preferences')
text: this.getLanguage().translate('Reset Dashboard to Default', 'labels', 'Preferences')
});
}
+2
View File
@@ -119,6 +119,7 @@ function (Dep, ViewRecordHelper, ActionItemSetup) {
* @property {string} name A name.
* @property {string} [label] A label.
* @property {string} [html] An HTML.
* @property {string} [text] A text.
* @property {'default'|'danger'|'success'|'warning'} [style] A style.
* @property {boolean} [hidden] Hidden.
* @property {string} [title] A title (not translatable).
@@ -133,6 +134,7 @@ function (Dep, ViewRecordHelper, ActionItemSetup) {
* @property {string} name A name.
* @property {string} [label] A label.
* @property {string} [html] An HTML.
* @property {string} [text] A text.
* @property {boolean} [hidden] Hidden.
* @property {Object.<string,string>} [data] Data attributes.
* @property {string} [title] A title (not translatable).
@@ -72,6 +72,7 @@ define('views/record/panels-container', ['view'], function (Dep) {
* @property {boolean} [hidden] Hidden.
* @property {string} [label] A label. Translatable.
* @property {string} [html] A HTML.
* @property {string} [text] A text.
* @property {string} [title] A title (on hover). Translatable.
* @property {Object.<string,(string|number|boolean)>} [data] Data attributes.
*/
@@ -86,6 +87,7 @@ define('views/record/panels-container', ['view'], function (Dep) {
* @property {boolean} [hidden] Hidden.
* @property {string} [label] A label. Translatable.
* @property {string} [html] A HTML.
* @property {string} [text] A text.
* @property {Object.<string,(string|number|boolean)>} [data] Data attributes.
*/
+5 -4
View File
@@ -26,7 +26,7 @@
* these Appropriate Legal Notices must retain the display of the "EspoCRM" word.
************************************************************************/
define('views/scheduled-job/list', 'views/list', function (Dep) {
define('views/scheduled-job/list', ['views/list'], function (Dep) {
return Dep.extend({
@@ -37,7 +37,7 @@ define('views/scheduled-job/list', 'views/list', function (Dep) {
this.menu.buttons.push({
link: '#Admin/jobs',
html: this.translate('Jobs', 'labels', 'Admin'),
text: this.translate('Jobs', 'labels', 'Admin'),
});
this.createView('search', 'views/base', {
@@ -59,10 +59,11 @@ define('views/scheduled-job/list', 'views/list', function (Dep) {
getHeader: function () {
return this.buildHeaderHtml([
'<a href="#Admin">' + this.translate('Administration', 'labels', 'Admin') + '</a>',
$('<a>')
.attr('href', '#Admin')
.text(this.translate('Administration', 'labels', 'Admin')),
this.getLanguage().translate(this.scope, 'scopeNamesPlural')
]);
},
});
});
@@ -26,7 +26,7 @@
* these Appropriate Legal Notices must retain the display of the "EspoCRM" word.
************************************************************************/
define('views/settings/modals/tab-list-field-add', 'views/modals/array-field-add', function (Dep) {
define('views/settings/modals/tab-list-field-add', ['views/modals/array-field-add'], function (Dep) {
return Dep.extend({
@@ -36,7 +36,7 @@ define('views/settings/modals/tab-list-field-add', 'views/modals/array-field-add
if (!this.options.noGroups) {
this.buttonList.push({
name: 'addGroup',
html: this.translate('Group Tab', 'labels', 'Settings'),
text: this.translate('Group Tab', 'labels', 'Settings'),
});
}
},
@@ -49,6 +49,5 @@ define('views/settings/modals/tab-list-field-add', 'views/modals/array-field-add
color: null,
});
},
});
});
+20 -6
View File
@@ -646,7 +646,14 @@ define('views/stream/panel', ['views/record/panels/relationship', 'lib!Textcompl
this.actionList.push({
action: 'viewPostList',
html: this.translate('View List') + ' &middot; ' + this.translate('posts', 'filters', 'Note'),
html:
$('<span>')
.append(
$('<span>').text(this.translate('View List')),
' &middot; ',
$('<span>').text(this.translate('posts', 'filters', 'Note')),
)
.get(0).innerHTML,
});
this.actionList.push(false);
@@ -662,12 +669,19 @@ define('views/stream/panel', ['views/record/panels/relationship', 'lib!Textcompl
this.actionList.push({
action: 'selectFilter',
html: '<span class="check-icon fas fa-check pull-right' +
(!selected ? ' hidden' : '') + '"></span><div>' + this.translate(item, 'filters', 'Note') +
'</div>',
html:
$('<span>')
.append(
$('<span>')
.addClass('check-icon fas fa-check pull-right')
.addClass(!selected ? ' hidden' : ''),
$('<div>')
.text(this.translate(item, 'filters', 'Note')),
)
.get(0).innerHTML,
data: {
name: item
}
name: item,
},
});
});
},
+2 -1
View File
@@ -93,7 +93,8 @@ define('views/user/detail', 'views/detail', function (Dep) {
this.menu.buttons.push({
name: 'calendar',
html: '<span class="far fa-calendar-alt"></span> ' + this.translate('Calendar', 'scopeNames'),
iconHtml: '<span class="far fa-calendar-alt"></span>',
text: this.translate('Calendar', 'scopeNames'),
style: 'default',
link: '#Calendar/show/userId=' +
this.model.id + '&userName=' + encodeURIComponent(this.model.get('name')),
+1 -1
View File
@@ -51,7 +51,7 @@ define('views/user/modals/security', ['views/modal', 'model'], function (Dep, Mo
this.dropdownItemList = [
{
name: 'reset',
html: this.translate('Reset 2FA'),
text: this.translate('Reset 2FA'),
hidden: true,
},
];