aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/onos/apps/demo/cord-gui/src/main/webapp/cord.js
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/onos/apps/demo/cord-gui/src/main/webapp/cord.js')
-rw-r--r--framework/src/onos/apps/demo/cord-gui/src/main/webapp/cord.js82
1 files changed, 82 insertions, 0 deletions
diff --git a/framework/src/onos/apps/demo/cord-gui/src/main/webapp/cord.js b/framework/src/onos/apps/demo/cord-gui/src/main/webapp/cord.js
new file mode 100644
index 00000000..16bf3cda
--- /dev/null
+++ b/framework/src/onos/apps/demo/cord-gui/src/main/webapp/cord.js
@@ -0,0 +1,82 @@
+/*
+ * Copyright 2015 Open Networking Laboratory
+ *
+ * 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.
+ */
+
+(function () {
+ 'use strict';
+
+ var modules = [
+ 'ngRoute',
+ 'ngResource',
+ 'ngAnimate',
+ 'cordMast',
+ 'cordFoot',
+ 'cordNav'
+ ],
+ viewIds = [
+ 'login',
+ 'home',
+ 'user',
+ 'bundle'
+ ],
+ viewDependencies = [],
+ dependencies;
+
+ function capitalize(word) {
+ return word ? word[0].toUpperCase() + word.slice(1) : word;
+ }
+
+ viewIds.forEach(function (id) {
+ if (id) {
+ viewDependencies.push('cord' + capitalize(id));
+ }
+ });
+
+ dependencies = modules.concat(viewDependencies);
+
+ angular.module('cordGui', dependencies)
+ .config(['$routeProvider', function ($routeProvider) {
+ $routeProvider
+ .otherwise({
+ redirectTo: '/login'
+ });
+
+ function viewCtrlName(vid) {
+ return 'Cord' + capitalize(vid) + 'Ctrl';
+ }
+
+ function viewTemplateUrl(vid) {
+ return 'app/view/' + vid + '/' + vid + '.html';
+ }
+
+ viewIds.forEach(function (vid) {
+ if (vid) {
+ $routeProvider.when('/' + vid, {
+ controller: viewCtrlName(vid),
+ controllerAs: 'ctrl',
+ templateUrl: viewTemplateUrl(vid)
+ });
+ }
+ });
+ }])
+ .controller('CordCtrl', ['$scope', '$location',
+ function ($scope, $location) {
+ $scope.shared = {
+ url: 'http://' + $location.host() + ':' + $location.port(),
+ userActivity: {}
+ };
+ $scope.page = {};
+ }]);
+}());