1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203
| <?php
/*
*/
// Constantes principales...
define("HOME_OS_DIR","C:/AppServ");
define("WEBAPP_DIR",HOME_OS_DIR."/www/zfProject");
define("MODEL_DIR",WEBAPP_DIR."/application/models");
define("ROOT_URL","http://zfproject.localhost/zfProject");
define("BASE_URL","/");
define("ZEND_FRAMEWORK_DIR",HOME_OS_DIR."/dev/ZendFramework-1.9.2/library");
define("LOG_FILE",HOME_OS_DIR."/logs/zend.log");
define("PLUGINS_DIR",WEBAPP_DIR."/application/plugins");
define("VALID_DIR",WEBAPP_DIR."/application/MyValid");
define("CGI_DIR",WEBAPP_DIR."/cgi");
set_include_path(
".".PATH_SEPARATOR.
MODEL_DIR.PATH_SEPARATOR.
ZEND_FRAMEWORK_DIR.PATH_SEPARATOR.PLUGINS_DIR.PATH_SEPARATOR.
VALID_DIR.PATH_SEPARATOR.
get_include_path()
);
/*Pour pouvoir loader des classes Ó la Zend*/
require_once 'Zend/Loader.php';
// ... Comme par exemple le registre
Zend_Loader::loadClass("Zend_Registry");
// Initialisation de la log
Zend_Loader::loadClass('Zend_Log');
Zend_Loader::loadClass('Zend_Log_Writer_Stream');
$logger = new Zend_Log();
$logger->addWriter(new Zend_Log_Writer_Stream(LOG_FILE));
Zend_Registry::set("logger",$logger);
Zend_Registry::get("logger")->debug("** IP ". $_SERVER["REMOTE_ADDR"] . "** URI=".$_SERVER["REQUEST_URI"]);
// Controller init
Zend_Loader::loadClass('Zend_Controller_Front');
Zend_Loader::loadClass('Zend_Controller_Router_Rewrite');
$controller = Zend_Controller_Front::getInstance();
$router = new Zend_Controller_Router_Rewrite();
$cmtRoute = new Zend_Controller_Router_Route(
"comment/:action/:comment",
array( "comment"=>null,
"controller"=>"comment",
"action"=>"display"
)
);
$router->addRoute("comment",$cmtRoute);
$controller->setBaseUrl(BASE_URL);
$controller->setRouter($router);
//Ici on indique le rÚpertoire des controlleurs
$controller->setControllerDirectory('application/controllers');
$controller->throwExceptions(true);
// initialisation du viewRenderer
Zend_Loader::loadClass("Zend_View");
$view = new Zend_View();
$viewRenderer = Zend_Controller_Action_HelperBroker::getStaticHelper('viewRenderer');
$viewRenderer->setView($view)
->setViewSuffix('phtml');
// chargement de la configuration
Zend_Loader::loadClass('Zend_Config_Ini');
$config = new Zend_Config_Ini('application/configs/application.ini', 'general');
$registry = Zend_Registry::getInstance();
$registry->set('config', $config);
// Mise en place de la db
Zend_Loader::loadClass("Zend_Db");
Zend_Loader::loadClass("Zend_Db_Table");
$db = Zend_Db::factory($config->db->adapter, $config->db->config->toArray());
Zend_Db_Table::setDefaultAdapter($db);
Zend_Registry::set('dbAdapter', $db);
//Chargement de la classe d'authentification
Zend_Loader::loadClass('Zend_Auth');
$auth = Zend_Auth::getInstance();
// CrÚation de l'objet Acl
Zend_Loader::loadClass('Zend_Acl');
Zend_Loader::loadClass('Zend_Acl_Role');
Zend_Loader::loadClass('Zend_Acl_Resource');
Zend_Loader::loadClass('PluginAuth');
Zend_Loader::loadClass('MyAcl');
$acl = new MyAcl($auth);
$controller->registerPlugin(new PluginAuth($auth, $acl));
//Ajout VLB
/*$acl = new Zend_Acl();
$acl->addRole(new Zend_Acl_Role('invite'))
->addRole(new Zend_Acl_Role('membre'))
->addRole(new Zend_Acl_Role('admin'));
$parents = array('invite', 'membre', 'admin');
$acl->addRole(new Zend_Acl_Role('someUser'), $parents);
$acl->add(new Zend_Acl_Resource('error'));
$acl->add(new Zend_Acl_Resource('index'));
$acl->add(new Zend_Acl_Resource('com'));
$acl->add(new Zend_Acl_Resource('dp'));
$acl->add(new Zend_Acl_Resource('pay'));
$acl->add(new Zend_Acl_Resource('retourpaybox'));
$acl->add(new Zend_Acl_Resource('user'));
$acl->add(new Zend_Acl_Resource('auth'));
$acl->add(new Zend_Acl_Resource('xport'));
$acl->add(new Zend_Acl_Resource('msg'));
$acl->allow('admin');
*/
/**
* TODO Gestion des profils
*/
/**
* Configuration par d+faut de Zend_Mail
*/
require_once 'Zend/Mail.php';
require_once 'Zend/Mail/Transport/Smtp.php';
$cfg = array('port' => $config->email->port,
'auth' => $config->email->auth,
'username' => $config->email->username,
'password' => $config->email->password,
'ssl' => $config->email->ssl
);
define("MAIL_FROM",$config->email->mailfrom);
$transport = new Zend_Mail_Transport_Smtp($config->email->smtp, $cfg);
Zend_Mail::setDefaultTransport($transport);
/*
* Configuration par dÚfaut du translator de Zend_Form pour avoir les messages d'erreur en Franþais
*/
Zend_Loader::loadClass('Zend_Form');
Zend_Loader::loadClass('Zend_Translate');
$french = array(
'notAlnum' => "'%value%' ne contient pas que des lettres et/ou des chiffres.",
'notAlpha' => "'%value%' ne contient pas que des lettres.",
'notBetween' => "'%value%' n'est pas compris entre %min% et %max% inclus.",
'notBetweenStrict' => "'%value%' n'est pas compris entre %min% et %max% exclus.",
'dateNotYYYY-MM-DD'=> "'%value%' n'est pas une date au format AAAA-MM-JJ (exemple : 2000-12-31).",
'dateInvalid' => "'%value%' n'est pas une date valide.",
'dateFalseFormat' => "'%value%' n'est pas une date valide au format JJ/MM/AAAA (exemple : 31/12/2000).",
'notDigits' => "'%value%' ne contient pas que des chiffres.",
'emailAddressInvalid' => "'%value%' n'est pas une adresse mail valide selon le format adresse@domaine.",
'emailAddressInvalidHostname' => "'%hostname%' n'est pas un domaine valide pour l'adresse mail '%value%'.",
'emailAddressInvalidMxRecord' => "'%hostname%' n'accepte pas l'adresse mail '%value%'.",
'emailAddressDotAtom' => "'%localPart%' ne respecte pas le format dot-atom.",
'emailAddressQuotedString' => "'%localPart%' ne respecte pas le format quoted-string.",
'emailAddressInvalidLocalPart' => "'%localPart%' n'est pas une adresse individuelle valide.",
'notFloat' => "'%value%' n'est pas un nombre décimal.",
'notGreaterThan' => "'%value%' n'est pas strictement supérieur à '%min%'.",
'notInt'=> "'%value%' n'est pas un nombre entier.",
'notLessThan' => "'%value%' n'est pas strictement inférieur à '%max%'.",
'isEmpty' => "Ce champ est vide : vous devez le compléter.",
'stringEmpty' => "Ce champ est vide : vous devez le compléter.",
'regexNotMatch' => "'%value%' ne respecte pas le format '%pattern%'.",
'stringLengthTooShort' => "'%value%' fait moins de %min% caractères.",
'stringLengthTooLong' => "'%value%' fait plus de %max% caractères.",
'ibanNotSupported' => "'%value%' est un IBAN provenant d'un pays inconnu",
'ibanFalseFormat' => "'%value%' ne correspond pas au format en vigueur pour le pays concerné",
'ibanCheckFailed' => "'%value%' ne passe pas le test de la somme de contrôle. Veuillez vérifier votre saisie",
'fileFilesSizeTooBig' => "La taille de fichier maximale autorisée est de '%max%', cependant '%size%' ont été détectés",
'fileFilesSizeTooSmall' =>"La taille de fichier minimale autorisée est de '%min%', cependant '%size%' ont été détectés",
'fileFilesSizeNotReadable' => "Impossible de lire le fichier"
);
$translate = new Zend_Translate('array', $french, 'fr');
Zend_Form::setDefaultTranslator($translate);
Zend_Loader::loadClass('Zend_Paginator');
Zend_Loader::loadClass('Zend_View_Helper_PaginationControl');
Zend_Paginator::setDefaultScrollingStyle('Sliding');
Zend_View_Helper_PaginationControl::setDefaultViewPartial('my_pagination_control.phtml');
//Zend_Auth::getInstance()->clearIdentity();
// call dispatcher
$controller->dispatch();
?> |
Partager