From d59a4921188753dbe4c0161081755a28112c3ef6 Mon Sep 17 00:00:00 2001 From: Nathan Gass Date: Thu, 22 Mar 2012 18:18:42 +0000 Subject: Branch itools/devel-utf8 created --- devel-utf8/auto_prepend.php | 232 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 232 insertions(+) create mode 100644 devel-utf8/auto_prepend.php (limited to 'devel-utf8/auto_prepend.php') diff --git a/devel-utf8/auto_prepend.php b/devel-utf8/auto_prepend.php new file mode 100644 index 0000000..b71acb7 --- /dev/null +++ b/devel-utf8/auto_prepend.php @@ -0,0 +1,232 @@ +etext($label, array_map(array("it_html", "Q"), $values), $language) : $GLOBALS['it_text']->text($label, $language); +} + +/** + * Return a text in the selected language + * Replaces variables of the form {var} with value from argument $values + * @param $label Label of text to return + * @param $values Associative array containing values to fill in + * @param $language Optional language to return text in. + * @return Localized text string with variables replaced by their values + */ +function ET($label, $values = null, $language = null) +{ + it_text::init(); + return $GLOBALS['it_text']->etext($label, $values, $language); +} + +/** + * Change language + * @param $language New language to set + */ +function T_set_language($language) +{ + it_text::init(); + return $GLOBALS['it_text']->set_language($language); +} + +/** + * Get active language + * @return currently active language + */ +function T_lang() +{ + it_text::init(); + return $GLOBALS['it_text']->get_language(); +} + +/** + * Get active language + * @return default language of browser + */ +function T_defaultlang() +{ + it_text::init(); + return $GLOBALS['it_text']->get_defaultlanguage(); +} + +/** + * Get available languages + * @return available languages as langcode => langname + */ +function T_languages() +{ + it_text::init(); + return $GLOBALS['it_text']->languages; +} + +/** + * Check if a text entry for a specific label exists + * @param $label Label to check + * @return true if text exists in actual (or supplied) language, false otherwise. + */ +function T_exists($label, $language = null) +{ + it_text::init(); + return $GLOBALS['it_text']->text_exists($label, $language); +} + +/** + * Return "db4" or "db2" depending on availability + */ +function db_version() +{ + return in_array("db4", dba_handlers()) ? "db4" : "db2"; +} + + + + +/****************** functions for class it_text **********************/ + +/** + * Build an url + */ +function U(/* ... */) +{ + $args = func_get_args(); + return call_user_func_array(array('it_html', 'U'), $args); +} + + + + +/************************** other functions ***************************/ + +/** + * Print an error message and end page + */ +function fail($text) +{ + trigger_error($text, E_USER_ERROR); + it::fatal($text); +} + +/** + * Global shortcut for $it_debug::debug() + * @see it_debug::debug() + */ +function debug($text, $level=0) +{ + if (isset($GLOBALS['it_debug'])) + $GLOBALS['it_debug']->debug($text, $level); +} + +/** + * Convert a htmlentities-encoded string back to normal + */ +function it_htmlentities_decode($string) +{ + return strtr($string, array_flip(get_html_translation_table(HTML_ENTITIES))); +} + +/** + * Clone an object and return copy, works for all PHP versions + */ +function &it_clone(&$object) +{ + $result = (is_object($object) && version_compare(zend_version(), 2, '>=')) ? clone($object) : $object; + return $result; # PHP internals need a tmp var to return by ref +} + +/** + * Experimental PHP taint support, see ftp://ftp.porcupine.org/pub/php/ + */ +if (function_exists("taint")) +{ + function it_untaint($value, $marks = TC_HTML) { untaint($value, $marks); return $value; } + function it_taintcheck($value, $marks = TC_HTML) { if (istainted($value) & $marks) { untaint($value, $marks); it::error(it_untaint("it_taintcheck($value, $marks) failed")); } return $value; } +} +else +{ + define('TC_HTML', 0); + define('TC_SHELL', 0); + define('TC_MYSQL', 0); + define('TC_MYSQLI', 0); + define('TC_SELF', 0); + define('TC_ALL', 0); + define('TC_NONE', 0); + function it_untaint($value, $dummy_marks = 0) { return $value; } + function it_taintcheck($value, $dummy_marks = 0) { return $value; } +} + +# ULTRAHOME is generated in a safe way +$GLOBALS['ULTRAHOME'] = it_untaint($GLOBALS['ULTRAHOME'], TC_ALL); + +?> -- cgit v1.2.3