mirror of
https://github.com/documize/community.git
synced 2025-07-19 21:29:42 +02:00
i18n page strings
This commit is contained in:
parent
4ab48cc67d
commit
59dc6ea991
29 changed files with 125 additions and 107 deletions
|
@ -87,10 +87,5 @@ export default Component.extend(AuthProvider, {
|
||||||
set(this, 'password.confirmation', '');
|
set(this, 'password.confirmation', '');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
// onThemeChange(theme) {
|
|
||||||
// this.get('appMeta').setTheme(theme);
|
|
||||||
// this.set('model.theme', theme);
|
|
||||||
// }
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
{{#if (is-equal model.mode "login")}}
|
{{#if (is-equal model.mode "login")}}
|
||||||
<div class="sso-box">
|
<div class="sso-box">
|
||||||
<p>Authenticating with CAS...</p>
|
<p>{{localize 'login_cas'}}</p>
|
||||||
<img src="/assets/img/busy-gray.gif">
|
<img src="/assets/img/busy-gray.gif">
|
||||||
</div>
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
{{#if (is-equal model.mode "reject")}}
|
{{#if (is-equal model.mode "reject")}}
|
||||||
<div class="sso-box">
|
<div class="sso-box">
|
||||||
<p>CAS authentication failure</p>
|
<p>{{localize 'login_cas_error'}}</p>
|
||||||
</div>
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
|
@ -1,8 +1,7 @@
|
||||||
<div class="auth-center">
|
<div class="auth-center">
|
||||||
<div class="auth-box">
|
<div class="auth-box">
|
||||||
<div class="logo">
|
<div class="logo">
|
||||||
<img src="{{appMeta.endpoint}}/public/logo?cb={{random-id}}"
|
<img src="{{appMeta.endpoint}}/public/logo?cb={{random-id}}" title={{appMeta.title}} alt={{appMeta.title}} class="img-fluid">
|
||||||
title="Community" alt="Community" class="img-fluid">
|
|
||||||
<div class="url">{{appMeta.title}} ({{appMeta.appHost}})</div>
|
<div class="url">{{appMeta.title}} ({{appMeta.appHost}})</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="login-form">
|
<div class="login-form">
|
||||||
|
|
|
@ -18,6 +18,7 @@ export default Route.extend({
|
||||||
appMeta: service(),
|
appMeta: service(),
|
||||||
kcAuth: service(),
|
kcAuth: service(),
|
||||||
localStorage: service(),
|
localStorage: service(),
|
||||||
|
|
||||||
queryParams: {
|
queryParams: {
|
||||||
mode: {
|
mode: {
|
||||||
refreshModel: true
|
refreshModel: true
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
{{#if (is-equal model.mode "login")}}
|
{{#if (is-equal model.mode "login")}}
|
||||||
<div class="sso-box">
|
<div class="sso-box">
|
||||||
<p>Authenticating with Keycloak...</p>
|
<p>{{localize 'login_keycloak'}}</p>
|
||||||
<img src="/assets/img/busy-gray.gif">
|
<img src="/assets/img/busy-gray.gif">
|
||||||
</div>
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
{{#if (is-equal model.mode "reject")}}
|
{{#if (is-equal model.mode "reject")}}
|
||||||
<div class="sso-box">
|
<div class="sso-box">
|
||||||
<p>Keycloak authentication failure</p>
|
<p>{{localize 'login_keycloak_error'}}</p>
|
||||||
<p>{{model.message}}</p>
|
<p>{{model.message}}</p>
|
||||||
</div>
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
|
@ -65,15 +65,6 @@ export default Controller.extend(AuthProvider, {
|
||||||
this.set('invalidCredentials', true);
|
this.set('invalidCredentials', true);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
// if (this.get('isAuthProviderCAS')) {
|
|
||||||
//
|
|
||||||
// this.get('session').authenticate('authenticator:cas').then((response) => {
|
|
||||||
// this.transitionToRoute('folders');
|
|
||||||
// return response;
|
|
||||||
// }).catch(() => {
|
|
||||||
// this.set('invalidCredentials', true);
|
|
||||||
// });
|
|
||||||
// }
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
@ -2,37 +2,35 @@
|
||||||
{{#if model.showLogin}}
|
{{#if model.showLogin}}
|
||||||
<div class="auth-box">
|
<div class="auth-box">
|
||||||
<div class="logo">
|
<div class="logo">
|
||||||
<img src="{{appMeta.endpoint}}/public/logo?cb={{random-id}}"
|
<img src="{{appMeta.endpoint}}/public/logo?cb={{random-id}}" title="{{appMeta.title}}" alt="{{appMeta.title}}" class="img-fluid">
|
||||||
title="Community" alt="Community" class="img-fluid">
|
|
||||||
<div class="url">{{appMeta.title}} ({{appMeta.appHost}})</div>
|
<div class="url">{{appMeta.title}} ({{appMeta.appHost}})</div>
|
||||||
</div>
|
</div>
|
||||||
<form {{action "login" on="submit"}}>
|
<form {{action "login" on="submit"}}>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
{{#if isAuthProviderDocumize}}
|
{{#if isAuthProviderDocumize}}
|
||||||
<label for="authEmail">Email</label>
|
<label for="authEmail">{{localize 'email'}}</label>
|
||||||
{{focus-input type="email" value=email id="authEmail" class="form-control mousetrap" placeholder="" autocomplete="username email"}}
|
{{focus-input type="email" value=email id="authEmail" class="form-control mousetrap" placeholder="" autocomplete="username email"}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
{{#if isAuthProviderLDAP}}
|
{{#if isAuthProviderLDAP}}
|
||||||
<label for="authUsername">Username</label>
|
<label for="authUsername">{{localize 'username'}}</label>
|
||||||
{{focus-input type="text" value=username id="authUsername" class="form-control mousetrap" placeholder="network domain username" autocomplete="username"}}
|
{{focus-input type="text" value=username id="authUsername" class="form-control mousetrap" placeholder="" autocomplete="username"}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
{{#if isAuthProviderDocumize}}
|
{{#if isAuthProviderDocumize}}
|
||||||
<label for="authPassword">Password</label>
|
<label for="authPassword">{{localize 'password'}}</label>
|
||||||
{{input type="password" value=password id="authPassword" class="form-control" autocomplete="current-password"}}
|
{{input type="password" value=password id="authPassword" class="form-control" autocomplete="current-password"}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
{{#if isAuthProviderLDAP}}
|
{{#if isAuthProviderLDAP}}
|
||||||
<label for="authPassword">Password</label>
|
<label for="authPassword">{{localize 'password'}}</label>
|
||||||
{{input type="password" value=password id="authPassword" class="form-control" autocomplete="current-password"}}
|
{{input type="password" value=password id="authPassword" class="form-control" autocomplete="current-password"}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</div>
|
</div>
|
||||||
{{ui/ui-button color=constants.Color.Green light=true label=(localize 'signin') onClick=(action "login")}}
|
{{ui/ui-button color=constants.Color.Green light=true label=(localize 'signin') onClick=(action "login")}}
|
||||||
|
|
||||||
|
<div class="{{unless invalidCredentials "invisible"}} color-red-600 mt-3"></div>
|
||||||
<div class="{{unless invalidCredentials "invisible"}} color-red-600 mt-3">Invalid credentials</div>
|
|
||||||
{{#if isAuthProviderDocumize}}
|
{{#if isAuthProviderDocumize}}
|
||||||
{{#link-to "auth.forgot"}}Forgot your password?{{/link-to}}
|
{{#link-to "auth.forgot"}}{{localize 'forgor_password'}}{{/link-to}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
<div class="sso-box">
|
<div class="sso-box">
|
||||||
<p>Logging out...</p>
|
<p>{{localize 'logout'}}</p>
|
||||||
<img src="/assets/img/busy-gray.gif">
|
<img src="/assets/img/busy-gray.gif">
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -11,14 +11,17 @@
|
||||||
|
|
||||||
import $ from 'jquery';
|
import $ from 'jquery';
|
||||||
import Route from '@ember/routing/route';
|
import Route from '@ember/routing/route';
|
||||||
|
import { inject as service } from '@ember/service';
|
||||||
|
|
||||||
export default Route.extend({
|
export default Route.extend({
|
||||||
|
i18n: service(),
|
||||||
|
|
||||||
model: function (params) {
|
model: function (params) {
|
||||||
return params.token;
|
return params.token;
|
||||||
},
|
},
|
||||||
|
|
||||||
activate() {
|
activate() {
|
||||||
this.get('browser').setTitleAsPhrase('Reset Password');
|
this.get('browser').setTitleAsPhrase(this.i18n.localize('reset_password'));
|
||||||
$('body').addClass('background-color-theme-100 d-flex justify-content-center align-items-center');
|
$('body').addClass('background-color-theme-100 d-flex justify-content-center align-items-center');
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,7 @@
|
||||||
<div class="auth-center">
|
<div class="auth-center">
|
||||||
<div class="auth-box">
|
<div class="auth-box">
|
||||||
<div class="logo">
|
<div class="logo">
|
||||||
<img src="{{appMeta.endpoint}}/public/logo?cb={{random-id}}"
|
<img src="{{appMeta.endpoint}}/public/logo?cb={{random-id}}" title="{{appMeta.title}}" alt="{{appMeta.title}}" class="img-fluid">
|
||||||
title="Community" alt="Community" class="img-fluid">
|
|
||||||
<div class="url">{{appMeta.title}} ({{appMeta.appHost}})</div>
|
<div class="url">{{appMeta.title}} ({{appMeta.appHost}})</div>
|
||||||
</div>
|
</div>
|
||||||
{{user/password-reset reset=(action "reset")}}
|
{{user/password-reset reset=(action "reset")}}
|
||||||
|
|
|
@ -37,6 +37,6 @@ export default Route.extend(AuthenticatedRouteMixin, {
|
||||||
},
|
},
|
||||||
|
|
||||||
activate() {
|
activate() {
|
||||||
this.get('browser').setTitleWithoutSuffix('Welcome to Documize');
|
this.get('browser').setTitleWithoutSuffix('Documize Community');
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
@ -5,8 +5,8 @@
|
||||||
<Layout::Grid::Sidebar>
|
<Layout::Grid::Sidebar>
|
||||||
<div class="sidebar-content">
|
<div class="sidebar-content">
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<div class="title">welcome to documize</div>
|
<div class="title">{{localize 'welcome'}}</div>
|
||||||
<p>Let's set up your account and get you started</p>
|
<p>{{localize 'welcome_explain'}}</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</Layout::Grid::Sidebar>
|
</Layout::Grid::Sidebar>
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
<div class="sso-box">
|
<div class="sso-box">
|
||||||
<p>Signing in...</p>
|
<p>{{localize 'authentication'}}</p>
|
||||||
<img src="/assets/img/busy-gray.gif" alt="busy">
|
<img src="/assets/img/busy-gray.gif" alt="busy">
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
<div class="sidebar-content">
|
<div class="sidebar-content">
|
||||||
<Layout::Grid::SidebarGoTop />
|
<Layout::Grid::SidebarGoTop />
|
||||||
<Layout::Grid::SidebarCustomAction>
|
<Layout::Grid::SidebarCustomAction>
|
||||||
<i class="dicon {{constants.Icon.Expand}} {{if (gt expandState.length 0) "color-green-500"}}" {{action "onExpandAll"}} title="Expand/collapse" />
|
<i class="dicon {{constants.Icon.Expand}} {{if (gt expandState.length 0) "color-green-500"}}" {{action "onExpandAll"}} title={{localize 'expand_collapse'}} />
|
||||||
</Layout::Grid::SidebarCustomAction>
|
</Layout::Grid::SidebarCustomAction>
|
||||||
|
|
||||||
<Ui::UiSpacer @size="200" />
|
<Ui::UiSpacer @size="200" />
|
||||||
|
|
|
@ -2,8 +2,7 @@
|
||||||
<Layout::MasterToolbar>
|
<Layout::MasterToolbar>
|
||||||
<div class="zone-1">
|
<div class="zone-1">
|
||||||
{{#ui/ui-toolbar dark=false light=false raised=false large=false bordered=false}}
|
{{#ui/ui-toolbar dark=false light=false raised=false large=false bordered=false}}
|
||||||
{{ui/ui-toolbar-button themed=true uppercase=false
|
{{ui/ui-toolbar-button themed=true uppercase=false icon=constants.Icon.ArrowLeft label=document.name onClick=(action "onBack")}}
|
||||||
icon=constants.Icon.ArrowLeft label=document.name onClick=(action "onBack")}}
|
|
||||||
{{/ui/ui-toolbar}}
|
{{/ui/ui-toolbar}}
|
||||||
</div>
|
</div>
|
||||||
<div class="zone-2" />
|
<div class="zone-2" />
|
||||||
|
@ -14,7 +13,7 @@
|
||||||
<Layout::Grid::Sidebar>
|
<Layout::Grid::Sidebar>
|
||||||
<div class="sidebar-content">
|
<div class="sidebar-content">
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<div class="title">REVISIONS</div>
|
<div class="title">{{localize 'revisions'}}</div>
|
||||||
<div class="list">
|
<div class="list">
|
||||||
{{#each revisions as |revision|}}
|
{{#each revisions as |revision|}}
|
||||||
<div class="item {{if (eq selectedRevision revision) "selected"}}" {{action "onRevision" revision}}>
|
<div class="item {{if (eq selectedRevision revision) "selected"}}" {{action "onRevision" revision}}>
|
||||||
|
@ -29,8 +28,8 @@
|
||||||
|
|
||||||
<Layout::Grid::Content>
|
<Layout::Grid::Content>
|
||||||
{{layout/logo-heading
|
{{layout/logo-heading
|
||||||
title="Content Revisions"
|
title=(localize 'content_revisions')
|
||||||
desc="Review previous content changes and roll back edits"
|
desc=(localize 'content_revisions_explain')
|
||||||
icon=constants.Icon.TimeBack}}
|
icon=constants.Icon.TimeBack}}
|
||||||
|
|
||||||
{{document/view-revision
|
{{document/view-revision
|
||||||
|
|
|
@ -2,8 +2,7 @@
|
||||||
<Layout::MasterToolbar>
|
<Layout::MasterToolbar>
|
||||||
<div class="zone-1">
|
<div class="zone-1">
|
||||||
{{#ui/ui-toolbar dark=false light=false raised=false large=false bordered=false}}
|
{{#ui/ui-toolbar dark=false light=false raised=false large=false bordered=false}}
|
||||||
{{ui/ui-toolbar-button themed=true uppercase=false
|
{{ui/ui-toolbar-button themed=true uppercase=false icon=constants.Icon.ArrowLeft label=model.document.name onClick=(action "onCancel")}}
|
||||||
icon=constants.Icon.ArrowLeft label=model.document.name onClick=(action "onCancel")}}
|
|
||||||
{{/ui/ui-toolbar}}
|
{{/ui/ui-toolbar}}
|
||||||
</div>
|
</div>
|
||||||
<div class="zone-2" />
|
<div class="zone-2" />
|
||||||
|
@ -19,7 +18,7 @@
|
||||||
attachments=model.attachments
|
attachments=model.attachments
|
||||||
onCancel=(action "onCancel") onAction=(action "onAction")}}
|
onCancel=(action "onCancel") onAction=(action "onAction")}}
|
||||||
|
|
||||||
{{document/section-attachment uploadLabel="Upload Attachments"
|
{{document/section-attachment uploadLabel=(localize 'upload_attachment')
|
||||||
editMode=true page=model.page document=model.document
|
editMode=true page=model.page document=model.document
|
||||||
files=model.attachments
|
files=model.attachments
|
||||||
onAttachmentUpload=(action "onAttachmentUpload")
|
onAttachmentUpload=(action "onAttachmentUpload")
|
||||||
|
|
|
@ -2,8 +2,7 @@
|
||||||
<Layout::MasterToolbar>
|
<Layout::MasterToolbar>
|
||||||
<div class="zone-1">
|
<div class="zone-1">
|
||||||
{{#ui/ui-toolbar dark=false light=false raised=false large=false bordered=false}}
|
{{#ui/ui-toolbar dark=false light=false raised=false large=false bordered=false}}
|
||||||
{{ui/ui-toolbar-button themed=true uppercase=false
|
{{ui/ui-toolbar-button themed=true uppercase=false icon=constants.Icon.ArrowLeft label=model.document.name onClick=(action "onBack")}}
|
||||||
icon=constants.Icon.ArrowLeft label=model.document.name onClick=(action "onBack")}}
|
|
||||||
{{/ui/ui-toolbar}}
|
{{/ui/ui-toolbar}}
|
||||||
</div>
|
</div>
|
||||||
<div class="zone-2" />
|
<div class="zone-2" />
|
||||||
|
@ -14,31 +13,31 @@
|
||||||
<Layout::Grid::Sidebar>
|
<Layout::Grid::Sidebar>
|
||||||
<div class="sidebar-content">
|
<div class="sidebar-content">
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<div class="title">Options</div>
|
<div class="title">{{localize 'options'}}</div>
|
||||||
<div class="list">
|
<div class="list">
|
||||||
<div class="item {{if (eq tab "general") "selected"}}" {{action "onTab" "general"}}>
|
<div class="item {{if (eq tab "general") "selected"}}" {{action "onTab" "general"}}>
|
||||||
<i class={{concat "dicon " constants.Icon.Settings}} />
|
<i class={{concat "dicon " constants.Icon.Settings}} />
|
||||||
<div class="name">Content Settings</div>
|
<div class="name">{{localize 'settings'}}</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="item {{if (eq tab "category") "selected"}}" {{action "onTab" "category"}}>
|
<div class="item {{if (eq tab "category") "selected"}}" {{action "onTab" "category"}}>
|
||||||
<i class={{concat "dicon " constants.Icon.Category}} />
|
<i class={{concat "dicon " constants.Icon.Category}} />
|
||||||
<div class="name">Categories</div>
|
<div class="name">{{localize 'categories'}}</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="item {{if (eq tab "tag") "selected"}}" {{action "onTab" "tag"}}>
|
<div class="item {{if (eq tab "tag") "selected"}}" {{action "onTab" "tag"}}>
|
||||||
<i class={{concat "dicon " constants.Icon.Tag}} />
|
<i class={{concat "dicon " constants.Icon.Tag}} />
|
||||||
<div class="name">Tags</div>
|
<div class="name">{{localize 'tags'}}</div>
|
||||||
</div>
|
</div>
|
||||||
{{#if (eq appMeta.edition constants.Product.EnterpriseEdition)}}
|
{{#if (eq appMeta.edition constants.Product.EnterpriseEdition)}}
|
||||||
{{#if model.permissions.documentApprove}}
|
{{#if model.permissions.documentApprove}}
|
||||||
<div class="item {{if (eq tab "protection") "selected"}}" {{action "onTab" "protection"}}>
|
<div class="item {{if (eq tab "protection") "selected"}}" {{action "onTab" "protection"}}>
|
||||||
<i class={{concat "dicon " constants.Icon.Locked}} />
|
<i class={{concat "dicon " constants.Icon.Locked}} />
|
||||||
<div class="name">Change Control</div>
|
<div class="name">{{localize 'change_control'}}</div>
|
||||||
</div>
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
{{#if model.permissions.documentVersion}}
|
{{#if model.permissions.documentVersion}}
|
||||||
<div class="item {{if (eq tab "versions") "selected"}}" {{action "onTab" "versions"}}>
|
<div class="item {{if (eq tab "versions") "selected"}}" {{action "onTab" "versions"}}>
|
||||||
<i class={{concat "dicon " constants.Icon.Copy}} />
|
<i class={{concat "dicon " constants.Icon.Copy}} />
|
||||||
<div class="name">Versions</div>
|
<div class="name">{{localize 'versions'}}</div>
|
||||||
</div>
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
|
@ -2,8 +2,7 @@
|
||||||
<Layout::MasterToolbar>
|
<Layout::MasterToolbar>
|
||||||
<div class="zone-1">
|
<div class="zone-1">
|
||||||
{{#ui/ui-toolbar dark=false light=false raised=false large=false bordered=false}}
|
{{#ui/ui-toolbar dark=false light=false raised=false large=false bordered=false}}
|
||||||
{{ui/ui-toolbar-button themed=true uppercase=false
|
{{ui/ui-toolbar-button themed=true uppercase=false icon=constants.Icon.ArrowLeft label=model.space.name onClick=(action "onBack")}}
|
||||||
icon=constants.Icon.ArrowLeft label=model.space.name onClick=(action "onBack")}}
|
|
||||||
{{/ui/ui-toolbar}}
|
{{/ui/ui-toolbar}}
|
||||||
</div>
|
</div>
|
||||||
</Layout::MasterToolbar>
|
</Layout::MasterToolbar>
|
||||||
|
@ -12,16 +11,16 @@
|
||||||
<Layout::Grid::Sidebar>
|
<Layout::Grid::Sidebar>
|
||||||
<div class="sidebar-content">
|
<div class="sidebar-content">
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<div class="title">about</div>
|
<div class="title">{{localize 'about'}}</div>
|
||||||
<div class="text">Manage reusable snippets of content for this space</div>
|
<div class="text">{{localize 'block_explain'}}</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</Layout::Grid::Sidebar>
|
</Layout::Grid::Sidebar>
|
||||||
|
|
||||||
<Layout::Grid::Content>
|
<Layout::Grid::Content>
|
||||||
{{layout/logo-heading
|
{{layout/logo-heading
|
||||||
title="Content Blocks"
|
title=(localize 'blocks')
|
||||||
desc="Content blocks provide re-usable content that can be inserted into any document"
|
desc=(localize 'block_explain')
|
||||||
icon=constants.Icon.Integrations}}
|
icon=constants.Icon.Integrations}}
|
||||||
|
|
||||||
{{document/block-editor document=model.document folder=model.space block=model.block
|
{{document/block-editor document=model.document folder=model.space block=model.block
|
||||||
|
|
|
@ -21,6 +21,8 @@ export default Controller.extend(NotifierMixin, {
|
||||||
localStorage: service('localStorage'),
|
localStorage: service('localStorage'),
|
||||||
browserSvc: service('browser'),
|
browserSvc: service('browser'),
|
||||||
documentSvc: service('document'),
|
documentSvc: service('document'),
|
||||||
|
i18n: service(),
|
||||||
|
|
||||||
queryParams: ['category'],
|
queryParams: ['category'],
|
||||||
category: '',
|
category: '',
|
||||||
filteredDocs: null,
|
filteredDocs: null,
|
||||||
|
@ -88,7 +90,7 @@ export default Controller.extend(NotifierMixin, {
|
||||||
|
|
||||||
this.get('documentSvc').export(spec).then((htmlExport) => {
|
this.get('documentSvc').export(spec).then((htmlExport) => {
|
||||||
this.get('browserSvc').downloadFile(htmlExport, this.get('model.folder.slug') + '.html');
|
this.get('browserSvc').downloadFile(htmlExport, this.get('model.folder.slug') + '.html');
|
||||||
this.notifySuccess('Exported');
|
this.notifySuccess(this.i18n.localize('exported'));
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -126,21 +128,21 @@ export default Controller.extend(NotifierMixin, {
|
||||||
|
|
||||||
onPin(documentId) {
|
onPin(documentId) {
|
||||||
this.get('documentSvc').pin(documentId).then(() => {
|
this.get('documentSvc').pin(documentId).then(() => {
|
||||||
this.notifySuccess('Pinned');
|
this.notifySuccess(this.i18n.localize('pinned'));
|
||||||
this.send('onRefresh');
|
this.send('onRefresh');
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
onUnpin(documentId) {
|
onUnpin(documentId) {
|
||||||
this.get('documentSvc').unpin(documentId).then(() => {
|
this.get('documentSvc').unpin(documentId).then(() => {
|
||||||
this.notifySuccess('Unpinned');
|
this.notifySuccess(this.i18n.localize('unpinned'));
|
||||||
this.send('onRefresh');
|
this.send('onRefresh');
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
onPinSequence(documentId, direction) {
|
onPinSequence(documentId, direction) {
|
||||||
this.get('documentSvc').onPinSequence(documentId, direction).then(() => {
|
this.get('documentSvc').onPinSequence(documentId, direction).then(() => {
|
||||||
this.notifySuccess('Moved');
|
this.notifySuccess(this.i18n.localize('moved'));
|
||||||
this.send('onRefresh');
|
this.send('onRefresh');
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
|
@ -2,8 +2,7 @@
|
||||||
<Layout::MasterToolbar>
|
<Layout::MasterToolbar>
|
||||||
<div class="zone-1">
|
<div class="zone-1">
|
||||||
{{#ui/ui-toolbar dark=false light=false raised=false large=false bordered=false}}
|
{{#ui/ui-toolbar dark=false light=false raised=false large=false bordered=false}}
|
||||||
{{ui/ui-toolbar-button themed=true uppercase=true
|
{{ui/ui-toolbar-button themed=true uppercase=true icon=constants.Icon.ArrowLeft label=(localize 'spaces') onClick=(action "onBack")}}
|
||||||
icon=constants.Icon.ArrowLeft label=(localize 'spaces') onClick=(action "onBack")}}
|
|
||||||
{{/ui/ui-toolbar}}
|
{{/ui/ui-toolbar}}
|
||||||
</div>
|
</div>
|
||||||
<div class="zone-2" />
|
<div class="zone-2" />
|
||||||
|
@ -42,7 +41,7 @@
|
||||||
|
|
||||||
<Layout::Grid::Content>
|
<Layout::Grid::Content>
|
||||||
{{#if (eq model.folder.labelId "")}}
|
{{#if (eq model.folder.labelId "")}}
|
||||||
<div class="space-label">Unclassified</div>
|
<div class="space-label">{{localize 'label_unclassified'}}</div>
|
||||||
{{else}}
|
{{else}}
|
||||||
<div class="space-label" style={{{model.label.bgColor}}}>{{model.label.name}}</div>
|
<div class="space-label" style={{{model.label.bgColor}}}>{{model.label.name}}</div>
|
||||||
{{#if (gt model.labelSpaces.length 1)}}
|
{{#if (gt model.labelSpaces.length 1)}}
|
||||||
|
|
|
@ -2,8 +2,7 @@
|
||||||
<Layout::MasterToolbar>
|
<Layout::MasterToolbar>
|
||||||
<div class="zone-1">
|
<div class="zone-1">
|
||||||
{{#ui/ui-toolbar dark=false light=false raised=false large=false bordered=false}}
|
{{#ui/ui-toolbar dark=false light=false raised=false large=false bordered=false}}
|
||||||
{{ui/ui-toolbar-button themed=true uppercase=false
|
{{ui/ui-toolbar-button themed=true uppercase=false icon=constants.Icon.ArrowLeft label=model.folder.name onClick=(action "onBack")}}
|
||||||
icon=constants.Icon.ArrowLeft label=model.folder.name onClick=(action "onBack")}}
|
|
||||||
{{/ui/ui-toolbar}}
|
{{/ui/ui-toolbar}}
|
||||||
</div>
|
</div>
|
||||||
</Layout::MasterToolbar>
|
</Layout::MasterToolbar>
|
||||||
|
@ -12,34 +11,34 @@
|
||||||
<Layout::Grid::Sidebar>
|
<Layout::Grid::Sidebar>
|
||||||
<div class="sidebar-content">
|
<div class="sidebar-content">
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<div class="title">space management</div>
|
<div class="title">{{localize 'space'}}</div>
|
||||||
<div class="list">
|
<div class="list">
|
||||||
<div class="item {{if (eq tab "general") "selected"}}" {{action "onTab" "general"}}>
|
<div class="item {{if (eq tab "general") "selected"}}" {{action "onTab" "general"}}>
|
||||||
<i class={{concat "dicon " constants.Icon.Settings}} />
|
<i class={{concat "dicon " constants.Icon.Settings}} />
|
||||||
<div class="name">Meta</div>
|
<div class="name">{{localize 'meta'}}</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="item {{if (eq tab "categories") "selected"}}" {{action "onTab" "categories"}}>
|
<div class="item {{if (eq tab "categories") "selected"}}" {{action "onTab" "categories"}}>
|
||||||
<i class={{concat "dicon " constants.Icon.Category}} />
|
<i class={{concat "dicon " constants.Icon.Category}} />
|
||||||
<div class="name">Categories</div>
|
<div class="name">{{localize 'categories'}}</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="item {{if (eq tab "permissions") "selected"}}" {{action "onTab" "permissions"}}>
|
<div class="item {{if (eq tab "permissions") "selected"}}" {{action "onTab" "permissions"}}>
|
||||||
<i class={{concat "dicon " constants.Icon.Locked}} />
|
<i class={{concat "dicon " constants.Icon.Locked}} />
|
||||||
<div class="name">Permissions</div>
|
<div class="name">{{localize 'permissions'}}</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="item {{if (eq tab "blocks") "selected"}}" {{action "onTab" "blocks"}}>
|
<div class="item {{if (eq tab "blocks") "selected"}}" {{action "onTab" "blocks"}}>
|
||||||
<i class={{concat "dicon " constants.Icon.Blocks}} />
|
<i class={{concat "dicon " constants.Icon.Blocks}} />
|
||||||
<div class="name">Content Blocks</div>
|
<div class="name">{{localize 'blocks'}}</div>
|
||||||
</div>
|
</div>
|
||||||
{{#if (eq appMeta.edition constants.Product.EnterpriseEdition)}}
|
{{#if (eq appMeta.edition constants.Product.EnterpriseEdition)}}
|
||||||
<div class="item {{if (eq tab "archived") "selected"}}" {{action "onTab" "archived"}}>
|
<div class="item {{if (eq tab "archived") "selected"}}" {{action "onTab" "archived"}}>
|
||||||
<i class={{concat "dicon " constants.Icon.Archive}} />
|
<i class={{concat "dicon " constants.Icon.Archive}} />
|
||||||
<div class="name">Archived Content</div>
|
<div class="name">{{localize 'archived'}}</div>
|
||||||
</div>
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
{{#if model.permissions.spaceOwner}}
|
{{#if model.permissions.spaceOwner}}
|
||||||
<div class="item {{if (eq tab "deletion") "selected"}}" {{action "onTab" "deletion"}}>
|
<div class="item {{if (eq tab "deletion") "selected"}}" {{action "onTab" "deletion"}}>
|
||||||
<i class={{concat "dicon " constants.Icon.Delete}} />
|
<i class={{concat "dicon " constants.Icon.Delete}} />
|
||||||
<div class="name">Deletion</div>
|
<div class="name">{{localize 'delete'}}</div>
|
||||||
</div>
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -20,6 +20,7 @@ export default Route.extend(AuthenticatedRouteMixin, {
|
||||||
iconSvc: service('icon'),
|
iconSvc: service('icon'),
|
||||||
localStorage: service(),
|
localStorage: service(),
|
||||||
labelSvc: service('label'),
|
labelSvc: service('label'),
|
||||||
|
i18n: service(),
|
||||||
|
|
||||||
beforeModel() {
|
beforeModel() {
|
||||||
if (this.get('appMeta.setupMode')) {
|
if (this.get('appMeta.setupMode')) {
|
||||||
|
@ -72,6 +73,6 @@ export default Route.extend(AuthenticatedRouteMixin, {
|
||||||
},
|
},
|
||||||
|
|
||||||
activate() {
|
activate() {
|
||||||
this.get('browser').setTitle('Spaces');
|
this.get('browser').setTitle(this.i18n.localize('spaces'));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
@ -6,13 +6,11 @@
|
||||||
{{#if (or session.isEditor session.isAdmin)}}
|
{{#if (or session.isEditor session.isAdmin)}}
|
||||||
{{#ui/ui-toolbar dark=false light=false raised=false large=false bordered=false}}
|
{{#ui/ui-toolbar dark=false light=false raised=false large=false bordered=false}}
|
||||||
{{#if session.isEditor}}
|
{{#if session.isEditor}}
|
||||||
{{ui/ui-toolbar-button icon=constants.Icon.Plus color=constants.Color.Green
|
{{ui/ui-toolbar-button icon=constants.Icon.Plus color=constants.Color.Green label=(localize 'space') onClick=(action "onShowModal")}}
|
||||||
label=(localize 'space') onClick=(action "onShowModal")}}
|
|
||||||
{{ui/ui-toolbar-divider}}
|
{{ui/ui-toolbar-divider}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
{{#if session.isAdmin}}
|
{{#if session.isAdmin}}
|
||||||
{{ui/ui-toolbar-icon icon=constants.Icon.Settings color=constants.Color.Green
|
{{ui/ui-toolbar-icon icon=constants.Icon.Settings color=constants.Color.Green linkTo="customize"}}
|
||||||
linkTo="customize"}}
|
|
||||||
{{/if}}
|
{{/if}}
|
||||||
{{/ui/ui-toolbar}}
|
{{/ui/ui-toolbar}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
|
@ -11,14 +11,17 @@
|
||||||
|
|
||||||
import Route from '@ember/routing/route';
|
import Route from '@ember/routing/route';
|
||||||
import AuthenticatedRouteMixin from 'ember-simple-auth/mixins/authenticated-route-mixin';
|
import AuthenticatedRouteMixin from 'ember-simple-auth/mixins/authenticated-route-mixin';
|
||||||
|
import { inject as service } from '@ember/service';
|
||||||
|
|
||||||
export default Route.extend(AuthenticatedRouteMixin, {
|
export default Route.extend(AuthenticatedRouteMixin, {
|
||||||
|
i18n: service(),
|
||||||
|
|
||||||
beforeModel() {
|
beforeModel() {
|
||||||
// this.transitionTo('folders');
|
// this.transitionTo('folders');
|
||||||
},
|
},
|
||||||
|
|
||||||
activate: function () {
|
activate: function () {
|
||||||
this._super(...arguments);
|
this._super(...arguments);
|
||||||
this.browser.setTitleWithoutSuffix('Aw, Snap!');
|
this.browser.setTitleWithoutSuffix(this.i18n.localize('not_found'));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<div class="not-found">
|
<div class="not-found">
|
||||||
<h1>Oops! That page couldn't be found.</h1>
|
<h1>{{localize '404'}}</h1>
|
||||||
<p>Maybe the content you're looking for is no longer available?</p>
|
<p>{{localize '404_explain'}}</p>
|
||||||
<p> </p>
|
<p> </p>
|
||||||
<a href="/">Return to Documize home page</a>
|
<a href="/">{{localize 'spaces'}}</a>
|
||||||
</div>
|
</div>
|
||||||
{{outlet}}
|
{{outlet}}
|
||||||
|
|
|
@ -1,17 +1,17 @@
|
||||||
<form {{action "forgot" on="submit"}}>
|
<form {{action "forgot" on="submit"}}>
|
||||||
{{#if sayThanks}}
|
{{#if sayThanks}}
|
||||||
<p class="color-green-700 margin-bottom-30">Thanks. Check your email for instructions.</p>
|
<p class="color-green-700 margin-bottom-30">{{localize 'reset_password_next'}}.</p>
|
||||||
{{else}}
|
{{else}}
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label for="email">Email</label>
|
<label for="email">{{localize 'email'}}</label>
|
||||||
{{focus-input type="email" value=email id="email" class=(if hasEmptyEmailError "form-control is-invalid" "form-control")}}
|
{{focus-input type="email" value=email id="email" class=(if hasEmptyEmailError "form-control is-invalid" "form-control")}}
|
||||||
{{#if sayError}}
|
{{#if sayError}}
|
||||||
<p class="color-red-700 margin-top-10">Email not found</p>
|
<p class="color-red-700 margin-top-10">{{localize 'not_found'}}</p>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</div>
|
</div>
|
||||||
{{ui/ui-button color=constants.Color.Yellow light=true label=(localize 'reset') onClick=(action "forgot")}}
|
{{ui/ui-button color=constants.Color.Yellow light=true label=(localize 'reset') onClick=(action "forgot")}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
<Ui::UiSpacer @size="400" />
|
<Ui::UiSpacer @size="400" />
|
||||||
{{#link-to "auth.login"}}Click here to sign in{{/link-to}}
|
{{#link-to "auth.login"}}{{localize 'signin'}}{{/link-to}}
|
||||||
</form>
|
</form>
|
||||||
|
|
|
@ -1,18 +1,17 @@
|
||||||
<div class="login-form">
|
<div class="login-form">
|
||||||
<form {{action "reset" on="submit"}}>
|
<form {{action "reset" on="submit"}}>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label>New Password</label>
|
<label>{{localize 'password_new'}}</label>
|
||||||
{{focus-input type="password" value=password id="newPassword" autocomplete="new-password" class=(if hasPasswordError "form-control is-invalid" "form-control")}}
|
{{focus-input type="password" value=password id="newPassword" autocomplete="new-password" class=(if hasPasswordError "form-control is-invalid" "form-control")}}
|
||||||
<small class="form-text text-muted">Choose a strong password</small>
|
<small class="form-text text-muted">{{localize 'password_strong'}}</small>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label>Confirm Password</label>
|
<label>{{localize 'confirm_password'}}</label>
|
||||||
{{input type="password" value=passwordConfirm id="passwordConfirm" autocomplete="new-password" class=(if hasConfirmError "form-control is-invalid" "form-control")}}
|
{{input type="password" value=passwordConfirm id="passwordConfirm" autocomplete="new-password" class=(if hasConfirmError "form-control is-invalid" "form-control")}}
|
||||||
<small class="form-text text-muted">Please type your new password again</small>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="margin-top-10 margin-bottom-20">
|
<div class="margin-top-10 margin-bottom-20">
|
||||||
{{ui/ui-button color=constants.Color.Green light=true label=(localize 'reset') onClick=(action "reset")}}
|
{{ui/ui-button color=constants.Color.Green light=true label=(localize 'reset') onClick=(action "reset")}}
|
||||||
<span class="{{unless mustMatch "d-none"}} color-red-600 margin-left-20">Passwords must match</span>
|
<span class="{{unless mustMatch "d-none"}} color-red-600 margin-left-20">{{localize 'password_match'}}</span>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1,23 +1,23 @@
|
||||||
<div class="view-profile">
|
<div class="view-profile">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label for="firstname">Firstname</label>
|
<label for="firstname">{{localize 'firstname'}}</label>
|
||||||
{{focus-input id="firstname" type="text" value=model.firstname class=(if hasFirstnameError "form-control is-invalid" "form-control")}}
|
{{focus-input id="firstname" type="text" value=model.firstname class=(if hasFirstnameError "form-control is-invalid" "form-control")}}
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label for="lastname">Lastname</label>
|
<label for="lastname">{{localize 'lastname'}}</label>
|
||||||
{{input id="lastname" type="text" value=model.lastname class=(if hasLastnameError "form-control is-invalid" "form-control")}}
|
{{input id="lastname" type="text" value=model.lastname class=(if hasLastnameError "form-control is-invalid" "form-control")}}
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label for="email">Email</label>
|
<label for="email">{{localize 'email'}}</label>
|
||||||
{{input id="email" type="email" value=model.email class=(if hasEmailError "form-control is-invalid" "form-control")}}
|
{{input id="email" type="email" value=model.email class=(if hasEmailError "form-control is-invalid" "form-control")}}
|
||||||
</div>
|
</div>
|
||||||
{{#if isAuthProviderDocumize}}
|
{{#if isAuthProviderDocumize}}
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label for="password">Password</label>
|
<label for="password">{{localize 'password'}}</label>
|
||||||
{{input id="password" type="password" value=password.password class=(if hasPasswordError "form-control is-invalid" "form-control")}}
|
{{input id="password" type="password" value=password.password class=(if hasPasswordError "form-control is-invalid" "form-control")}}
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label for="confirmPassword">Confirm Password</label>
|
<label for="confirmPassword">{{localize 'confirm_password'}}</label>
|
||||||
{{input id="confirmPassword" type="password" value=password.confirmation class=(if hasConfirmPasswordError "form-control is-invalid" "form-control")}}
|
{{input id="confirmPassword" type="password" value=password.confirmation class=(if hasConfirmPasswordError "form-control is-invalid" "form-control")}}
|
||||||
</div>
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
|
@ -15,6 +15,7 @@
|
||||||
"edit": "Edit",
|
"edit": "Edit",
|
||||||
"import": "Import",
|
"import": "Import",
|
||||||
"export": "Export",
|
"export": "Export",
|
||||||
|
"exported": "Exported",
|
||||||
"test": "Test",
|
"test": "Test",
|
||||||
"error": "Error",
|
"error": "Error",
|
||||||
"file": "File",
|
"file": "File",
|
||||||
|
@ -23,8 +24,10 @@
|
||||||
"join": "Join",
|
"join": "Join",
|
||||||
"leave": "Leave",
|
"leave": "Leave",
|
||||||
"login": "Login",
|
"login": "Login",
|
||||||
|
"logout": "logout",
|
||||||
"authentication": "Authentication",
|
"authentication": "Authentication",
|
||||||
"move": "Move",
|
"move": "Move",
|
||||||
|
"moved": "Moved",
|
||||||
"next": "Next",
|
"next": "Next",
|
||||||
"ok": "OK",
|
"ok": "OK",
|
||||||
"preview": "Preview",
|
"preview": "Preview",
|
||||||
|
@ -44,7 +47,6 @@
|
||||||
"sort": "Sort",
|
"sort": "Sort",
|
||||||
"unassigned": "Unassigned",
|
"unassigned": "Unassigned",
|
||||||
"update": "Update",
|
"update": "Update",
|
||||||
"version": "Version",
|
|
||||||
"viewed": "Viewed",
|
"viewed": "Viewed",
|
||||||
"edited": "Edited",
|
"edited": "Edited",
|
||||||
"draft": "Draft",
|
"draft": "Draft",
|
||||||
|
@ -62,6 +64,8 @@
|
||||||
"lastname": "Lastname",
|
"lastname": "Lastname",
|
||||||
"email": "Email",
|
"email": "Email",
|
||||||
"password": "Password",
|
"password": "Password",
|
||||||
|
"password_new": "New Password",
|
||||||
|
"username": "Username",
|
||||||
"password_confirm": "Confirm Password",
|
"password_confirm": "Confirm Password",
|
||||||
"encryption": "Encryption",
|
"encryption": "Encryption",
|
||||||
"notice": "Notice",
|
"notice": "Notice",
|
||||||
|
@ -69,18 +73,34 @@
|
||||||
"restore": "Restore",
|
"restore": "Restore",
|
||||||
"completed": "Completed",
|
"completed": "Completed",
|
||||||
"please_wait": "Please wait..",
|
"please_wait": "Please wait..",
|
||||||
|
|
||||||
"filter": "Filter",
|
"filter": "Filter",
|
||||||
"all": "All",
|
"all": "All",
|
||||||
|
"not_found": "Not found",
|
||||||
|
"expand_collapse": "Expand/collapse",
|
||||||
|
"options": "Options",
|
||||||
|
"settings": "Settings",
|
||||||
|
"about": "About",
|
||||||
|
"meta": "Meta",
|
||||||
|
"permissions": "Permissions",
|
||||||
|
|
||||||
"public": "Public",
|
"public": "Public",
|
||||||
"protected": "Protected",
|
"protected": "Protected",
|
||||||
"personal": "Personal",
|
"personal": "Personal",
|
||||||
|
|
||||||
"label": "Label",
|
"label": "Label",
|
||||||
"labels": "Labels",
|
"labels": "Labels",
|
||||||
"labels_none": "No labels",
|
"labels_none": "No labels",
|
||||||
|
"label_unclassified": "Unclassified",
|
||||||
"space": "Space",
|
"space": "Space",
|
||||||
"spaces": "Spaces",
|
"spaces": "Spaces",
|
||||||
|
"categories": "Categories",
|
||||||
|
"tags": "Tags",
|
||||||
|
"revisions": "revisions",
|
||||||
|
"versions": "Versions",
|
||||||
|
"version": "Version",
|
||||||
|
"change_control": "Change Control",
|
||||||
|
"pinned": "Pinned",
|
||||||
|
"unpinned": "Unpinned",
|
||||||
|
"blocks": "Content Blocks",
|
||||||
|
|
||||||
"space_new": "New Space",
|
"space_new": "New Space",
|
||||||
"space_name": "Space name",
|
"space_name": "Space name",
|
||||||
|
@ -91,7 +111,6 @@
|
||||||
"space_copy_template": "Copy templates",
|
"space_copy_template": "Copy templates",
|
||||||
"space_copy_permission": "Copy permissions",
|
"space_copy_permission": "Copy permissions",
|
||||||
"space_copy_document": "Copy documents",
|
"space_copy_document": "Copy documents",
|
||||||
|
|
||||||
"protection_none": "Changes permitted without approval",
|
"protection_none": "Changes permitted without approval",
|
||||||
"protection_lock": "Locked, changes not permitted",
|
"protection_lock": "Locked, changes not permitted",
|
||||||
"protection_review": "Changes require approval before publication",
|
"protection_review": "Changes require approval before publication",
|
||||||
|
@ -99,7 +118,24 @@
|
||||||
"approval_majority": "Majority approval required from approvers",
|
"approval_majority": "Majority approval required from approvers",
|
||||||
"approval_unanimous": "Unanimous approval required from all approvers",
|
"approval_unanimous": "Unanimous approval required from all approvers",
|
||||||
"template_published": "Published Template",
|
"template_published": "Published Template",
|
||||||
|
"block_explain": "Content blocks provide re-usable content that can be inserted into any document",
|
||||||
"block_published": "Published Block",
|
"block_published": "Published Block",
|
||||||
|
"upload_attachment": "Upload Attachments",
|
||||||
|
"content_revisions": "Content Revisions",
|
||||||
|
"content_revisions_explain": "Review previous content changes and roll back edits",
|
||||||
|
|
||||||
|
"login_cas": "Authenticating with CAS...",
|
||||||
|
"login_cass_error": "CAS authentication failure",
|
||||||
|
"login_keycloak": "Authenticating with Keycloak...",
|
||||||
|
"login_keycloak_error": "Keycloak authentication failure",
|
||||||
|
"login_invalid": "Invalid credentials",
|
||||||
|
"forgot_password": "Forgot your password?",
|
||||||
|
"reset_password": "Reset Password",
|
||||||
|
"reset_password_next": "Thanks. Check your email for instructions.",
|
||||||
|
"password_strong": "Choose a strong password",
|
||||||
|
"password_match": "Passwords must match",
|
||||||
|
"welcome": "Welcome to Documize",
|
||||||
|
"welcome_explain": "Let's set up your account and get you started",
|
||||||
|
|
||||||
"backup_explain1": "Documize Community is a multi-tenanted application enabling both 'tech.mycompany.com' and 'sales.mycompany.com' to run using the same executable/database. As a Documize Community Global Administrator, you will be performing a complete system-wide backup across all tenants. The Documize Community Tenant Administrator can login to perform a tenant-level backup (e.g. marketing.mycompany.com).",
|
"backup_explain1": "Documize Community is a multi-tenanted application enabling both 'tech.mycompany.com' and 'sales.mycompany.com' to run using the same executable/database. As a Documize Community Global Administrator, you will be performing a complete system-wide backup across all tenants. The Documize Community Tenant Administrator can login to perform a tenant-level backup (e.g. marketing.mycompany.com).",
|
||||||
"backup_explain2": "Documize Community is a multi-tenanted application enabling both 'tech.mycompany.com' and 'sales.mycompany.com' to run using the same executable/database. A Documize Community Global Administrator, you will be performing a complete system-wide backup across all tenants. As a Documize Community Tenant Administrator you can perform a tenant-level backup (e.g. marketing.mycompany.com).",
|
"backup_explain2": "Documize Community is a multi-tenanted application enabling both 'tech.mycompany.com' and 'sales.mycompany.com' to run using the same executable/database. A Documize Community Global Administrator, you will be performing a complete system-wide backup across all tenants. As a Documize Community Tenant Administrator you can perform a tenant-level backup (e.g. marketing.mycompany.com).",
|
||||||
|
@ -204,7 +240,6 @@
|
||||||
"user_delete_confirm": "Are you sure you want to delete user {1}?",
|
"user_delete_confirm": "Are you sure you want to delete user {1}?",
|
||||||
"user_selected_delete_confirm": "Are you sure you want to delete selected users?",
|
"user_selected_delete_confirm": "Are you sure you want to delete selected users?",
|
||||||
"user_delete": "Delete User",
|
"user_delete": "Delete User",
|
||||||
"permissions": "Permissions",
|
|
||||||
"permission_spaces": "Spaces",
|
"permission_spaces": "Spaces",
|
||||||
"permission_spaces_explain": "Can add spaces, both personal and shared with others",
|
"permission_spaces_explain": "Can add spaces, both personal and shared with others",
|
||||||
"permission_visible": "Visible",
|
"permission_visible": "Visible",
|
||||||
|
@ -215,7 +250,6 @@
|
||||||
"permission_analytics_explain": "Can view analytical reports",
|
"permission_analytics_explain": "Can view analytical reports",
|
||||||
"permission_active": "Active",
|
"permission_active": "Active",
|
||||||
"permission_active_explain": "Can login and use Documize Community",
|
"permission_active_explain": "Can login and use Documize Community",
|
||||||
|
|
||||||
"auth_role_space": "Can Create Spaces",
|
"auth_role_space": "Can Create Spaces",
|
||||||
"auth_disable_logout": "Disable Logout",
|
"auth_disable_logout": "Disable Logout",
|
||||||
"auth_dual_login": "Dual Login",
|
"auth_dual_login": "Dual Login",
|
||||||
|
@ -272,7 +306,6 @@
|
||||||
"auth_cas_url_explain": "e.g. http://localhost:8888/auth",
|
"auth_cas_url_explain": "e.g. http://localhost:8888/auth",
|
||||||
"auth_cas_back_url": "Documize CAS URL",
|
"auth_cas_back_url": "Documize CAS URL",
|
||||||
"auth_cas_back_url_explain": "e.g. http://Documize-URL/auth/cas",
|
"auth_cas_back_url_explain": "e.g. http://Documize-URL/auth/cas",
|
||||||
|
|
||||||
"administration": "Administration",
|
"administration": "Administration",
|
||||||
"admin_general": "General",
|
"admin_general": "General",
|
||||||
"admin_general_explain": "Options to help you customize Documize Community",
|
"admin_general_explain": "Options to help you customize Documize Community",
|
||||||
|
@ -294,6 +327,8 @@
|
||||||
"admin_labels_explain": "Group and navigate spaces with visual labels",
|
"admin_labels_explain": "Group and navigate spaces with visual labels",
|
||||||
"admin_search_explain": "Rebuild the search index",
|
"admin_search_explain": "Rebuild the search index",
|
||||||
|
|
||||||
|
"404": "Oops! That page couldn't be found.",
|
||||||
|
"404_explain": "Maybe the content you're looking for is no longer available?",
|
||||||
"close_account": "Please close my Documize account.",
|
"close_account": "Please close my Documize account.",
|
||||||
"third_party": "Documize Community utilizes open source libraries and components from third parties"
|
"third_party": "Documize Community utilizes open source libraries and components from third parties"
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue