Plato on Github
Report Home
app/Controller/PagesControllers/PagesListController.js
Maintainability
76.57
Lines of code
57
Difficulty
9.26
Estimated Errors
0.28
Function weight
By Complexity
By SLOC
/*jshint node: true */ 'use strict'; /* * Name : PagesListController.js * Module : FrontEnd::Controller::PagesController * Location : /frontend/app/Controller/PagesController * * History : * Version Date Programmer Description * ================================================================================================= * 0.1.0 2015-05-20 Maria Giovanna Chinellato Add all attributes and all methods * * 0.0.1 2015-05-20 Maria Giovanna Chinellato Initial code * ================================================================================================= * */ angular.module('norris-nrti') .controller('PagesListController', ['$scope', '$location', 'PagesList', 'SocketServicesFactory', 'UrlProvider', function($scope, $location, PagesList, SocketServicesFactory, UrlProvider){ var socket; var pagesList; var url = UrlProvider.prototype.getUrl(); // recupera l'url a cui deve connettersi il socket // funzione che connette il socket all'url e chiama la funzione listenOnEvent this.socketConnection = function() { socket = SocketServicesFactory.build($scope.url); $scope.socket = socket; this.listenOnEvents(); }; // funzione che mette in ascolto il socket su alcuni eventi this.listenOnEvents = function() { socket.on('configPageList', function(info){ // ascolta sull'evento 'configPageList' (ricevuto come risposta alla connessione) pagesList = new PagesList(info); // crea una nuova PagesList $scope.pagesList = pagesList.getPagesList(); // rende disponibile la lista delle pagine sullo scope }); socket.on('insertPage', function(info) { // ascolta sull'evento 'insertPage' pagesList.addPage(info); // aggiunge una pagina alla lista $scope.pagesList = pagesList.getPagesList(); // rende disponibile la lista delle pagine sullo scope }); socket.on('updatePage', function(info) { // ascolta sull'evento 'updatePage' pagesList.updatePage(info); $scope.pagesList = pagesList.getPagesList(); // rende disponibile la lista delle pagine sullo scope }); }; // variabili e funzioni a disposizione dei test $scope.socket = socket; $scope.url = url; // vengono rese disponibili alcune funzioni sullo $scope $scope.socketConnection = this.socketConnection; $scope.listenOnEvents = this.listenOnEvents; }]);