mirror of https://github.com/rancher/ui.git
Bugs, i18n (#658)
* Go to waiting for Cattle (rancher/rancher#4783) * Save vs Create * Stacks, disk size input * Fix broken translations
This commit is contained in:
parent
58f95c1d75
commit
b6ac83f26a
|
|
@ -6,6 +6,7 @@ var TLS_PORT = 636;
|
||||||
|
|
||||||
export default Ember.Controller.extend({
|
export default Ember.Controller.extend({
|
||||||
access: Ember.inject.service(),
|
access: Ember.inject.service(),
|
||||||
|
settings: Ember.inject.service(),
|
||||||
|
|
||||||
confirmDisable: false,
|
confirmDisable: false,
|
||||||
errors: null,
|
errors: null,
|
||||||
|
|
@ -15,7 +16,7 @@ export default Ember.Controller.extend({
|
||||||
error: null,
|
error: null,
|
||||||
originalModel: null,
|
originalModel: null,
|
||||||
|
|
||||||
providerName: 'Active Directory',
|
providerName: 'ldap.providerName.ad',
|
||||||
|
|
||||||
addUserInput: '',
|
addUserInput: '',
|
||||||
addOrgInput: '',
|
addOrgInput: '',
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
import ActiveDirectory from 'ui/admin-tab/auth/activedirectory/controller';
|
import ActiveDirectory from 'ui/admin-tab/auth/activedirectory/controller';
|
||||||
|
|
||||||
export default ActiveDirectory.extend({
|
export default ActiveDirectory.extend({
|
||||||
providerName: 'OpenLDAP',
|
providerName: 'ldap.providerName.openldap',
|
||||||
isOpenLdap: true,
|
isOpenLdap: true,
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,19 @@ import Ember from 'ember';
|
||||||
export default Ember.Route.extend({
|
export default Ember.Route.extend({
|
||||||
projects: Ember.inject.service(),
|
projects: Ember.inject.service(),
|
||||||
|
|
||||||
|
beforeModel() {
|
||||||
|
this._super(...arguments);
|
||||||
|
|
||||||
|
let project = this.get('projects.current');
|
||||||
|
let auth = this.modelFor('authenticated');
|
||||||
|
|
||||||
|
// Check for waiting only if cattle, because other orchestrations have system services menus that link here
|
||||||
|
if ( !project.get('kubernetes') && !project.get('swarm') && !project.get('mesos') )
|
||||||
|
{
|
||||||
|
return project.checkForWaiting(auth.get('hosts'),auth.get('machines'));
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
model: function() {
|
model: function() {
|
||||||
var store = this.get('store');
|
var store = this.get('store');
|
||||||
return Ember.RSVP.all([
|
return Ember.RSVP.all([
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,31 @@
|
||||||
|
import Ember from 'ember';
|
||||||
|
|
||||||
|
export default Ember.Component.extend({
|
||||||
|
driverChoices: null,
|
||||||
|
disk: null,
|
||||||
|
|
||||||
|
gigs: null,
|
||||||
|
tagName: 'tr',
|
||||||
|
|
||||||
|
actions: {
|
||||||
|
remove() {
|
||||||
|
this.sendAction('remove');
|
||||||
|
},
|
||||||
|
|
||||||
|
setSize(gigs) {
|
||||||
|
this.set('gigs', gigs);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
didInitAttrs() {
|
||||||
|
if ( this.get('disk.size') ) {
|
||||||
|
this.set('gigs', parseInt(this.get('disk.size',10)));
|
||||||
|
} else {
|
||||||
|
this.set('gigs', 10);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
gigsChanged: function() {
|
||||||
|
this.set('disk.size', this.get('gigs')+'g');
|
||||||
|
}.observes('gigs'),
|
||||||
|
});
|
||||||
|
|
@ -0,0 +1,39 @@
|
||||||
|
<td>
|
||||||
|
{{#if disk.root}}
|
||||||
|
{{t 'formDisks.name.rootDisk'}}
|
||||||
|
{{else}}
|
||||||
|
{{input class="form-control input-sm" type="text" value=disk.name placeholder=(t 'formDisks.name.placeholder')}}
|
||||||
|
{{/if}}
|
||||||
|
</td>
|
||||||
|
|
||||||
|
<td> </td>
|
||||||
|
|
||||||
|
<td>
|
||||||
|
<div class="row">
|
||||||
|
{{#if disk.root}}
|
||||||
|
<span class="text-muted">{{t 'formDisks.size.rootDisk'}}</span>
|
||||||
|
{{else}}
|
||||||
|
<div class="col-sm-6 col-md-8 r-pt10">{{input-slider initialValue=gigs changed=(action "setSize") valueMin=10 valueMax=500 step=10}}</div>
|
||||||
|
<div class="col-sm-6 col-md-4 r-pl0 r-pr0">
|
||||||
|
<div class="input-group input-sm r-p0">
|
||||||
|
{{input type="text" value=gigs classNames="form-control r-pr0"}}
|
||||||
|
<div class="input-group-addon">GB</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{{/if}}
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
|
||||||
|
<td> </td>
|
||||||
|
|
||||||
|
<td>
|
||||||
|
{{new-select
|
||||||
|
classNames="form-control"
|
||||||
|
content=driverChoices
|
||||||
|
value=disk.driver
|
||||||
|
}}
|
||||||
|
</td>
|
||||||
|
|
||||||
|
<td class="text-right">
|
||||||
|
<button class="btn btn-primary btn-sm" {{action "remove"}}><i class="icon icon-minus"/><span class="sr-only">{{t 'generic.remove'}}</span></button>
|
||||||
|
</td>
|
||||||
|
|
@ -23,5 +23,5 @@
|
||||||
}}
|
}}
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
{{save-cancel save="save" cancel="cancel"}}
|
{{save-cancel editing=editing save="save" cancel="cancel"}}
|
||||||
{{/liquid-if}}
|
{{/liquid-if}}
|
||||||
|
|
|
||||||
|
|
@ -79,5 +79,5 @@
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
{{save-cancel save="save" cancel="cancel"}}
|
{{save-cancel editing=editing save="save" cancel="cancel"}}
|
||||||
{{/liquid-if}}
|
{{/liquid-if}}
|
||||||
|
|
|
||||||
|
|
@ -21,5 +21,5 @@
|
||||||
{{form-container-links initialLinks=model.instanceLinks instance=model.instance allHosts=model.allHosts editing=true changed=(action "setLinks")}}
|
{{form-container-links initialLinks=model.instanceLinks instance=model.instance allHosts=model.allHosts editing=true changed=(action "setLinks")}}
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
{{save-cancel save="save" cancel="cancel"}}
|
{{save-cancel editing=editing save="save" cancel="cancel"}}
|
||||||
{{/liquid-if}}
|
{{/liquid-if}}
|
||||||
|
|
|
||||||
|
|
@ -21,4 +21,4 @@
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
{{save-cancel save="save" cancel="cancel"}}
|
{{save-cancel editing=editing save="save" cancel="cancel"}}
|
||||||
|
|
|
||||||
|
|
@ -13,4 +13,4 @@
|
||||||
}}
|
}}
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
{{save-cancel save="save" cancel="cancel"}}
|
{{save-cancel editing=editing save="save" cancel="cancel"}}
|
||||||
|
|
|
||||||
|
|
@ -44,4 +44,4 @@
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
{{save-cancel save="save" cancel="cancel"}}
|
{{save-cancel editing=editing save="save" cancel="cancel"}}
|
||||||
|
|
|
||||||
|
|
@ -41,4 +41,4 @@
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
{{save-cancel save="save" cancel="cancel"}}
|
{{save-cancel editing=editing save="save" cancel="cancel"}}
|
||||||
|
|
|
||||||
|
|
@ -29,5 +29,5 @@
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
{{top-errors errors=errors}}
|
{{top-errors errors=errors}}
|
||||||
{{save-cancel save="save" cancel="cancel"}}
|
{{save-cancel editing=editing save="save" cancel="cancel"}}
|
||||||
{{/liquid-if}}
|
{{/liquid-if}}
|
||||||
|
|
|
||||||
|
|
@ -71,15 +71,11 @@ export default Ember.Component.extend({
|
||||||
this.get('instance.disks').pushObject({
|
this.get('instance.disks').pushObject({
|
||||||
name: '',
|
name: '',
|
||||||
root: false,
|
root: false,
|
||||||
size: 40,
|
size: '40g',
|
||||||
driver: this.get('availableDrivers').objectAt(0)
|
driver: this.get('availableDrivers').objectAt(0)
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
setDiskSize(disk,size) {
|
|
||||||
Ember.set(disk, 'size', size+'g');
|
|
||||||
},
|
|
||||||
|
|
||||||
removeDisk(obj) {
|
removeDisk(obj) {
|
||||||
this.get('instance.disks').removeObject(obj);
|
this.get('instance.disks').removeObject(obj);
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -14,42 +14,7 @@
|
||||||
<th width="50"></th>
|
<th width="50"></th>
|
||||||
</tr>
|
</tr>
|
||||||
{{#each disksArray as |disk|}}
|
{{#each disksArray as |disk|}}
|
||||||
<tr>
|
{{disk-row disk=disk driverChoices=driverChoices remove=(action "removeDisk" disk)}}
|
||||||
<td>
|
|
||||||
{{#if disk.root}}
|
|
||||||
{{t 'formDisks.name.rootDisk'}}
|
|
||||||
{{else}}
|
|
||||||
{{input class="form-control input-sm" type="text" value=disk.name placeholder=(t 'formDisks.name.placeholder')}}
|
|
||||||
{{/if}}
|
|
||||||
</td>
|
|
||||||
|
|
||||||
<td> </td>
|
|
||||||
|
|
||||||
<td>
|
|
||||||
<div class="row">
|
|
||||||
{{#if disk.root}}
|
|
||||||
<span class="text-muted">{{t 'formDisks.size.rootDisk'}}</span>
|
|
||||||
{{else}}
|
|
||||||
<div class="col-xs-8 col-sm-9">{{input-slider initialValue=disk.size changed=(action "setDiskSize" disk) valueMin=10 valueMax=500 step=10}}</div>
|
|
||||||
<div class="col-xs-4 col-sm-3">{{str-replace disk.size match="g" with=" GB"}}</div>
|
|
||||||
{{/if}}
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
|
|
||||||
<td> </td>
|
|
||||||
|
|
||||||
<td>
|
|
||||||
{{new-select
|
|
||||||
classNames="form-control"
|
|
||||||
content=driverChoices
|
|
||||||
value=disk.driver
|
|
||||||
}}
|
|
||||||
</td>
|
|
||||||
|
|
||||||
<td class="text-right">
|
|
||||||
<button class="btn btn-primary btn-sm" {{action "removeDisk" disk}}><i class="icon icon-minus"/><span class="sr-only">{{t 'generic.remove'}}</span></button>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
{{/each}}
|
{{/each}}
|
||||||
</table>
|
</table>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,7 @@
|
||||||
{{#if showAdd}}
|
{{#if showAdd}}
|
||||||
<li class="hand"><a {{action "add"}}><i class="icon icon-plus"/> {{t 'newContainer.addSidekickContainer'}}</a></li>
|
<li class="hand"><a {{action "add"}}><i class="icon icon-plus"/> {{t 'newContainer.addSidekickContainer'}}</a></li>
|
||||||
{{#if hasVm}}
|
{{#if hasVm}}
|
||||||
<li class="hand"><a {{action "add" true}}><i class="icon icon-plus"/> {{t 'newContainer.addSidekickVM'}}</a></li>
|
<li class="hand"><a {{action "add" true}}><i class="icon icon-plus"/> {{t 'newContainer.addSidekickVm'}}</a></li>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</ul>
|
</ul>
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
<label class="r-mr20 hand">
|
<label class="r-mr20 hand">
|
||||||
{{radio-button selection=value value=true}} {{t 'schemaComponent.inputBoolean.y'}}
|
{{radio-button selection=value value=true}} {{t 'schema.inputBoolean.y'}}
|
||||||
</label>
|
</label>
|
||||||
<label class="hand">
|
<label class="hand">
|
||||||
{{radio-button selection=value value=false}} {{t 'schemaComponent.inputBoolean.n'}}
|
{{radio-button selection=value value=false}} {{t 'schema.inputBoolean.n'}}
|
||||||
</label>
|
</label>
|
||||||
|
|
|
||||||
|
|
@ -54,7 +54,7 @@
|
||||||
{{#link-to "service.new" (query-params environmentId=model.id) classNames="btn btn-default btn-sm"}}{{t 'stackSection.add.service'}}{{/link-to}}
|
{{#link-to "service.new" (query-params environmentId=model.id) classNames="btn btn-default btn-sm"}}{{t 'stackSection.add.service'}}{{/link-to}}
|
||||||
<button type="button" class="btn btn-default btn-sm dropdown-toggle" data-toggle="dropdown" aria-expanded="true">
|
<button type="button" class="btn btn-default btn-sm dropdown-toggle" data-toggle="dropdown" aria-expanded="true">
|
||||||
<i class="icon icon-fw icon-chevron-down"></i>
|
<i class="icon icon-fw icon-chevron-down"></i>
|
||||||
<span class="sr-only">{{t 'stackSection.add.toggle'}}</span>
|
<span class="sr-only">{{t 'nav.srToggleDropdown'}}</span>
|
||||||
</button>
|
</button>
|
||||||
<ul class="dropdown-menu dropdown-menu-right" role="menu">
|
<ul class="dropdown-menu dropdown-menu-right" role="menu">
|
||||||
<li>{{#link-to "service.new-balancer" (query-params environmentId=model.id)}}{{t 'stackSection.add.loadBalancer'}}{{/link-to}}</li>
|
<li>{{#link-to "service.new-balancer" (query-params environmentId=model.id)}}{{t 'stackSection.add.loadBalancer'}}{{/link-to}}</li>
|
||||||
|
|
@ -114,7 +114,7 @@
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
{{else}}
|
{{else}}
|
||||||
<div class="text-muted text-center r-p10">{{t 'viewEditProject.showEdit.none'}}</div>
|
<div class="text-muted text-center r-p10">{{t 'stackSection.none'}}</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</div>
|
</div>
|
||||||
{{/liquid-if}}
|
{{/liquid-if}}
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,7 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="footer-actions">
|
<div class="footer-actions">
|
||||||
<div class="console-status text-muted">{{status}}</div>
|
|
||||||
<button {{action "ctrlAltDelete"}} class="btn btn-default" disabled={{ctrlAltDeleteDisabled}}>{{t 'vmConsole.footerActions.buttonSend'}}</button>
|
<button {{action "ctrlAltDelete"}} class="btn btn-default" disabled={{ctrlAltDeleteDisabled}}>{{t 'vmConsole.footerActions.buttonSend'}}</button>
|
||||||
<button {{action "cancel"}} class="btn btn-primary">{{t 'vmConsole.footerActions.buttonCancel'}}</button>
|
<button {{action "cancel"}} class="btn btn-primary">{{t 'vmConsole.footerActions.buttonCancel'}}</button>
|
||||||
|
<div class="console-status text-muted">{{status}}</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -214,6 +214,7 @@ UL.list-lines {
|
||||||
margin : 20px 0;
|
margin : 20px 0;
|
||||||
padding-bottom : 20px;
|
padding-bottom : 20px;
|
||||||
text-align : center;
|
text-align : center;
|
||||||
|
position : relative;
|
||||||
}
|
}
|
||||||
|
|
||||||
.well {
|
.well {
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
.console-status {
|
.console-status {
|
||||||
float: left;
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
margin: 10px 20px 10px 0;
|
margin: 10px 20px 10px 0;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,64 +1,64 @@
|
||||||
<section class="well">
|
<section class="well">
|
||||||
<h2>{{t 'openLdap.configuredIndication.header.providerName' providerName=providerName}} {{#if access.enabled}}<b>{{t 'openLdap.configuredIndication.header.enabled'}}</b>{{else}}<b class="text-warning">{{t 'openLdap.configuredIndication.header.disabled'}}</b>{{/if}}</h2>
|
<h2>{{t 'ldap.configuredIndication.header.providerName' providerName=(t providerName)}} {{#if access.enabled}}<b>{{t 'ldap.configuredIndication.header.enabled'}}</b>{{else}}<b class="text-warning">{{t 'ldap.configuredIndication.header.disabled'}}</b>{{/if}}</h2>
|
||||||
<div>
|
<div>
|
||||||
{{#if access.enabled}}
|
{{#if access.enabled}}
|
||||||
{{t 'openLdap.configuredIndication.header.subtext.enabled'
|
{{t 'ldap.configuredIndication.header.subtext.enabled'
|
||||||
appName=settings.appName
|
appName=settings.appName
|
||||||
providerName=providerName}}
|
providerName=(t providerName)}}
|
||||||
{{else}}
|
{{else}}
|
||||||
{{t 'openLdap.configuredIndication.header.subtext.disabled' appName=settings.appName}}
|
{{t 'ldap.configuredIndication.header.subtext.disabled' appName=settings.appName}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
{{#if access.enabled}}
|
{{#if access.enabled}}
|
||||||
<section class="well">
|
<section class="well">
|
||||||
<h4>{{t 'openLdap.accessEnabled.header'}}</h4>
|
<h4>{{t 'ldap.accessEnabled.header'}}</h4>
|
||||||
<hr/>
|
<hr/>
|
||||||
<p class="help-block">{{t 'openLdap.accessEnabled.subtext'}}</p>
|
<p class="help-block">{{t 'ldap.accessEnabled.subtext'}}</p>
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
<h4>{{t 'openLdap.accessEnabled.general.header'}}</h4>
|
<h4>{{t 'ldap.accessEnabled.general.header'}}</h4>
|
||||||
<div><b>{{t 'openLdap.accessEnabled.general.server'}} </b> <span class="text-muted">{{model.server}}:{{model.port}}</span></div>
|
<div><b>{{t 'ldap.accessEnabled.general.server'}} </b> <span class="text-muted">{{model.server}}:{{model.port}}</span></div>
|
||||||
<div><b>{{t 'openLdap.accessEnabled.general.tls'}} </b> <span class="text-muted">{{if model.tls "Yes" "No"}}</span></div>
|
<div><b>{{t 'ldap.accessEnabled.general.tls'}} </b> <span class="text-muted">{{if model.tls "Yes" "No"}}</span></div>
|
||||||
<div><b>{{t 'openLdap.accessEnabled.general.serviceAccount'}} </b> <span class="text-muted">{{model.serviceAccountUsername}}</span></div>
|
<div><b>{{t 'ldap.accessEnabled.general.serviceAccount'}} </b> <span class="text-muted">{{model.serviceAccountUsername}}</span></div>
|
||||||
<div><b>{{t 'openLdap.accessEnabled.general.searchBase'}} </b> <span class="text-muted">{{model.domain}}</span></div>
|
<div><b>{{t 'ldap.accessEnabled.general.searchBase'}} </b> <span class="text-muted">{{model.domain}}</span></div>
|
||||||
<div><b>{{t 'openLdap.accessEnabled.general.defaultDomain'}} </b> <span class="text-muted">{{model.loginDomain}}</span></div>
|
<div><b>{{t 'ldap.accessEnabled.general.defaultDomain'}} </b> <span class="text-muted">{{model.loginDomain}}</span></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
<h4>{{t 'openLdap.accessEnabled.users.header'}}</h4>
|
<h4>{{t 'ldap.accessEnabled.users.header'}}</h4>
|
||||||
<div><b>{{t 'openLdap.accessEnabled.users.objectClass'}} </b> <span class="text-muted">{{model.userObjectClass}}</span></div>
|
<div><b>{{t 'ldap.accessEnabled.users.objectClass'}} </b> <span class="text-muted">{{model.userObjectClass}}</span></div>
|
||||||
<div><b>{{t 'openLdap.accessEnabled.users.login'}} </b> <span class="text-muted">{{model.userLoginField}}</span></div>
|
<div><b>{{t 'ldap.accessEnabled.users.login'}} </b> <span class="text-muted">{{model.userLoginField}}</span></div>
|
||||||
<div><b>{{t 'openLdap.accessEnabled.users.name'}} </b> <span class="text-muted">{{model.userNameField}}</span></div>
|
<div><b>{{t 'ldap.accessEnabled.users.name'}} </b> <span class="text-muted">{{model.userNameField}}</span></div>
|
||||||
<div><b>{{t 'openLdap.accessEnabled.users.search'}} </b> <span class="text-muted">{{model.userSearchField}}</span></div>
|
<div><b>{{t 'ldap.accessEnabled.users.search'}} </b> <span class="text-muted">{{model.userSearchField}}</span></div>
|
||||||
<div><b>{{t 'openLdap.accessEnabled.users.enabled'}} </b> <span class="text-muted">{{model.userEnabledAttribute}}</span></div>
|
<div><b>{{t 'ldap.accessEnabled.users.enabled'}} </b> <span class="text-muted">{{model.userEnabledAttribute}}</span></div>
|
||||||
<div><b>{{t 'openLdap.accessEnabled.users.disabledBitMask'}} </b> <span class="text-muted">{{model.userDisabledBitMask}}</span></div>
|
<div><b>{{t 'ldap.accessEnabled.users.disabledBitMask'}} </b> <span class="text-muted">{{model.userDisabledBitMask}}</span></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
<h4>{{t 'openLdap.accessEnabled.group.header'}}</h4>
|
<h4>{{t 'ldap.accessEnabled.group.header'}}</h4>
|
||||||
<div><b>{{t 'openLdap.accessEnabled.group.objectClass'}} </b> <span class="text-muted">{{model.groupObjectClass}}</span></div>
|
<div><b>{{t 'ldap.accessEnabled.group.objectClass'}} </b> <span class="text-muted">{{model.groupObjectClass}}</span></div>
|
||||||
<div><b>{{t 'openLdap.accessEnabled.group.name'}} </b> <span class="text-muted">{{model.groupNameField}}</span></div>
|
<div><b>{{t 'ldap.accessEnabled.group.name'}} </b> <span class="text-muted">{{model.groupNameField}}</span></div>
|
||||||
<div><b>{{t 'openLdap.accessEnabled.group.search'}} </b> <span class="text-muted">{{model.groupSearchField}}</span></div>
|
<div><b>{{t 'ldap.accessEnabled.group.search'}} </b> <span class="text-muted">{{model.groupSearchField}}</span></div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section class="well">
|
<section class="well">
|
||||||
<h4>{{format-html-message 'openLdap.accessEnabled.disable.header'}}</h4>
|
<h4>{{format-html-message 'ldap.accessEnabled.disable.header'}}</h4>
|
||||||
<hr/>
|
<hr/>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
{{format-html-message 'openLdap.accessEnabled.disable.warning' appName=settings.appName}}
|
{{format-html-message 'ldap.accessEnabled.disable.warning' appName=settings.appName}}
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
{{#if confirmDisable}}
|
{{#if confirmDisable}}
|
||||||
<button class="btn btn-danger" {{action "disable"}}>
|
<button class="btn btn-danger" {{action "disable"}}>
|
||||||
<i class="icon icon-alert"></i> {{t 'openLdap.accessEnabled.disable.confirmDisable.post'}}
|
<i class="icon icon-alert"></i> {{t 'ldap.accessEnabled.disable.confirmDisable.post'}}
|
||||||
</button>
|
</button>
|
||||||
{{else}}
|
{{else}}
|
||||||
<button class="btn btn-danger" {{action "promptDisable"}}>
|
<button class="btn btn-danger" {{action "promptDisable"}}>
|
||||||
<i class="icon icon-umbrella"></i> {{t 'openLdap.accessEnabled.disable.confirmDisable.pre'}}
|
<i class="icon icon-umbrella"></i> {{t 'ldap.accessEnabled.disable.confirmDisable.pre'}}
|
||||||
</button>
|
</button>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
|
|
@ -68,23 +68,23 @@
|
||||||
{{#unless access.enabled}}
|
{{#unless access.enabled}}
|
||||||
<section class="well">
|
<section class="well">
|
||||||
<h4></h4>
|
<h4></h4>
|
||||||
<h4>{{t 'openLdap.accessConfig.header' providerName=providerName}}</h4>
|
<h4>{{t 'ldap.accessConfig.header' providerName=(t providerName)}}</h4>
|
||||||
<hr/>
|
<hr/>
|
||||||
<p class="help-block">{{format-html-message 'openLdap.accessConfig.subtext1' providerName=providerName}}</p>
|
<p class="help-block">{{format-html-message 'ldap.accessConfig.subtext1' providerName=(t providerName)}}</p>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label>{{t 'openLdap.accessConfig.hostName.labelText'}}</label>
|
<label>{{t 'ldap.accessConfig.hostName.labelText'}}</label>
|
||||||
{{input type="text" value=model.server classNames="form-control"}}
|
{{input type="text" value=model.server classNames="form-control"}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label>{{t 'openLdap.accessConfig.port.labelText'}}</label>
|
<label>{{t 'ldap.accessConfig.port.labelText'}}</label>
|
||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
{{input type="text" value=model.port type="number" min=1 max=65535 classNames="form-control"}}
|
{{input type="text" value=model.port type="number" min=1 max=65535 classNames="form-control"}}
|
||||||
<span class="input-group-addon">
|
<span class="input-group-addon">
|
||||||
<label>{{t 'openLdap.accessConfig.port.checkbox'}} {{input type="checkbox" checked=model.tls}}</label>
|
<label>{{t 'ldap.accessConfig.port.checkbox'}} {{input type="checkbox" checked=model.tls}}</label>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -95,17 +95,17 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p class="help-block">{{t 'openLdap.accessConfig.subtext2' appName=settings.appName}}</p>
|
<p class="help-block">{{t 'ldap.accessConfig.subtext2' appName=settings.appName}}</p>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label>{{t 'openLdap.accessConfig.serviceUsername.labelText'}}</label>
|
<label>{{t 'ldap.accessConfig.serviceUsername.labelText'}}</label>
|
||||||
{{input type="text" value=model.serviceAccountUsername classNames="form-control"}}
|
{{input type="text" value=model.serviceAccountUsername classNames="form-control"}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label>{{t 'openLdap.accessConfig.servicePassword.labelText'}}</label>
|
<label>{{t 'ldap.accessConfig.servicePassword.labelText'}}</label>
|
||||||
{{input type="password" value=model.serviceAccountPassword classNames="form-control"}}
|
{{input type="password" value=model.serviceAccountPassword classNames="form-control"}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -114,17 +114,17 @@
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<p class="help-block">{{t 'openLdap.accessConfig.searchBase.helpText'}}</p>
|
<p class="help-block">{{t 'ldap.accessConfig.searchBase.helpText'}}</p>
|
||||||
<label>{{t 'openLdap.accessConfig.searchBase.labelText'}}</label>
|
<label>{{t 'ldap.accessConfig.searchBase.labelText'}}</label>
|
||||||
{{input type="text" value=model.domain classNames="form-control" placeholder=(t 'openLdap.accessConfig.searchBase.placeholder')}}
|
{{input type="text" value=model.domain classNames="form-control" placeholder=(t 'ldap.accessConfig.searchBase.placeholder')}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{{#unless isOpenLdap}}
|
{{#unless isOpenLdap}}
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<p class="help-block">{{t 'openLdap.accessConfig.defaultDomain.helpText'}}</p>
|
<p class="help-block">{{t 'ldap.accessConfig.defaultDomain.helpText'}}</p>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label>{{t 'openLdap.accessConfig.defaultDomain.labelText'}}</label>
|
<label>{{t 'ldap.accessConfig.defaultDomain.labelText'}}</label>
|
||||||
{{input type="text" value=model.loginDomain classNames="form-control" placeholder=(t 'openLdap.accessConfig.defaultDomain.placeholder')}}
|
{{input type="text" value=model.loginDomain classNames="form-control" placeholder=(t 'ldap.accessConfig.defaultDomain.placeholder')}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{{/unless}}
|
{{/unless}}
|
||||||
|
|
@ -132,49 +132,49 @@
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section class="well">
|
<section class="well">
|
||||||
<h4>{{t 'openLdap.customizeSchema.header'}}</h4>
|
<h4>{{t 'ldap.customizeSchema.header'}}</h4>
|
||||||
<hr/>
|
<hr/>
|
||||||
<p class="help-block">{{t 'openLdap.customizeSchema.helpText'}}</p>
|
<p class="help-block">{{t 'ldap.customizeSchema.helpText'}}</p>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<h4>{{t 'openLdap.customizeSchema.users.header'}}</h4>
|
<h4>{{t 'ldap.customizeSchema.users.header'}}</h4>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label>{{t 'openLdap.customizeSchema.users.objectClass.labelText'}}</label>
|
<label>{{t 'ldap.customizeSchema.users.objectClass.labelText'}}</label>
|
||||||
{{input type="text" value=model.userObjectClass type="text" classNames="form-control"}}
|
{{input type="text" value=model.userObjectClass type="text" classNames="form-control"}}
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label>{{t 'openLdap.customizeSchema.users.login.labelText'}}</label>
|
<label>{{t 'ldap.customizeSchema.users.login.labelText'}}</label>
|
||||||
{{input type="text" value=model.userLoginField type="text" classNames="form-control"}}
|
{{input type="text" value=model.userLoginField type="text" classNames="form-control"}}
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label>{{t 'openLdap.customizeSchema.users.name.labelText'}}</label>
|
<label>{{t 'ldap.customizeSchema.users.name.labelText'}}</label>
|
||||||
{{input type="text" value=model.userNameField type="text" classNames="form-control"}}
|
{{input type="text" value=model.userNameField type="text" classNames="form-control"}}
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label>{{t 'openLdap.customizeSchema.users.search.labelText'}}</label>
|
<label>{{t 'ldap.customizeSchema.users.search.labelText'}}</label>
|
||||||
{{input type="text" value=model.userSearchField type="text" classNames="form-control"}}
|
{{input type="text" value=model.userSearchField type="text" classNames="form-control"}}
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label>{{t 'openLdap.customizeSchema.users.status.labelText'}}</label>
|
<label>{{t 'ldap.customizeSchema.users.status.labelText'}}</label>
|
||||||
{{input type="text" value=model.userEnabledAttribute type="text" classNames="form-control"}}
|
{{input type="text" value=model.userEnabledAttribute type="text" classNames="form-control"}}
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label>{{t 'openLdap.customizeSchema.users.disabledBitMask.labelText'}}</label>
|
<label>{{t 'ldap.customizeSchema.users.disabledBitMask.labelText'}}</label>
|
||||||
{{input type="text" value=model.userDisabledBitMask type="number" min=1 classNames="form-control"}}
|
{{input type="text" value=model.userDisabledBitMask type="number" min=1 classNames="form-control"}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<h4>{{t 'openLdap.customizeSchema.groups.header'}}</h4>
|
<h4>{{t 'ldap.customizeSchema.groups.header'}}</h4>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label>{{t 'openLdap.customizeSchema.groups.objectClass.labelText'}}</label>
|
<label>{{t 'ldap.customizeSchema.groups.objectClass.labelText'}}</label>
|
||||||
{{input type="text" value=model.groupObjectClass type="text" classNames="form-control"}}
|
{{input type="text" value=model.groupObjectClass type="text" classNames="form-control"}}
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label>{{t 'openLdap.customizeSchema.groups.name.labelText'}}</label>
|
<label>{{t 'ldap.customizeSchema.groups.name.labelText'}}</label>
|
||||||
{{input type="text" value=model.groupNameField type="text" classNames="form-control"}}
|
{{input type="text" value=model.groupNameField type="text" classNames="form-control"}}
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label>{{t 'openLdap.customizeSchema.groups.search.labelText'}}</label>
|
<label>{{t 'ldap.customizeSchema.groups.search.labelText'}}</label>
|
||||||
{{input type="text" value=model.groupSearchField type="text" classNames="form-control"}}
|
{{input type="text" value=model.groupSearchField type="text" classNames="form-control"}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -182,21 +182,21 @@
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section class="well">
|
<section class="well">
|
||||||
<h4>{{t 'openLdap.testAuth.header'}}</h4>
|
<h4>{{t 'ldap.testAuth.header'}}</h4>
|
||||||
<hr/>
|
<hr/>
|
||||||
<p class="help-block">{{t 'openLdap.testAuth.helpText' providerName=providerName}}</p>
|
<p class="help-block">{{t 'ldap.testAuth.helpText' providerName=(t providerName)}}</p>
|
||||||
{{top-errors errors=errors}}
|
{{top-errors errors=errors}}
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label>{{t 'openLdap.testAuth.userName.labelText'}}</label>
|
<label>{{t 'ldap.testAuth.userName.labelText'}}</label>
|
||||||
{{input type="text" value=username classNames="form-control"}}
|
{{input type="text" value=username classNames="form-control"}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label>{{t 'openLdap.testAuth.password.labelText'}}</label>
|
<label>{{t 'ldap.testAuth.password.labelText'}}</label>
|
||||||
{{input type="password" value=password classNames="form-control"}}
|
{{input type="password" value=password classNames="form-control"}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -205,9 +205,9 @@
|
||||||
<label> </label>
|
<label> </label>
|
||||||
<button disabled={{createDisabled}} class="btn btn-primary" style="display: block;" {{action "test"}}>
|
<button disabled={{createDisabled}} class="btn btn-primary" style="display: block;" {{action "test"}}>
|
||||||
{{#if testing}}
|
{{#if testing}}
|
||||||
<i class="icon icon-spinner icon-spin"></i> {{t 'openLdap.testAuth.authenticate.post'}}
|
<i class="icon icon-spinner icon-spin"></i> {{t 'ldap.testAuth.authenticate.post'}}
|
||||||
{{else}}
|
{{else}}
|
||||||
{{t 'openLdap.testAuth.authenticate.pre'}}
|
{{t 'ldap.testAuth.authenticate.pre'}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -168,7 +168,7 @@ const navTree = [
|
||||||
id: 'cattle',
|
id: 'cattle',
|
||||||
localizedLabel: 'nav.cattle.tab',
|
localizedLabel: 'nav.cattle.tab',
|
||||||
route: 'environments',
|
route: 'environments',
|
||||||
queryParams: {which: 'all'},
|
queryParams: {which: 'user'},
|
||||||
ctx: [getProjectId],
|
ctx: [getProjectId],
|
||||||
moreCurrentWhen: ['authenticated.project.waiting'],
|
moreCurrentWhen: ['authenticated.project.waiting'],
|
||||||
condition: function() { return this.get('hasProject') && !this.get('hasKubernetes') && !this.get('hasSwarm') && !this.get('hasMesos'); },
|
condition: function() { return this.get('hasProject') && !this.get('hasKubernetes') && !this.get('hasSwarm') && !this.get('hasMesos'); },
|
||||||
|
|
|
||||||
|
|
@ -816,7 +816,7 @@ settingsPage:
|
||||||
stacksPage:
|
stacksPage:
|
||||||
header:
|
header:
|
||||||
all: All Stacks
|
all: All Stacks
|
||||||
user: Stacks
|
user: User Stacks
|
||||||
system: System Stacks
|
system: System Stacks
|
||||||
actionButton: Add Stack
|
actionButton: Add Stack
|
||||||
sort:
|
sort:
|
||||||
|
|
@ -977,7 +977,10 @@ hostPartial:
|
||||||
addOptions:
|
addOptions:
|
||||||
labels: Labels
|
labels: Labels
|
||||||
|
|
||||||
openLdap:
|
ldap:
|
||||||
|
providerName:
|
||||||
|
openldap: OpenLDAP
|
||||||
|
ad: Active Directory
|
||||||
configuredIndication:
|
configuredIndication:
|
||||||
header:
|
header:
|
||||||
providerName: "{providerName} is"
|
providerName: "{providerName} is"
|
||||||
|
|
@ -2078,8 +2081,13 @@ projectRow:
|
||||||
none: No description
|
none: No description
|
||||||
|
|
||||||
schema:
|
schema:
|
||||||
|
inputBoolean:
|
||||||
|
y: "True"
|
||||||
|
n: "False"
|
||||||
inputCertificate:
|
inputCertificate:
|
||||||
prompt: Choose a Certificate...
|
prompt: Choose a Certificate...
|
||||||
|
inputEnum:
|
||||||
|
option: Choose an option...
|
||||||
inputService:
|
inputService:
|
||||||
prompt: Choose a Service...
|
prompt: Choose a Service...
|
||||||
|
|
||||||
|
|
@ -2095,13 +2103,6 @@ schedulingRuleRow:
|
||||||
haveA: have a
|
haveA: have a
|
||||||
of: of
|
of: of
|
||||||
|
|
||||||
schemaComponent:
|
|
||||||
inputBoolean:
|
|
||||||
y: True
|
|
||||||
n: False
|
|
||||||
inputEnum:
|
|
||||||
option: Choose an option...
|
|
||||||
|
|
||||||
sidekickAddtlInfo:
|
sidekickAddtlInfo:
|
||||||
info: Info
|
info: Info
|
||||||
image: Image
|
image: Image
|
||||||
|
|
@ -2114,7 +2115,6 @@ sidekickAddtlInfo:
|
||||||
|
|
||||||
stackSection:
|
stackSection:
|
||||||
outputs: Outputs
|
outputs: Outputs
|
||||||
toggle: Toggle Dropdown
|
|
||||||
description: Description
|
description: Description
|
||||||
none: No Services
|
none: No Services
|
||||||
container: |
|
container: |
|
||||||
|
|
@ -2204,13 +2204,12 @@ viewEditProject:
|
||||||
|
|
||||||
|
|
||||||
vmConsole:
|
vmConsole:
|
||||||
header: "console:"
|
header: "Console:"
|
||||||
protip: "ProTip: Hold the {alternateLabel} key when opening shell access to launch a new window."
|
protip: "ProTip: Hold the {alternateLabel} key when opening shell access to launch a new window."
|
||||||
canvas: Canvas not supported.
|
canvas: Canvas not supported.
|
||||||
|
footerActions:
|
||||||
footeractions:
|
buttonSend: Send Ctrl-Alt-Delete
|
||||||
buttonsend: Send Ctrl-Alt-Delete
|
buttonCancel: Close
|
||||||
buttoncancel: Close
|
|
||||||
|
|
||||||
volumeRow:
|
volumeRow:
|
||||||
activeMounts:
|
activeMounts:
|
||||||
|
|
@ -2272,9 +2271,9 @@ nav:
|
||||||
web: Mesos UI
|
web: Mesos UI
|
||||||
system: System
|
system: System
|
||||||
cattle:
|
cattle:
|
||||||
tab: Applications
|
tab: Stacks
|
||||||
all: All
|
all: All
|
||||||
user: Stacks
|
user: User
|
||||||
system: System
|
system: System
|
||||||
catalog:
|
catalog:
|
||||||
tab: Catalog
|
tab: Catalog
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue