示例#1
0
 /**
  * Return the data for a single customer
  */
 public function getData($id = null)
 {
     $lang = R3Locale::getLanguageID();
     $db = ezcDbInstance::get();
     //R3Security::checkBuilding($this->id);
     $q = $db->createSelectQuery();
     $q->select('*')->from('stat_type_data')->where("st_id={$this->id}");
     $vlu = $db->query($q)->fetch(PDO::FETCH_ASSOC);
     $capabilities = $this->getStatisticCapabilitiesByCode($vlu['st_code']);
     $context = R3EcoGisStatHelper::getBetterContext($vlu['st_code']);
     $childContext = R3EcoGisStatHelper::getBetterChildContext($vlu['st_code']);
     $classes['absolute'] = R3EcoGisStatHelper::getStatsLegend($vlu['do_id'], $vlu['st_code'], $context, $childContext, true);
     if ($vlu['st_has_relative_data']) {
         $classes['relative'] = R3EcoGisStatHelper::getStatsLegend($vlu['do_id'], $vlu['st_code'], $context, $childContext, false);
     }
     $vlu = array_merge($vlu, R3EcoGisHelper::getChangeLogData('building', $vlu['st_id']), array('capabilities' => $capabilities, 'classes' => $classes));
     $this->data = $vlu;
     // Save the data (prevent multiple sql)
     return $vlu;
 }