function getQueueData()

in app/views/partials/experiment-queue-block.blade.php [195:337]


    function getQueueData(selectedQueue) {
        var queues = $.parseJSON($("#queue-array").val());
        var queueDefaults = $.parseJSON($("#queue-defaults-array").val());
        var appDefaults = $.parseJSON($("#app-deployment-defaults-array").val());
        //getting the html values we set to hidden fields above!
        var passedNodeCount = parseInt($("#passed-nodeCount").val());
        var passedCpuCount = parseInt($('#passed-cpuCount').val());
        var passedWallTime = parseInt($('#passed-wallTime').val());
        var passedPhysicalMemory = parseInt($('#passed-physicalmem').val());
        var veryLargeValue = 9999999;

        console.log(queues);
        $(".queue-view").addClass("hide");
        for (var i = 0; i < queues.length; i++) {
            if (queues[i]['queueName'] == selectedQueue) {
                //node-count
                if (queues[i]['maxNodes'] != 0 && queues[i]['maxNodes'] != null) {
                    if($('#enable-auto-scheduling').prop('checked')){
                        $("#node-count").attr("max", veryLargeValue);
                    }else{
                        $("#node-count").attr("max", queues[i]['maxNodes']);
                    }
                    $(".node-count").html(queues[i]['maxNodes']);
                    $(".node-count").parent().removeClass("hide");
                }
                else
                    $(".node-count").parent().addClass("hide");

                if(appDefaults['nodeCount'] > 0){
                    $("#node-count").val(appDefaults['nodeCount']);
                }else if(queues[i]['defaultNodeCount'] > 0){
                    $("#node-count").val(queues[i]['defaultNodeCount']);
                }else{
                    $("#node-count").val(queueDefaults['nodeCount']);
                }
                // load previously set values on page load.
                if(passedNodeCount!=0){
                    $("#node-count").val(passedNodeCount);
                }

                //core-count
                if (queues[i]['maxProcessors'] != 0 && queues[i]['maxProcessors'] != null) {
                    if($('#enable-auto-scheduling').prop('checked')){
                        $("#cpu-count").attr("max", veryLargeValue);
                    }else {
                        $("#cpu-count").attr("max", queues[i]['maxProcessors']);
                    }
                    $(".cpu-count").html(queues[i]['maxProcessors']);
                    $(".cpu-count").parent().removeClass("hide");
                }
                else
                    $(".cpu-count").parent().addClass("hide");

                if(appDefaults['cpuCount'] > 0){
                    $("#cpu-count").val(appDefaults['cpuCount']);
                }else if(queues[i]['defaultCPUCount'] > 0){
                    $("#cpu-count").val(queues[i]['defaultCPUCount']);
                }else{
                    $("#cpu-count").val(queueDefaults['cpuCount']);
                }

                // load previously set values on page load.
                if(passedCpuCount!=0){
                    $("#cpu-count").val(passedCpuCount);
                }


                //walltime-count
                if (queues[i]['maxRunTime'] != null && queues[i]['maxRunTime'] != 0) {
                    if($('#enable-auto-scheduling').prop('checked')){
                        $("#wall-time").attr("max", veryLargeValue);
                    }else {
                        $("#wall-time").attr("max", queues[i]['maxRunTime']);
                    }
                    $(".walltime-count").html(queues[i]['maxRunTime']);
                    $(".walltime-count").parent().removeClass("hide");
                }
                else
                    $(".walltime-count").parent().addClass("hide");

                if(queues[i]['defaultWalltime'] > 0) {
                    $("#wall-time").val(queues[i]['defaultWalltime']);
                }else{
                    $("#wall-time").val(queueDefaults['wallTimeLimit']);
                }

                // load previously set values on page load.
                if(passedWallTime!=0){
                    $("#wall-time").val(passedWallTime);
                }

                //memory-count
                if (queues[i]['maxMemory'] != 0 && queues[i]['maxMemory'] != null) {
                    if($('#enable-auto-scheduling').prop('checked')){
                        $("#memory-count").attr("max", veryLargeValue);
                    }else {
                        $("#memory-count").attr("max", queues[i]['maxMemory']).val(0);
                    }
                    $(".memory-count").html(queues[i]['maxMemory']);
                    $(".memory-count").parent().removeClass("hide");
                }
                else
                    $(".memory-count").parent().addClass("hide");

                if(queues[i]['cpuPerNode'] > 0){
                    var cpusPerNode = queues[i]['cpuPerNode'];
                }else{
                    var cpusPerNode = queueDefaults['cpusPerNode'];
                }

                // load previously set values on page load.
                if(passedPhysicalMemory!=0){
                    $("#memory-count").val(passedPhysicalMemory);
                }


                var nodeCount=$("#node-count");
                var cpuCount=$("#cpu-count");

                cpuCount.keyup(function(){
                    var cpuCountVal = parseInt(cpuCount.val());
                    if(cpuCountVal > 0){
                        nodeCount.val(Math.ceil(cpuCountVal/cpusPerNode));
                    }
                });
                nodeCount.keyup(function(){
                    var nodeCountVal = parseInt(nodeCount.val());
                    if(nodeCountVal > 0){
                        cpuCount.val(nodeCountVal*cpusPerNode);
                    }
                });

                if(cpusPerNode > 0){
                    cpuCount.on('keyup');
                    nodeCount.on('keyup');
                }else{
                    cpuCount.off('keyup');
                    nodeCount.off('keyup');
                }
            }
        }
        $(".queue-view").removeClass("hide");
    }