/** * 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; }