Changeset 5b62a23974aecc334c1cf76a2672f26b69c02d0c

Show
Ignore:
Timestamp:
10/09/09 03:17:54 (5 years ago)
Author:
Theo Schlossnagle <jesus@omniti.com>
git-committer:
Theo Schlossnagle <jesus@omniti.com> 1255058274 +0000
git-parent:

[d83c60ec436c1936f4b7e575a76dc3fe546b6d04]

git-author:
Theo Schlossnagle <jesus@omniti.com> 1255058274 +0000
Message:

missing data isn't rendering right. fixes #201

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • ui/web/htdocs/js/jquery.flot.js

    r3db67ae r5b62a23  
    200200            } 
    201201            middle = parseInt(((high-low)/2))+ low; 
    202             if(middle>=a.length) {  
     202            if(middle>=a.length || a[middle] == null) {  
     203              var r = { found: false, index: middle }; return r; 
    203204            } //bad index, somehow 
    204205            if(a[middle][0] > v) return binary_search(a, v, middle-1, low); 
     
    11791180                for (var i = 0; i < data.length; ++i) { 
    11801181                    prev = cur; 
     1182                    if(data[i] == null) continue; 
    11811183                    cur = [data[i][0], data[i][1]]; 
    11821184                    if(dataManip) cur[1] = dataManip(cur[1]); 
  • ui/web/lib/Reconnoiter_DataSet.php

    r1ce987a r5b62a23  
    1717 
    1818    $this->derive = $derive; 
    19    $this->uuid = $db->get_uuid_by_sid($uuid); 
     19    $this->uuid = $db->get_uuid_by_sid($uuid); 
    2020 
    2121    if($derive == 'derive' || $derive == 'true') { 
     
    5050    if(!isset($attr)) $attr = $this->default_attr; 
    5151    if(!$this->expr) return $this->data[$ts][$attr]; 
    52     return $this->rpn_eval($this->data[$ts][$attr], $this->expr); 
     52    $rv = $this->rpn_eval($this->data[$ts][$attr], $this->expr); 
     53    return $rv; 
    5354  } 
    5455} 
  • ui/web/lib/Reconnoiter_RPN.php

    rdf2e366 r5b62a23  
    99      switch($op) { 
    1010        case 'ln': 
    11           array_unshift($s, log(array_shift($s))); break; 
     11          $v = array_shift($s); 
     12          array_unshift($s, is_null($v) ? $v : log($v)); break; 
    1213        case 'round': 
    1314          $r = array_shift($s); 
    1415          $l = array_shift($s); 
    15           array_unshift($s, round($l,$r)); 
     16          array_unshift($s, is_null($l) ? $l : round($l,$r)); 
    1617          break; 
    1718        case 'floor': 
    18           array_unshift($s, floor(array_shift($s))); break; 
     19          $v = array_shift($s); 
     20          array_unshift($s, is_null($v) ? $v : floor($v)); break; 
    1921        case 'ceil': 
    20           array_unshift($s, ceil(array_shift($s))); break; 
     22          $v = array_shift($s); 
     23          array_unshift($s, is_null($v) ? $v : ceil($v)); break; 
    2124        case 'log': 
    2225          $r = array_shift($s); 
    2326          $l = array_shift($s); 
    24           array_unshift($s, log($l,$r)); 
     27          array_unshift($s, is_null($l) ? $l : log($l,$r)); 
    2528          break; 
    2629        case 'e': 
     
    3134          $r = array_shift($s); 
    3235          $l = array_shift($s); 
    33           array_unshift($s, pow($l,$r)); 
     36          array_unshift($s, (is_null($r) || is_null($l)) ? NULL : pow($l,$r)); 
    3437          break; 
    3538        case '-': 
    3639          $r = array_shift($s); 
    3740          $l = array_shift($s); 
    38           array_unshift($s, $l-$r); 
     41          array_unshift($s, (is_null($r) || is_null($l)) ? NULL : ($l-$r)); 
    3942          break; 
    4043        case '/': 
    4144          $r = array_shift($s); 
    4245          $l = array_shift($s); 
    43           array_unshift($s, $l/$r); 
     46          array_unshift($s, (is_null($r) || is_null($l) || $r == 0) ? NULL : ($l/$r)); 
    4447          break; 
    4548        case '.': 
    4649          array_unshift($s, $s[array_shift($s)]); break; 
    4750        case '+': 
    48           array_unshift($s, array_shift($s) + array_shift($s)); break; 
     51          $r = array_shift($s); 
     52          $l = array_shift($s); 
     53          array_unshift($s, (is_null($r) || is_null($l)) ? NULL : ($l+$r)); 
     54          break; 
    4955        case '*': 
    50           array_unshift($s, array_shift($s) * array_shift($s)); break; 
     56          $r = array_shift($s); 
     57          $l = array_shift($s); 
     58          array_unshift($s, (is_null($r) || is_null($l)) ? NULL : ($l*$r)); 
     59          break; 
    5160        case 'auto': 
    52           array_unshift($s, $this->autounits(array_shift($s))); break; 
     61          $v = array_shift($s); 
     62          array_unshift($s, is_null($v) ? $v : $this->autounits($v)); break; 
    5363        case 'min': 
    54           array_unshift($s, min(array_shift($s),array_shift($s))); break; 
     64          $r = array_shift($s); 
     65          $l = array_shift($s); 
     66          if(is_null($r)) array_unshift($s,$l); 
     67          else if(is_null($l)) array_unshift($s,$r); 
     68          else array_unshift($s, min($r,$l)); 
     69          break; 
    5570        case 'max': 
    56           array_unshift($s, max(array_shift($s),array_shift($s))); break; 
     71          $r = array_shift($s); 
     72          $l = array_shift($s); 
     73          if(is_null($r)) array_unshift($s,$l); 
     74          else if(is_null($l)) array_unshift($s,$r); 
     75          else array_unshift($s, max($r,$l)); 
     76          break; 
    5777        default: 
    5878          if(preg_match('/^-?\d+$/', $op)) { 
  • ui/web/lib/Reconnoiter_flot_Driver.php

    r5b94a67 r5b62a23  
    9898        foreach($timeline as $ts) { 
    9999            $value = $set->data($ts); 
    100             if($value != "") { 
    101               $desc = $set->description($ts); 
    102               if($desc) { 
     100            $desc = $set->description($ts); 
     101            if($desc) { 
    103102                $a[] = array( $ts * 1000, "$value", $desc );     
    104               } else { 
     103            } else { 
    105104                $a[] = array( $ts * 1000, "$value" ); 
    106               } 
    107105            } 
    108106            $i++; 
    109          
     107       
    110108    } 
    111109    return $a;