ManiaLib 1.0b1 API Reference

Source for file GettextInitFilter.class.php

Documentation is available at GettextInitFilter.class.php

  1. <?php
  2. /**
  3.  * @author Maxime Raoust
  4.  * @copyright 2009-2010 NADEO
  5.  * @package ManiaLib
  6.  * @subpackage MVC_DefaultFilters
  7.  */
  8.  
  9. if(class_exists('GettextInitFilterConfig'false))
  10. {
  11.     /**
  12.      * Gettext init config
  13.      * Redeclare this class in your config in you want to override values
  14.      * @package ManiaLib
  15.       * @subpackage MVC_DefaultFilters
  16.      */
  17.     abstract class GettextInitFilterConfig
  18.     {
  19.         static $supportedLocales array(
  20.         'en' => 'en_US'
  21.         );
  22.         
  23.         static $defaultLang 'en';
  24.         static $encoding 'UTF-8';
  25.         static $domain 'messages';
  26.     }
  27. }
  28.  
  29. /**
  30.  * Gettext init
  31.  * Init the "gettext" extension if you want to used it. For advanced users only.
  32.  * Not that gettext doesn't work with HipHop for PHP
  33.  * @package ManiaLib
  34.  * @subpackage MVC_DefaultFilters
  35.  */
  36. {
  37.     /**
  38.      * @ignore
  39.      */
  40.     function preFilter()
  41.     {
  42.         if(ENABLE_GETTEXT_INIT)
  43.         {
  44.             $locale $this->session->get('lang'GettextInitFilterConfig::$defaultLang);
  45.             if(!array_key_exists($localeGettextInitFilterConfig::$supportedLocales))
  46.             {
  47.                 $locale GettextInitFilterConfig::$defaultLang;
  48.             }    
  49.             setlocale(LC_MESSAGESGettextInitFilterConfig::$supportedLocales[$locale]);
  50.             bindtextdomain(GettextInitFilterConfig::$domainAPP_LOCALE_PATH);
  51.             if(function_exists("bind_textdomain_codeset"))
  52.             {
  53.                 bind_textdomain_codeset(GettextInitFilterConfig::$domainGettextInitFilterConfig::$encoding);
  54.             }
  55.             textdomain(GettextInitFilterConfig::$domain);
  56.         }
  57.     }
  58.     
  59.     /**
  60.      * @ignore
  61.      */
  62.     function postFilter({}
  63. }
  64.  
  65. ?>