Saturday, November 8, 2014

Writing comments on Script - JavaScript/Angular

/*global define*/

(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', []);

    });

}());

No comments:

Post a Comment