SHARE
TWEET

Untitled

a guest Mar 19th, 2013 62 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. })
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top