fix bugs in WEB UI

Change-Id: I44bfd8b7d676499cf69402d782da2a7781c07387
This commit is contained in:
Xin 2016-03-15 15:08:37 -07:00
parent 9d9d767009
commit fd9a9ff6a2
7 changed files with 31 additions and 30 deletions

View File

@ -1,4 +1,4 @@
<!--Copyright 2015 Cisco Systems, Inc. All rights reserved.--><!--Licensed 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.--><!doctype html> <html> <head> <meta charset="utf-8"> <title>KloudBuster</title> <meta name="description" content=""> <meta name="viewport" content="width=device-width"> <!-- Place favicon.ico and apple-touch-icon.png in the root directory --> <link rel="stylesheet" href="styles/vendor.17ab9586.css"> <link rel="stylesheet" href="styles/main.553a3486.css"> </head> <body ng-app="kbWebApp"> <!--<img class="background" src="images/back.jpg">--> <!--[if lte IE 8]> <!--Copyright 2015 Cisco Systems, Inc. All rights reserved.--><!--Licensed 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.--><!doctype html> <html> <head> <meta charset="utf-8"> <title>KloudBuster</title> <meta name="description" content=""> <meta name="viewport" content="width=device-width"> <!-- Place favicon.ico and apple-touch-icon.png in the root directory --> <link rel="stylesheet" href="styles/vendor.17ab9586.css"> <link rel="stylesheet" href="styles/main.553a3486.css"> </head> <body ng-app="kbWebApp"> <!--<img class="background" src="images/back.jpg">--> <!--[if lte IE 8]>
<p class="browsehappy">You are using an <strong>outdated</strong> browser. Please upgrade your browser to improve your <p class="browsehappy">You are using an <strong>outdated</strong> browser. Please upgrade your browser to improve your
experience.</p> experience.</p>
<![endif]--> <!-- Add your site or application content here --> <div class="header"> <div class="navbar navbar-default navbar-fixed-top" role="navigation"> <!--<img class="background" src="images/back.jpg">--> <div class="container"> <div class="navbar-header"> <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#js-navbar-collapse"> <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand" ng-href="#/" style="font-family: Arial"> <span style="color:#DF314D">K</span>loudBuster <!--<img src="images/logo.jpg" alt="LOGO" height="50"/>--> </a> </div> <div class="collapse navbar-collapse" id="js-navbar-collapse"> <ul class="nav navbar-nav"> <li class="dropdown forHttp" id="scaletestnav"> <a href="" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false"> <span id="scaletestname">Scale/Performance</span> <span class="caret">&nbsp;&nbsp;</span> </a> <ul class="dropdown-menu" role="menu"> <li class="" id="interactivenav"><a ng-href="#/InteractiveMode">Interactive Mode</a></li> <li class="divider"></li> <li class="" id="monitoringnav"><a ng-href="#/MonitoringMode">Monitoring Mode</a></li> </ul> </li> <li class="forStorage" id="storagemodenav"><a ng-href="#/StorageMode">Storage Mode</a></li> <li class="forStorage" id="storageconfignav"><a ng-href="#/StorageConfig">Configuration</a></li> <li class="forHttp" id="confignav"><a ng-href="#/Config">Configuration</a></li> <li class="" id="lognav"><a ng-href="#/Log">Log</a></li> <li class="" id="aboutnav"><a ng-href="#/About">About</a></li> </ul> <ul class="nav navbar-nav navbar-right"> <li id="loginnav"><a id="loginname" ng-href="#/Login">Log Out</a></li> </ul> </div> </div> </div> </div> <div class="container"> <div ng-view=""></div> </div> <!--<div class="footer">--> <!--<div class="container" style="text-align:center;">--> <!--&lt;!&ndash;<p><span class="glyphicon glyphicon-heart"></span>KloudBuster&ndash;&gt;--> <!--&lt;!&ndash;</p>&ndash;&gt;--> <!--</div>--> <!--</div>--> <!-- Google Analytics: change UA-XXXXX-X to be your site's ID --> <!--<script>--> <!--!function(A,n,g,u,l,a,r){A.GoogleAnalyticsObject=l,A[l]=A[l]||function(){--> <!--(A[l].q=A[l].q||[]).push(arguments)},A[l].l=+new Date,a=n.createElement(g),--> <!--r=n.getElementsByTagName(g)[0],a.src=u,r.parentNode.insertBefore(a,r)--> <!--}(window,document,'script','https://www.google-analytics.com/analytics.js','ga');--> <!--ga('create', 'UA-XXXXX-X');--> <!--ga('send', 'pageview');--> <!--</script>--> <script src="scripts/vendor.3054de46.js"></script> <script src="scripts/scripts.47b1cb37.js"></script> </body> </html> <![endif]--> <!-- Add your site or application content here --> <div class="header"> <div class="navbar navbar-default navbar-fixed-top" role="navigation"> <!--<img class="background" src="images/back.jpg">--> <div class="container"> <div class="navbar-header"> <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#js-navbar-collapse"> <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand" ng-href="#/" style="font-family: Arial"> <span style="color:#DF314D">K</span>loudBuster <!--<img src="images/logo.jpg" alt="LOGO" height="50"/>--> </a> </div> <div class="collapse navbar-collapse" id="js-navbar-collapse"> <ul class="nav navbar-nav"> <li class="dropdown forHttp" id="scaletestnav"> <a href="" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false"> <span id="scaletestname">Scale/Performance</span> <span class="caret">&nbsp;&nbsp;</span> </a> <ul class="dropdown-menu" role="menu"> <li class="" id="interactivenav"><a ng-href="#/InteractiveMode">Interactive Mode</a></li> <li class="divider"></li> <li class="" id="monitoringnav"><a ng-href="#/MonitoringMode">Monitoring Mode</a></li> </ul> </li> <li class="forStorage" id="storagemodenav"><a ng-href="#/StorageMode">Storage Mode</a></li> <li class="forStorage" id="storageconfignav"><a ng-href="#/StorageConfig">Configuration</a></li> <li class="forHttp" id="confignav"><a ng-href="#/Config">Configuration</a></li> <li class="" id="lognav"><a ng-href="#/Log">Log</a></li> <li class="" id="aboutnav"><a ng-href="#/About">About</a></li> </ul> <ul class="nav navbar-nav navbar-right"> <li id="loginnav"><a id="loginname" ng-href="#/Login">Log Out</a></li> </ul> </div> </div> </div> </div> <div class="container"> <div ng-view=""></div> </div> <!--<div class="footer">--> <!--<div class="container" style="text-align:center;">--> <!--&lt;!&ndash;<p><span class="glyphicon glyphicon-heart"></span>KloudBuster&ndash;&gt;--> <!--&lt;!&ndash;</p>&ndash;&gt;--> <!--</div>--> <!--</div>--> <!-- Google Analytics: change UA-XXXXX-X to be your site's ID --> <!--<script>--> <!--!function(A,n,g,u,l,a,r){A.GoogleAnalyticsObject=l,A[l]=A[l]||function(){--> <!--(A[l].q=A[l].q||[]).push(arguments)},A[l].l=+new Date,a=n.createElement(g),--> <!--r=n.getElementsByTagName(g)[0],a.src=u,r.parentNode.insertBefore(a,r)--> <!--}(window,document,'script','https://www.google-analytics.com/analytics.js','ga');--> <!--ga('create', 'UA-XXXXX-X');--> <!--ga('send', 'pageview');--> <!--</script>--> <script src="scripts/vendor.3054de46.js"></script> <script src="scripts/scripts.8f243696.js"></script> </body> </html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -241,7 +241,7 @@ angular.module('kbWebApp')
return mode; return mode;
}; };
this.checkMode = function(thisPage){ this.checkMode = function(thisPage){
if(thisPage == "") if(thisPage == "login")
{ {
$(".forHttp").hide(); $(".forHttp").hide();
$(".forStorage").show(); $(".forStorage").show();
@ -250,13 +250,14 @@ angular.module('kbWebApp')
{ {
$(".forHttp").hide(); $(".forHttp").hide();
$(".forStorage").show(); $(".forStorage").show();
if(mode != thisPage) $location.path('/'); if(mode != thisPage) $location.path('/StorageMode');
} }
else if(mode=='http'){ else if(mode=='http'){
$(".forStorage").hide(); $(".forStorage").hide();
$(".forHttp").show(); $(".forHttp").show();
if(mode != thisPage) $location.path('/'); if(mode != thisPage) $location.path('/InteractiveMode');
} }
else $location.path('/Login');
}; };

View File

@ -27,7 +27,7 @@ angular.module('kbWebApp')
'Karma' 'Karma'
]; ];
//if(kbCookie.getSessionID()!="") $location.path('/'); //if(kbCookie.getSessionID()!="") $location.path('/');
kbCookie.checkMode(''); kbCookie.checkMode('login');
//---------------------------------top navigation bar--------------------------------- //---------------------------------top navigation bar---------------------------------
$(window).on('hashchange', locationChange.change()); $(window).on('hashchange', locationChange.change());
@ -220,7 +220,7 @@ angular.module('kbWebApp')
$location.path('/StorageMode'); $location.path('/StorageMode');
} }
else { else {
$location.path('/'); $location.path('/InteractiveMode');
} }
}, },
function (response) { // .reject function (response) { // .reject

View File

@ -261,12 +261,12 @@
<md-input-container class="col-md-12"> <md-input-container class="col-md-12">
<label>Html Payload Size (Bytes)</label> <label>Html Payload Size (Bytes)</label>
<input type="number" min="0" step="1024" name="http_server_configs" id="html_size" <input type="number" min="0" step="1024" name="http_server_configs" id="html_size"
ng-model="config.server.http_server_configs.html_size" ng-pattern="/^[1-9][0-9]*$/i" ng-model="config.server.http_server_configs.html_size" ng-pattern="/^[0-9]*$/i"
required style="text-align:left;"/> required style="text-align:left;"/>
<div ng-messages="server.http_server_configs.$error" ng-if="server.http_server_configs.$dirty"> <div ng-messages="server.http_server_configs.$error" ng-if="server.http_server_configs.$dirty">
<div ng-message="required" style="padding-right: 0;">This field is required</div> <div ng-message="required" style="padding-right: 0;">This field is required</div>
<div ng-message="pattern" style="padding-right: 0;">Must be a number no less than 1</div> <div ng-message="pattern" style="padding-right: 0;">Must be a number no less than 0</div>
</div> </div>
</md-input-container> </md-input-container>
</md-content> </md-content>
@ -299,23 +299,23 @@
<md-input-container class="col-md-4"> <md-input-container class="col-md-4">
<label>RAM (MB)</label> <label>RAM (MB)</label>
<input type="number" min="0" max="" step="128" name="server_ram" id="server_ram" <input type="number" min="0" max="" step="128" name="server_ram" id="server_ram"
ng-model="config.server.flavor.ram" ng-pattern="/^[1-9][0-9]*$/i" required ng-model="config.server.flavor.ram" ng-pattern="/^[0-9]*$/i" required
style="text-align:left;"/> style="text-align:left;"/>
<div ng-messages="server.server_ram.$error" ng-if="server.server_ram.$dirty"> <div ng-messages="server.server_ram.$error" ng-if="server.server_ram.$dirty">
<div ng-message="required" style="padding-right: 0;">This field is required</div> <div ng-message="required" style="padding-right: 0;">This field is required</div>
<div ng-message="pattern" style="padding-right: 0;">Must be a number no less than 1</div> <div ng-message="pattern" style="padding-right: 0;">Must be a number no less than </div>
</div> </div>
</md-input-container> </md-input-container>
<md-input-container class="col-md-4"> <md-input-container class="col-md-4">
<label>DISK (GB)</label> <label>DISK (GB)</label>
<input type="number" min="0" max="" step="" name="server_disk" id="server_disk" <input type="number" min="0" max="" step="" name="server_disk" id="server_disk"
ng-model="config.server.flavor.disk" ng-pattern="/^[1-9][0-9]*$/i" required ng-model="config.server.flavor.disk" ng-pattern="/^[0-9]*$/i" required
style="text-align:left;"/> style="text-align:left;"/>
<div ng-messages="server.server_disk.$error" ng-if="server.server_disk.$dirty" role="alert"> <div ng-messages="server.server_disk.$error" ng-if="server.server_disk.$dirty" role="alert">
<div ng-message="required" style="padding-right: 0;">This field is required</div> <div ng-message="required" style="padding-right: 0;">This field is required</div>
<div ng-message="pattern" style="padding-right: 0;">Must be a number no less than 1</div> <div ng-message="pattern" style="padding-right: 0;">Must be a number no less than </div>
</div> </div>
</md-input-container> </md-input-container>
</md-content> </md-content>
@ -396,23 +396,23 @@
<md-input-container class="col-md-4"> <md-input-container class="col-md-4">
<label>RAM (MB)</label> <label>RAM (MB)</label>
<input type="number" min="0" max="" step="128" name="client_ram" id="client_ram" <input type="number" min="0" max="" step="128" name="client_ram" id="client_ram"
ng-model="config.client.flavor.ram" ng-pattern="/^[1-9][0-9]*$/i" required ng-model="config.client.flavor.ram" ng-pattern="/^[0-9]*$/i" required
style="text-align:left;"/> style="text-align:left;"/>
<div ng-messages="client.client_ram.$error" ng-if="client.client_ram.$dirty"> <div ng-messages="client.client_ram.$error" ng-if="client.client_ram.$dirty">
<div ng-message="required" style="padding-right: 0;">This field is required</div> <div ng-message="required" style="padding-right: 0;">This field is required</div>
<div ng-message="pattern" style="padding-right: 0;">Must be a number no less than 1</div> <div ng-message="pattern" style="padding-right: 0;">Must be a number no less than 0</div>
</div> </div>
</md-input-container> </md-input-container>
<md-input-container class="col-md-4"> <md-input-container class="col-md-4">
<label>DISK (GB)</label> <label>DISK (GB)</label>
<input type="number" min="0" max="" step="" name="client_disk" id="client_disk" <input type="number" min="0" max="" step="" name="client_disk" id="client_disk"
ng-model="config.client.flavor.disk" ng-pattern="/^[1-9][0-9]*$/i" required ng-model="config.client.flavor.disk" ng-pattern="/^[0-9]*$/i" required
style="text-align:left;"/> style="text-align:left;"/>
<div ng-messages="client.client_disk.$error" ng-if="client.client_disk.$dirty" role="alert"> <div ng-messages="client.client_disk.$error" ng-if="client.client_disk.$dirty" role="alert">
<div ng-message="required" style="padding-right: 0;">This field is required</div> <div ng-message="required" style="padding-right: 0;">This field is required</div>
<div ng-message="pattern" style="padding-right: 0;">Must be a number no less than 1</div> <div ng-message="pattern" style="padding-right: 0;">Must be a number no less than 0</div>
</div> </div>
</md-input-container> </md-input-container>
</md-content> </md-content>

View File

@ -61,13 +61,13 @@
<md-content layout-padding> <md-content layout-padding>
<md-input-container class="col-md-12"> <md-input-container class="col-md-12">
<label>Volume Size (GB)</label> <label>Volume Size (GB)</label>
<input type="number" min="1" max="1000" step="1" name="volume_size" <input type="number" min="0" max="1000" step="1" name="volume_size"
id="volume_size" ng-model="config.client.volume_size" id="volume_size" ng-model="config.client.volume_size"
ng-pattern="/^[1-9][0-9]{0,2}$/i" required style="text-align:left;"/> ng-pattern="/^[0-9]{0,2}$/i" required style="text-align:left;"/>
<div ng-messages="general.volume_size.$error" ng-if="general.volume_size.$dirty"> <div ng-messages="general.volume_size.$error" ng-if="general.volume_size.$dirty">
<div ng-message="required" style="padding-right: 0;">This field is required</div> <div ng-message="required" style="padding-right: 0;">This field is required</div>
<div ng-message="pattern" style="padding-right: 0;">Must be a number between 1 and 999</div> <div ng-message="pattern" style="padding-right: 0;">Must be a number between 0 and 999</div>
</div> </div>
</md-input-container> </md-input-container>
</md-content> </md-content>
@ -105,23 +105,23 @@
<md-input-container class="col-md-4"> <md-input-container class="col-md-4">
<label>RAM (MB)</label> <label>RAM (MB)</label>
<input type="number" min="0" max="" step="128" name="client_ram" id="client_ram" <input type="number" min="0" max="" step="128" name="client_ram" id="client_ram"
ng-model="config.client.flavor.ram" ng-pattern="/^[1-9][0-9]*$/i" required ng-model="config.client.flavor.ram" ng-pattern="/^[0-9]*$/i" required
style="text-align:left;"/> style="text-align:left;"/>
<div ng-messages="client.client_ram.$error" ng-if="client.client_ram.$dirty"> <div ng-messages="client.client_ram.$error" ng-if="client.client_ram.$dirty">
<div ng-message="required" style="padding-right: 0;">This field is required</div> <div ng-message="required" style="padding-right: 0;">This field is required</div>
<div ng-message="pattern" style="padding-right: 0;">Must be a number no less than 1</div> <div ng-message="pattern" style="padding-right: 0;">Must be a number no less than 0</div>
</div> </div>
</md-input-container> </md-input-container>
<md-input-container class="col-md-4"> <md-input-container class="col-md-4">
<label>DISK (GB)</label> <label>DISK (GB)</label>
<input type="number" min="0" max="" step="" name="client_disk" id="client_disk" <input type="number" min="0" max="" step="" name="client_disk" id="client_disk"
ng-model="config.client.flavor.disk" ng-pattern="/^[1-9][0-9]*$/i" required ng-model="config.client.flavor.disk" ng-pattern="/^[0-9]*$/i" required
style="text-align:left;"/> style="text-align:left;"/>
<div ng-messages="client.client_disk.$error" ng-if="client.client_disk.$dirty" role="alert"> <div ng-messages="client.client_disk.$error" ng-if="client.client_disk.$dirty" role="alert">
<div ng-message="required" style="padding-right: 0;">This field is required</div> <div ng-message="required" style="padding-right: 0;">This field is required</div>
<div ng-message="pattern" style="padding-right: 0;">Must be a number no less than 1</div> <div ng-message="pattern" style="padding-right: 0;">Must be a number no less than 0</div>
</div> </div>
</md-input-container> </md-input-container>
</md-content> </md-content>