Advertisement
Guest User

Untitled

a guest
Mar 19th, 2013
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. Splunk.Module.GeneratorVisualisation = $.klass(Splunk.Module.DispatchingModule, {
  2.  
  3.     initialize: function($super, container) {
  4.         $super(container);
  5.  
  6.     this.myParam = this.getParam("myParam");
  7.         this._entityName   = this._params["entityName"]   || "(required entityName unset)";
  8.         this._headerFormat = this._params["headerFormat"] || "(required headerFormat unset) %s";
  9.         this._replacementTokens = Splunk.util.discoverReplacementTokens(this._headerFormat);
  10.  
  11.     },
  12.  
  13.     onContextChange: function(evt) {
  14.         this.getResults();
  15.     },
  16.    
  17.     onJobProgress: function(evt) {
  18.         this.getResults();
  19.     },
  20.    
  21.     onJobDone: function(event) {
  22.         this.getResults();
  23.     },
  24.  
  25.     getResultParams: function($super) {
  26.         var params = $super();
  27.         var context = this.getContext();
  28.         var search = context.get("search");
  29.         var sid = search.job.getSearchId();
  30.  
  31.         if (!sid) this.logger.error(this.moduleType, "Assertion Failed.");
  32.  
  33.         params.sid = sid;    
  34.        
  35.         var postprocess = search.getPostProcess();
  36.         if (postprocess)
  37.             params.postprocess = postprocess;
  38.        
  39.         return params;
  40.     },
  41.  
  42.     renderResults: function($super, results) {
  43.         if(!results) {
  44.         this.resultsContainer.html('No content available.');
  45.             return;
  46.         }
  47.  
  48.     console.debug(results);
  49.        
  50. //  alert(Object.keys(results)[0]);
  51. //  results = results[Object.keys[0]];
  52.    
  53.     firstResult = results[Object.keys(results)[0]];
  54.    
  55.     // check fault type to determine background colour controlled by css
  56.     switch(firstResult['fault_type']) {
  57.             case '0':
  58.                 subClass = 'normal';
  59.                 break;
  60.             case '1':
  61.                 subClass = 'warning';
  62.                 break;
  63.             case '2':
  64.                 subClass = 'derate';
  65.                 break;
  66.             case '3':
  67.                 subClass = 'shutdownCooldown';
  68.                 break;
  69.             case '4':
  70.                 subClass = 'shutdown';
  71.                 break;
  72.             default:
  73.                 subClass = '';
  74.                 break;
  75.     }
  76.    
  77.     // check state to determine background colour controlled by css
  78.     switch(firstResult['state']) {
  79.             case '0':
  80.                 subStateClass = 'stopped';
  81.                 break;
  82.             case '1':
  83.                 subStateClass = 'start';
  84.                 break;
  85.             case '2':
  86.                 subStateClass = 'warm';
  87.                 break;
  88.             case '3':
  89.                 subStateClass = 'running';
  90.                 break;
  91.             case '4':
  92.                 subStateClass = 'coolRated';
  93.                 break;
  94.             case '5':
  95.                 subStateClass = 'coolIdle';
  96.                 break;
  97.             default:
  98.                 subStateClass = '';
  99.                 break;
  100.     }
  101.  
  102.     CBvalue = parseInt(firstResult['gen_cb_state']);
  103.     if (CBvalue == 0) {
  104.         subCBClass = 'open';
  105.     }
  106.     else if(CBvalue == 1) {
  107.         subCBClass = 'closed';
  108.     }
  109.     else if(CBvalue > 1) {
  110.         subCBClass = 'purple';
  111.     }
  112.    
  113.     genRPM = parseInt(firstResult['engine_rpm']);
  114.     if (genRPM < 1) {
  115.         subRPMClass = 'off';
  116.     }
  117.     else {
  118.         subRPMClass = 'on';
  119.     }
  120.    
  121.     switch(firstResult['indicatorDescription']) {
  122.             case 'AUTO':
  123.                 subIndicatorClass = 'auto';
  124.                 break;
  125.             case 'OFF':
  126.                 subIndicatorClass = 'off';
  127.                 break;
  128.             case 'RUN':
  129.                 subIndicatorClass = 'run';
  130.                 break;
  131.             default:
  132.                 firstResult['indicatorDescription'] = '???';
  133.                 subIndicatorClass = '';
  134.                 break;
  135.     }
  136.    
  137.     htmlFragment = '<div class="GenVis ' + subClass + '">';
  138.     htmlFragment += '<div class="gen-state ' + subStateClass + '">' + firstResult['stateDescription'] + '</div>';
  139.     htmlFragment += '   <div class="gen-faultType">' + firstResult['faultTypeDescription'] + '</div>';
  140.     htmlFragment += '   <div class="gen-left">';
  141.     htmlFragment += '       <div class="gen-coolant">' + firstResult['coolant_temp'] + '&#8451;</div>';
  142.     htmlFragment += '       <div class="gen-genIdent ' + subRPMClass + '">' + firstResult['sectionCode'] + '</div>';
  143.     htmlFragment += '   </div>';
  144.     htmlFragment += '   <div class="gen-right">';
  145.     htmlFragment += '       <div class="gen-indicator ' + subIndicatorClass + '">' + firstResult['indicatorDescription'] + '</div>';
  146.     htmlFragment += '       <div class="gen-cb ' + subCBClass + '"></div>';
  147.     htmlFragment += '       <div class="gen-kw">' + firstResult['total_kw'] + ' kW</div>';
  148.     htmlFragment += '       <div class="gen-rpm">' + firstResult['engine_rpm'] + ' RPM</div>';
  149.     htmlFragment += '   </div>';
  150.     htmlFragment += '   <div class="gen-battery">' + firstResult['battery_volt'] + ' Volts</div>';
  151.     htmlFragment += '   <div class="gen-fuelRate">' + firstResult['fuel_rate'] + ' litres/hr</div>';
  152.     htmlFragment += '</div>';
  153.  
  154.         this.resultsContainer.html(htmlFragment);
  155.     }
  156. })
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement