本文整理汇总了PHP中CopixConfig::instance方法的典型用法代码示例。如果您正苦于以下问题:PHP CopixConfig::instance方法的具体用法?PHP CopixConfig::instance怎么用?PHP CopixConfig::instance使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CopixConfig
的用法示例。
在下文中一共展示了CopixConfig::instance方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: beforeAction
/**
* On s'assure que pour ces tâche ce soit bien un administrateur
*/
public function beforeAction()
{
CopixAuth::getCurrentUser()->assertCredential('basic:admin');
if (!CopixConfig::instance()->copixauth_isRegisteredCredentialHandler('auth|dbdynamiccredentialhandler')) {
throw new CopixException(_i18n('auth.dynamicHandlerNotRegister'));
}
}
示例2: testMain
public function testMain()
{
//compte le nombre de profils au départ
$nbStart = count(CopixConfig::instance()->copixdb_getProfiles());
//vérifie que l'on arrive bien à définir un profil
CopixConfig::instance()->copixdb_defineProfile('test', 'pdo_mysql:host=localhost;dbname=copix_3_beta', 'root', '');
$this->assertNotNull(CopixConfig::instance()->copixdb_getProfile('test'));
$this->assertEquals($nbStart + 1, count(CopixConfig::instance()->copixdb_getProfiles()));
$this->assertEquals(CopixConfig::instance()->copixdb_getProfile('test')->getName(), 'test');
$parts = CopixConfig::instance()->copixdb_getProfile('test')->getConnectionStringParts();
$this->assertEquals('localhost', $parts['host']);
$this->assertEquals('copix_3_beta', $parts['dbname']);
$this->assertEquals('pdo_mysql', CopixConfig::instance()->copixdb_getProfile('test')->getDriverName());
$this->assertEquals(array(), CopixConfig::instance()->copixdb_getProfile('test')->getOptions());
$this->assertEquals('mysql', CopixConfig::instance()->copixdb_getProfile('test')->getDatabase());
CopixConfig::instance()->copixdb_getProfile('test')->setOptions(array('FOO' => 'FOOVALUE'));
$this->assertEquals(array('FOO' => 'FOOVALUE'), CopixConfig::instance()->copixdb_getProfile('test')->getOptions());
CopixConfig::instance()->copixdb_getProfile('test')->setOptions(array('FOO2' => 'FOOVALUE2'));
$this->assertEquals(array('FOO' => 'FOOVALUE', 'FOO2' => 'FOOVALUE2'), CopixConfig::instance()->copixdb_getProfile('test')->getOptions());
CopixConfig::instance()->copixdb_getProfile('test')->clearOptions();
$this->assertEquals(array(), CopixConfig::instance()->copixdb_getProfile('test')->getOptions());
//vérifie que l'on arrive à ajouter encore un 2ème profil
CopixConfig::instance()->copixdb_defineProfile('test2', 'pdo_mysql:host=localhost;dbname=copix_3_beta', 'root', '');
$this->assertNotNull(CopixConfig::instance()->copixdb_getProfile('test2'));
$this->assertEquals($nbStart + 2, count(CopixConfig::instance()->copixdb_getProfiles()));
$this->assertEquals(CopixConfig::instance()->copixdb_getProfile('test2')->getName(), 'test2');
}
示例3: home
/**
* Accueil des stats
*
* @author Christophe Beyer <cbeyer@cap-tic.fr>
* @since 2007/03/19
*/
public function home()
{
if (!Admin::canAdmin()) {
return CopixActionGroup::process('genericTools|Messages::getError', array('message' => CopixI18N::get('kernel|kernel.error.noRights'), 'back' => CopixUrl::get()));
}
$tpl = new CopixTpl();
$tpl->assign('TITLE_PAGE', CopixI18N::get('sysutils|admin.menu.stats'));
$tpl->assign('MENU', Admin::getMenu('stats'));
$tplStats = new CopixTpl();
$modules = Kernel::getAllModules();
$tab = array();
foreach ($modules as $mod_val) {
$arModulesPath = CopixConfig::instance()->arModulesPath;
foreach ($arModulesPath as $modulePath) {
$class_file = $modulePath . $mod_val . '/' . COPIX_CLASSES_DIR . 'kernel' . $mod_val . '.class.php';
if (!file_exists($class_file)) {
continue;
}
$module_class =& CopixClassesFactory::Create($mod_val . '|Kernel' . $mod_val);
//print_r($module_class);
if (!is_callable(array($module_class, 'getStatsRoot'))) {
continue;
}
//$classeModule = CopixClassesFactory::create("$label|Kernel$label");
$tab[$mod_val]['module_nom'] = Kernel::Code2Name('mod_' . $mod_val);
$tab[$mod_val]['stats'] = $module_class->getStatsRoot();
}
}
//print_r($tab);
$tplStats->assign('tab', $tab);
$tpl->assign('MAIN', $tplStats->fetch('sysutils|stats.modules.tpl'));
return new CopixActionReturn(COPIX_AR_DISPLAY, $tpl);
}
示例4: start
/**
* Demarrage de la session
* @param string $pId l'identifiant de la session,
* utile si vous avez plusieurs copix sur un même serveur
* et que vous ne souhaitez pas partager les sessions
*/
public static function start($pId = null)
{
if ($pId === null) {
$pId = CopixConfig::instance()->sessionName;
}
session_start($pId);
}
示例5: _createContent
/**
* Création du contenu de la page
*/
public function _createContent(&$toReturn)
{
$tpl = new CopixTpl();
$tpl->assign('arModulesPath', CopixConfig::instance()->arModulesPath);
$tpl->assign('arModules', $this->_getModuleOrderByDescription());
$toReturn = $tpl->fetch('modules.list.tpl');
}
示例6: processTest
public function processTest()
{
if (!Kernel::isAdmin()) {
return $this->error('rssmix.noRight', true, '||');
}
try {
$feed = $this->service->getRssFeed($this->request('url'), 2);
echo '<p class="mesgSuccess">' . $this->i18n('rssmix.feedValid') . '</p>';
foreach ($feed as $item) {
echo '<h4>' . $item['title'] . '</h4>';
echo '<p>' . $item['content'] . '</p>';
echo '<hr />';
}
} catch (Exception $e) {
$config = CopixConfig::instance();
echo '<p class="mesgError">' . $this->i18n('rssmix.feedNoValid') . '</p>';
if ($config->getMode() == CopixConfig::DEVEL) {
echo '<div class="content-panel"><h3>Debug informations (only in devel)</h3>
<p> url : ' . $this->request('url') . '</p>
<p>' . $e->getMessage() . '</p>
<p><pre>' . $e->getFile() . ' : ' . $e->getLine() . '</pre></p>
<p><pre>' . $e->getTraceAsString() . '</pre></p>
</div>';
}
}
return _arNone();
}
示例7: CopixCoordination
/**
* It set many properties of the object, get all GET and POST parameters, and start session.
* @param string $configFile chemin du fichier de configuration du projet
*/
function CopixCoordination($configFile)
{
// register itself in the global variable.
$GLOBALS['COPIX']['COORD'] =& $this;
// creating CopixConfig Object and includes the asked configuration file.
$GLOBALS['COPIX']['CONFIG'] =& CopixConfig::instance();
require $configFile;
/**
* EXPERIMENTAL : support des URLs significatifs
*/
$scriptNameAndPath = $_SERVER['SCRIPT_NAME'];
//condidering : http://mysite.com/subdir/index.php/mypath/myaction?myparams=myvalues
//following is subdir/
$GLOBALS['COPIX']['CONFIG']->significant_url_script_path = substr($scriptNameAndPath, 0, strrpos($scriptNameAndPath, '/')) . '/';
//following is index.php
$GLOBALS['COPIX']['CONFIG']->significant_url_script_name = substr($scriptNameAndPath, strrpos($scriptNameAndPath, '/') + 1);
//following is mysite.com
$GLOBALS['COPIX']['CONFIG']->significant_url_domain = $_SERVER['HTTP_HOST'];
//following is http://mysite.com/subdir/
$GLOBALS['COPIX']['CONFIG']->significant_url_basepath = 'http://' . $GLOBALS['COPIX']['CONFIG']->significant_url_domain . $GLOBALS['COPIX']['CONFIG']->significant_url_script_path;
//following is index.php/mypath/myaction
if (isset($_SERVER['PATH_INFO'])) {
$pathinfo = $_SERVER['PATH_INFO'];
$pos = strpos($_SERVER['PATH_INFO'], $GLOBALS['COPIX']['CONFIG']->significant_url_script_path . $GLOBALS['COPIX']['CONFIG']->significant_url_script_name);
if ($pos !== false) {
//under IIS, we may get as PATH_INFO /subdir/index.php/mypath/myaction (wich is incorrect)
$pathinfo = substr($_SERVER['PATH_INFO'], strlen($GLOBALS['COPIX']['CONFIG']->significant_url_script_path . $GLOBALS['COPIX']['CONFIG']->significant_url_script_name));
}
} else {
$pathinfo = substr($_SERVER["PHP_SELF"], strlen($_SERVER['SCRIPT_NAME']));
}
$GLOBALS['COPIX']['CONFIG']->significant_url_path_info = $pathinfo;
/**
* Fin de "en développement / Test"
*/
if ($GLOBALS['COPIX']['CONFIG']->errorHandlerOn) {
$ficEH = COPIX_CONFIG_PATH . $GLOBALS['COPIX']['CONFIG']->errorHandlerConfigFile;
if (file_exists($ficEH)) {
require_once COPIX_CORE_PATH . 'CopixErrorHandler.lib.php';
$GLOBALS['COPIX']['CONFIG']->errorHandler = new CopixErrorHandlerConfig();
require $ficEH;
set_error_handler('CopixErrorHandler');
}
}
// registering and creating plugins.
foreach ($GLOBALS['COPIX']['CONFIG']->plugins as $name => $conf) {
// pour create, on ne donne pas $conf, car le foreach fait une copie du tableau plugins pour le parcourir
// et cela ne prend donc pas en compte les eventuelles modifs effectuées dans plugins par un plugin,
// notament dans debug, si celui ci précise un fichier de conf spécifique
if ($plug =& CopixPluginFactory::create($name, $GLOBALS['COPIX']['CONFIG']->plugins[$name])) {
$this->plugins[strtolower($name)] =& $plug;
}
}
$this->url =& new CopixUrl($_SERVER['SCRIPT_NAME'], $_GET, $GLOBALS['COPIX']['CONFIG']->significant_url_path_info);
$this->vars = CopixUrl::parse($GLOBALS['COPIX']['CONFIG']->significant_url_path_info, false, true);
// do what we need for each plugin before starting the session
$this->_beforeSessionStart();
session_start();
}
示例8: testCopixObject
public function testCopixObject()
{
//on test que les objets autoloadés Copix ne soient pas pris en charge
$element = new CopixSessionObject(CopixConfig::instance());
$serialized = serialize($element);
$elementBack = unserialize($serialized);
//si ça ne génère pas d'erreurs, c'est ok
}
示例9: beforeAction
/**
* On protège la page avec les droits d'administration
*/
public function beforeAction()
{
//On souhaite, pour éviter tout problème, tester explicitement les droits.
//Cette volontée de tester explicitement les droits est pour éviter tout problème
//de conflits avec les écrans de modification des handlers
CopixConfig::instance()->copixauth_cache = false;
_currentUser()->assertCredential('basic:admin');
}
示例10: testParse
public function testParse()
{
$testUrl = "test.php?var=value";
CopixConfig::instance()->significant_url_mode = 'default';
$this->assertContains("value", CopixUrl::parse($testUrl, true));
CopixConfig::instance()->significant_url_mode = 'prepend';
$this->assertContains("value", CopixUrl::parse($testUrl, true));
}
示例11: _createContent
public function _createContent(&$toReturn)
{
$tpl = new CopixTpl();
$kernel = _class("kernel");
$toReturn = "";
$arModulesPath = CopixConfig::instance()->arModulesPath;
$display = false;
foreach ($arModulesPath as $modulePath) {
if (file_exists(COPIX_PROJECT_PATH . "themes/" . $kernel->getTheme() . "/kernel/footer.tpl")) {
$tpl_file = COPIX_PROJECT_PATH . "themes/" . $kernel->getTheme() . "/kernel/footer.tpl";
} else {
$tpl_file = $modulePath . 'kernel/templates/footer.tpl';
}
if (!file_exists($tpl_file)) {
continue;
}
$display = true;
// Récupération des infos de géolocalisation.
$whereami = Kernel::whereAmI();
if (isset($whereami['BU_GRVILLE'])) {
$tpl->assign('grville_id', $whereami['BU_GRVILLE']['id']);
$tpl->assign('grville_nom', $whereami['BU_GRVILLE']['nom']);
}
if (isset($whereami['BU_VILLE'])) {
$tpl->assign('ville_id', $whereami['BU_VILLE']['id']);
$tpl->assign('ville_nom', $whereami['BU_VILLE']['nom']);
}
if (isset($whereami['BU_ECOLE'])) {
$tpl->assign('ecole_id', $whereami['BU_ECOLE']['id']);
$tpl->assign('ecole_nom', $whereami['BU_ECOLE']['nom']);
}
if (isset($whereami['BU_CLASSE'])) {
$tpl->assign('classe_id', $whereami['BU_CLASSE']['id']);
$tpl->assign('classe_nom', $whereami['BU_CLASSE']['nom']);
}
// Récupération des valeurs d'URL.
if ($module = CopixRequest::get('module')) {
$tpl->assign('module', $module);
}
if ($action = CopixRequest::get('action')) {
$tpl->assign('action', $action);
}
// Récupération des valeurs de sessions (personne).
if (_currentUser()->getExtra('type')) {
$tpl->assign('user_type', _currentUser()->getExtra('type'));
$tpl->assign('user_id', _currentUser()->getExtra('id'));
}
}
// Si le fichier de template n'existe pas, pas d'erreur.
if ($display) {
$toReturn = $tpl->fetch('kernel|footer.tpl');
}
return true;
}
示例12: beforeProcess
public function beforeProcess(&$pExecParams)
{
if ($theme = $this->config->getThemeFor(CopixRequest::get('module'))) {
CopixTpl::setTheme($theme);
}
//Ajout d'une gestion de tpl par thème
$config = CopixConfig::instance();
$theme = CopixTpl::getThemeInformations(CopixTpl::getTheme());
if ($theme->tpl != null) {
$config->mainTemplate = $theme->tpl;
}
}
示例13: beforeProcess
public function beforeProcess()
{
if (($theme = CopixAJAX::getSession()->get('currentTheme')) != null) {
CopixTpl::setTheme($theme);
//Ajout d'une gestion de tpl par thème
$config = CopixConfig::instance();
$theme = CopixTpl::getThemeInformations(CopixTpl::getTheme());
if ($theme->tpl != null) {
$config->mainTemplate = $theme->tpl;
}
}
}
示例14: isValidDefaultDatabase
/**
* Test si une base par défaut est configuré
*
* @return boolean
*/
public function isValidDefaultDatabase()
{
try {
$profilName = CopixConfig::instance()->copixdb_getDefaultProfileName();
if ($profilName === null) {
return false;
}
$ct = CopixDb::getConnection($profilName);
} catch (Exception $e) {
return false;
}
return true;
}
示例15: testConnection
/**
* On va tester les connexions définies dans l'application
*/
public function testConnection()
{
foreach (CopixConfig::instance()->copixdb_getProfiles() as $name) {
try {
CopixDB::getConnection($name);
$this->assertTrue(true);
//ok
} catch (Exception $exception) {
$this->assertTrue(false);
//n'a pas fonctionné
}
}
}