incremental
diff --git a/static/js/base64.js b/static/js/base64.js
new file mode 100644
index 0000000..db1ebcf
--- /dev/null
+++ b/static/js/base64.js
@@ -0,0 +1,84 @@
+angular.module('bmcApp').factory('Base64', function() {
+ /* jshint ignore:start */
+
+ var keyStr =
+ 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';
+
+ return {
+ encode: function(input) {
+ var output = "";
+ var chr1, chr2, chr3 = "";
+ var enc1, enc2, enc3, enc4 = "";
+ var i = 0;
+
+ do {
+ chr1 = input.charCodeAt(i++);
+ chr2 = input.charCodeAt(i++);
+ chr3 = input.charCodeAt(i++);
+
+ enc1 = chr1 >> 2;
+ enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
+ enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
+ enc4 = chr3 & 63;
+
+ if (isNaN(chr2)) {
+ enc3 = enc4 = 64;
+ } else if (isNaN(chr3)) {
+ enc4 = 64;
+ }
+
+ output = output + keyStr.charAt(enc1) + keyStr.charAt(enc2) +
+ keyStr.charAt(enc3) + keyStr.charAt(enc4);
+ chr1 = chr2 = chr3 = "";
+ enc1 = enc2 = enc3 = enc4 = "";
+ } while (i < input.length);
+
+ return output;
+ },
+
+ decode: function(input) {
+ var output = "";
+ var chr1, chr2, chr3 = "";
+ var enc1, enc2, enc3, enc4 = "";
+ var i = 0;
+
+ // remove all characters that are not A-Z, a-z, 0-9, +, /, or =
+ var base64test = /[^A-Za-z0-9\+\/\=]/g;
+ if (base64test.exec(input)) {
+ window.alert(
+ "There were invalid base64 characters in the input text.\n" +
+ "Valid base64 characters are A-Z, a-z, 0-9, '+', '/',and '='\n" +
+ "Expect errors in decoding.");
+ }
+ input = input.replace(/[^A-Za-z0-9\+\/\=]/g, "");
+
+ do {
+ enc1 = keyStr.indexOf(input.charAt(i++));
+ enc2 = keyStr.indexOf(input.charAt(i++));
+ enc3 = keyStr.indexOf(input.charAt(i++));
+ enc4 = keyStr.indexOf(input.charAt(i++));
+
+ chr1 = (enc1 << 2) | (enc2 >> 4);
+ chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);
+ chr3 = ((enc3 & 3) << 6) | enc4;
+
+ output = output + String.fromCharCode(chr1);
+
+ if (enc3 != 64) {
+ output = output + String.fromCharCode(chr2);
+ }
+ if (enc4 != 64) {
+ output = output + String.fromCharCode(chr3);
+ }
+
+ chr1 = chr2 = chr3 = "";
+ enc1 = enc2 = enc3 = enc4 = "";
+
+ } while (i < input.length);
+
+ return output;
+ }
+ };
+
+ /* jshint ignore:end */
+ });
\ No newline at end of file
diff --git a/static/js/bmcApp.js b/static/js/bmcApp.js
index 64a480a..d4282ba 100644
--- a/static/js/bmcApp.js
+++ b/static/js/bmcApp.js
@@ -11,9 +11,9 @@
]);
-app.controller('MainCtrl', function($scope) {
+app.controller('MainCtrl', ['$scope', function($scope) {
-});
+}]);
app.service('loginInterceptor', ["$injector",
function($injector) {
@@ -37,7 +37,7 @@
}
AuthenticationService.ClearCredentials(invalidate_reason);
}
-
+ return response;
};
}])
@@ -45,7 +45,7 @@
$httpProvider.interceptors.push('loginInterceptor');
}]);
-app.directive('windowSize', function ($window) {
+app.directive('windowSize', ['$window', function ($window) {
return function (scope, element) {
var w = angular.element($window);
scope.getWindowDimensions = function () {
@@ -69,7 +69,7 @@
scope.$apply();
});
}
-});
+}]);
app.run(['$rootScope', '$cookieStore', '$state', '$resource', 'AuthenticationService',
function($rootScope, $cookieStore, $state, $resource, AuthenticationService) {
@@ -103,7 +103,7 @@
// nested list with just some random string data
.state('login', {
url: '/login',
- templateUrl: 'static/login.html',
+ templateUrl: 'static/partial-login.html',
controller: 'LoginController',
})
// systeminfo view ========================================
@@ -120,6 +120,9 @@
.state(
'kvm', {url: '/kvm', templateUrl: 'static/partial-kvm.html'})
+ .state(
+ 'ipmi', {url: '/ipmi', templateUrl: 'static/partial-ipmi.html'})
+
// ABOUT PAGE AND MULTIPLE NAMED VIEWS =================================
.state('about', {url: '/about', templateUrl: 'static/partial-fruinfo.html'})
@@ -192,89 +195,4 @@
service.logoutreason = "";
return service;
}
- ])
-
- .factory('Base64', function() {
- /* jshint ignore:start */
-
- var keyStr =
- 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';
-
- return {
- encode: function(input) {
- var output = "";
- var chr1, chr2, chr3 = "";
- var enc1, enc2, enc3, enc4 = "";
- var i = 0;
-
- do {
- chr1 = input.charCodeAt(i++);
- chr2 = input.charCodeAt(i++);
- chr3 = input.charCodeAt(i++);
-
- enc1 = chr1 >> 2;
- enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
- enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
- enc4 = chr3 & 63;
-
- if (isNaN(chr2)) {
- enc3 = enc4 = 64;
- } else if (isNaN(chr3)) {
- enc4 = 64;
- }
-
- output = output + keyStr.charAt(enc1) + keyStr.charAt(enc2) +
- keyStr.charAt(enc3) + keyStr.charAt(enc4);
- chr1 = chr2 = chr3 = "";
- enc1 = enc2 = enc3 = enc4 = "";
- } while (i < input.length);
-
- return output;
- },
-
- decode: function(input) {
- var output = "";
- var chr1, chr2, chr3 = "";
- var enc1, enc2, enc3, enc4 = "";
- var i = 0;
-
- // remove all characters that are not A-Z, a-z, 0-9, +, /, or =
- var base64test = /[^A-Za-z0-9\+\/\=]/g;
- if (base64test.exec(input)) {
- window.alert(
- "There were invalid base64 characters in the input text.\n" +
- "Valid base64 characters are A-Z, a-z, 0-9, '+', '/',and '='\n" +
- "Expect errors in decoding.");
- }
- input = input.replace(/[^A-Za-z0-9\+\/\=]/g, "");
-
- do {
- enc1 = keyStr.indexOf(input.charAt(i++));
- enc2 = keyStr.indexOf(input.charAt(i++));
- enc3 = keyStr.indexOf(input.charAt(i++));
- enc4 = keyStr.indexOf(input.charAt(i++));
-
- chr1 = (enc1 << 2) | (enc2 >> 4);
- chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);
- chr3 = ((enc3 & 3) << 6) | enc4;
-
- output = output + String.fromCharCode(chr1);
-
- if (enc3 != 64) {
- output = output + String.fromCharCode(chr2);
- }
- if (enc4 != 64) {
- output = output + String.fromCharCode(chr3);
- }
-
- chr1 = chr2 = chr3 = "";
- enc1 = enc2 = enc3 = enc4 = "";
-
- } while (i < input.length);
-
- return output;
- }
- };
-
- /* jshint ignore:end */
- });
+ ]);
diff --git a/static/js/ipmiController.js b/static/js/ipmiController.js
new file mode 100644
index 0000000..ac90b6b
--- /dev/null
+++ b/static/js/ipmiController.js
@@ -0,0 +1,33 @@
+angular.module('bmcApp').factory('IPMIData', [
+ '$websocket', '$location',
+ function($websocket, $location) {
+
+ var host = $location.host();
+ var port = $location.port();
+ var protocol = "ws://";
+ if ($location.protocol() === 'https') {
+ protocol = 'wss://';
+ }
+ // Open a WebSocket connection
+ var dataStream = $websocket(protocol + host + port + "/ipmiws");
+ var blob = new Blob([0x06, 0x00, 0xff, 0x07, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x20, 0x18, 0xc8, 0x81, 0x04, 0x38, 0x8e, 0x04, 0xb1]);
+ dataStream.send(blob);
+
+ dataStream.onMessage(function(message) {
+ collection.push(JSON.parse(message.data));
+ });
+
+ var methods = {
+
+ get : function() {
+ var blob = new Blob([0x06, 0x00, 0xff, 0x07, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x20, 0x18, 0xc8, 0x81, 0x04, 0x38, 0x8e, 0x04, 0xb1]);
+ dataStream.send(blob);
+ }
+ };
+
+ return methods;
+ }
+]);
+angular.module('bmcApp').controller('ipmiController', [
+ '$scope', 'IPMIData', function($scope, IPMIData) { $scope.IPMIData = IPMIData; }
+]);
\ No newline at end of file
diff --git a/static/js/kvm-controller.js b/static/js/kvmController.js
similarity index 94%
rename from static/js/kvm-controller.js
rename to static/js/kvmController.js
index 87427b6..b8b442e 100644
--- a/static/js/kvm-controller.js
+++ b/static/js/kvmController.js
@@ -1,4 +1,6 @@
-angular.module('bmcApp').controller('KvmController', function($scope, $location, $window) {
+angular.module('bmcApp').controller('KvmController',
+['$scope', '$location', '$window',
+function($scope, $location, $window) {
/*jslint white: false */
@@ -8,7 +10,7 @@
var rfb;
var host = $location.host();
var port = $location.port();
- var encrypt = $location.protocol() === 'https:';
+ var encrypt = $location.protocol() === 'https';
var password = "";
var token = "1234";
var path = "kvmws";
@@ -88,4 +90,4 @@
UIresize();
}, 500);
};
-});
\ No newline at end of file
+}]);
\ No newline at end of file
diff --git a/static/js/logincontroller.js b/static/js/loginController.js
similarity index 100%
rename from static/js/logincontroller.js
rename to static/js/loginController.js
diff --git a/static/js/selController.js b/static/js/selController.js
index 06c1abb..78d90d4 100644
--- a/static/js/selController.js
+++ b/static/js/selController.js
@@ -765,7 +765,7 @@
}
-angular.module('bmcApp').controller('selController', function($scope) {
+angular.module('bmcApp').controller('selController', ['$scope', function($scope) {
var sdr_promise = Restangular.all('sdrentries').getList();
var sel_promise = Restangular.all('selentries').getList();
@@ -890,4 +890,4 @@
$scope.uncheckAll = function () {
$scope.selectedColumns["controller"] = [];
};
-});
\ No newline at end of file
+}]);
\ No newline at end of file
diff --git a/static/js/versionController.js b/static/js/versionController.js
index c104602..65d9f49 100644
--- a/static/js/versionController.js
+++ b/static/js/versionController.js
@@ -1,4 +1,6 @@
-angular.module('bmcApp').controller('versionController', function($scope, $resource) {
+angular.module('bmcApp').controller('versionController', [
+ '$scope', '$resource',
+ function($scope, $resource) {
var systeminfo = $resource("/systeminfo");
@@ -16,4 +18,4 @@
-});
\ No newline at end of file
+}]);
\ No newline at end of file