_listener()

in client/client/app/app.controller.js [91:197]


    _listener(event) {
        const callerId = event.data.callerId ? event.data.callerId : null;
        switch (event.data.method) {
            case 'loadDataSet': {
                const id = parseInt(event.data.params && event.data.params.id ? event.data.params.id : null);
                const forceSwitchRef = event.data.params && event.data.params.forceSwitchRef ? event.data.params.forceSwitchRef : false;
                if (id) {
                    this.apiService.loadDataSet(id, forceSwitchRef).then((response) => {
                        this._apiResponse(response, callerId);
                    });
                } else {
                    this._apiResponse({
                        message: `Api error: loadDataSet wrong param ${JSON.stringify(event.data.params)}`,
                        isSuccessful: false
                    }, callerId);
                }
                break;
            }
            case 'navigateToCoordinate': {
                const coordinates = event.data.params && event.data.params.coordinates ? event.data.params.coordinates : null;
                this.apiService.navigateToCoordinate(coordinates).then((response) => {
                    this._apiResponse(response, callerId);
                });
                break;
            }
            case 'toggleSelectTrack':
                if (event.data.params && event.data.params.track) {
                    this.apiService.toggleSelectTrack(event.data.params).then((response) => {
                        this._apiResponse(response, callerId);
                    });
                } else {
                    this._apiResponse({
                        message: `Api error: loadTrack wrong params ${JSON.stringify(event.data.params)}`,
                        isSuccessful: false
                    }, callerId);
                }
                break;
            case 'loadTracks':
            case 'loadRegisteredTracks': {
                const registered = event.data.method === 'loadRegisteredTracks';
                const tracks = event.data.params && event.data.params.tracks ? event.data.params.tracks : null;
                if (tracks) {
                    this.apiService.loadTracks(event.data.params, registered).then((response) => {
                        this._apiResponse(response, callerId);
                    });
                } else {
                    this._apiResponse({
                        message: `Api error: loadTrack wrong params ${JSON.stringify(event.data.params)}: tracks array is missing`,
                        isSuccessful: false
                    }, callerId);
                }
                break;
            }
            case 'setGlobalSettings': {
                const globalSettingsParams = event.data.params;
                if (globalSettingsParams) {
                    this._apiResponse(this.apiService.setGlobalSettings(globalSettingsParams), callerId);
                } else {
                    this._apiResponse({
                        message: `Api error: setGlobalSettings wrong param ${JSON.stringify(event.data.params)}`,
                        isSuccessful: false
                    }, callerId);
                }
                break;
            }
            case 'setTrackSettings': {
                const trackSettingParams = event.data.params;
                if (trackSettingParams) {
                    this._apiResponse(this.apiService.setTrackSettings(trackSettingParams), callerId);
                } else {
                    this._apiResponse({
                        message: `Api error: setTrackSettings wrong param ${JSON.stringify(event.data.params)}`,
                        isSuccessful: false
                    }, callerId);
                }
                break;
            }
            case 'setToken': {
                const token = event.data.params && event.data.params.token ? event.data.params.token : null;
                if (token) {
                    this._apiResponse(this.apiService.setToken(token), callerId);
                } else {
                    this._apiResponse({
                        message: `Api error: setToken wrong param ${JSON.stringify(event.data.params)}`,
                        isSuccessful: false
                    }, callerId);
                }
                break;
            }
            case 'setEmbedded': {
                const embedded = event.data.params && event.data.params.embedded !== undefined
                    ? !!(event.data.params.embedded)
                    : true;
                this._apiResponse(this.apiService.setEmbeddedMode(embedded), callerId);
                break;
            }
            case 'setControlsVisibility': {
                this._apiResponse(this.apiService.setControlsVisibility(event.data.params), callerId);
                break;
            }
            default:
                this._apiResponse({
                    message: 'Api error: No such method.',
                    isSuccessful: false,
                }, callerId);
        }
    }