From a8fa776713ae4f6f1f6e364dc25085815e64250b Mon Sep 17 00:00:00 2001 From: yuri Date: Thu, 8 Nov 2018 17:53:55 +0200 Subject: [PATCH 01/11] fix css --- frontend/less/hazyblue-vertical/custom.less | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/frontend/less/hazyblue-vertical/custom.less b/frontend/less/hazyblue-vertical/custom.less index 5bf32f8221..813f39b6c3 100644 --- a/frontend/less/hazyblue-vertical/custom.less +++ b/frontend/less/hazyblue-vertical/custom.less @@ -28,6 +28,11 @@ color: @gray-soft; } +.btn-default > .fa.text-muted, +.btn-default > .fas.text-muted { + color: @gray-light; +} + .btn-default.disabled > .fa, .btn-default.disabled > .fas { color: @gray-light; From cb44f0fe133ea18d95c21045ab28cda198f2078c Mon Sep 17 00:00:00 2001 From: yuri Date: Thu, 8 Nov 2018 18:07:29 +0200 Subject: [PATCH 02/11] relationship panel menu order change --- client/src/views/record/panels/relationship.js | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/client/src/views/record/panels/relationship.js b/client/src/views/record/panels/relationship.js index 058033aab0..eb452e454c 100644 --- a/client/src/views/record/panels/relationship.js +++ b/client/src/views/record/panels/relationship.js @@ -105,13 +105,6 @@ Espo.define('views/record/panels/relationship', ['views/record/panels/bottom', ' } } - if (this.defs.view) { - this.actionList.unshift({ - label: 'View List', - action: this.defs.viewAction || 'viewRelatedList' - }); - } - if (this.defs.select) { var data = {link: this.link}; if (this.defs.selectPrimaryFilterName) { @@ -130,6 +123,13 @@ Espo.define('views/record/panels/relationship', ['views/record/panels/bottom', ' }); } + if (this.defs.view) { + this.actionList.unshift({ + label: 'View List', + action: this.defs.viewAction || 'viewRelatedList' + }); + } + this.setupActions(); var layoutName = 'listSmall'; From ea4762e3d02858cfaa0b27f2481bc2639e8cd5bc Mon Sep 17 00:00:00 2001 From: yuri Date: Thu, 8 Nov 2018 18:36:40 +0200 Subject: [PATCH 03/11] fix css style --- client/modules/crm/src/views/document/fields/file.js | 2 +- client/res/templates/attachment/fields/name/detail.tpl | 2 +- client/res/templates/email/fields/has-attachment/detail.tpl | 2 +- client/res/templates/email/fields/subject/list-link.tpl | 2 +- client/res/templates/fields/attachments-multiple/edit.tpl | 2 +- client/res/templates/fields/file/edit.tpl | 2 +- client/src/views/fields/attachment-multiple.js | 2 +- client/src/views/fields/file.js | 2 +- client/src/views/fields/wysiwyg.js | 2 +- frontend/less/hazyblue-vertical/custom.less | 6 +++--- 10 files changed, 12 insertions(+), 12 deletions(-) diff --git a/client/modules/crm/src/views/document/fields/file.js b/client/modules/crm/src/views/document/fields/file.js index 562a1abbe2..d1cb7dca24 100644 --- a/client/modules/crm/src/views/document/fields/file.js +++ b/client/modules/crm/src/views/document/fields/file.js @@ -40,7 +40,7 @@ Espo.define('crm:views/document/fields/file', 'views/fields/file', function (Dep return false; } - return ''; + return ''; } else { return Dep.prototype.getValueForDisplay.call(this); } diff --git a/client/res/templates/attachment/fields/name/detail.tpl b/client/res/templates/attachment/fields/name/detail.tpl index 9adbd239a7..454f6eebaf 100644 --- a/client/res/templates/attachment/fields/name/detail.tpl +++ b/client/res/templates/attachment/fields/name/detail.tpl @@ -1,2 +1,2 @@ - {{{value}}} + {{{value}}} diff --git a/client/res/templates/email/fields/has-attachment/detail.tpl b/client/res/templates/email/fields/has-attachment/detail.tpl index f3e8dcb41e..c58671141a 100644 --- a/client/res/templates/email/fields/has-attachment/detail.tpl +++ b/client/res/templates/email/fields/has-attachment/detail.tpl @@ -1 +1 @@ -{{#if value}}{{/if}} \ No newline at end of file +{{#if value}}{{/if}} \ No newline at end of file diff --git a/client/res/templates/email/fields/subject/list-link.tpl b/client/res/templates/email/fields/subject/list-link.tpl index 717661c145..b9ebc0a95b 100644 --- a/client/res/templates/email/fields/subject/list-link.tpl +++ b/client/res/templates/email/fields/subject/list-link.tpl @@ -1,6 +1,6 @@ {{#if hasAttachment}} - + {{/if}} {{#unless isRead}}{{/unless}} diff --git a/client/res/templates/fields/attachments-multiple/edit.tpl b/client/res/templates/fields/attachments-multiple/edit.tpl index 31fd7766ae..4ce1fc49d2 100644 --- a/client/res/templates/fields/attachments-multiple/edit.tpl +++ b/client/res/templates/fields/attachments-multiple/edit.tpl @@ -3,7 +3,7 @@ {{#unless uploadFromFileSystemDisabled}}
diff --git a/client/res/templates/fields/file/edit.tpl b/client/res/templates/fields/file/edit.tpl index 4e99c6ea71..7b604c0126 100644 --- a/client/res/templates/fields/file/edit.tpl +++ b/client/res/templates/fields/file/edit.tpl @@ -2,7 +2,7 @@
diff --git a/client/src/views/fields/attachment-multiple.js b/client/src/views/fields/attachment-multiple.js index 2126f965c5..9bec5ec65f 100644 --- a/client/src/views/fields/attachment-multiple.js +++ b/client/src/views/fields/attachment-multiple.js @@ -529,7 +529,7 @@ Espo.define('views/fields/attachment-multiple', 'views/fields/base', function (D previews.push('
' + this.getDetailPreview(name, type, id) + '
'); continue; } - var line = ''; + var line = ''; names.push(line); } var string = previews.join('') + names.join(''); diff --git a/client/src/views/fields/file.js b/client/src/views/fields/file.js index 0a004ab544..a1c6931479 100644 --- a/client/src/views/fields/file.js +++ b/client/src/views/fields/file.js @@ -285,7 +285,7 @@ Espo.define('views/fields/file', 'views/fields/link', function (Dep) { if (this.showPreview && ~this.previewTypeList.indexOf(type)) { string = '
' + this.getDetailPreview(name, type, id) + '
'; } else { - string = ' ' + Handlebars.Utils.escapeExpression(name) + ''; + string = ' ' + Handlebars.Utils.escapeExpression(name) + ''; } return string; } diff --git a/client/src/views/fields/wysiwyg.js b/client/src/views/fields/wysiwyg.js index 49047856e1..f4f1947f25 100644 --- a/client/src/views/fields/wysiwyg.js +++ b/client/src/views/fields/wysiwyg.js @@ -79,7 +79,7 @@ Espo.define('views/fields/wysiwyg', ['views/fields/text', 'lib!Summernote'], fun var AttachmentButton = function (context) { var ui = $.summernote.ui; var button = ui.button({ - contents: '', + contents: '', tooltip: this.translate('Attach File'), click: function () { this.attachFile(); diff --git a/frontend/less/hazyblue-vertical/custom.less b/frontend/less/hazyblue-vertical/custom.less index 813f39b6c3..246b006c2b 100644 --- a/frontend/less/hazyblue-vertical/custom.less +++ b/frontend/less/hazyblue-vertical/custom.less @@ -42,9 +42,9 @@ border-bottom-width: 0; } -.panel-default.note-editor .panel-heading .btn-default { - background-color: @btn-default-bg; - border-color: @btn-default-border; +.panel-default.note-editor > .panel-heading .btn-default { + background-color: @btn-default-bg !important; + border-color: @btn-default-border !important; } .panel > .panel-heading > .btn-group > .btn { From 9fddd6b1ba4a924976adff6a56d7fb9739ac8650 Mon Sep 17 00:00:00 2001 From: yuri Date: Fri, 9 Nov 2018 11:03:35 +0200 Subject: [PATCH 04/11] it lang --- .../Espo/Modules/Crm/Resources/i18n/it_IT/Admin.json | 1 + .../Espo/Modules/Crm/Resources/i18n/it_IT/Call.json | 1 - .../Espo/Modules/Crm/Resources/i18n/it_IT/Campaign.json | 1 - .../Espo/Modules/Crm/Resources/i18n/it_IT/Contact.json | 1 - .../Espo/Modules/Crm/Resources/i18n/it_IT/Document.json | 1 - .../Espo/Modules/Crm/Resources/i18n/it_IT/Email.json | 2 +- .../Espo/Modules/Crm/Resources/i18n/it_IT/Global.json | 5 +---- .../Espo/Modules/Crm/Resources/i18n/it_IT/Lead.json | 2 +- .../Modules/Crm/Resources/i18n/it_IT/Opportunity.json | 1 + application/Espo/Resources/i18n/it_IT/Admin.json | 9 ++++++++- application/Espo/Resources/i18n/it_IT/ApiUser.json | 1 + application/Espo/Resources/i18n/it_IT/Email.json | 2 +- application/Espo/Resources/i18n/it_IT/Global.json | 4 ++-- install/core/i18n/it_IT/install.json | 7 ------- 14 files changed, 17 insertions(+), 21 deletions(-) create mode 100644 application/Espo/Resources/i18n/it_IT/ApiUser.json diff --git a/application/Espo/Modules/Crm/Resources/i18n/it_IT/Admin.json b/application/Espo/Modules/Crm/Resources/i18n/it_IT/Admin.json index 448bd5da9a..5b04d79d0c 100644 --- a/application/Espo/Modules/Crm/Resources/i18n/it_IT/Admin.json +++ b/application/Espo/Modules/Crm/Resources/i18n/it_IT/Admin.json @@ -1,5 +1,6 @@ { "layouts": { + "detailConvert": "Converti Lead", "listForAccount": "Elenco (per Account)", "listForContact": "Lista (per contatto)" } diff --git a/application/Espo/Modules/Crm/Resources/i18n/it_IT/Call.json b/application/Espo/Modules/Crm/Resources/i18n/it_IT/Call.json index 9d996fe1df..f81316ad77 100644 --- a/application/Espo/Modules/Crm/Resources/i18n/it_IT/Call.json +++ b/application/Espo/Modules/Crm/Resources/i18n/it_IT/Call.json @@ -10,7 +10,6 @@ "description": "Descrizione", "users": "Utenti", "contacts": "Contatti", - "leads": "Comando", "reminders": "Promemoria", "acceptanceStatus": "Stato accettazione" }, diff --git a/application/Espo/Modules/Crm/Resources/i18n/it_IT/Campaign.json b/application/Espo/Modules/Crm/Resources/i18n/it_IT/Campaign.json index 228f7df7b5..0bd301d1b6 100644 --- a/application/Espo/Modules/Crm/Resources/i18n/it_IT/Campaign.json +++ b/application/Espo/Modules/Crm/Resources/i18n/it_IT/Campaign.json @@ -27,7 +27,6 @@ "excludingTargetLists": "Esclusioni da liste di destinazione", "accounts": "Account", "contacts": "Contatti", - "leads": "Comando", "opportunities": "Opportunita'", "massEmails": "Email Massiva", "contactsTemplate": "Modello contatti", diff --git a/application/Espo/Modules/Crm/Resources/i18n/it_IT/Contact.json b/application/Espo/Modules/Crm/Resources/i18n/it_IT/Contact.json index 3505af5bdc..93c5963f79 100644 --- a/application/Espo/Modules/Crm/Resources/i18n/it_IT/Contact.json +++ b/application/Espo/Modules/Crm/Resources/i18n/it_IT/Contact.json @@ -1,7 +1,6 @@ { "fields": { "name": "Nome", - "title": "Titolo", "accountRole": "Titolo", "accounts": "Account", "phoneNumber": "Telefono", diff --git a/application/Espo/Modules/Crm/Resources/i18n/it_IT/Document.json b/application/Espo/Modules/Crm/Resources/i18n/it_IT/Document.json index dfb41c260a..76e1619594 100644 --- a/application/Espo/Modules/Crm/Resources/i18n/it_IT/Document.json +++ b/application/Espo/Modules/Crm/Resources/i18n/it_IT/Document.json @@ -16,7 +16,6 @@ "accounts": "Account", "opportunities": "Opportunita'", "folder": "Cartella", - "leads": "Comando", "contacts": "Contatti" }, "options": { diff --git a/application/Espo/Modules/Crm/Resources/i18n/it_IT/Email.json b/application/Espo/Modules/Crm/Resources/i18n/it_IT/Email.json index d2ca057802..b3bcbaa56f 100644 --- a/application/Espo/Modules/Crm/Resources/i18n/it_IT/Email.json +++ b/application/Espo/Modules/Crm/Resources/i18n/it_IT/Email.json @@ -1,6 +1,6 @@ { "labels": { - "Create Lead": "Crea Guida", + "Create Lead": "Crea Lead", "Create Contact": "Crea Contatto", "Create Task": "Crea Compito", "Create Case": "Crea Caso", diff --git a/application/Espo/Modules/Crm/Resources/i18n/it_IT/Global.json b/application/Espo/Modules/Crm/Resources/i18n/it_IT/Global.json index 3fc7d02094..459ea5ce22 100644 --- a/application/Espo/Modules/Crm/Resources/i18n/it_IT/Global.json +++ b/application/Espo/Modules/Crm/Resources/i18n/it_IT/Global.json @@ -3,7 +3,6 @@ "parent": "Genitore", "contacts": "Contatti", "opportunities": "Opportunita'", - "leads": "Comando", "meetings": "Riunioni", "calls": "Chiamate", "tasks": "Compiti", @@ -16,7 +15,6 @@ }, "scopeNames": { "Contact": "Contatti", - "Lead": "Guida", "Opportunity": "Opportunità", "Meeting": "Riunione", "Calendar": "Calendario", @@ -34,7 +32,6 @@ "scopeNamesPlural": { "Account": "Account", "Contact": "Contatti", - "Lead": "Comando", "Opportunity": "Opportunita'", "Meeting": "Riunioni", "Calendar": "Calendario", @@ -51,7 +48,7 @@ "KnowledgeBaseCategory": "Conoscenza di Base Categorie" }, "dashlets": { - "Leads": "Le mie Guide", + "Leads": "I miei Lead", "Opportunities": "Le mie Opportunità", "Tasks": "I miei Compiti", "Cases": "I miei Casi", diff --git a/application/Espo/Modules/Crm/Resources/i18n/it_IT/Lead.json b/application/Espo/Modules/Crm/Resources/i18n/it_IT/Lead.json index 82b07f571d..b62649dac0 100644 --- a/application/Espo/Modules/Crm/Resources/i18n/it_IT/Lead.json +++ b/application/Espo/Modules/Crm/Resources/i18n/it_IT/Lead.json @@ -1,7 +1,7 @@ { "labels": { "Converted To": "Convertito in", - "Create Lead": "Crea Guida", + "Create Lead": "Crea Lead", "Convert": "Convertire", "convert": "convertire" }, diff --git a/application/Espo/Modules/Crm/Resources/i18n/it_IT/Opportunity.json b/application/Espo/Modules/Crm/Resources/i18n/it_IT/Opportunity.json index dac8f9241a..c893c63df2 100644 --- a/application/Espo/Modules/Crm/Resources/i18n/it_IT/Opportunity.json +++ b/application/Espo/Modules/Crm/Resources/i18n/it_IT/Opportunity.json @@ -3,6 +3,7 @@ "name": "Nome", "amount": "Importo", "probability": "Probabilità, %", + "leadSource": "Sorgente Lead", "doNotCall": "Non chiamare", "closeDate": "Data di chiusura", "contacts": "Contatti", diff --git a/application/Espo/Resources/i18n/it_IT/Admin.json b/application/Espo/Resources/i18n/it_IT/Admin.json index 5962e921ac..c1109cd06c 100644 --- a/application/Espo/Resources/i18n/it_IT/Admin.json +++ b/application/Espo/Resources/i18n/it_IT/Admin.json @@ -56,7 +56,14 @@ "Label Manager": "Gestione etichetta", "Auth Log": "Auth log", "Lead Capture": "Cattura Lead", - "Attachments": "Allegati" + "Attachments": "Allegati", + "API Users": "API Utenti", + "PHP Settings": "Impostazioni PHP", + "Database Settings": "Impostazioni Database", + "Permissions": "Permessi", + "Success": "Successo", + "Fail": "Fallito", + "is recommended": "E' raccomandato" }, "layouts": { "list": "Elenco", diff --git a/application/Espo/Resources/i18n/it_IT/ApiUser.json b/application/Espo/Resources/i18n/it_IT/ApiUser.json new file mode 100644 index 0000000000..9e26dfeeb6 --- /dev/null +++ b/application/Espo/Resources/i18n/it_IT/ApiUser.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/application/Espo/Resources/i18n/it_IT/Email.json b/application/Espo/Resources/i18n/it_IT/Email.json index 6ceb591994..7e2f7f0260 100644 --- a/application/Espo/Resources/i18n/it_IT/Email.json +++ b/application/Espo/Resources/i18n/it_IT/Email.json @@ -108,7 +108,7 @@ "archived": "Archiviato", "drafts": "Bozze", "trash": "Cestino", - "important": "Importantw" + "important": "Importante" }, "massActions": { "markAsRead": "Contrassegna come Letto", diff --git a/application/Espo/Resources/i18n/it_IT/Global.json b/application/Espo/Resources/i18n/it_IT/Global.json index f152ace368..a655818535 100644 --- a/application/Espo/Resources/i18n/it_IT/Global.json +++ b/application/Espo/Resources/i18n/it_IT/Global.json @@ -137,9 +137,9 @@ "Actions": "Azioni", "Delete": "Cancellare", "Update": "Aggiorna", - "Save": "Salvare", + "Save": "Salva", "Edit": "Modificare", - "Cancel": "Annullare", + "Cancel": "Annulla", "Apply": "Applicare", "Unlink": "Scollegare", "Mass Update": "Aggiornamento Massivo", diff --git a/install/core/i18n/it_IT/install.json b/install/core/i18n/it_IT/install.json index ac1765c981..53b04b81ef 100644 --- a/install/core/i18n/it_IT/install.json +++ b/install/core/i18n/it_IT/install.json @@ -27,11 +27,6 @@ "Configuration Instructions": "Istruzioni di configurazione", "phpVersion": "versione PHP", "requiredMysqlVersion": "Versione MySQL", - "dbHostName": "Host Name", - "dbName": "Database Name", - "dbUserName": "Nome Utente Database", - "OK": "OK", - "mysqlVersion": "Versione MySQL", "dbUserName": "Nome Utente Database" }, "fields": { @@ -63,7 +58,6 @@ "Some errors occurred!": "Alcuni errori si sono verificati!", "phpVersion": "la versione di PHP in uso non è supportata da EspoCRM, aggiornare PHP dalla versione {minVersion} in poi.", "requiredMysqlVersion": "la versione di MySQL in uso non è supportata da EspoCRM, si raccomanda di aggiornare MySQL almeno alla versione {minVersion}.", - "requiredMariadbVersion": "la versione di MariaDB in uso non è supportata da EspoCRM, si raccomanda di aggiornare MariaDB almeno alla versione {minVersion}.", "The PHP extension was not found...": "PHP Errore: l'Estensione {extName} non è stata trovata.", "All Settings correct": "Tutte le impostazioni sono corrette", "Failed to connect to database": "Impossibile connettersi al database", @@ -71,7 +65,6 @@ "You must agree to the license agreement": "E' necessario accettare il contratto di licenza", "Passwords do not match": "Le password non corrispondono", "Enable mod_rewrite in Apache server": "Attivare mod_rewrite in server Apache", - "Ajax failed": "Ajax non è riuscita", "Cannot create user": "Non è possibile creare un utente", "Permission denied": "Permesso negato", "Permission denied to": "Permesso negato", From 049d6bc4ded0c2838835ec81079c415e35207d60 Mon Sep 17 00:00:00 2001 From: yuri Date: Fri, 9 Nov 2018 11:08:50 +0200 Subject: [PATCH 05/11] fix typo --- application/Espo/Services/App.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/application/Espo/Services/App.php b/application/Espo/Services/App.php index d644be5750..c44433683b 100644 --- a/application/Espo/Services/App.php +++ b/application/Espo/Services/App.php @@ -131,11 +131,11 @@ class App extends \Espo\Core\Services\Base $emailAddressList = []; foreach ($user->get('emailAddresses') as $emailAddress) { if ($emailAddress->get('invalid')) continue; - if ($user->get('emailAddrses') === $emailAddress->get('name')) continue; + if ($user->get('emailAddress') === $emailAddress->get('name')) continue; $emailAddressList[] = $emailAddress->get('name'); } - if ($user->get('emailAddrses')) { - array_unshift($emailAddressList, $user->get('emailAddrses')); + if ($user->get('emailAddress')) { + array_unshift($emailAddressList, $user->get('emailAddress')); } $entityManager = $this->getEntityManager(); From 6601922c13f7519db4aba748116d7c6e8f37abf9 Mon Sep 17 00:00:00 2001 From: yuri Date: Fri, 9 Nov 2018 12:15:40 +0200 Subject: [PATCH 06/11] fix cleanup jobs --- application/Espo/Jobs/Cleanup.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/application/Espo/Jobs/Cleanup.php b/application/Espo/Jobs/Cleanup.php index 7ec39969cc..0d9a4ecb34 100644 --- a/application/Espo/Jobs/Cleanup.php +++ b/application/Espo/Jobs/Cleanup.php @@ -76,7 +76,10 @@ class Cleanup extends \Espo\Core\Jobs\Base $pdo = $this->getEntityManager()->getPDO(); $query = "DELETE FROM `job` WHERE DATE(modified_at) < ".$pdo->quote($this->getCleanupJobFromDate())." AND status <> 'Pending'"; + $sth = $pdo->prepare($query); + $sth->execute(); + $query = "DELETE FROM `job` WHERE DATE(modified_at) < ".$pdo->quote($this->getCleanupJobFromDate())." AND status = 'Pending' AND deleted = 1"; $sth = $pdo->prepare($query); $sth->execute(); } From 4881787cf0648570ece8a5f689de79fd720567ac Mon Sep 17 00:00:00 2001 From: yuri Date: Fri, 9 Nov 2018 17:08:09 +0200 Subject: [PATCH 07/11] stick list view actions --- client/res/templates/record/list.tpl | 63 ++++++++++-- client/src/ui.js | 8 +- client/src/views/email/record/list.js | 5 +- client/src/views/modal.js | 2 +- client/src/views/modals/related-list.js | 2 + client/src/views/record/list.js | 130 +++++++++++++++++++++--- frontend/less/espo-vertical/layout.less | 22 ++++ frontend/less/espo/custom.less | 37 ++++++- frontend/less/espo/layout.less | 16 +++ 9 files changed, 253 insertions(+), 32 deletions(-) diff --git a/client/res/templates/record/list.tpl b/client/res/templates/record/list.tpl index 9b185bf0c6..c8645ffaff 100644 --- a/client/res/templates/record/list.tpl +++ b/client/res/templates/record/list.tpl @@ -8,14 +8,41 @@
{{/if}} - {{#if checkboxes}} - {{#if massActionList}} + {{#if displayActionsButtonGroup}}
- -
+ + - {{/if}} {{/if}} {{#if displayTotalCount}} @@ -37,10 +86,6 @@ {{translate 'Total'}}: {{collection.total}} {{/if}} - - {{#each buttonList}} - {{button name scope=../../scope label=label style=style}} - {{/each}} {{/if}} diff --git a/client/src/ui.js b/client/src/ui.js index c2a08b4ef5..055730ef97 100644 --- a/client/src/ui.js +++ b/client/src/ui.js @@ -72,9 +72,13 @@ Espo.define('ui', [], function () { this.contents = ''; if (this.header) { - this.contents += '