Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
03/17/16 16:52:10 (9 years ago)
Author:
jlodewyc
Message:

#2582 Implement graphs(Pie and line per task) + live job overview with SignalR

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/WebJobManager/HeuristicLab.Clients.Hive.WebJobManager/Views/Job/SelectedJobPartials/_BatchTask.cshtml

    r13712 r13714  
    11@model HeuristicLab.Clients.Hive.WebJobManager.Models.HiveTaskContainer
    22@using Newtonsoft.Json;
    3 <div class="panel panel-warning" style="border-color:#f6cd94!important; border-width:2px!important">
     3<div class="panel panel-warning" style="border-color:#f6cd94!important; border-width:2px!important;
     4box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
     5text-shadow:2px 2px black">
    46    <div class="panel-heading"
    57         data-toggle="collapse"
    68         data-target="#panbody@(Model.hiveTask.Task.Id)"
    7          onclick="redrawbat('@(Model.hiveTask.Task.Id)')"
    8        aria-expanded="false"
    9        aria-controls="panbody@(Model.hiveTask.Task.Id)">
     9         onclick="redrawGraph('@(Model.hiveTask.Task.Id)')"
     10         aria-expanded="false"
     11         aria-controls="panbody@(Model.hiveTask.Task.Id)">
    1012        <table class="table ">
    1113            <thead>
     
    3739            <tbody>
    3840                <tr>
    39                     <td>Last update @Model.hiveTask.Task.LastTaskDataUpdate </td>
    40                     <td>State: @Model.hiveTask.Task.State</td>
     41                    <td id="lastupdpar@(Model.hiveTask.Task.Id)">
     42                        <i class="fa fa-cog fa-spin fa-2x" id="spinner"></i>
     43                    </td>
     44                    <td id="statepar@(Model.hiveTask.Task.Id)">
     45                        <i class="fa fa-cog fa-spin fa-2x" id="spinner"></i>
     46                    </td>
    4147
    4248                </tr>
    4349                <tr>
    44                     <td>@Model.hiveTask.Task.ExecutionTime executed</td>
     50                    <td id="executionpar@(Model.hiveTask.Task.Id)">
     51                        <i class="fa fa-cog fa-spin fa-2x" id="spinner"></i>
     52                    </td>
    4553                    <td>Created: @Model.hiveTask.Task.DateCreated</td>
    46                 </tr>
     54                 </tr>
    4755                <tr>
    4856                    <td>
     
    5462                               data-onstyle="success" />
    5563                    </td>
    56                     <td>Statelogs: @Model.hiveTask.Task.StateLog.Count</td>
     64                    <td id="statechangespar@(Model.hiveTask.Task.Id)">
     65                        <i class="fa fa-cog fa-spin fa-2x" id="spinner"></i>
     66                    </td>
    5767                </tr>
    5868            </tbody>
    5969        </table>
    6070    </div>
    61     <div class="panel-body ">
     71    <div class="panel-body " style="text-shadow:none">
    6272        <div class="collapse" id="panbody@(Model.hiveTask.Task.Id)">
    63             <h4>From @Model.hiveTask.Task.StateLog.First().DateTime <br />to @Model.hiveTask.Task.StateLog.Last().DateTime  </h4>
    64             <div id="graph@(Model.hiveTask.Task.Id)"></div>
     73            <input id="graphtoggle@(Model.hiveTask.Task.Id)"
     74                   type="checkbox"
     75                   data-toggle="toggle"
     76                   checked
     77                   data-on="Line"
     78                   data-off="Pie"
     79                   onchange="redrawGraph('@(Model.hiveTask.Task.Id)')">
     80            <h4 id="graphtitle@(Model.hiveTask.Task.Id)">
     81                <i class="fa fa-cog fa-spin fa-2x" id="spinner"></i>
     82            </h4>
     83            <div style="text-shadow:none" id="graph@(Model.hiveTask.Task.Id)"></div>
    6584        </div>
    6685    </div>
     
    7796    }
    7897    <script type="text/javascript">
    79         var temp = @Html.Raw(JsonConvert.SerializeObject(Model.hiveTask.Task.StateLog));
    80         var xarr = [];
    81         var yarr = [];
    82         for(var v = 0; v < temp.length; v++){
    83             xarr.push(temp[v].DateTime.substr(11,8));
    84             if(temp[v].State == 1)
    85                 yarr.push("Waiting");
    86             else if(temp[v].State == 2)
    87                 yarr.push("Transferring");
    88             else if(temp[v].State == 3)
    89                 yarr.push("Calculating");
    90             else if(temp[v].State == 5)
    91                 yarr.push("Finished");
    92             else if(temp[v].State == 7)
    93                 yarr.push("Failed");
    94         }
     98        initSaveData("@(Model.hiveTask.Task.Id)",
     99            @Html.Raw(JsonConvert.SerializeObject(Model.hiveTask.Task.StateLog)));
    95100
    96         var data = [{
    97             x: xarr,
    98             y: yarr,
    99             type:'scatter'
    100         }];
    101101        document.getElementById("graph@(Model.hiveTask.Task.Id)").style = "width: 90%; height: 450px;";
    102102
    103         Plotly.newPlot('graph@(Model.hiveTask.Task.Id)', data);
    104 
    105         function redrawbat(val){
    106             setTimeout(function(){
    107                 Plotly.newPlot('graph' + val,data);
    108             }, 100);
    109            
    110 
    111         }
     103        Plotly.newPlot('graph@(Model.hiveTask.Task.Id)',
     104            getData("@Model.hiveTask.Task.Id"));
    112105
    113106    </script>
Note: See TracChangeset for help on using the changeset viewer.