Skip to content
Snippets Groups Projects
Select Git revision
  • ad685c897c22bd6c274cd6e485fb5cbd9db8e136
  • master default
  • next_version
  • laurent-change.log
  • Documentation_homogeneisation
  • HEAD
  • 2021.02.02
  • 2021.02.01
  • 2021.02.00
  • 2021.01.00
  • 2020.02.02
  • 2020.02.01
  • 2020.02.00
  • 2020.01.05
  • 2020.01.04
  • 2020.01.03
  • 2020.01.02
  • 2020.01.01
  • 2020.01.00
  • 2019.03.00
  • 2019.02.07
  • 2019.02.06
  • 2019.02.05
  • 2019.02.04
  • 2019.02.03
  • 2019.02.02
26 results

script_client.js

Blame
  • script_client.js 79.39 KiB
    'use strict';
    
    /* global goog, vitisApp, angular, bootbox, moment */
    
    goog.provide('vitis.script_client');
    goog.require('vitis');
    goog.require('vitis.directives.main');
    goog.require('vitis.directives.workspaceList');
    goog.require('vitis.VitisWebsocket');
    
    goog.require('goog.object');
    goog.require('goog.array');
    
    goog.require('ol.Geolocation');
    
    vitisApp.on('appInitCtrlLoaded', function () {
    
        // Injection des services.
        var $q = angular.element(vitisApp.appHtmlFormDrtv).injector().get(["$q"]);
        var $log = angular.element(vitisApp.appMainDrtv).injector().get(["$log"]);
        var envSrvc = angular.element(vitisApp.appMainDrtv).injector().get(["envSrvc"]);
        var formSrvc = angular.element(vitisApp.appWorkspaceListDrtv).injector().get(["formSrvc"]);
        var $timeout = angular.element(vitisApp.appWorkspaceListDrtv).injector().get(["$timeout"]);
        var $compile = angular.element(vitisApp.appWorkspaceListDrtv).injector().get(["$compile"]);
        var modesSrvc = angular.element(vitisApp.appMainDrtv).injector().get(["modesSrvc"]);
        var $translate = angular.element(vitisApp.appMainDrtv).injector().get(["$translate"]);
        var propertiesSrvc = angular.element(vitisApp.appMainDrtv).injector().get(["propertiesSrvc"]);
        var uiGridConstants = angular.element(vitisApp.appWorkspaceListDrtv).injector().get(["uiGridConstants"]);
        var $templateRequest = angular.element(vitisApp.appWorkspaceListDrtv).injector().get(["$templateRequest"]);
        var externFunctionSrvc = angular.element(vitisApp.appMainDrtv).injector().get(["externFunctionSrvc"]);
    
        vitisApp.on('properties_loaded', function () {
    
            // WebSocket
            if (goog.isDefAndNotNull(propertiesSrvc['websocket_alias'])) {
    
                var sWebSocketUrl = 'wss://' + location.host + '/' + propertiesSrvc['websocket_alias'] + '/';
    
                vitisApp['oWebsocket'] = new VitisWebsocket(sWebSocketUrl);
    
                // Espace de stockage pour le refraichissement des grilles lors d'evenements
                vitisApp['oWebsocket']['oGridRefreshEvents'] = {};
    
                // Connection réussie
                vitisApp['oWebsocket'].on('connect', function (sReturn) {
                    $log.info('VitisWebsocket: Connected to ' + sWebSocketUrl + ' with ' + sReturn);
                });
    
                // Déconnection
                vitisApp['oWebsocket'].on('disconnect', function () {
                    $log.info('VitisWebsocket: Disconnected');
                });
    
                // Souscription
                vitisApp['oWebsocket'].on('subscribe', function (sReturn) {
                    $log.info('VitisWebsocket: Subscribed to ' + sReturn);
                });
    
                // Réception d'un message echo
                vitisApp['oWebsocket'].on('echo', function (message) {
                    $log.info('VitisWebsocket echo: ' + message);
                    $.notify('VitisWebsocket: ' + message, 'success');
                });
    
                // Réception d'un événement
                vitisApp['oWebsocket'].on('event', function (event) {
                    $log.info('VitisWebsocket event: ', event);
                });
    
                // Test si la connection a pu être faite