Пример #1
0
 public function init()
 {
     // create logger
     self::$_logger = LoggerFactory::getInstance(ucfirst($this->{FrameworkConstants::ENTITY_NAME}) . 'ActiveRecord');
     // load database configs
     $file = $this->{FrameworkConstants::DATABASE_CONFIG_FILE};
     $configSection = $this->{FrameworkConstants::DATABASE_CONFIG_SECTION};
     if (!is_file($file)) {
         throw new Exception("Can't find database config file (" . $file . ")...");
     }
     self::$_logger->debug('Looking for db section -> ' . $configSection);
     $configData = IniParser::parse($file, $configSection);
     $data = $configData[$configSection];
     $this->{FrameworkConstants::DATABASE_TYPE} = $data[FrameworkConstants::DATABASE_TYPE];
     $this->{FrameworkConstants::DATABASE_HOST} = $data[FrameworkConstants::DATABASE_HOST];
     $this->{FrameworkConstants::DATABASE_NAME} = $data[FrameworkConstants::DATABASE_NAME];
     $this->{FrameworkConstants::DATABASE_USERNAME} = $data[FrameworkConstants::DATABASE_USERNAME];
     $this->{FrameworkConstants::DATABASE_PASSWORD} = $data[FrameworkConstants::DATABASE_PASSWORD];
     $this->{FrameworkConstants::MYSQL_COMMAND} = $data[FrameworkConstants::MYSQL_COMMAND];
     $this->{FrameworkConstants::MYSQL_COMMAND_CONTINUE_ON_ERROR} = $data[FrameworkConstants::MYSQL_COMMAND_CONTINUE_ON_ERROR];
     $this->_currentDataSourceName = $this->{FrameworkConstants::DATABASE_CONFIG_SECTION};
     $this->_returnErrors = $this->{FrameworkConstants::RETURN_ERRORS};
     // Load table info
     $this->getTableInfo();
 }
Пример #2
0
 /**
  * @return \ArrayObject
  *
  * @throws ParsingException
  */
 public function parse()
 {
     $this->setTemporaryErrorHandler();
     $parser = new \IniParser($this->getFile());
     /** @var \ArrayObject $parsed */
     $parsed = $parser->parse();
     $this->restoreErrorHandler();
     $parsed = $this->transformToArray($parsed);
     return $parsed;
 }
Пример #3
0
 private static function _loadDataFromFile($moduleName, $locale, $resourceFileName)
 {
     $resourceFile = APPLICATION_MODULE_DIR . $moduleName . '/' . self::RESOURCES_DIR_NAME . '/' . $locale . '/' . $resourceFileName . '.ini';
     if (is_file($resourceFile)) {
         // load the resource bundle
         $data = IniParser::parse($resourceFile);
     }
     if ($data) {
         self::$_data[self::$_resourceBundleKey] = $data;
     }
     return $data;
 }
Пример #4
0
 /**
  * @param String $iniPath path of the ini file
  *
  * @return IniFetcher
  * @throws InvalidArgumentException
  *
  * Namespace based factory. One factory for each ini file. This is particularly useful
  * when we have multiple ini file to be decoded in single php process.
  */
 public static function getInstance($iniPath)
 {
     if (!is_null($iniPath)) {
         if (is_null(self::$self[$iniPath])) {
             self::$self[$iniPath] = new self();
             $iniParser = new IniParser($iniPath);
             self::setParams($iniParser->parse());
         } else {
             return self::$self[$iniPath];
         }
     } else {
         throw new InvalidArgumentException('Variable iniPath can not be null');
     }
     return self::$self[$iniPath];
 }
Пример #5
0
 public static function getNextFromIni($moduleName, $statusCode, $flowFileName = false)
 {
     if (!self::$_registry[$moduleName]) {
         if ($flowFileName) {
             $file = APPLICATION_MODULE_DIR . $moduleName . '/flows/' . $flowFileName . '.flw';
             if (!is_file($file)) {
                 $file = APPLICATION_MODULE_DIR . $moduleName . '/flows/default.flw';
             }
         } else {
             $file = APPLICATION_MODULE_DIR . $moduleName . '/flows/default.flw';
         }
         $data = IniParser::parse($file);
         $_registry[$moduleName] = $data;
         return self::_buildArray($data[$statusCode]);
     } elseif (self::$_registry[$moduleName]) {
         $data = self::$_registry[$moduleName];
         return self::_buildArray($data[$statusCode]);
     }
     return null;
 }
Пример #6
0
 public static function getInfo($data)
 {
     $file = APPLICATION_CONFIG_DIR . 'url_mapper.ini';
     if (is_file($file) && is_array($data)) {
         // check modification date of url_mapper file
         $mapperFileInfo = stat($file);
         $mapperLastModified = $mapperFileInfo['mtime'];
         $cacheLastModified = 0;
         if (is_file(APPLICATION_CACHE_DIR . 'url_mapper')) {
             $cacheFileInfo = stat(APPLICATION_CACHE_DIR . 'url_mapper');
             $cacheLastModified = $cacheFileInfo['mtime'];
         }
         // let's check the cache first
         if ($mapperLastModified < $cacheLastModified) {
             $iniData = ConfigCacheHelper::getCache(APPLICATION_CACHE_DIR, 'url_mapper');
         } else {
             $iniData = IniParser::parse($file, true);
             ConfigCacheHelper::saveCache(APPLICATION_CACHE_DIR, 'url_mapper', $iniData);
         }
         if ($iniData) {
             $shortcuts = $iniData['shortcuts'];
         }
         if (is_array($shortcuts)) {
             foreach ($data as $k => $v) {
                 if (isset($k) && empty($v)) {
                     if ($shortcuts[$k]) {
                         // found a matching map, parse it and update the request
                         parse_str($shortcuts[$k], $output);
                         $request = Request::getInstance();
                         foreach ($output as $k => $v) {
                             $request->setParameter($k, $v);
                         }
                     }
                 }
             }
         }
     }
 }
Пример #7
0
 /**
  * Create a config array (from the given fixture).
  *
  * @param $file
  *
  * @return array
  */
 protected function getConfig($file, $options = array())
 {
     $parser = new IniParser(BASE_DIR . '/tests/fixtures/' . $file);
     foreach ($options as $key => $value) {
         $parser->{$key} = $value;
     }
     $config = $parser->parse();
     return $config;
 }
Пример #8
0
<?php

require_once 'IniFetcher.php';
/**
 * This example demonstrates how you can use IniParser and IniFetcher classes. Below examples are only
 * for the testing purpose, please use it your own way.
 */
$fileGlobal = '../tests/ini_files/global.ini';
$fileSimple = '../tests/ini_files/simple.ini';
$fileComments = '../tests/ini_files/comments.ini';
$fileArray = '../tests/ini_files/array.ini';
$fileBad = '../tests/ini_files/bad.ini';
$fileEscape = '../tests/ini_files/escape.ini';
$fileJson = '../tests/ini_files/json.ini';
// IniParser way
$parser = new IniParser($fileJson);
$parser->setFormat($parser::OUTPUT_FORMAT_ARRAY);
// default
$data = $parser->parse();
echo "Using IniParser: " . $data['json']['list']['creditcards']['amex']['prefix'] . '<br/>';
// IniFetcher way (preferable)
$fetcher = IniFetcher::getInstance($fileJson);
echo "Using IniFetcher: " . $fetcher::get('json.list.creditcards.amex.prefix');
Пример #9
0
	Plugin URI: https://cuado.co/
	Description: Plugin que permite manejar las ventas realizadas por MercadoLibre con varios estatus
	Version: 1.0
	Author: Pedro Caicedo
	Author URI: http://pcaicedo.com/	
*/
//Cargamos las librerias
require_once "libs/class.iniparser.php";
require_once "libs/class.gump.php";
//Cargamos los archivos INI
$parser = new IniParser(dirname(__FILE__) . '/conf/general.ini');
$parser->use_array_object = false;
//Variales globales
global $wpdb;
//acceso a BD
$config = $parser->parse();
//Conf. Generales
$validator = new GUMP();
//Validador de Datos en el server
//Tablas BD
$config['tables']['forms'] = $wpdb->prefix . "forms_ml";
$config['tables']['forms_histories'] = $wpdb->prefix . "forms_ml_histories";
function install_form_ml()
{
    global $config, $wpdb;
    $config['tables']['forms'] = $wpdb->prefix . "forms_ml";
    $config['tables']['forms_histories'] = $wpdb->prefix . "forms_ml_histories";
    $sql = "CREATE TABLE IF NOT EXISTS `{$config['tables']['forms']}` (\n\t`id_form_ml` int(10) NOT NULL AUTO_INCREMENT,\n\t`user_vat` varchar(255) COLLATE utf8_bin NOT NULL,\n\t`user_names` varchar(255) COLLATE utf8_bin NOT NULL,\n\t`user_username` varchar(50) COLLATE utf8_bin NOT NULL,\n\t`user_phone` varchar(32) COLLATE utf8_bin DEFAULT NULL,\t\n\t`user_email` varchar(100) COLLATE utf8_bin NOT NULL,\n\t`user_address` text COLLATE utf8_bin NOT NULL,\n\t`user_products` text COLLATE utf8_bin NOT NULL,\n\t`bank_date` datetime NOT NULL,\n\t`bank_type_payment` enum('DEPOSITO','TRANSFERENCIA_BS','TRANSFERENCIA_USD','MERCADOPAGO') COLLATE utf8_bin NOT NULL DEFAULT 'DEPOSITO',\n\t`bank_name` varchar(50) COLLATE utf8_bin NOT NULL,\n\t`bank_reference` varchar(20) COLLATE utf8_bin NOT NULL,\n\t`bank_mount_payment` double(10,2) DEFAULT NULL,\n\t`ship_vat` varchar(255) COLLATE utf8_bin NOT NULL,\n\t`ship_names` varchar(255) COLLATE utf8_bin NOT NULL,\n\t`ship_type` enum('ZOOM','TEALCA','PERSONAL') COLLATE utf8_bin NOT NULL DEFAULT 'ZOOM',\n\t`ship_address` text COLLATE utf8_bin NOT NULL,\n\t`ship_zp` varchar(10) COLLATE utf8_bin NOT NULL,\n\t`ship_parish` varchar(50) COLLATE utf8_bin NOT NULL,\n\t`ship_municipality` varchar(50) COLLATE utf8_bin NOT NULL,\n\t`ship_city` varchar(50) COLLATE utf8_bin NOT NULL,\n\t`ship_state` varchar(50) COLLATE utf8_bin NOT NULL,\n\t`ship_comments` text COLLATE utf8_bin NOT NULL,\n\t`ship_status_now` enum('POR_VERIFICAR','VERIFICADO','NEGADO','ENVIADO','ENTREGADO') COLLATE utf8_bin NOT NULL DEFAULT 'POR_VERIFICAR',\n\tPRIMARY KEY ( `id_form_ml` )\n\t) ;";
    /* ,
    	UNIQUE ( `bank_reference` ) */
    $wpdb->query($sql);
Пример #10
0
 protected function _getLayouts($moduleName = false, $layoutFileName = false)
 {
     try {
         if (!$moduleName) {
             $moduleName = $this->_currentModuleName;
         }
         $configDir = APPLICATION_MODULE_DIR . $moduleName . '/conf/';
         if (!$layoutFileName) {
             $layoutFileName = DEFAULT_LAYOUT_FILE_NAME . '.ini';
         } else {
             $layoutFileName = $layoutFileName . '.ini';
         }
         $layoutFileName = $configDir . $layoutFileName;
         if (is_file($layoutFileName)) {
             // get data from layouts ini file
             $data = IniParser::parse($layoutFileName, true);
         }
     } catch (Exception $ex) {
         throw new Exception($ex->getMessage());
     }
     return $data;
 }
Пример #11
0
 public static function parseMerged(array $files)
 {
     $ini = array();
     if (!empty($files)) {
         $parser = new IniParser();
         $parser->use_array_object = false;
         $ini = $parser->parse($files[0]);
         unset($files[0]);
         foreach ($files as $f) {
             $out = (array) $parser->parse($f);
             $ini = $parser->array_merge_recursive_distinct($ini, $out);
         }
     }
     return $ini;
 }
Пример #12
0
header('Content-Type: text/html; charset=UTF-8');
header('Cache-Control: no cache');
//no cache
function __autoload($className)
{
    $filename = $className . ".php";
    if (is_readable($filename)) {
        require_once $filename;
    }
}
$dir = $_SERVER['DOCUMENT_ROOT'] . '/app/';
include_once $dir . 'models/IniParser.php';
$file = $_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'configuration.ini';
$parser = new \IniParser();
$config = $parser->parse($file);
$apps = $config->app;
$wss = $config->webservice;
$configs = $config->config;
$dh = opendir($dir);
$dir_list = array($dir);
while (false !== ($filename = readdir($dh))) {
    if ($filename != "." && $filename != ".." && is_dir($dir . $filename)) {
        array_push($dir_list, $dir . $filename . "/");
    }
}
foreach ($dir_list as $dir) {
    foreach (glob($dir . "*.php") as $filename) {
        include_once $filename;
    }
}