/** * Ecriture du fichier de configuration * @param array $pData le tableau des profils de log à créer * @param string $pDefault variable du profile par défaut * @return boolean si le fichier à été crée convenablement */ public function write($pData) { $generator = new CopixPHPGenerator(); $str = $generator->getPHPTags($generator->getVariableDeclaration('$_cache_types', $pData)); if ($toReturn = CopixFile::write($this->getPath(), $str)) { CopixConfig::reload(); } return $toReturn; }
/** * Ecriture du fichier de configuration * @param array $pData le tableau des handlers à créer * @return boolean si le fichier à été crée convenablement */ public function write($pData) { $generator = new CopixPHPGenerator(); $str = $generator->getPHPTags($generator->getVariableDeclaration('$_' . $this->_handlerType . '_handlers', $pData)); $file = new CopixFile(); if (($oldContent = $file->read($this->getPath())) !== false) { $file->write($this->getPath(true), $oldContent); } return $file->write($this->getPath(), $str); }
/** * Ecriture du fichier de configuration * @param array $pData le tableau des connexions à créer * @param string $pDefault variable du profile par défaut * @return boolean si le fichier à été crée convenablement */ public function write($pData, $pDefault) { $generator = new CopixPHPGenerator(); $pDefault = $pDefault == 'nodefault' ? null : substr($pDefault, 7); $str = $generator->getPHPTags($generator->getVariableDeclaration('$_db_profiles', $pData) . "\n\n" . $generator->getVariableDeclaration('$_db_default_profile', $pDefault)); if ($toReturn = CopixFile::write($this->getPath(), $str)) { CopixConfig::reload(); } return $toReturn; }
/** * Sauvegarde la valeur des paramètres dans un fichier PHP * @return void */ private function _writeInPHPCache() { $generator = new CopixPHPGenerator(); $_resources = $generator->getPHPTags($generator->getVariableDeclaration('$_load', $this->_values)); CopixFile::write($this->_getCompiledFileName(), $_resources); }
/** * Loads the resources for a given lang/country. * will automatically loads the default (lang lang) * @param string $lang the language * @param string $country the country */ private function _loadLocales($lang, $country) { $this->_loadedCountries[] = $country; //file names for different cases. $bundleLang = $this->_fic->fileName . '_' . $lang . '.properties'; $bundleCountry = $this->_fic->fileName . '_' . $lang . '_' . $country . '.properties'; $path = $this->_fic->getPath(COPIX_RESOURCES_DIR); $toLoad[] = array('file' => $path . $this->_fic->fileName . '.properties', 'lang' => 'default', 'country' => 'DEFAULT'); $toLoad[] = array('file' => $path . $bundleLang, 'lang' => $lang, 'country' => strtoupper($lang)); $toLoad[] = array('file' => $path . $bundleCountry, 'lang' => $lang, 'country' => $country); // check if we have a compiled version of the ressources $_compileResourceId = $this->_getCompileId($lang, $country); if (($_compileResourceIdTime = @filemtime($_compileResourceId)) !== false) { $config = CopixConfig::instance(); if ($config->compile_check || $config->force_compile) { if ($config->force_compile) { //force compile, compiled files are never assumed to be ok. $okcompile = false; } else { // on verifie que les fichiers de ressources sont plus anciens que la version compilée $compiledate = $_compileResourceIdTime; $okcompile = true; //Compiled files are assumed to be ok. foreach ($toLoad as $infos) { if (($fileTime = @filemtime($infos['file'])) !== false) { if (!isset($fileTime) || $fileTime > $compiledate) { $okcompile = false; break; } } } } } else { //no compile check, it's ok then $okcompile = true; } if ($okcompile) { $_loaded = array(); include $_compileResourceId; //va charger _loaded $this->_messages[$country] = $_loaded; //everything was loaded. return; } } //loads the founded resources. foreach ($toLoad as $infos) { $this->_loadResources($infos['file'], $country); } //we want to use the PHP compilation of the resources. $generator = new CopixPHPGenerator(); $_resources = $generator->getPHPTags($generator->getVariableDeclaration('$_loaded', isset($this->_messages[$country]) ? $this->_messages[$country] : array())); CopixFile::write($_compileResourceId, $_resources); }
/** * Ecriture d'un fichier PHP dans lequel existera un tableau associatif (nommodule=>chemin) * @param array $arModules le tableau que l'on souhaites crire. */ private static function _writeInPHPCache($arModules) { $generator = new CopixPHPGenerator(); $PHPString = $generator->getPHPTags($generator->getVariableDeclaration('$arModules', $arModules)); CopixFile::write(self::_getCompiledFileName(), $PHPString); }
/** * Ecriture du code PHP pour les listeners. * @param array $pEventsInfo Tableau des informations sur les événements (qui écoute quoi) */ private function _writePHPCode($pEventsInfos) { $generator = new CopixPHPGenerator(); $_resources = $generator->getPHPTags($generator->getVariableDeclaration('$eventList', $pEventsInfos)); //writing the PHP code to the disk CopixFile::write($this->_compiledFileName(), $_resources); }
/** * Fonction qui retourne l'identifiant du DAO * @return string */ private function _generatePHP4GetDAOId() { $daoId = $this->_definition->getDAOId(); $result = "public function getDAOId () {\n"; $generator = new CopixPHPGenerator(); $result .= $generator->getVariableDeclaration('$daoId', $daoId); $result .= "return \$daoId;\n"; $result .= '}'; return $result; }