/** * Tradukas la abstraktan tabelnomon al la konkreta tabelnomo. * * Ekzistas pluraj eblecoj, kiel traduki la nomon. * Dependas de la enhavo de konfiguro/datumaro.php. * * (1) Se tie trovigxas funkcio * tabelnomtradukilo(...), * gxi estas vokita per la abstrakta tabelnomo. * Se la rezulto ne estas malplena (0, null, nedefinita), * gxi estos la konkreta tabelnomo. * (2) Se ekzistas globala variablo $tabelnomtradukilo (kiu estu * array), tiam ni sercxas la valoron de la tabelnomo * (do, $tabelnomtradukilo[$tabelnomo]). Se la rezulto * ne estas malplena, gxi estos la konkreta tabelnomo. * (3) Se ekzistas globalaj variabloj $tabelnomprefikso kaj/aux * $tabelnompostfikso, ili estas kunmetitaj kun la * abstrakta tabelnomo por ricevi la konkretan * tabelnomon. * (4) Se neniu el tiuj eblecoj tauxgas, la konkreta * tabelnomo estos la abstrakta tabelnomo. */ function traduku_tabelnomon($tabelnomo) { // (1) if (function_exists("tabelnomtradukilo")) { $traduko = tabelnomtradukilo($tabelnomo); if (!empty($traduko)) { return $traduko; } } // (2) if (is_array($GLOBALS["tabelnomtradukilo"])) { $traduko = $GLOBALS["tabelnomtradukilo"][$tabelnomo]; if (!empty($traduko)) { return $traduko; } } // (3) + (4) return $GLOBALS["tabelnomprefikso"] . $tabelnomo . $GLOBALS["tabelnompostfikso"]; }
/** * Tradukas abstraktan tabelnomon al konkreta tabelnomo. * * Ekzistas pluraj eblecoj, kiel traduki la nomon. * Dependas de la enhavo de {@link konfiguro/datumaro.php}. * * - (1) Se tie troviĝas funkcio * tabelnomtradukilo(...), * ĝi estas vokita per la abstrakta tabelnomo. * Se la rezulto ne estas malplena (0, null, nedefinita), * ĝi estos la konkreta tabelnomo. * - (2) Se ekzistas globala variablo $tabelnomtradukilo (kiu estu * array), tiam ni serĉas la valoron de la tabelnomo * (do, $tabelnomtradukilo[$tabelnomo]). Se la rezulto * ne estas malplena, ĝi estos la konkreta tabelnomo. * - (3) Se ekzistas globalaj variabloj $tabelnomprefikso kaj/aŭ * $tabelnompostfikso, ili estas kunmetitaj kun la * abstrakta tabelnomo por ricevi la konkretan * tabelnomon. * - (4) Se neniu el tiuj eblecoj taŭgas, la konkreta * tabelnomo estos la abstrakta tabelnomo. * * @global array $tabelnomtradukilo * @global string $tabelnomprefikso * @global string $tabelnompostfikso * @uses tabelnomtradukilo (se ekzistas) * * @param string $tabelnomo la abstrakta tabelonomo * @return string la konkreta tabelnomo */ function traduku_tabelnomon($tabelnomo) { // (1) if (function_exists("tabelnomtradukilo")) { $traduko = tabelnomtradukilo($tabelnomo); if (!empty($traduko)) { return $traduko; } } // (2) if (isset($GLOBALS["tabelnomtradukilo"]) && is_array($GLOBALS["tabelnomtradukilo"])) { $traduko = $GLOBALS["tabelnomtradukilo"][$tabelnomo]; if (!empty($traduko)) { return $traduko; } } // (3) + (4) $tabelnomprefikso = valoro($GLOBALS["tabelnomprefikso"], ""); $tabelnompostfikso = valoro($GLOBALS["tabelnompostfikso"], ""); return $tabelnomprefikso . $tabelnomo . $tabelnompostfikso; }