(function () {
/**
* @ngdoc load configuration urls
* @name cat.CONFIG
*/
// force script to be run in strict mode
'use strict';
// define dependencies
var dependencies = ['cat'];
define(dependencies, function (CatModule) {
// define constant values for configuration
var CONFIG = {
// base url for catbor applcation
'BASE': '/cat-application/catbor/',
// root url for services
'SERVICES': '/cat-presentation/services/'
};
// add defined congiguration constants to the module
CatModule.constant('CONFIG', CONFIG);
});
}());
=========
/*global define*/
(function () {
/**
* @ngdoc load header controller for module
* @name cat.HeaderCtrl
*/
// force script to be run in strict mode
'use strict';
// define dependencies
var dependencies = ['cat',
'components/search/search-controller',
'common/js/services/rest-client',
'common/js/services/session-service'];
define(dependencies, function (CatModule) {
/**
* @ngdoc Initialize header controller.
* @name cat.HeaderCtrl
* @requires RestClient, SessionService
*
* @description
* Header controller for the UI header
*/
function HeaderCtrl(RestClient, SessionService, $rootScope) {
var vm = this;
// set RestClient
vm.RestClient = RestClient;
// set SessionService
vm.SessionService = SessionService;
// set $rootScope
vm.rootScope = $rootScope;
// set groupName from localStorage
vm.groupName = localStorage.groupName;
// set username from localStorage
vm.username = localStorage.username;
// set fullName from localStorage
vm.fullName = localStorage.fullName;
// set regionName from localStorage
vm.regionName = localStorage.regionName;
// set lastLogin from localStorage
vm.lastLogin = localStorage.lastLogin;
// if localStorage productList is available, set productList from localStorage
if (localStorage.productList) {
vm.products = JSON.parse(localStorage.productList);
}
}
/**
* @ngdoc method
* @name logout
* @methodOf cat.HeaderController
*
* @description
* Logout the user
*/
HeaderCtrl.prototype.logout = function () {
// make the request to logout from the application.
var vm = this,
response = vm.RestClient.sendRequest('logout', null, null, 'GET');
// if logout is successful, then endSession.
response.then(function (response) {
if (response.data === 'true') {
vm.SessionService.endSession();
}
});
};
// add defined header controller to the module
CatModule.controller('HeaderCtrl', HeaderCtrl);
});
}());
=========
/**
* @ngdoc controller
* @name cat.MainCtrl
* @requires SessionService, $state
*
* @description
* Main controller for the whole application
*/
function MainCtrl($state, ngDialog, $rootScope, RestClient, SessionService) {
var vm = this;
// set SessionService
vm.SessionService = SessionService;
// set $state
vm.state = $state;
// set ngDialog
vm.ngDialog = ngDialog;
// set $rootScope
vm.rootScope = $rootScope;
// set RestClient
vm.restClient = RestClient;
// on catching sessionActive , set sessionActive
$rootScope.$on('sessionActive', function (event, data) {
vm.sessionActive = data;
});
// on catching state-change, set state-change
$rootScope.$on('state-change', function (event, data) {
// calling outage message notifier
vm.getOutageMessageNotification(data);
});
// if active session is found, direct to Home page
if (vm.sessionActive) {
$state.go('Home');
}
}
/**
* @ngdoc method
* @name openDialog
* @methodOf cat.main.mainctrl
*
* @description
* open dialog window.
*/
MainCtrl.prototype.openDialog = function (url) {
var vm = this;
// if service has and active seesion open dialog window.
if (vm.SessionService.sessionActive.get()) {
vm.ngDialog.open({
template: url + '.html'
});
} else {
// close all dialog windows.
vm.ngDialog.closeAll();
}
};
/**
* @ngdoc method
* @name getOutageMessageNotification
* @methodOf cat.main.mainctrl
*
* @description
* Popping up the outage if it is a product.
*/
MainCtrl.prototype.getOutageMessageNotification = function (productName) {
var vm = this,
response,
messageData,
messageFromTime,
messageToTime,
path,
productId;
// check whether service has active session.
if (vm.SessionService.sessionActive.get()) {
//get the productId for the given product name, from product map which returns after calling the session service.
productId = vm.SessionService.productMap[productName];
// check whether productId is available.
if (productId) {
// Dummy ID for now.
path = productId + '/' + localStorage.userId; // productId + '/' + vm.userId;
// send request to accessActiveOutageMessage service to get the message.
response = vm.restClient.sendRequest("accessActiveOutageMessage", null, path, 'GET');
// validate response and create message
response.then(function (response) {
// if status is success get the message text from response bind for Notification.
if (response.status === 200) {
if (response.data) {
messageData = response.data.messageText;
// Need to bind this via the Notification directive.
vm.rootScope.$emit('notifications', messageData, 'success');
}
}
});
}
}
};
==========
define(dependencies, function (CatModule) {
// convert input for upper case.
function capitalize() {
function filter(input, scope) {
if (input) {
// convert input to lowercase
input = input.toLowerCase();
return input.substring(0, 1).toUpperCase() + input.substring(1);
}
}
return filter;
}
// add capitalize function to the module
CatModule.filter('capitalize', capitalize);
});
========
*global define*/
(function () {
/**
* @ngdoc overview
* @name cat.balance
*
* @description
* return balance module.
*/
// force script to be run in strict mode
'use strict';
// define dependencies
var dependencies = ['angular'];
define(dependencies, function (angular) {
return angular.module('cat.balance', []);
});
}());