Skip to content
Snippets Groups Projects
Select Git revision
  • 75e250d07135d9955787ad7f2e655817cf893e25
  • master default protected
  • L2SS-1914-fix_job_dispatch
  • TMSS-3170
  • TMSS-3167
  • TMSS-3161
  • TMSS-3158-Front-End-Only-Allow-Changing-Again
  • TMSS-3133
  • TMSS-3319-Fix-Templates
  • test-fix-deploy
  • TMSS-3134
  • TMSS-2872
  • defer-state
  • add-custom-monitoring-points
  • TMSS-3101-Front-End-Only
  • TMSS-984-choices
  • SDC-1400-Front-End-Only
  • TMSS-3079-PII
  • TMSS-2936
  • check-for-max-244-subbands
  • TMSS-2927---Front-End-Only-PXII
  • Before-Remove-TMSS
  • LOFAR-Release-4_4_318 protected
  • LOFAR-Release-4_4_317 protected
  • LOFAR-Release-4_4_316 protected
  • LOFAR-Release-4_4_315 protected
  • LOFAR-Release-4_4_314 protected
  • LOFAR-Release-4_4_313 protected
  • LOFAR-Release-4_4_312 protected
  • LOFAR-Release-4_4_311 protected
  • LOFAR-Release-4_4_310 protected
  • LOFAR-Release-4_4_309 protected
  • LOFAR-Release-4_4_308 protected
  • LOFAR-Release-4_4_307 protected
  • LOFAR-Release-4_4_306 protected
  • LOFAR-Release-4_4_304 protected
  • LOFAR-Release-4_4_303 protected
  • LOFAR-Release-4_4_302 protected
  • LOFAR-Release-4_4_301 protected
  • LOFAR-Release-4_4_300 protected
  • LOFAR-Release-4_4_299 protected
41 results

gridcontroller.js

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    gridcontroller.js 44.58 KiB
    // $Id: controller.js 32761 2015-11-02 11:50:21Z schaap $
    
    var gridControllerMod = angular.module('GridControllerMod', ['ui.grid',
                                                                 'ui.grid.edit',
                                                                 'ui.grid.selection',
                                                                 'ui.grid.resizeColumns',
                                                                 'ui.grid.autoResize']);
    
    gridControllerMod.controller('GridController', ['$scope', '$window', 'dataService', 'uiGridConstants', function($scope, $window, dataService, uiGridConstants) {
    
        var self = this;
    
        $scope.dataService = dataService;
    
        $scope.sanitize_url = function(in_url) {
            var split_url = in_url.split("://");
            return split_url[0] + "://" + split_url[1].replace(/\/+/g, "/");
        }
    
        $scope.selectBlockingPredecessors = function(in_blocking_predecessors) {
            $scope.$parent.$parent.loadTasksSelectAndJumpIntoView(in_blocking_predecessors);
        };
    
        $scope.openLtaLocation = function(in_ingest_tasks) {
            var ingest_tasks = Array.isArray(in_ingest_tasks) ? in_ingest_tasks : [in_ingest_tasks];
    
            //example: http://lofar.target.rug.nl/Lofar?mode=query_result_page_user&product=AveragingPipeline&ObservationId=544965&project=LC6_015
            //map task.sub_type to url product parameter
            var project2project2product2tasksDict = {};
    
            for(var t of ingest_tasks) {
                var lta_product;
                switch(t.sub_type) {
                    case 'averaging_pipeline': lta_product = 'AveragingPipeline'; break;
                    case 'calibration_pipeline': lta_product = 'CalibrationPipeline'; break;
                    case 'pulsar_pipeline': lta_product = 'PulsarPipeline'; break;
                    case 'lofar_imaging_pipeline': lta_product = 'ImagingPipeline'; break;
                    case 'imaging_pipeline_msss': lta_product = 'ImagingPipeline'; break;
                    case 'long_baseline_pipeline': lta_product = 'LongBaselinePipeline'; break;
                    case 'lofar_observation': lta_product = 'Observation'; break;
                }
                if(lta_product && (t.ingest_status != undefined) ) {
                    if(!project2project2product2tasksDict.hasOwnProperty(t.project_name)) {
                        project2project2product2tasksDict[t.project_name] = {};
                    }
                    if(!project2project2product2tasksDict[t.project_name].hasOwnProperty(lta_product)) {
                        project2project2product2tasksDict[t.project_name][lta_product] = [];
                    }
                    project2project2product2tasksDict[t.project_name][lta_product].push(t);
                }
            }
    
            var window_cntr = 0;
            for(var project in project2project2product2tasksDict) {
                for(var product in project2project2product2tasksDict[project]) {
                    var product_tasks = project2project2product2tasksDict[project][product];
                    var otdb_ids = product_tasks.map(function(pt) { return pt.otdb_id; });
                    var otdb_ids_string = otdb_ids.join(',');
                    var url = dataService.config.lta_base_url + '/Lofar?mode=query_result_page_user&product=' + product + '&ObservationId=' + otdb_ids_string + '&project=' + project;
                    url = $scope.sanitize_url(url);
                    setTimeout(function(url_arg) {
                        $window.open(url_arg, '_blank');
                    }, window_cntr*250, url);
                    window_cntr += 1;
                }
            }
        }
    
        $scope.columns = [
        { field: 'name',