Esempio n. 1
0
 /**
  * Realiza um sanitização de acordo com o locale, para permitir que valores
  * flutuantes ou números de precisão arbitrária utilizem a pontuação sem
  * localização.
  *
  * @see CoreExt_Validate_Abstract#_sanitize($value)
  */
 protected function _sanitize($value)
 {
     $locale = CoreExt_Locale::getInstance();
     $decimalPoint = $locale->getCultureInfo('decimal_point');
     // Verifica se possui o ponto decimal do locale e substitui para o
     // padrão do locale en_US (ponto ".")
     if (FALSE !== strstr($value, $decimalPoint)) {
         $value = strtr($value, $decimalPoint, '.');
         $value = floatval($value);
     }
     return parent::_sanitize($value);
 }
Esempio n. 2
0
 protected function setUp()
 {
     $this->_instance = CoreExt_Locale::getInstance();
     $this->_instance->resetLocale();
 }
Esempio n. 3
0
 /**
  * Getter.
  * @return CoreExt_Locale
  */
 public function getLocale()
 {
     if (is_null($this->_locale)) {
         require_once 'CoreExt/Locale.php';
         $this->setLocale(CoreExt_Locale::getInstance());
     }
     return $this->_locale;
 }
Esempio n. 4
0
 /**
  * @group CoreExt_Locale
  */
 public function testArredondamentoDeNotaComLocaleDiferenteDoPadrao()
 {
     $this->_entity->getDataMapper()->setTabelaValorDataMapper($this->_getMockTabelaValor());
     $this->assertEquals(5, $this->_entity->round('5,005'));
     $locale = CoreExt_Locale::getInstance();
     $locale->setLocale('pt_BR');
     $this->assertEquals(8, $this->_entity->round('8,250'));
 }
Esempio n. 5
0
 * de ambiente configurada ou define 'production' como padrão.
 */
if (getenv('CORE_EXT_CONFIGURATION_ENV')) {
    define('CORE_EXT_CONFIGURATION_ENV', getenv('CORE_EXT_CONFIGURATION_ENV'));
} else {
    define('CORE_EXT_CONFIGURATION_ENV', 'production');
}
// Arquivo de configuração INI
$configFile = realpath(dirname(__FILE__) . '/../') . '/configuration/ieducar.ini';
// Classe de configuração
require_once 'CoreExt/Config.class.php';
require_once 'CoreExt/Config/Ini.class.php';
require_once 'CoreExt/Locale.php';
// Array global de objetos de classes do pacote CoreExt
global $coreExt;
$coreExt = array();
// Localização para pt_BR
$locale = CoreExt_Locale::getInstance();
$locale->setCulture('pt_BR')->setLocale();
// Instancia objeto CoreExt_Configuration
$coreExt['Config'] = new CoreExt_Config_Ini($configFile, CORE_EXT_CONFIGURATION_ENV);
$coreExt['Locale'] = $locale;
// Timezone
date_default_timezone_set($coreExt['Config']->app->locale->timezone);
/**
 * Altera o diretório da aplicação. chamadas a fopen() na aplicação não
 * verificam em que diretório está, assumindo sempre uma requisição a
 * intranet/.
 */
chdir($root . DS . 'intranet');
unset($root, $paths);
Esempio n. 6
0
 /**
  * @group CoreExt_Locale
  */
 public function testValorNumericoSemConfigurarOValidadorUsandoLocaleComSeparadorPontoParaDecimal()
 {
     $locale = CoreExt_Locale::getInstance();
     $locale->setCulture('en_US');
     $this->assertTrue($this->_validator->isValid('0.0'));
     $this->assertTrue($this->_validator->isValid('1.5'));
     $this->assertTrue($this->_validator->isValid('-1.5'));
 }