/** * Return the help data (ajax) * @param array $request the request * @return text the help text (usually html) */ public function getHelp($request) { global $smarty; require_once R3_LIB_DIR . 'eco_help.php'; $smarty->assign('ELECTRICITY_KWH_FACTOR', R3Locale::convert2PHP($this->auth->getConfigValue('GENERAL', 'ELECTRICITY_KWH_FACTOR', 1))); $body = R3Help::getHelpPartFromSection($request['section'], $request['id'], R3Locale::getLanguageCode()); return array('data' => $body !== null ? $body : ''); }
/** * Return the UDM * @param array $request the request * @return array the result data */ public function performEnergySourceRowCalc($request) { $db = ezcDbInstance::get(); $lang = R3Locale::getLanguageID(); $request = R3Locale::convert2PHP($request, true); $result = array(); foreach (R3EcoGisGlobalConsumptionHelper::getEnergySourceList($_SESSION['do_id'], $this->kind) as $key => $value) { if (!isset($request["udm_id_{$key}"]) && isset($value['source'][$request["es_id_{$key}"]]['udm']) && count($value['source'][$request["es_id_{$key}"]]['udm']) == 1) { $request["udm_id_{$key}"] = key($value['source'][$request["es_id_{$key}"]]['udm']); } if (isset($request["es_id_{$key}"]) && $request["es_id_{$key}"] != '' && isset($request["udm_id_{$key}"]) && $request["udm_id_{$key}"] != '' && isset($request["co_value_{$key}"]) && $request["co_value_{$key}"] != '') { $result["popup_co_{$key}_kwh"] = R3NumberFormat(forceFloat($request["co_value_{$key}"], null, '.') * $value['source'][$request["es_id_{$key}"]]['udm'][$request["udm_id_{$key}"]]['kwh_factor'], 0, true); $result["popup_co_{$key}_co2"] = R3NumberFormat(forceFloat($request["co_value_{$key}"], null, '.') * $value['source'][$request["es_id_{$key}"]]['udm'][$request["udm_id_{$key}"]]['co2_factor'], 0, true); } else { $result["popup_co_{$key}_co2"] = null; $result["popup_co_{$key}_kwh"] = null; } } return array('status' => R3_AJAX_NO_ERROR, 'data' => Null2Str($result)); }
private static function cacheEnergySourceUDM($do_id) { $db = ezcDbInstance::get(); $sql = "SELECT * FROM energy_source_udm_default WHERE do_id=" . (int) $do_id; foreach ($db->query($sql, PDO::FETCH_ASSOC) as $row) { R3EcoGisCalculatorHelper::$energySourceUDMData[$row['esu_id']] = R3Locale::convert2PHP($row); } }
/** * Convert the given data (float and ineger) into php data */ static function convert2PHP($data, $useThousandsSep = true) { if (is_array($data)) { foreach ($data as $key => $val) { $data[$key] = R3Locale::convert2PHP($val, $useThousandsSep); } } else { if (is_string($data) === true && is_numeric($data) === true) { if (strpos($data, '.') === false) { $data = (int) $data; } else { $data = (double) $data; } } } return $data; }