You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by on...@apache.org on 2014/05/22 16:43:06 UTC
[4/4] git commit: AMBARI-5860. Populate the configs tab of Slider App
details page. (onechiporenko)
AMBARI-5860. Populate the configs tab of Slider App details page. (onechiporenko)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/79eb5f5b
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/79eb5f5b
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/79eb5f5b
Branch: refs/heads/trunk
Commit: 79eb5f5bd49e2122c3f608b82a3b991762ebac91
Parents: 60cbd69
Author: Oleg Nechiporenko <on...@apache.org>
Authored: Thu May 22 17:42:45 2014 +0300
Committer: Oleg Nechiporenko <on...@apache.org>
Committed: Thu May 22 17:42:45 2014 +0300
----------------------------------------------------------------------
.../src/main/resources/ui/app/config/app.js | 2 +-
.../src/main/resources/ui/app/config/router.js | 5 +-
.../main/resources/ui/app/controllers/slider.js | 20 -
.../ui/app/controllers/slider_app_controller.js | 45 +
.../main/resources/ui/app/models/slider_app.js | 99 +-
.../resources/ui/app/styles/application.less | 108 +-
.../ui/app/templates/createAppWizard.hbs | 10 +-
.../ui/app/templates/createAppWizard/step1.hbs | 4 +-
.../resources/ui/app/templates/slider_app.hbs | 44 +-
.../ui/app/templates/slider_app/configs.hbs | 80 +
.../ui/app/templates/slider_app/summary.hbs | 20 +
.../resources/ui/app/templates/slider_apps.hbs | 7 +-
.../src/main/resources/ui/app/translations.js | 16 +-
.../slider/src/main/resources/ui/config.js | 6 +
.../ui/vendor/scripts/common/bootstrap.js | 2820 +++--
.../ui/vendor/scripts/common/bs-basic.min.js | 1 +
.../ui/vendor/scripts/common/bs-core.min.js | 1 +
.../ui/vendor/scripts/common/bs-nav.min.js | 1 +
.../resources/ui/vendor/styles/bootstrap.css | 10346 +++++++++--------
19 files changed, 6961 insertions(+), 6674 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/79eb5f5b/contrib/views/slider/src/main/resources/ui/app/config/app.js
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/config/app.js b/contrib/views/slider/src/main/resources/ui/app/config/app.js
index 9e19d56..6ec8eca 100755
--- a/contrib/views/slider/src/main/resources/ui/app/config/app.js
+++ b/contrib/views/slider/src/main/resources/ui/app/config/app.js
@@ -23,4 +23,4 @@ var config = {
LOG_TRANSITIONS_INTERNAL: false
};
-module.exports = Ember.Application.create(config);
+module.exports = Ember.Application.createWithMixins(Bootstrap, config);
http://git-wip-us.apache.org/repos/asf/ambari/blob/79eb5f5b/contrib/views/slider/src/main/resources/ui/app/config/router.js
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/config/router.js b/contrib/views/slider/src/main/resources/ui/app/config/router.js
index 41d1b37..2a1825a 100755
--- a/contrib/views/slider/src/main/resources/ui/app/config/router.js
+++ b/contrib/views/slider/src/main/resources/ui/app/config/router.js
@@ -27,6 +27,9 @@ module.exports = App.Router.map(function () {
this.route('step4');
});
});
- this.resource('slider_app', { path: 'apps/:slider_app_id' });
+ this.resource('slider_app', { path: 'apps/:slider_app_id' }, function() {
+ this.route('configs');
+ this.route('summary');
+ });
});
http://git-wip-us.apache.org/repos/asf/ambari/blob/79eb5f5b/contrib/views/slider/src/main/resources/ui/app/controllers/slider.js
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/controllers/slider.js b/contrib/views/slider/src/main/resources/ui/app/controllers/slider.js
deleted file mode 100644
index b9f3698..0000000
--- a/contrib/views/slider/src/main/resources/ui/app/controllers/slider.js
+++ /dev/null
@@ -1,20 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-App.SliderAppsController = Ember.ArrayController.extend({
-});
http://git-wip-us.apache.org/repos/asf/ambari/blob/79eb5f5b/contrib/views/slider/src/main/resources/ui/app/controllers/slider_app_controller.js
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/controllers/slider_app_controller.js b/contrib/views/slider/src/main/resources/ui/app/controllers/slider_app_controller.js
index c24c45f..5cc63f6 100644
--- a/contrib/views/slider/src/main/resources/ui/app/controllers/slider_app_controller.js
+++ b/contrib/views/slider/src/main/resources/ui/app/controllers/slider_app_controller.js
@@ -17,6 +17,51 @@
*/
App.SliderAppController = Ember.ObjectController.extend({
+
+ /**
+ * List of Slider App tabs
+ * @type {{title: string, linkTo: string}[]}
+ */
+ sliderAppTabs: Ember.A([
+ Ember.Object.create({title: Ember.I18n.t('common.summary'), linkTo: 'slider_app.summary'}),
+ Ember.Object.create({title: Ember.I18n.t('common.configs'), linkTo: 'slider_app.configs'})
+ ]),
+
+ /**
+ * List of available for model actions
+ * Based on <code>model.status</code>
+ * @type {Ember.Object[]}
+ */
+ availableActions: function() {
+ var actions = Em.A([]),
+ status = this.get('model.status');
+ if ('RUNNING' === status) {
+ actions.pushObject({
+ title: 'Freeze',
+ confirm: true
+ });
+ }
+ if ('FINISHED' !== status) {
+ actions.push({
+ title: 'Flex',
+ confirm: true
+ });
+ }
+ if ('FROZEN' === status) {
+ actions.pushObjects([
+ {
+ title: 'Thaw',
+ confirm: false
+ },
+ {
+ title: 'Destroy',
+ confirm: true
+ }
+ ]);
+ }
+ return actions;
+ }.property('model.status'),
+
quickLinks: function() {
return this.get('content').get('quickLinks');
}.property('content.quickLinks')
http://git-wip-us.apache.org/repos/asf/ambari/blob/79eb5f5b/contrib/views/slider/src/main/resources/ui/app/models/slider_app.js
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/models/slider_app.js b/contrib/views/slider/src/main/resources/ui/app/models/slider_app.js
index 9afd4d2..0f3fef5 100644
--- a/contrib/views/slider/src/main/resources/ui/app/models/slider_app.js
+++ b/contrib/views/slider/src/main/resources/ui/app/models/slider_app.js
@@ -76,7 +76,73 @@ App.SliderApp = DS.Model.extend({
/**
* @type {App.TypedProperty[]}
*/
- runtimeProperties: DS.hasMany('typedProperty', {async:true})
+ runtimeProperties: DS.hasMany('typedProperty', {async:true}),
+
+ /**
+ * @type {object}
+ * Format:
+ * {
+ * site-name1: {
+ * config1: value1,
+ * config2: value2
+ * ...
+ * },
+ * site-name2: {
+ * config3: value5,
+ * config4: value6
+ * ...
+ * },
+ * ...
+ * }
+ */
+ configs: DS.attr('object'),
+
+ /**
+ * Global configs
+ * @type {{key: string, value: *}[]}
+ */
+ globals: function() {
+ var c = this.get('configs.global');
+ return this.mapObject(c);
+ }.property('configs.global'),
+
+ /**
+ * HBase-Site configs
+ * @type {{key: string, value: *}[]}
+ */
+ hbaseSite: function() {
+ var c = this.get('configs.hbase-site');
+ return this.mapObject(c);
+ }.property('configs.hbase-site'),
+
+ /**
+ * Configs which are not in global or hbase-site
+ * @type {{key: string, value: *}[]}
+ */
+ otherConfigs: function() {
+ var c = this.get('configs'),
+ ret = [],
+ self = this;
+ if (Ember.typeOf(c) !== 'object') return [];
+ Ember.keys(c).forEach(function(key) {
+ if (['hbase-site', 'global'].contains(key)) return;
+ ret = ret.concat(self.mapObject(c[key]));
+ });
+ return ret;
+ }.property('configs'),
+
+ /**
+ * Map object to array
+ * @param {object} o
+ * @returns {{key: string, value: *}[]}
+ */
+ mapObject: function(o) {
+ if (Ember.typeOf(o) !== 'object') return [];
+ return Ember.keys(o).map(function(key) {
+ return {key: key, value: o[key]};
+ });
+ }
+
});
App.SliderApp.FIXTURES = [
@@ -93,14 +159,41 @@ App.SliderApp.FIXTURES = [
diagnostics: 'd1',
components: [3, 4, 5],
quickLinks: [1, 2, 6],
- runtimeProperties: [1, 2, 3]
+ runtimeProperties: [1, 2, 3],
+ configs: {
+ global: {
+ config1: 'value1',
+ config2: 'value2',
+ config3: 'value3',
+ config4: 'value4'
+ },
+ 'hbase-site': {
+ config1: 'value1',
+ config2: 'value2',
+ config3: 'value3',
+ config4: 'value4',
+ config5: 'value5'
+ },
+ another: {
+ config6: 'value6',
+ config7: 'value7',
+ config8: 'value8',
+ config9: 'value9'
+ },
+ another2: {
+ config10: 'value10',
+ config11: 'value11',
+ config12: 'value12',
+ config13: 'value13'
+ }
+ }
},
{
id: 2,
index: 'indx2',
yarnId: 'y2',
name: 'name2',
- status: 'Running',
+ status: 'RUNNING',
user: 'u2',
started: 1400132912,
ended: 1400152912,
http://git-wip-us.apache.org/repos/asf/ambari/blob/79eb5f5b/contrib/views/slider/src/main/resources/ui/app/styles/application.less
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/styles/application.less b/contrib/views/slider/src/main/resources/ui/app/styles/application.less
index 63f233d..ba7f38c 100644
--- a/contrib/views/slider/src/main/resources/ui/app/styles/application.less
+++ b/contrib/views/slider/src/main/resources/ui/app/styles/application.less
@@ -16,6 +16,10 @@
* limitations under the License.
*/
+html {
+ overflow-y: scroll;
+}
+
a {
cursor: pointer;
}
@@ -23,6 +27,7 @@ a {
#slider-apps-table {
.create-app {
margin-top:27px;
+ margin-bottom: 20px;
}
#slider-table {
margin-top: 10px;
@@ -44,6 +49,7 @@ a {
font-size: 0.9em;
th {
padding: 4px;
+ border-bottom: none !important;
}
.active-sort {
color: #555555;
@@ -70,7 +76,8 @@ a {
}
input {
font-size: 12px;
- height: 14px;
+ height: 24px;
+ margin-bottom: 10px;
}
.filter-btn {
color: #999999;
@@ -344,9 +351,6 @@ a {
margin-top: 30px;
}
.quick-links-wrapper {
- margin-top: -53px;
- position: relative;
- left: 278px;
.nav-pills.move {
float: right;
width:135px;
@@ -378,4 +382,98 @@ a {
}
}
}
-}
\ No newline at end of file
+}
+
+.slider-modal {
+ position: fixed;
+ top: 50%;
+ left: 50%;
+ z-index: 1050;
+ width: 560px;
+ margin: -250px 0 0 -280px;
+ overflow: auto;
+ background-color: #ffffff;
+ border: 1px solid #999;
+ border: 1px solid rgba(0, 0, 0, 0.3);
+ *border: 1px solid #999;
+ -webkit-border-radius: 6px;
+ -moz-border-radius: 6px;
+ border-radius: 6px;
+ -webkit-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
+ -moz-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
+ box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
+ -webkit-background-clip: padding-box;
+ -moz-background-clip: padding-box;
+ background-clip: padding-box;
+}
+
+.slider-modal.fade {
+ top: -25%;
+ -webkit-transition: opacity 0.3s linear, top 0.3s ease-out;
+ -moz-transition: opacity 0.3s linear, top 0.3s ease-out;
+ -o-transition: opacity 0.3s linear, top 0.3s ease-out;
+ transition: opacity 0.3s linear, top 0.3s ease-out;
+}
+
+.slider-modal.fade.in {
+ top: 50%;
+}
+
+.slider-modal-header {
+ padding: 9px 15px;
+ border-bottom: 1px solid #eee;
+}
+
+.slider-modal-header .close {
+ margin-top: 2px;
+}
+
+.slider-modal-header h3 {
+ margin: 0;
+ line-height: 30px;
+}
+
+.slider-modal-body {
+ max-height: 400px;
+ padding: 15px;
+ overflow-y: auto;
+}
+
+.slider-modal-form {
+ margin-bottom: 0;
+}
+
+.slider-modal-footer {
+ padding: 14px 15px 15px;
+ margin-bottom: 0;
+ text-align: right;
+ background-color: #f5f5f5;
+ border-top: 1px solid #ddd;
+ -webkit-border-radius: 0 0 6px 6px;
+ -moz-border-radius: 0 0 6px 6px;
+ border-radius: 0 0 6px 6px;
+ *zoom: 1;
+ -webkit-box-shadow: inset 0 1px 0 #ffffff;
+ -moz-box-shadow: inset 0 1px 0 #ffffff;
+ box-shadow: inset 0 1px 0 #ffffff;
+}
+
+.slider-modal-footer:before,
+.slider-modal-footer:after {
+ display: table;
+ line-height: 0;
+ content: "";
+}
+
+.modal-footer:after {
+ clear: both;
+}
+
+.slider-modal-footer .btn + .btn {
+ margin-bottom: 0;
+ margin-left: 5px;
+}
+
+.slider-modal-footer .btn-group .btn + .btn {
+ margin-left: -1px;
+}
http://git-wip-us.apache.org/repos/asf/ambari/blob/79eb5f5b/contrib/views/slider/src/main/resources/ui/app/templates/createAppWizard.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/templates/createAppWizard.hbs b/contrib/views/slider/src/main/resources/ui/app/templates/createAppWizard.hbs
index 8714a5f..92de14d 100644
--- a/contrib/views/slider/src/main/resources/ui/app/templates/createAppWizard.hbs
+++ b/contrib/views/slider/src/main/resources/ui/app/templates/createAppWizard.hbs
@@ -15,17 +15,17 @@
* See the License for the specific language governing permissions and
* limitations under the License.
}}
-<div class="modal" id="createAppWizard">
- <div class="modal-header">
+<div class="slider-modal" id="createAppWizard">
+ <div class="slider-modal-header">
<button type="button" class="close" {{action hide target="view"}}>×</button>
<h3 id="myModalLabel">{{t wizard.name}}</h3>
</div>
- <div class="modal-body">
+ <div class="slider-modal-body">
<div class="wizard">
<div class="container">
<div class="container-fluid">
<div class="row-fluid">
- <div class="span3">
+ <div class="col-md-3">
<div class="well">
<ul class="nav nav-pills nav-stacked">
<li {{bind-attr class="view.isStep1:active view.isStep1Disabled:disabled"}}><a href="javascript:void(null);" {{action gotoStep 1 target="controller"}}>{{t wizard.step1.name}}</a></li>
@@ -35,7 +35,7 @@
</ul>
</div>
</div>
- <div class="wizard-content well span9">
+ <div class="wizard-content well col-md-9">
{{outlet}}
</div>
</div>
http://git-wip-us.apache.org/repos/asf/ambari/blob/79eb5f5b/contrib/views/slider/src/main/resources/ui/app/templates/createAppWizard/step1.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/templates/createAppWizard/step1.hbs b/contrib/views/slider/src/main/resources/ui/app/templates/createAppWizard/step1.hbs
index 6acf985..98f0e42 100644
--- a/contrib/views/slider/src/main/resources/ui/app/templates/createAppWizard/step1.hbs
+++ b/contrib/views/slider/src/main/resources/ui/app/templates/createAppWizard/step1.hbs
@@ -17,10 +17,10 @@
}}
<h4>{{t wizard.step1.header}}</h4>
<div class="row-fluid">
- <div class="span6">
+ <div class="col-md-6">
{{view view.availableTypesSelect contentBinding="controller.availableTypes" optionLabelPath="content.displayName" multiple="true" class="type-select"}}
</div>
- <div class="span6">
+ <div class="col-md-6">
<div {{bind-attr class=":control-group controller.isNameError:error"}}>
<label>{{t common.name}}: {{input id="app-name-input" valueBinding="controller.newAppName"}}</label>
</div>
http://git-wip-us.apache.org/repos/asf/ambari/blob/79eb5f5b/contrib/views/slider/src/main/resources/ui/app/templates/slider_app.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/templates/slider_app.hbs b/contrib/views/slider/src/main/resources/ui/app/templates/slider_app.hbs
index b8af9b5..27878cd 100644
--- a/contrib/views/slider/src/main/resources/ui/app/templates/slider_app.hbs
+++ b/contrib/views/slider/src/main/resources/ui/app/templates/slider_app.hbs
@@ -23,19 +23,39 @@
→
{{model.name}}
</div>
- <div class="wrap-tabs">
- <ul class="nav nav-tabs"></ul>
- <div class="span3 quick-links-wrapper">
- <ul class="nav nav-pills move">
- <li class="dropdown">
- <a class="dropdown-toggle" data-toggle="dropdown" href="#">{{t common.quickLinks}}<b class="caret"></b></a>
- <ul class="dropdown-menu">
- {{#each quickLink in controller.quickLinks}}
- <li><a {{bind-attr href="quickLink.url"}} target="_blank">{{quickLink.label}}</a></li>
- {{/each}}
- </ul>
- </li>
+ <p></p>
+ <div class="col-md-5 pull-right">
+ <div class="btn-group display-inline-block pull-right">
+ <a class="btn dropdown-toggle btn-primary " data-toggle="dropdown" href="#">
+ {{t common.actions}}
+ <span class="caret"></span>
+ </a>
+ <ul class="dropdown-menu">
+ {{#each option in controller.availableActions}}
+ <li>
+ <a {{action 'openModal' option}}>{{option.title}}</a>
+ </li>
+ {{/each}}
</ul>
</div>
</div>
+
+ <div class="col-md-3 quick-links-wrapper pull-right">
+ <ul class="nav nav-pills move">
+ <li class="dropdown">
+ <a class="dropdown-toggle" data-toggle="dropdown" href="#">{{t common.quickLinks}}<b class="caret"></b></a>
+ <ul class="dropdown-menu">
+ {{#each quickLink in controller.quickLinks}}
+ <li><a {{bind-attr href="quickLink.url"}} target="_blank">{{quickLink.label}}</a></li>
+ {{/each}}
+ </ul>
+ </li>
+ </ul>
+ </div>
+
+ {{bs-tabs contentBinding="sliderAppTabs" default="summary"}}
+ <div style="margin-top: 20px;">
+ {{outlet}}
+ </div>
+
</div>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ambari/blob/79eb5f5b/contrib/views/slider/src/main/resources/ui/app/templates/slider_app/configs.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/templates/slider_app/configs.hbs b/contrib/views/slider/src/main/resources/ui/app/templates/slider_app/configs.hbs
new file mode 100644
index 0000000..5e07e57
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/app/templates/slider_app/configs.hbs
@@ -0,0 +1,80 @@
+{{!
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+}}
+
+{{#if model.otherConfigs}}
+ {{#bs-panel heading="General" collapsible=true}}
+ <table class="table table-striped table-bordered table-condensed">
+ <thead>
+ <tr>
+ <th class="col-sm-4">{{t common.name}}</th>
+ <th>{{t common.value}}</th>
+ </tr>
+ </thead>
+ <tbody>
+ {{#each model.otherConfigs}}
+ <tr>
+ <td>{{key}}</td>
+ <td>{{value}}</td>
+ </tr>
+ {{/each}}
+ </tbody>
+ </table>
+ {{/bs-panel}}
+{{/if}}
+
+{{#if model.globals}}
+ {{#bs-panel heading="Global" collapsible=true}}
+ <table class="table table-striped table-bordered table-condensed">
+ <thead>
+ <tr>
+ <th class="col-sm-4">{{t common.name}}</th>
+ <th>{{t common.value}}</th>
+ </tr>
+ </thead>
+ <tbody>
+ {{#each model.globals}}
+ <tr>
+ <td>{{key}}</td>
+ <td>{{value}}</td>
+ </tr>
+ {{/each}}
+ </tbody>
+ </table>
+ {{/bs-panel}}
+{{/if}}
+
+{{#if model.hbaseSite}}
+ {{#bs-panel heading="HBase-Site" collapsible=true}}
+ <table class="table table-striped table-bordered table-condensed">
+ <thead>
+ <tr>
+ <th class="col-sm-4">{{t common.name}}</th>
+ <th>{{t common.value}}</th>
+ </tr>
+ </thead>
+ <tbody>
+ {{#each model.hbaseSite}}
+ <tr>
+ <td>{{key}}</td>
+ <td>{{value}}</td>
+ </tr>
+ {{/each}}
+ </tbody>
+ </table>
+ {{/bs-panel}}
+{{/if}}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ambari/blob/79eb5f5b/contrib/views/slider/src/main/resources/ui/app/templates/slider_app/summary.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/templates/slider_app/summary.hbs b/contrib/views/slider/src/main/resources/ui/app/templates/slider_app/summary.hbs
new file mode 100644
index 0000000..fab5ea8
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/app/templates/slider_app/summary.hbs
@@ -0,0 +1,20 @@
+{{!
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+}}
+Summary
+
+{{model.id}}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ambari/blob/79eb5f5b/contrib/views/slider/src/main/resources/ui/app/templates/slider_apps.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/templates/slider_apps.hbs b/contrib/views/slider/src/main/resources/ui/app/templates/slider_apps.hbs
index 385a790..024e638 100644
--- a/contrib/views/slider/src/main/resources/ui/app/templates/slider_apps.hbs
+++ b/contrib/views/slider/src/main/resources/ui/app/templates/slider_apps.hbs
@@ -17,13 +17,14 @@
}}
<div id="slider-apps-table">
- <div class="box-header row">
+ <div class="box-header">
<div class="pull-right create-app">
- <a href="#" class="btn btn-inverse" {{action createApp}}>
+ <a href="#" class="btn btn-primary" {{action createApp}}>
<i class="icon-plus"></i><span> {{t slider.apps.create}}</span>
</a>
</div>
</div>
+
<table class="datatable table table-bordered table-striped" id="slider-table">
<thead>
{{#view view.sortView classNames="label-row" contentBinding="view.filteredContent"}}
@@ -49,7 +50,7 @@
{{#view view.SliderView contentBinding="slider"}}
<td>
- {{#link-to 'slider_app' slider}}
+ {{#link-to 'slider_app.summary' slider}}
{{slider.name}}
{{/link-to}}
</td>
http://git-wip-us.apache.org/repos/asf/ambari/blob/79eb5f5b/contrib/views/slider/src/main/resources/ui/app/translations.js
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/translations.js b/contrib/views/slider/src/main/resources/ui/app/translations.js
index 035c405..01eb089 100644
--- a/contrib/views/slider/src/main/resources/ui/app/translations.js
+++ b/contrib/views/slider/src/main/resources/ui/app/translations.js
@@ -19,12 +19,24 @@
Em.I18n.translations = {
+ 'ok': 'OK',
+
'common' : {
- 'show': "Show",
+ 'show': 'Show',
+ 'actions': 'Actions',
+ 'cancel': 'Cancel',
'name': "Name",
+ 'value': "Value",
'next': "Next",
- 'quickLinks': "Quick Links"
+ 'quickLinks': "Quick Links",
+ 'summary': 'Summary',
+ 'configs': 'Configs',
+ 'metrics': 'Metrics'
},
+
+ 'popup.confirmation.commonHeader': 'Confirmation',
+ 'question.sure':'Are you sure?',
+
'tableView.filters.all': 'All',
'tableView.filters.filtered': 'Filtered',
'tableView.filters.clearFilters': 'Clear filters',
http://git-wip-us.apache.org/repos/asf/ambari/blob/79eb5f5b/contrib/views/slider/src/main/resources/ui/config.js
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/config.js b/contrib/views/slider/src/main/resources/ui/config.js
index d506483..60d701b 100755
--- a/contrib/views/slider/src/main/resources/ui/config.js
+++ b/contrib/views/slider/src/main/resources/ui/config.js
@@ -33,6 +33,9 @@ exports.config = {
'vendor/scripts/common/handlebars.js',
'vendor/scripts/development/ember.js',
'vendor/scripts/production/ember-data.js',
+ 'vendor/scripts/common/bs-core.min.js',
+ 'vendor/scripts/common/bs-nav.min.js',
+ 'vendor/scripts/common/bs-basic.min.js',
'vendor/scripts/common/ember-i18n-1.4.1.js',
'vendor/scripts/common/bootstrap.js'
]
@@ -75,6 +78,9 @@ exports.config = {
'vendor/scripts/common/handlebars.js',
'vendor/scripts/production/ember.js',
'vendor/scripts/production/ember-data.js',
+ 'vendor/scripts/common/bs-core.min.js',
+ 'vendor/scripts/common/bs-nav.min.js',
+ 'vendor/scripts/common/bs-basic.min.js',
'vendor/scripts/common/ember-i18n-1.4.1.js',
'vendor/scripts/common/bootstrap.js'
]