| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- <?php
- /**
- * HTML2PDF Librairy - HTML2PDF Locale
- *
- * HTML => PDF convertor
- * distributed under the LGPL License
- *
- * @author Laurent MINGUET <webmaster@html2pdf.fr>
- * @version 4.03
- */
- class HTML2PDF_locale
- {
- /**
- * code of the current used locale
- * @var string
- */
- static protected $_code = null;
- /**
- * texts of the current used locale
- * @var array
- */
- static protected $_list = array();
- /**
- * directory where locale files are
- * @var string
- */
- static protected $_directory = null;
- /**
- * load the locale
- *
- * @access public
- * @param string $code
- */
- static public function load($code)
- {
- if (self::$_directory===null) {
- self::$_directory = dirname(dirname(__FILE__)).'/locale/';
- }
- // must be in lower case
- $code = strtolower($code);
- // must be [a-z-0-9]
- if (!preg_match('/^([a-z0-9]+)$/isU', $code)) {
- throw new HTML2PDF_exception(0, 'invalid language code ['.self::$_code.']');
- }
- // save the code
- self::$_code = $code;
- // get the name of the locale file
- $file = self::$_directory.self::$_code.'.csv';
- // the file must exist
- if (!is_file($file)) {
- throw new HTML2PDF_exception(0, 'language code ['.self::$_code.'] unknown. You can create the translation file ['.$file.'] and send it to the webmaster of html2pdf in order to integrate it into a future release');
- }
- // load the file
- self::$_list = array();
- $handle = fopen($file, 'r');
- while (!feof($handle)) {
- $line = fgetcsv($handle);
- if (count($line)!=2) continue;
- self::$_list[trim($line[0])] = trim($line[1]);
- }
- fclose($handle);
- }
- /**
- * clean the locale
- *
- * @access public static
- */
- static public function clean()
- {
- self::$_code = null;
- self::$_list = array();
- }
- /**
- * get a text
- *
- * @access public static
- * @param string $key
- * @return string
- */
- static public function get($key, $default='######')
- {
- return (isset(self::$_list[$key]) ? self::$_list[$key] : $default);
- }
- }
|