diff --git a/gui/app/components/customize/search-index.js b/gui/app/components/customize/search-index.js index 35571490..77d43c9b 100644 --- a/gui/app/components/customize/search-index.js +++ b/gui/app/components/customize/search-index.js @@ -10,16 +10,20 @@ // https://documize.com import { inject as service } from '@ember/service'; +import Notifier from '../../mixins/notifier'; import Component from '@ember/component'; -export default Component.extend({ +export default Component.extend(Notifier, { appMeta: service(), - buttonLabel: 'Rebuild Search Index', + buttonLabel: 'Rebuild', actions: { reindex() { - this.set('buttonLabel', 'Rebuilding search index...') - this.get('reindex')(); + this.set('buttonLabel', 'Running...'); + this.notifyInfo("Starting search re-index process"); + this.get('reindex')(() => { + this.notifySuccess("Search re-indexing complete"); + }); } } }); diff --git a/gui/app/components/customize/smtp-settings.js b/gui/app/components/customize/smtp-settings.js index 148784bb..37ca6421 100644 --- a/gui/app/components/customize/smtp-settings.js +++ b/gui/app/components/customize/smtp-settings.js @@ -24,7 +24,7 @@ export default Component.extend(Notifier, { testSMTP: null, actions: { - saveSMTP() { + saveSMTP(e) { if (this.get('SMTPHostEmptyError')) { $("#smtp-host").focus(); return; @@ -49,11 +49,17 @@ export default Component.extend(Notifier, { ); this.set('buttonText', 'Please wait...'); + this.notifyInfo('Sending test email to you'); this.get('saveSMTP')().then((result) => { - this.notifySuccess('Saved'); this.set('buttonText', 'Save & Test'); this.set('testSMTP', result); + + if (result.success) { + this.notifySuccess(result.message); + } else { + this.notifyError(result.message); + } }); } } diff --git a/gui/app/components/customize/space-admin.js b/gui/app/components/customize/space-admin.js index 443dab9d..07ba879c 100644 --- a/gui/app/components/customize/space-admin.js +++ b/gui/app/components/customize/space-admin.js @@ -76,6 +76,7 @@ export default Component.extend(Notifier, Modals, { this.set('deleteSpace.id', ''); this.set('deleteSpace.name', ''); this.loadData(); + this.notifySuccess('Deleted'); }); }, @@ -86,6 +87,8 @@ export default Component.extend(Notifier, Modals, { filterType: 'space', }; + this.notifyInfo('Export running...'); + this.get('documentSvc').export(spec).then((htmlExport) => { this.get('browserSvc').downloadFile(htmlExport, 'documize.html'); this.notifySuccess('Exported'); diff --git a/gui/app/components/layout/logo-heading.js b/gui/app/components/layout/logo-heading.js new file mode 100644 index 00000000..e790b207 --- /dev/null +++ b/gui/app/components/layout/logo-heading.js @@ -0,0 +1,15 @@ +// Copyright 2016 Documize Inc. . All rights reserved. +// +// This software (Documize Community Edition) is licensed under +// GNU AGPL v3 http://www.gnu.org/licenses/agpl-3.0.en.html +// +// You can operate outside the AGPL restrictions by purchasing +// Documize Enterprise Edition and obtaining a commercial license +// by contacting . +// +// https://documize.com + +import Component from '@ember/component'; + +export default Component.extend({ +}); diff --git a/gui/app/components/ui/ui-button.js b/gui/app/components/ui/ui-button.js index 2fc92893..f90ea963 100644 --- a/gui/app/components/ui/ui-button.js +++ b/gui/app/components/ui/ui-button.js @@ -58,6 +58,7 @@ export default Component.extend({ }), click(e) { + e.preventDefault(); if (is.not.undefined(this.onClick)) { this.onClick(e); } diff --git a/gui/app/constants/constants.js b/gui/app/constants/constants.js index 108ae893..24d96024 100644 --- a/gui/app/constants/constants.js +++ b/gui/app/constants/constants.js @@ -196,6 +196,7 @@ let constants = EmberObject.extend({ Icon: { // eslint-disable-line ember/avoid-leaking-state-in-ember-objects All: 'dicon-menu-8', + Announce: 'dicon-notification', ArrowUp: 'dicon-arrow-up', ArrowDown: 'dicon-arrow-down', ArrowLeft: 'dicon-arrow-left', @@ -203,12 +204,21 @@ let constants = EmberObject.extend({ Attachment: 'dicon-attachment', BarChart: 'dicon-chart-bar-2', Bookmark: 'dicon-bookmark', + ButtonAction: 'button-2', + Database: 'dicon-database', + Download: 'dicon-download', Delete: 'dicon-bin', Edit: 'dicon-pen-2', + Email: 'dicon-email', + Export: 'dicon-data-upload', + Export2: 'dicon-upload', Filter: 'dicon-sort-tool', Grid1: 'dicon-grid-interface', + Handshake: 'handshake', Index: 'dicon-align-justify', + Integrations: 'dicon-geometry', ListBullet: 'dicon-list-bullet-2', + Locked: 'dicon-lock', Print: 'dicon-print', Pulse: 'dicon-pulse', Plus: 'dicon-e-add', @@ -216,8 +226,10 @@ let constants = EmberObject.extend({ People: 'dicon-multiple-19', Remove: 'dicon-i-remove', Search: 'dicon-magnifier', + Send: 'dicon-send', Settings: 'dicon-settings-gear', Tag: 'dicon-delete-key', + Unlocked: 'dicon-unlocked', World: 'dicon-globe', }, @@ -230,10 +242,13 @@ let constants = EmberObject.extend({ Label: { // eslint-disable-line ember/avoid-leaking-state-in-ember-objects Add: 'Add', + Activate: "Activate", Cancel: 'Cancel', Close: 'Close', Delete: 'Delete', + Export: 'Export', Insert: 'Insert', + Restore: 'Restore', Save: 'Save', Update: 'Update', } diff --git a/gui/app/pods/customize/auth/template.hbs b/gui/app/pods/customize/auth/template.hbs index 172b24ec..d8bcaed8 100644 --- a/gui/app/pods/customize/auth/template.hbs +++ b/gui/app/pods/customize/auth/template.hbs @@ -1,3 +1,8 @@ +{{layout/logo-heading + title="Authentication" + desc="Choose user authentication provider — Documize, Redhat Keycloak, LDAP/AD" + icon=constants.Icon.Locked}} + {{customize/auth-settings authProvider=model.authProvider authConfig=model.authConfig diff --git a/gui/app/pods/customize/backup/template.hbs b/gui/app/pods/customize/backup/template.hbs index b63e8b10..c81ca924 100644 --- a/gui/app/pods/customize/backup/template.hbs +++ b/gui/app/pods/customize/backup/template.hbs @@ -1 +1,6 @@ +{{layout/logo-heading + title="Backup & Restore" + desc="Export all content to self-contained single zip file" + icon=constants.Icon.Database}} + {{customize/backup-restore onBackup=(action "onBackup") onRestore=(action "onRestore")}} diff --git a/gui/app/pods/customize/folders/template.hbs b/gui/app/pods/customize/folders/template.hbs index 92760b32..9b45b71b 100644 --- a/gui/app/pods/customize/folders/template.hbs +++ b/gui/app/pods/customize/folders/template.hbs @@ -1 +1,6 @@ +{{layout/logo-heading + title="Spaces" + desc="Delete spaces, take ownership of shared and orphaned spaces" + icon=constants.Icon.Grid1}} + {{customize/space-admin}} \ No newline at end of file diff --git a/gui/app/pods/customize/general/template.hbs b/gui/app/pods/customize/general/template.hbs index 6cf16adf..09f7ff5a 100644 --- a/gui/app/pods/customize/general/template.hbs +++ b/gui/app/pods/customize/general/template.hbs @@ -1 +1,6 @@ +{{layout/logo-heading + title="Customize" + desc="Options to help you customize Documize" + icon=constants.Icon.Settings}} + {{customize/general-settings model=model save=(action "save")}} diff --git a/gui/app/pods/customize/groups/template.hbs b/gui/app/pods/customize/groups/template.hbs index 8f1e57c7..b6c759bc 100644 --- a/gui/app/pods/customize/groups/template.hbs +++ b/gui/app/pods/customize/groups/template.hbs @@ -1 +1,6 @@ +{{layout/logo-heading + title="User Groups" + desc="Define groups for easier user and permission management" + icon=constants.Icon.People}} + {{customize/user-groups}} \ No newline at end of file diff --git a/gui/app/pods/customize/integrations/template.hbs b/gui/app/pods/customize/integrations/template.hbs index f0197eb0..bef20e2b 100644 --- a/gui/app/pods/customize/integrations/template.hbs +++ b/gui/app/pods/customize/integrations/template.hbs @@ -1 +1,6 @@ +{{layout/logo-heading + title="Integrations" + desc="Enable and configure third party integrations" + icon=constants.Icon.Integrations}} + {{customize/integration-settings jira=model.jira trello=model.trello}} diff --git a/gui/app/pods/customize/product/controller.js b/gui/app/pods/customize/product/controller.js index fe1fb43c..baeb5e49 100644 --- a/gui/app/pods/customize/product/controller.js +++ b/gui/app/pods/customize/product/controller.js @@ -9,7 +9,9 @@ // // https://documize.com +import { inject as service } from '@ember/service'; import Controller from '@ember/controller'; export default Controller.extend({ + appMeta: service(), }); diff --git a/gui/app/pods/customize/product/template.hbs b/gui/app/pods/customize/product/template.hbs index 7e68401b..ef10f476 100644 --- a/gui/app/pods/customize/product/template.hbs +++ b/gui/app/pods/customize/product/template.hbs @@ -1 +1,6 @@ +{{layout/logo-heading + title=(concat appMeta.edition " Edition " appMeta.version) + desc="Enterprise Edition provides premium features and comprehensive product support" + icon=constants.Icon.Announce}} + {{customize/change-log}} diff --git a/gui/app/pods/customize/search/template.hbs b/gui/app/pods/customize/search/template.hbs index cf66128a..a4bf4139 100644 --- a/gui/app/pods/customize/search/template.hbs +++ b/gui/app/pods/customize/search/template.hbs @@ -1 +1,6 @@ +{{layout/logo-heading + title="Search" + desc="Rebuild the search index" + icon=constants.Icon.Search}} + {{customize/search-index searchStatus=model reindex=(action "reindex")}} diff --git a/gui/app/pods/customize/smtp/template.hbs b/gui/app/pods/customize/smtp/template.hbs index b1833c3e..477d66e0 100644 --- a/gui/app/pods/customize/smtp/template.hbs +++ b/gui/app/pods/customize/smtp/template.hbs @@ -1 +1,6 @@ +{{layout/logo-heading + title="Mail Server" + desc="Specify mail server details required for sending user invite and notification emails" + icon=constants.Icon.Send}} + {{customize/smtp-settings model=model saveSMTP=(action "saveSMTP")}} diff --git a/gui/app/pods/customize/template.hbs b/gui/app/pods/customize/template.hbs index 5661ab3f..22aec9e3 100644 --- a/gui/app/pods/customize/template.hbs +++ b/gui/app/pods/customize/template.hbs @@ -1,59 +1,71 @@ -{{#layout/top-bar}} -{{/layout/top-bar}} +{{#layout/master-sidebar}} + {{ui/ui-spacer size=300}} -{{#layout/middle-zone}} - {{#layout/middle-zone-content}} - {{outlet}} - {{/layout/middle-zone-content}} - - {{#layout/middle-zone-sidebar}} -