Repository: ambari Updated Branches: refs/heads/trunk ce4e4ea30 -> 83ea508b6
http://git-wip-us.apache.org/repos/asf/ambari/blob/83ea508b/ambari-admin/src/main/resources/ui/admin-web/app/views/groups/list.html ---------------------------------------------------------------------- diff --git a/ambari-admin/src/main/resources/ui/admin-web/app/views/groups/list.html b/ambari-admin/src/main/resources/ui/admin-web/app/views/groups/list.html index d0df0fa..b359ede 100644 --- a/ambari-admin/src/main/resources/ui/admin-web/app/views/groups/list.html +++ b/ambari-admin/src/main/resources/ui/admin-web/app/views/groups/list.html @@ -18,10 +18,10 @@ <div class="groups-pane"> <div class="clearfix"> <ol class="breadcrumb pull-left"> - <li class="active">Groups</li> + <li class="active">{{'common.groups' | translate}}</li> </ol> <div class="pull-right top-margin-4"> - <link-to route="groups.create" class="btn btn-primary creategroup-btn"><span class="glyphicon glyphicon-plus"></span> Create Local Group</link-to> + <link-to route="groups.create" class="btn btn-primary creategroup-btn"><span class="glyphicon glyphicon-plus"></span> {{'groups.createLocal' | translate}}</link-to> </div> </div> <hr> @@ -30,13 +30,13 @@ <tr> <th class="col-sm-8"> <div class="search-container"> - <label for="">Group Name</label> - <input type="text" class="form-control namefilter" placeholder="Any" ng-model="currentNameFilter" ng-change="resetPagination()"> - <button type="button" class="close" ng-show="currentNameFilter" ng-click="currentNameFilter=''; resetPagination()"><span aria-hidden="true">×</span><span class="sr-only">Close</span></button> + <label for="">{{'groups.name' | translate}}</label> + <input type="text" class="form-control namefilter" placeholder="{{'common.any' | translate}}" ng-model="currentNameFilter" ng-change="resetPagination()"> + <button type="button" class="close" ng-show="currentNameFilter" ng-click="currentNameFilter=''; resetPagination()"><span aria-hidden="true">×</span><span class="sr-only">{{'common.controls.close' | translate}}</span></button> </div> </th> <th class="col-sm-2"> - <label for="">Type</label> + <label for="">{{'common.type' | translate}}</label> <select class="form-control typefilter" ng-model="currentTypeFilter" ng-options="item.label for item in typeFilterOptions" @@ -44,7 +44,7 @@ </select> </th> <th class="col-sm-2 vertical-top"> - <label for="">Members</label> + <label for="">{{'groups.members' | translate}}</label> </th> </tr> </thead> @@ -53,18 +53,18 @@ <td class="col-sm-8"> <link-to route="groups.edit" class="link-to-group" id="{{group.group_name}}">{{group.group_name}}</link-to> </td> - <td class="col-sm-2">{{group.ldap_group ? 'LDAP' : 'Local'}}</td> - <td class="col-sm-2">{{group.members ? group.members.length : 0}} {{group.members.length === 1 ? 'member' : 'members'}}</td> + <td class="col-sm-2">{{'common.' + (group.ldap_group ? 'ldap' : 'local') | translate}}</td> + <td class="col-sm-2">{{'groups.membersPlural' | translate: '{n: group.members && group.members.length || 0}'}}</td> </tr> </tbody> </table> <div class="alert alert-info col-sm-12" ng-show="!groups.length"> - No groups to display. + {{'common.alerts.nothingToDisplay' | translate: '{term: constants.groups}'}} </div> <div class="col-sm-12 table-bar"> <div class="pull-left filtered-info"> - <span>{{tableInfo.showed}} of {{tableInfo.total}} groups showing</span> - <span ng-show="isNotEmptyFilter">- <a href ng-click="clearFilters()">clear filters</a></span> + <span>{{'common.filterInfo' | translate: '{showed: tableInfo.showed, total: tableInfo.total, term: constants.groups}'}}</span> + <span ng-show="isNotEmptyFilter">- <a href ng-click="clearFilters()">{{'common.controls.clearFilters' | translate}}</a></span> </div> <div class="pull-right left-margin"> <pagination class="paginator" total-items="totalGroups" max-size="maxVisiblePages" items-per-page="groupsPerPage" ng-model="currentPage" ng-change="pageChanged()"></pagination> http://git-wip-us.apache.org/repos/asf/ambari/blob/83ea508b/ambari-admin/src/main/resources/ui/admin-web/app/views/leftNavbar.html ---------------------------------------------------------------------- diff --git a/ambari-admin/src/main/resources/ui/admin-web/app/views/leftNavbar.html b/ambari-admin/src/main/resources/ui/admin-web/app/views/leftNavbar.html index 40e2505..bf7f3a1 100644 --- a/ambari-admin/src/main/resources/ui/admin-web/app/views/leftNavbar.html +++ b/ambari-admin/src/main/resources/ui/admin-web/app/views/leftNavbar.html @@ -17,14 +17,14 @@ --> <div class="left-navbar" xmlns="http://www.w3.org/1999/html"> <div class="panel panel-default"> - <div class="panel-heading"><span class="glyphicon glyphicon-cloud"></span> Clusters</div> + <div class="panel-heading"><span class="glyphicon glyphicon-cloud"></span> {{'common.clusters' | translate}}</div> <div class="panel-body"> <div class="cluster-section" ng-show="cluster"> <div id="cluster-name" ng-switch on="editCluster.editingName"> <h5 ng-switch-when="false">{{cluster.Clusters.cluster_name}} <i ng-show="cluster.Clusters.provisioning_state == 'INSTALLED'" ng-click="toggleEditName()" - class="glyphicon glyphicon-edit pull-right edit-cluster-name" tooltip="Rename Cluster"> + class="glyphicon glyphicon-edit pull-right edit-cluster-name" tooltip="{{'common.renameCluster' | translate}}"> </i> </h5> @@ -46,7 +46,7 @@ ng-model="editCluster.name" class="form-control input-sm" ng-maxlength="80" - tooltip="Only alpha-numeric characters, up to 80 characters" + tooltip="{{'common.renameClusterTip' | translate}}" tooltip-trigger="focus"> <button ng-click="toggleEditName()" class="btn btn-xs"> @@ -65,42 +65,42 @@ <ul class="nav nav-pills nav-stacked" ng-show="cluster.Clusters.provisioning_state == 'INSTALLED' "> <li ng-class="{active: isActive('clusters.manageAccess')}"> - <a href="#/clusters/{{cluster.Clusters.cluster_name}}/userAccessList" class="permissions">Roles</a> + <a href="#/clusters/{{cluster.Clusters.cluster_name}}/userAccessList" class="permissions">{{'common.roles' | translate}}</a> </li> - <li><a href="#/dashboard" class="gotodashboard">Go to Dashboard</a></li> + <li><a href="#/dashboard" class="gotodashboard">{{'common.goToDashboard' | translate}}</a></li> </ul> - <span class="cluster-installation-progress-label" ng-show="cluster.Clusters.provisioning_state == 'INIT'"><a href="/#/">Cluster creation in progress...</a></span> + <span class="cluster-installation-progress-label" ng-show="cluster.Clusters.provisioning_state == 'INIT'"><a href="/#/">{{'common.clusterCreationInProgress' | translate}}</a></span> </div> <div ng-hide="cluster"> <ul class="nav nav-pills nav-stacked"> - <li><p class="noclusters">No clusters</p></li> + <li><p class="noclusters">{{'common.noClusters' | translate}}</p></li> </ul> </div> <ul class="nav nav-pills nav-stacked" ng-show="cluster && totalRepos > 0"> <li ng-class="{active: isActive('stackVersions.list')}"> - <a href="#/stackVersions">Versions</a> + <a href="#/stackVersions">{{'common.versions' | translate}}</a> </li> </ul> </div> </div> <div class="panel panel-default"> - <div class="panel-heading"><span class="glyphicon glyphicon-th"></span> Views</div> + <div class="panel-heading"><span class="glyphicon glyphicon-th"></span> {{'common.views' | translate}}</div> <div class="panel-body"> <ul class="nav nav-pills nav-stacked"> - <li ng-class="{active: isActive('views.list')}"><link-to route="views.list" class="viewslist-link">Views</link-to></li> + <li ng-class="{active: isActive('views.list')}"><link-to route="views.list" class="viewslist-link">{{'common.views' | translate}}</link-to></li> </ul> </div> </div> <div class="panel panel-default"> - <div class="panel-heading"><span class="glyphicon glyphicon-user"></span> User + Group Management</div> + <div class="panel-heading"><span class="glyphicon glyphicon-user"></span> {{'common.userGroupManagement' | translate}}</div> <div class="panel-body"> <ul class="nav nav-pills nav-stacked"> - <li ng-class="{active: isActive('users.list')}"><link-to route="users.list" class="userslist-link">Users</link-to></li> - <li ng-class="{active: isActive('groups.list')}"><link-to route="groups.list" class="groupslist-link">Groups</link-to></li> + <li ng-class="{active: isActive('users.list')}"><link-to route="users.list" class="userslist-link">{{'common.users' | translate}}</link-to></li> + <li ng-class="{active: isActive('groups.list')}"><link-to route="groups.list" class="groupslist-link">{{'common.groups' | translate}}</link-to></li> </ul> </div> http://git-wip-us.apache.org/repos/asf/ambari/blob/83ea508b/ambari-admin/src/main/resources/ui/admin-web/app/views/main.html ---------------------------------------------------------------------- diff --git a/ambari-admin/src/main/resources/ui/admin-web/app/views/main.html b/ambari-admin/src/main/resources/ui/admin-web/app/views/main.html index 8eb710e..f9e6e63 100644 --- a/ambari-admin/src/main/resources/ui/admin-web/app/views/main.html +++ b/ambari-admin/src/main/resources/ui/admin-web/app/views/main.html @@ -17,51 +17,51 @@ --> <div class="panel panel-default mainpage"> <div class="panel-body"> - <h1>Welcome to Apache Ambari</h1> + <h1>{{'main.title' | translate}}</h1> <div ng-if="isLoaded" id="main-operations-boxes" class="row thumbnails"> - <p ng-hide="cluster">Provision a cluster, manage who can access the cluster, and customize views for Ambari users.</p> - <p ng-show="cluster">Monitor your cluster resources, manage who can access the cluster, and customize views for Ambari users.</p> + <p ng-hide="cluster">{{'main.noClusterDescription' | translate}}</p> + <p ng-show="cluster">{{'main.hasClusterDescription' | translate}}</p> <!--Clusters--> <div ng-show="cluster" class="col-sm-11 thumbnail"> - <h4 class="title">Operate Your Cluster</h4> - <div class="description">Manage the configuration of your cluster and monitor the health of your services</div> + <h4 class="title">{{'main.operateCluster.title' | translate}}</h4> + <div class="description">{{'main.operateCluster.description' | translate}}</div> <div class="glyphicon glyphicon-cloud"></div> <div class="buttons"> <span ng-class="{active: isActive('clusters.manageAccess')}"> - <a ng-show="cluster.Clusters.provisioning_state != 'INSTALLED'" href class="btn btn-primary permission-button" ng-disabled="cluster.Clusters.provisioning_state != 'INSTALLED' ">Manage Roles</a> - <a ng-show="cluster.Clusters.provisioning_state == 'INSTALLED'" href="#/clusters/{{cluster.Clusters.cluster_name}}/userAccessList" class="btn btn-primary permission-button" ng-disabled="cluster.Clusters.provisioning_state != 'INSTALLED' ">Manage Roles</a> + <a ng-show="cluster.Clusters.provisioning_state != 'INSTALLED'" href class="btn btn-primary permission-button" ng-disabled="cluster.Clusters.provisioning_state != 'INSTALLED' ">{{'main.operateCluster.manageRoles' | translate}}</a> + <a ng-show="cluster.Clusters.provisioning_state == 'INSTALLED'" href="#/clusters/{{cluster.Clusters.cluster_name}}/userAccessList" class="btn btn-primary permission-button" ng-disabled="cluster.Clusters.provisioning_state != 'INSTALLED' ">{{'main.operateCluster.manageRoles' | translate}}</a> </span> <span> - <a ng-show="cluster.Clusters.provisioning_state != 'INSTALLED'" href class="btn btn-primary go-dashboard-button" ng-disabled="cluster.Clusters.provisioning_state != 'INSTALLED' ">Go to Dashboard</a> - <a ng-show="cluster.Clusters.provisioning_state == 'INSTALLED'" href="/#/main/dashboard/metrics" class="btn btn-primary go-dashboard-button" ng-disabled="cluster.Clusters.provisioning_state != 'INSTALLED' ">Go to Dashboard</a> + <a ng-show="cluster.Clusters.provisioning_state != 'INSTALLED'" href class="btn btn-primary go-dashboard-button" ng-disabled="cluster.Clusters.provisioning_state != 'INSTALLED' ">{{'common.goToDashboard' | translate}}</a> + <a ng-show="cluster.Clusters.provisioning_state == 'INSTALLED'" href="/#/main/dashboard/metrics" class="btn btn-primary go-dashboard-button" ng-disabled="cluster.Clusters.provisioning_state != 'INSTALLED' ">{{'common.goToDashboard' | translate}}</a> </span> </div> </div> <div ng-hide="cluster" class="col-sm-11 thumbnail"> - <h4 class="title">Create a Cluster</h4> - <div class="description">Use the Install Wizard to select services and configure your cluster</div> + <h4 class="title">{{'main.createCluster.title' | translate}}</h4> + <div class="description">{{'main.createCluster.description' | translate}}</div> <div class="glyphicon glyphicon-cloud"></div> - <div class="buttons"> <a href="/#/installer/step0" class="btn btn-primary create-cluster-button">Launch Install Wizard</a></div> + <div class="buttons"> <a href="/#/installer/step0" class="btn btn-primary create-cluster-button">{{'main.createCluster.launchInstallWizard' | translate}}</a></div> </div> <!--Manage Users and groups--> <div class="col-sm-5 thumbnail"> - <h4 class="title">Manage Users + Groups</h4> - <div class="description">Manage the users and groups that can access Ambari</div> + <h4 class="title">{{'main.manageUsersAndGroups.title' | translate}}</h4> + <div class="description">{{'main.manageUsersAndGroups.description' | translate}}</div> <div class="glyphicon glyphicon-user"></div> <div class="buttons"> - <span ng-class="{active: isActive('users.list')}"><link-to route="users.list" class="btn btn-primary userslist-button">Users</link-to></span> - <span ng-class="{active: isActive('groups.list')}"><link-to route="groups.list" class="btn btn-primary groupslist-button">Groups</link-to></span> + <span ng-class="{active: isActive('users.list')}"><link-to route="users.list" class="btn btn-primary userslist-button">{{'common.users' | translate}}</link-to></span> + <span ng-class="{active: isActive('groups.list')}"><link-to route="groups.list" class="btn btn-primary groupslist-button">{{'common.groups' | translate}}</link-to></span> </div> </div> <!--Deploy Views--> <div class="col-sm-5 thumbnail"> - <h4 class="title">Deploy Views</h4> - <div class="description">Create view instances and grant permissions</div> + <h4 class="title">{{'main.deployViews.title' | translate}}</h4> + <div class="description">{{'main.deployViews.description' | translate}}</div> <div class="glyphicon glyphicon-th"></div> - <div ng-class="{active: isActive('views.list')}" class="buttons"><link-to route="views.list" class="btn btn-primary viewslist-button">Views</link-to></div> + <div ng-class="{active: isActive('views.list')}" class="buttons"><link-to route="views.list" class="btn btn-primary viewslist-button">{{'common.views' | translate}}</link-to></div> </div> </div> </div> http://git-wip-us.apache.org/repos/asf/ambari/blob/83ea508b/ambari-admin/src/main/resources/ui/admin-web/app/views/modals/AboutModal.html ---------------------------------------------------------------------- diff --git a/ambari-admin/src/main/resources/ui/admin-web/app/views/modals/AboutModal.html b/ambari-admin/src/main/resources/ui/admin-web/app/views/modals/AboutModal.html index a78db29..e8856d4 100644 --- a/ambari-admin/src/main/resources/ui/admin-web/app/views/modals/AboutModal.html +++ b/ambari-admin/src/main/resources/ui/admin-web/app/views/modals/AboutModal.html @@ -16,29 +16,29 @@ * limitations under the License. --> <div class="modal-header"> - <button type="button" class="close" data-dismiss="modal" ng-click="ok()"><span aria-hidden="true">×</span><span class="sr-only">Close</span></button> - <h3 class="modal-title">About</h3> + <button type="button" class="close" data-dismiss="modal" ng-click="ok()"><span aria-hidden="true">×</span><span class="sr-only">{{'common.controls.close' | translate}}</span></button> + <h3 class="modal-title">{{'common.about' | translate}}</h3> </div> <div class="modal-body"> <div class="about clearfix"> <div class="logo"> - <img src="/img/logo.png" alt="Apache Ambari" title="Apache Ambari"> + <img src="/img/logo.png" alt="{{'common.apacheAmbari' | translate}}" title="{{'common.apacheAmbari' | translate}}"> </div> <div class="content"> - <div class="project">Apache Ambari</div> + <div class="project">{{'common.apacheAmbari' | translate}}</div> <br> - <span id="i18n-33">Version</span> + <span id="i18n-33">{{'common.version' | translate}}</span> <script id="metamorph-199-start" type="text/x-placeholder"></script> <span ng-bind="ambariVersion"></span> <script id="metamorph-199-end" type="text/x-placeholder"></script> <br> <br> - <a href="http://ambari.apache.org/" target="_blank"><span id="i18n-34">Get involved!</span></a> + <a href="http://ambari.apache.org/" target="_blank"><span id="i18n-34">{{'common.getInvolved' | translate}}</span></a> <br> - <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank"><span id="i18n-35">Licensed under the Apache License, Version 2.0</span></a> + <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank"><span id="i18n-35">{{'common.license' | translate}}</span></a> </div> </div> </div> <div class="modal-footer"> - <button class="btn btn-success" ng-click="ok()">OK</button> + <button class="btn btn-success" ng-click="ok()">{{'common.controls.ok' | translate}}</button> </div> http://git-wip-us.apache.org/repos/asf/ambari/blob/83ea508b/ambari-admin/src/main/resources/ui/admin-web/app/views/modals/BodyForDeregisterVersion.html ---------------------------------------------------------------------- diff --git a/ambari-admin/src/main/resources/ui/admin-web/app/views/modals/BodyForDeregisterVersion.html b/ambari-admin/src/main/resources/ui/admin-web/app/views/modals/BodyForDeregisterVersion.html index a48633a..4d0ca30 100644 --- a/ambari-admin/src/main/resources/ui/admin-web/app/views/modals/BodyForDeregisterVersion.html +++ b/ambari-admin/src/main/resources/ui/admin-web/app/views/modals/BodyForDeregisterVersion.html @@ -15,4 +15,4 @@ * See the License for the specific language governing permissions and * limitations under the License. --> -Are you sure you want to deregister version <strong>{{innerScope.displayName}}</strong> ? +<span translate="versions.deregisterConfirmation" translate-values="{versionName: innerScope.displayName}"></span> http://git-wip-us.apache.org/repos/asf/ambari/blob/83ea508b/ambari-admin/src/main/resources/ui/admin-web/app/views/modals/TimeoutWarning.html ---------------------------------------------------------------------- diff --git a/ambari-admin/src/main/resources/ui/admin-web/app/views/modals/TimeoutWarning.html b/ambari-admin/src/main/resources/ui/admin-web/app/views/modals/TimeoutWarning.html index ad5c3a0..abcb84c 100644 --- a/ambari-admin/src/main/resources/ui/admin-web/app/views/modals/TimeoutWarning.html +++ b/ambari-admin/src/main/resources/ui/admin-web/app/views/modals/TimeoutWarning.html @@ -19,9 +19,7 @@ <div class="modal-header"> <h4 class="modal-title">{{title}}</h4> </div> -<div class="modal-body"> - You will be automatically logged out in <b>{{remainTime}}</b> seconds due to inactivity. -</div> +<div class="modal-body" translate="common.alerts.timeOut" translate-values="{time: remainTime}"></div> <div class="modal-footer"> <button class="btn btn-default" ng-click="logout()">{{secondaryText}}</button> <button class="btn btn-primary" ng-click="remain()">{{primaryText}}</button> http://git-wip-us.apache.org/repos/asf/ambari/blob/83ea508b/ambari-admin/src/main/resources/ui/admin-web/app/views/stackVersions/list.html ---------------------------------------------------------------------- diff --git a/ambari-admin/src/main/resources/ui/admin-web/app/views/stackVersions/list.html b/ambari-admin/src/main/resources/ui/admin-web/app/views/stackVersions/list.html index ed014d8..5f5421b 100644 --- a/ambari-admin/src/main/resources/ui/admin-web/app/views/stackVersions/list.html +++ b/ambari-admin/src/main/resources/ui/admin-web/app/views/stackVersions/list.html @@ -19,12 +19,12 @@ <div id="stack-versions"> <div class="clearfix"> <ol class="breadcrumb pull-left"> - <li class="active">Versions</li> + <li class="active">{{'common.versions' | translate}}</li> </ol> <div class="pull-right top-margin-4"> <a href="#/stackVersions/create" class="btn btn-primary"> <span class="glyphicon glyphicon-plus"></span> - Register Version + {{'versions.register' | translate}} </a> </div> </div> @@ -33,11 +33,11 @@ <thead> <tr> <th class="col-medium"> - <label>Name</label> - <input type="text" class="form-control" ng-change="resetPagination()" ng-model="filter.version" placeholder="Any"> + <label>{{'common.name' | translate}}</label> + <input type="text" class="form-control" ng-change="resetPagination()" ng-model="filter.version" placeholder="{{'common.any' | translate}}"> </th> <th class="col-small"> - <label>Cluster</label> + <label>{{'common.cluster' | translate}}</label> <select class="form-control" ng-change="resetPagination()" ng-model="filter.cluster.current" @@ -57,20 +57,20 @@ {{repo.cluster}} </a> <span ng-show="!repo.cluster"> - None + {{'common.none' | translate}} </span> </td> <td class="verison-label-row"> <div ng-show="repo.status == 'current'"> - <span class="label {{'status-' + repo.status}}">Current: {{repo.currentHosts}}/{{repo.totalHosts}}</span> + <span class="label {{'status-' + repo.status}}">{{'versions.current' | translate}}: {{repo.currentHosts}}/{{repo.totalHosts}}</span> </div> <div ng-show="repo.status == 'installed'"> - <span class="label {{'status-' + repo.status}}">Installed: {{repo.installedHosts}}/{{repo.totalHosts}}</span> + <span class="label {{'status-' + repo.status}}">{{'versions.installed' | translate}}: {{repo.installedHosts}}/{{repo.totalHosts}}</span> </div> <div ng-show="!repo.cluster"> <div class="btn-group display-inline-block" dropdown is-open="viewsdropdown.isopen" ng-mouseover="viewsdropdown.isopen=true" ng-mouseout="viewsdropdown.isopen=false" ng-init="viewsdropdown.isopen=false"> <a class="btn dropdown-toggle"> - <span>Install on...</span> + <span>{{'versions.installOn' | translate}}</span> </a> <ul class="dropdown-menu" ng-show="viewsdropdown.isopen"> <li ng-repeat="cluster in dropDownClusters"> @@ -86,12 +86,12 @@ </tbody> </table> <div class="alert alert-info col-sm-12" ng-show="!repos.length"> - No version to display. + {{'common.alerts.nothingToDisplay' | translate: '{term: getConstant("version")}'}} </div> <div class="col-sm-12 table-bar"> <div class="pull-left filtered-info"> - <span>{{tableInfo.showed}} of {{tableInfo.total}} versions showing</span> - <span ng-show="isNotEmptyFilter">- <a href ng-click="clearFilters()">clear filters</a></span> + <span>{{'common.filterInfo' | translate: '{showed: tableInfo.showed, total: tableInfo.total, term: getConstant("versions")}'}}</span> + <span ng-show="isNotEmptyFilter">- <a href ng-click="clearFilters()">{{'common.controls.clearFilters' | translate}}</a></span> </div> <div class="pull-right left-margin"> <pagination class="paginator" http://git-wip-us.apache.org/repos/asf/ambari/blob/83ea508b/ambari-admin/src/main/resources/ui/admin-web/app/views/stackVersions/stackVersionPage.html ---------------------------------------------------------------------- diff --git a/ambari-admin/src/main/resources/ui/admin-web/app/views/stackVersions/stackVersionPage.html b/ambari-admin/src/main/resources/ui/admin-web/app/views/stackVersions/stackVersionPage.html index 0c6ca84..9b7e032 100644 --- a/ambari-admin/src/main/resources/ui/admin-web/app/views/stackVersions/stackVersionPage.html +++ b/ambari-admin/src/main/resources/ui/admin-web/app/views/stackVersions/stackVersionPage.html @@ -18,28 +18,25 @@ <div class="clearfix"> <ol class="breadcrumb pull-left"> - <li><a href="#/stackVersions">Versions</a></li> + <li><a href="#/stackVersions">{{'common.versions' | translate}}</a></li> <li class="active" ng-if="editController">{{displayName}} <span class="sub-text">({{repoVersionFullName}})</span></li> - <li class="active" ng-if="createController">Register Version</li> + <li class="active" ng-if="createController">{{'versions.register' | translate}}</li> </ol> <div class="pull-right top-margin-4" ng-switch="deleteEnabled" ng-if="editController"> - <button ng-switch-when="false" class="btn disabled btn-default" tooltip="Cannot delete version already installed.">Deregister - Version - </button> - <button ng-switch-when="true" class="btn btn-danger" ng-click="delete()">Deregister Version - </button> + <button ng-switch-when="false" class="btn disabled btn-default" tooltip="Cannot delete version already installed.">{{'versions.deregister' | translate}}</button> + <button ng-switch-when="true" class="btn btn-danger" ng-click="delete()">{{'versions.deregister' | translate}}</button> </div> </div> <hr> <form class="form-horizontal register-version-form" role="form" name="repoRegForm" novalidate> <div class="panel panel-default" ng-if="createController"> <div class="panel-heading"> - <h3 class="panel-title">Details</h3> + <h3 class="panel-title">{{'common.details' | translate}}</h3> </div> <div class="panel-body"> <div class="form-inline repo-version-inline"> - <label class="control-label col-sm-2 repo-version-label">Name</label> + <label class="control-label col-sm-2 repo-version-label">{{'common.name' | translate}}</label> <div class="col-sm-10"> <select class="form-control repo-version-select" ng-model="$parent.upgradeStack.selected" @@ -49,9 +46,9 @@ <span class="bold-dot">.</span> <div class="form-group" ng-class="{'has-error' : repoRegForm.version.$error.pattern}"> <input class="form-control" name="version" type="text" ng-model="$parent.repoSubversion" ng-pattern="subversionPattern" - placeholder="Version Number (0.0)" ng-change="updateCurrentVersionInput()" required/> + placeholder="{{'versions.placeholder' | translate}}" ng-change="updateCurrentVersionInput()" required/> <span class="text-danger" ng-show="repoRegForm.version.$error.pattern"> -  {{currentVersionInput}} Invalid. +  {{'common.alerts.isInvalid' | translate: '{term: currentVersionInput}'}} </span> </div> </div> @@ -60,19 +57,15 @@ </div> <div class="panel panel-default"> <div class="panel-heading"> - <h3 class="panel-title">Repositories</h3> + <h3 class="panel-title">{{'versions.repos' | translate}}</h3> </div> <div class="panel-body "> - <div class="alert alert-info" role="alert"> - Provide Base URLs for the Operating Systems you are configuring. Uncheck all other Operating Systems. - </div> - <div class="alert alert-warning hide-soft" ng-class="{'visible' : hasValidationErrors()}" role="alert"> - Some of the repositories failed validation. Make changes to the base url or skip validation if you are sure that urls are correct - </div> + <div class="alert alert-info" role="alert">{{'versions.alerts.baseURLs' | translate}}</div> + <div class="alert alert-warning hide-soft" ng-class="{'visible' : hasValidationErrors()}" role="alert">{{'versions.alerts.validationFailed' | translate}}</div> <div class="border-bottom bottom-margin clearfix"> - <div class="col-sm-2"><h5><label>OS</label></h5></div> - <div class="name-label-adjust col-sm-2"><h5><label>Name</label></h5></div> - <div class="col-sm-7"><h5><label>Base URL</label></h5></div> + <div class="col-sm-2"><h5><label>{{'versions.os' | translate}}</label></h5></div> + <div class="name-label-adjust col-sm-2"><h5><label>{{'common.name' | translate}}</label></h5></div> + <div class="col-sm-7"><h5><label >{{'versions.baseURL' | translate}}</label></h5></div> </div> <div class="clearfix border-bottom bottom-margin" ng-repeat="os in osList"> <div class="col-sm-2 os-checkbox"> @@ -95,7 +88,7 @@ <div class="checkbox"> <label> <input type="checkbox" ng-model="skipValidation" ng-change="clearErrors()"> - Skip Repository Base URL validation (Advanced) <span class="glyphicon glyphicon-question-sign" tooltip-html-unsafe="<b>Warning:</b> This is for advanced users only. Use this option if you want to skip validation for Repository Base URLs."></span> + {{'versions.skipValidation' | translate}} <span class="glyphicon glyphicon-question-sign" tooltip-html-unsafe="{{'versions.alerts.skipValidationWarning' | translate}}"></span> </label> </div> </div> @@ -104,7 +97,7 @@ </div> <div class="col-sm-12"> <button class="btn btn-primary pull-right left-margin" ng-click="save()" - ng-disabled="(createController && repoRegForm.version.$invalid) || selectedOS === 0">Save</button> - <button class="btn btn-default pull-right" ng-click="cancel()">Cancel</button> + ng-disabled="(createController && repoRegForm.version.$invalid) || selectedOS === 0">{{'common.controls.save' | translate}}</button> + <button class="btn btn-default pull-right" ng-click="cancel()">{{'common.controls.cancel' | translate}}</button> </div> </form> http://git-wip-us.apache.org/repos/asf/ambari/blob/83ea508b/ambari-admin/src/main/resources/ui/admin-web/app/views/users/create.html ---------------------------------------------------------------------- diff --git a/ambari-admin/src/main/resources/ui/admin-web/app/views/users/create.html b/ambari-admin/src/main/resources/ui/admin-web/app/views/users/create.html index 3d1cfc5..c0967fb 100644 --- a/ambari-admin/src/main/resources/ui/admin-web/app/views/users/create.html +++ b/ambari-admin/src/main/resources/ui/admin-web/app/views/users/create.html @@ -16,58 +16,52 @@ * limitations under the License. --> <ol class="breadcrumb"> - <li><a href="#/users">Users</a></li> - <li class="active">Create Local User</li> + <li><a href="#/users">{{'common.users' | translate}}</a></li> + <li class="active">{{'users.create' | translate}}</li> </ol> <hr> <form class="form-horizontal create-user-form" role="form" novalidate name="form" autocomplete="off"> <div class="form-group" ng-class="{'has-error' : form.user_name.$error.required && form.submitted}"> - <label for="username" class="col-sm-2 control-label">Username</label> + <label for="username" class="col-sm-2 control-label">{{'users.username' | translate}}</label> <div class="col-sm-10"> - <input type="text" id="username" class="form-control username-input" name="user_name" placeholder="User name" ng-model="user.user_name" required autocomplete="off"> - <div class="alert alert-danger top-margin" ng-show="form.user_name.$error.required && form.submitted"> - This field is required. - </div> + <input type="text" id="username" class="form-control username-input" name="user_name" placeholder="{{'users.userName' | translate}}" ng-model="user.user_name" required autocomplete="off"> + <div class="alert alert-danger top-margin" ng-show="form.user_name.$error.required && form.submitted">{{'common.alerts.fieldIsRequired' | translate}</div> </div> </div> <div class="form-group"> - <label for="" class="col-sm-2 control-label">Type</label> + <label for="" class="col-sm-2 control-label">{{'common.type' | translate}}</label> <div class="col-sm-10"> - <label for="" class="control-label">Local</label> + <label for="" class="control-label">{{'common.local' | translate}}</label> </div> </div> <div class="form-group"> - <label for="" class="col-sm-2 control-label">Status</label> + <label for="" class="col-sm-2 control-label">{{'users.status' | translate}}</label> <div class="col-sm-10"> - <toggle-switch model="user.active" on-label="Active" off-label="Inactive" class="switch-primary userstatus" data-off-color="danger"></toggle-switch> + <toggle-switch model="user.active" on-label="{{'users.active' | translate}}" off-label="{{'users.inactive' | translate}}" class="switch-primary userstatus" data-off-color="danger"></toggle-switch> </div> </div> <div class="form-group"> - <label for="" class="col-sm-2 control-label"><span class="glyphicon glyphicon-flash"></span>Ambari Admin</label> + <label for="" class="col-sm-2 control-label"><span class="glyphicon glyphicon-flash"></span>{{'users.ambariAdmin' | translate}}</label> <div class="col-sm-10"> - <toggle-switch ng-disabled="isCurrentUser" model="user.admin" on-label="Yes" off-label="No" class="switch-primary userstatus" data-off-color="danger"></toggle-switch> + <toggle-switch ng-disabled="isCurrentUser" model="user.admin" on-label="{{'common.yes' | translate}}" off-label="{{'common.no' | translate}}" class="switch-primary userstatus" data-off-color="danger"></toggle-switch> </div> </div> <div class="form-group" ng-class="{'has-error' : (form.password.$error.required && form.submitted) || form.confirmPassword.$error.passwordVerify}"> - <label for="password" class="col-sm-2 control-label">Password</label> + <label for="password" class="col-sm-2 control-label">{{'users.password' | translate}}</label> <div class="col-sm-10"> - <input type="password" class="form-control bottom-margin userpassword" name="password" placeholder="Password" required ng-model="user.password" autocomplete="off"> - <input type="password" class="form-control bottom-margin userpasswordconfirm" name="confirmPassword" placeholder="Password confirmation" required ng-model="user.passwordConfirmation" + <input type="password" class="form-control bottom-margin userpassword" name="password" placeholder="{{'users.password' | translate}}" required ng-model="user.password" autocomplete="off"> + <input type="password" class="form-control bottom-margin userpasswordconfirm" name="confirmPassword" placeholder="{{'users.passwordConfirmation' | translate}}" required ng-model="user.passwordConfirmation" password-verify="user.password" autocomplete="off"> - <div class="alert alert-danger" ng-show='form.confirmPassword.$error.passwordVerify'> - Password must match! - </div> - <div class="alert alert-danger" ng-show='form.password.$error.required && form.submitted'> - Password required! - </div> + <div class="alert alert-danger" ng-show='form.confirmPassword.$error.passwordVerify'>{{'users.alerts.wrongPassword' | translate}}</div> + <div class="alert alert-danger" ng-show='form.password.$error.required && form.submitted'>{{'users.alerts.passwordRequired' | translate}}</div> </div> </div> <div class="form-group"> <div class="col-sm-offset-2 col-sm-10"> - <button class="btn btn-primary pull-right left-margin saveuser" ng-click="createUser()">Save</button> - <a class="btn btn-default pull-right cancel" href ng-click="cancel()">Cancel</a> + <button class="btn btn-primary pull-right left-margin saveuser" ng-click="createUser()">{{'common.controls.save' | translate}}</button> + <a class="btn btn-default pull-right cancel" href ng-click="cancel()">{{'common.controls.cancel' | translate}}</a> </div> </div> http://git-wip-us.apache.org/repos/asf/ambari/blob/83ea508b/ambari-admin/src/main/resources/ui/admin-web/app/views/users/list.html ---------------------------------------------------------------------- diff --git a/ambari-admin/src/main/resources/ui/admin-web/app/views/users/list.html b/ambari-admin/src/main/resources/ui/admin-web/app/views/users/list.html index 3885978..9e93032 100644 --- a/ambari-admin/src/main/resources/ui/admin-web/app/views/users/list.html +++ b/ambari-admin/src/main/resources/ui/admin-web/app/views/users/list.html @@ -19,10 +19,10 @@ <div class="users-pane"> <div class="clearfix"> <ol class="breadcrumb pull-left"> - <li class="active">Users</li> + <li class="active">{{'common.users' | translate}}</li> </ol> <div class="pull-right top-margin-4"> - <link-to route="users.create" class="btn btn-primary createuser-btn"><span class="glyphicon glyphicon-plus"></span> Create Local User</link-to> + <link-to route="users.create" class="btn btn-primary createuser-btn"><span class="glyphicon glyphicon-plus"></span> {{'users.create' | translate}}</link-to> </div> </div> <hr> @@ -33,18 +33,18 @@ <span class="bottom-margin admin-filter glyphicon glyphicon-flash" ng-class="{'no-filter' : !adminFilter}" ng-click="toggleAdminFilter()" - tooltip="{{adminFilter ? 'Show all users' : 'Show only admin users'}}" + tooltip="{{'users.' + (adminFilter ? 'showAll' : 'showAdmin') | translate}}" ></span> </th> <th> <div class="search-container"> - <label for="">Username</label> - <input type="text" class="form-control namefilter" placeholder="Any" ng-model="currentNameFilter" ng-change="resetPagination()"> - <button type="button" class="close clearfilter" ng-show="currentNameFilter" ng-click="currentNameFilter=''; resetPagination()"><span aria-hidden="true">×</span><span class="sr-only">Close</span></button> + <label for="">{{'users.username' | translate}}</label> + <input type="text" class="form-control namefilter" placeholder="{{'common.any' | translate}}" ng-model="currentNameFilter" ng-change="resetPagination()"> + <button type="button" class="close clearfilter" ng-show="currentNameFilter" ng-click="currentNameFilter=''; resetPagination()"><span aria-hidden="true">×</span><span class="sr-only">{{'common.controls.close' | translate}}</span></button> </div> </th> <th> - <label for="">Type</label> + <label for="">{{'common.type' | translate}}</label> <select class="form-control typefilter" ng-model="currentTypeFilter" ng-options="item.label for item in typeFilterOptions" @@ -53,7 +53,7 @@ </th> <th> - <label for="">Status</label> + <label for="">{{'users.status' | translate}}</label> <select class="form-control statusfilter" ng-model="currentActiveFilter" ng-options="item.label for item in activeFilterOptions" @@ -65,23 +65,23 @@ <tbody> <tr ng-repeat="user in users"> <td> - <span class="glyphicon" tooltip="{{user.Users.admin ? 'Ambari Admin' : ''}}" ng-class="{'glyphicon-flash' : user.Users.admin}"></span> + <span class="glyphicon" tooltip="{{user.Users.admin ? constants.admin : ''}}" ng-class="{'glyphicon-flash' : user.Users.admin}"></span> </td> <td> <a href="#/users/{{user.Users.encoded_name}}">{{user.Users.user_name}}</a> </td> <td>{{user.Users.userTypeName}}</td> - <td><span ng-class="user.Users.active ? 'text-success' : 'text-danger'">{{user.Users.active ? 'Active' : 'Inactive'}}</span></td> + <td><span ng-class="user.Users.active ? 'text-success' : 'text-danger'">{{'users.' + (user.Users.active ? 'active' : 'inactive') | translate}}</span></td> </tr> </tbody> </table> <div class="alert alert-info col-sm-12" ng-show="!users.length"> - No users to display. + {{'common.alerts.nothingToDisplay' | translate: '{term: constants.users}'}} </div> <div class="col-sm-12 table-bar"> <div class="pull-left filtered-info"> - <span>{{tableInfo.showed}} of {{tableInfo.total}} users showing</span> - <span ng-show="isNotEmptyFilter">- <a href ng-click="clearFilters()">clear filters</a></span> + <span>{{'common.filterInfo' | translate: '{showed: tableInfo.showed, total: tableInfo.total, term: constants.users}'}}</span> + <span ng-show="isNotEmptyFilter">- <a href ng-click="clearFilters()">{{'common.controls.clearFilters' | translate}}</a></span> </div> <div class="pull-right left-margin"> <pagination class="paginator" total-items="totalUsers" max-size="maxVisiblePages" items-per-page="usersPerPage" ng-model="currentPage" ng-change="pageChanged()"></pagination> http://git-wip-us.apache.org/repos/asf/ambari/blob/83ea508b/ambari-admin/src/main/resources/ui/admin-web/app/views/users/modals/changePassword.html ---------------------------------------------------------------------- diff --git a/ambari-admin/src/main/resources/ui/admin-web/app/views/users/modals/changePassword.html b/ambari-admin/src/main/resources/ui/admin-web/app/views/users/modals/changePassword.html index 9b3f50d..f29d315 100644 --- a/ambari-admin/src/main/resources/ui/admin-web/app/views/users/modals/changePassword.html +++ b/ambari-admin/src/main/resources/ui/admin-web/app/views/users/modals/changePassword.html @@ -16,37 +16,31 @@ * limitations under the License. --> <div class="modal-header"> - <h3 class="modal-title">Change Password for {{userName}}</h3> + <h3 class="modal-title">{{'users.changePasswordFor' | translate: '{userName: userName}'}}</h3> </div> <div class="modal-body"> <form class="form-horizontal" novalidate name="form.passwordChangeForm" role="form" > <div class="form-group" ng-class="{'has-error' : (form.passwordChangeForm.currentPassword.$error.required && form.passwordChangeForm.submitted)}"> - <label for="" class="col-sm-4 control-label" >Your Password</label> + <label for="" class="col-sm-4 control-label" >{{'users.yourPassword' | translate}}</label> <div class="col-sm-8"> - <input type="password" name="currentPassword" class="form-control bottom-margin" placeholder="Your password" required ng-model="passwordData.currentUserPassword" autocomplete="off"> - <div class="alert alert-danger no-margin-bottom" ng-show='form.passwordChangeForm.password.$error.required && form.passwordChangeForm.submitted'> - Password required! - </div> + <input type="password" name="currentPassword" class="form-control bottom-margin" placeholder="{{'users.yourPassword' | translate}}" required ng-model="passwordData.currentUserPassword" autocomplete="off"> + <div class="alert alert-danger no-margin-bottom" ng-show='form.passwordChangeForm.password.$error.required && form.passwordChangeForm.submitted'>{{'users.alerts.passwordRequired' | translate}}</div> </div> </div> <div class="form-group no-margin-bottom" ng-class="{'has-error' : (form.passwordChangeForm.password.$error.required && form.passwordChangeForm.submitted) || form.passwordChangeForm.confirmPassword.$error.passwordVerify}"> - <label for="" class="col-sm-4 control-label">New User Password:</label> + <label for="" class="col-sm-4 control-label">{{'users.newPassword' | translate}}:</label> <div class="col-sm-8"> - <input type="password" class="form-control bottom-margin" name="password" placeholder="New User Password" required ng-model="passwordData.password" autocomplete="off"> - <input type="password" class="form-control bottom-margin" name="confirmPassword" placeholder="New User Password Confirmation" required ng-model="passwordData.passwordConfirmation" + <input type="password" class="form-control bottom-margin" name="password" placeholder="{{'users.newPassword' | translate}}" required ng-model="passwordData.password" autocomplete="off"> + <input type="password" class="form-control bottom-margin" name="confirmPassword" placeholder="{{'users.newPasswordConfirmation' | translate}}" required ng-model="passwordData.passwordConfirmation" password-verify="passwordData.password" autocomplete="off"> - <div class="alert alert-danger no-margin-bottom" ng-show='form.passwordChangeForm.confirmPassword.$error.passwordVerify'> - Password must match! - </div> - <div class="alert alert-danger no-margin-bottom" ng-show='form.passwordChangeForm.password.$error.required && form.passwordChangeForm.submitted'> - Password required! - </div> + <div class="alert alert-danger no-margin-bottom" ng-show='form.passwordChangeForm.confirmPassword.$error.passwordVerify'>{{'users.alerts.wrongPassword' | translate}}</div> + <div class="alert alert-danger no-margin-bottom" ng-show='form.passwordChangeForm.password.$error.required && form.passwordChangeForm.submitted'>{{'users.alerts.passwordRequired' | translate}}</div> </div> </div> </form> </div> <div class="modal-footer"> - <button class="btn btn-default" ng-click="cancel()">Cancel</button> - <button class="btn btn-primary" ng-click="ok()">OK</button> + <button class="btn btn-default" ng-click="cancel()">{{'common.controls.cancel' | translate}}</button> + <button class="btn btn-primary" ng-click="ok()">{{'common.controls.ok' | translate}}</button> </div> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/ambari/blob/83ea508b/ambari-admin/src/main/resources/ui/admin-web/app/views/users/show.html ---------------------------------------------------------------------- diff --git a/ambari-admin/src/main/resources/ui/admin-web/app/views/users/show.html b/ambari-admin/src/main/resources/ui/admin-web/app/views/users/show.html index 38bb355..18df5fa 100644 --- a/ambari-admin/src/main/resources/ui/admin-web/app/views/users/show.html +++ b/ambari-admin/src/main/resources/ui/admin-web/app/views/users/show.html @@ -19,61 +19,61 @@ <div ng-show="user" class="user-edit-panel"> <div class="clearfix"> <ol class="breadcrumb pull-left"> - <li><a href="#/users">Users</a></li> + <li><a href="#/users">{{'common.users' | translate}}</a></li> <li class="active"><span class="glyphicon glyphicon-flash" ng-show="user.admin"></span>{{user.user_name}}</li> </ol> <div class="pull-right top-margin-4"> <div ng-switch="isCurrentUser || user.ldap_user"> - <button class="btn deleteuser-btn disabled btn-default" ng-switch-when="true" tooltip="Cannot Delete User">Delete User</button> - <button class="btn deleteuser-btn btn-danger" ng-switch-when="false" ng-click="deleteUser()">Delete User</button> + <button class="btn deleteuser-btn disabled btn-default" ng-switch-when="true" tooltip="{{'common.cannotDelete' | translate: '{term: constants.user}'}}">{{'common.delete' | translate: '{term: constants.user}'}}</button> + <button class="btn deleteuser-btn btn-danger" ng-switch-when="false" ng-click="deleteUser()">{{'common.delete' | translate: '{term: constants.user}'}}</button> </div> </div> </div> <hr> <form class="form-horizontal" role="form" > <div class="form-group"> - <label for="" class="col-sm-2 control-label">Type</label> + <label for="" class="col-sm-2 control-label">{{'common.type' | translate}}</label> <div class="col-sm-10"> <label for="" class="control-label">{{user.userTypeName}}</label> </div> </div> <div class="form-group"> - <label for="" class="col-sm-2 control-label">Status</label> + <label for="" class="col-sm-2 control-label">{{'users.status' | translate}}</label> <div class="col-sm-10"> - <toggle-switch on-change="toggleUserActive()" disabled-tooltip="Cannot Change Status" ng-disabled="isCurrentUser" model="user.active" on-label="Active" off-label="Inactive" class="switch-primary userstatus {{user ? '' : 'no-animation'}}" data-off-color="danger"></toggle-switch> + <toggle-switch on-change="toggleUserActive()" disabled-tooltip="{{'users.alerts.cannotChange' | translate: '{term: constants.status}'}}" ng-disabled="isCurrentUser" model="user.active" on-label="{{'users.active' | translate}}" off-label="{{'users.inactive' | translate}}" class="switch-primary userstatus {{user ? '' : 'no-animation'}}" data-off-color="danger"></toggle-switch> </div> </div> <div class="form-group"> - <label for="" class="col-sm-2 control-label"><span class="glyphicon glyphicon-flash"></span> Ambari Admin</label> + <label for="" class="col-sm-2 control-label"><span class="glyphicon glyphicon-flash"></span> {{'users.ambariAdmin' | translate}}</label> <div class="col-sm-10"> - <toggle-switch on-change="toggleUserAdmin()" disabled-tooltip="Cannot Change Admin" ng-disabled="isCurrentUser" model="user.admin" on-label="Yes" off-label="No" class="switch-primary userstatus {{user ? '' : 'no-animation'}}" data-off-color="danger"></toggle-switch> + <toggle-switch on-change="toggleUserAdmin()" disabled-tooltip="{{'users.alerts.cannotChange' | translate: '{term: constants.admin}'}}" ng-disabled="isCurrentUser" model="user.admin" on-label="{{'common.yes' | translate}}" off-label="{{'common.no' | translate}}" class="switch-primary userstatus {{user ? '' : 'no-animation'}}" data-off-color="danger"></toggle-switch> </div> </div> <div class="form-group"> - <label for="password" class="col-sm-2 control-label">Password</label> + <label for="password" class="col-sm-2 control-label">{{'users.password' | translate}}</label> <div class="col-sm-10"> <div ng-switch="user.ldap_user"> - <button class="btn deleteuser-btn disabled btn-default" ng-switch-when="true" tooltip="Cannot Change Password">Change Password</button> - <a href ng-click="openChangePwdDialog()" ng-switch-when="false" class="btn btn-default changepassword">Change Password</a> + <button class="btn deleteuser-btn disabled btn-default" ng-switch-when="true" tooltip="{{'users.alerts.cannotChange' | translate: '{term: constants.password}'}}">{{'users.changePassword'}}</button> + <a href ng-click="openChangePwdDialog()" ng-switch-when="false" class="btn btn-default changepassword">{{'users.changePassword' | translate}}</a> </div> </div> </div> <div class="form-group"> - <label for="groups" class="col-sm-2 control-label">{{user.ldap_user ? 'LDAP Group Membership' : 'Local Group Membership'}}</label> + <label for="groups" class="col-sm-2 control-label">{{'common.' + (user.ldap_user ? 'ldap' : 'local') | translate}} {{'users.groupMembership' | translate}}</label> <div class="col-sm-10"> <editable-list items-source="editingGroupsList" resource-type="Group" editable="!user.ldap_user"></editable-list> </div> </div> <div class="form-group" > - <label for="" class="col-sm-2 control-label">Privileges</label> + <label for="" class="col-sm-2 control-label">{{'common.privileges' | translate}}</label> <div class="col-sm-10"> <table class="table" ng-hide="hidePrivileges || user.admin"> <thead> <tr> - <th>Cluster</th> - <th>Cluster Role</th> + <th>{{'common.cluster' | translate}}</th> + <th>{{'common.clusterRole' | translate}}</th> </tr> </thead> <tbody> @@ -87,13 +87,13 @@ </td> </tr> <tr> - <td ng-show="noClusterPriv">No cluster privileges</td> + <td ng-show="noClusterPriv">{{'common.alerts.noPrivileges' | translate: '{term: constants.cluster}'}}</td> </tr> </tbody> <thead class="view-permission-header"> <tr> - <th>View</th> - <th>View Permissions</th> + <th>{{'common.view' | translate}}</th> + <th>{{'common.viewPermissions' | translate}}</th> </tr> </thead> <tbody> @@ -107,12 +107,12 @@ </td> </tr> <tr> - <td ng-show="noViewPriv">No view privileges</td> + <td ng-show="noViewPriv">{{'common.alerts.noPrivileges' | translate: '{term: constants.view}'}}</td> </tr> </tbody> </table> - <div class="alert alert-info" ng-show="!privileges && !user.admin">This user does not have any privileges.</div> - <div class="alert alert-info" ng-show="user.admin">This user is an Ambari Admin and has all privileges.</div> + <div class="alert alert-info" ng-show="!privileges && !user.admin">{{'common.alerts.noPrivilegesDescription' | translate: '{term: constants.user}'}}</div> + <div class="alert alert-info" ng-show="user.admin">{{'users.userIsAdmin' | translate}}</div> </div> </div> </form>
