147 lines
3.9 KiB
PHP
147 lines
3.9 KiB
PHP
<?php
|
|
class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
|
|
{
|
|
//Initialisation global des paramètres de vue
|
|
protected function _initViewSettings()
|
|
{
|
|
$this->bootstrap('view');
|
|
$view = $this->getResource('view');
|
|
$view->setEncoding('UTF-8');
|
|
$view->doctype('XHTML1_STRICT');
|
|
$view->headMeta()
|
|
->appendHttpEquiv('Content-Type', 'text/html; charset=UTF-8')
|
|
->appendHttpEquiv('Content-Language', 'fr-FR');
|
|
$view->headLink()
|
|
->appendStylesheet('/styles/reset.css', 'all')
|
|
->appendStylesheet('/styles/main.css', 'all');
|
|
$view->headScript()->appendFile('/scripts/jquery.js', 'text/javascript');
|
|
$view->headScript()->appendFile('/scripts/scripts.js', 'text/javascript');
|
|
$view->headTitle()->setSeparator(' - ');
|
|
$view->headTitle('WebService Scores & Decisions');
|
|
}
|
|
|
|
//Initialisation global des paramètres de log
|
|
protected function _initLogging()
|
|
{
|
|
require_once 'Zend/Log.php';
|
|
require_once 'Zend/Mail.php';
|
|
$WsLogger = new Zend_Log();
|
|
$WsFileWriter = new Zend_Log_Writer_Stream(LOG_PATH.'/wsentreprise.log');
|
|
$WsFileWriter->addFilter(Zend_Log::INFO);
|
|
$WsLogger->addWriter($WsFileWriter);
|
|
if (APPLICATION_ENV == 'production')
|
|
{
|
|
$WsMail = new Zend_Mail();
|
|
$WsMail->setFrom('production@scores-decisions.com')
|
|
->addTo('mricois@scores-decisions.com');
|
|
$WsMailWriter = new Zend_Log_Writer_Mail($WsMail);
|
|
$WsMailWriter->setSubjectPrependText('ERREUR');
|
|
$WsMailWriter->addFilter(Zend_Log::ERR);
|
|
$WsLogger->addWriter($WsMailWriter);
|
|
}
|
|
Zend_Registry::set('WsLogger', $WsLogger);
|
|
}
|
|
|
|
protected function _initNavigation()
|
|
{
|
|
$view = $this->bootstrap('layout')->getResource('layout')->getView();
|
|
|
|
//@todo : gérer les versions et les clients
|
|
|
|
$menu = array(
|
|
array(
|
|
'label' => 'Accueil',
|
|
'controller' => 'index',
|
|
'action' => 'index',
|
|
),
|
|
array(
|
|
'label' => 'Documentation',
|
|
'controller' => 'documentation',
|
|
'action' => 'index',
|
|
'pages' => array(
|
|
array(
|
|
'label' => 'Entreprise',
|
|
'controller' => 'documentation',
|
|
'action' => 'index',
|
|
),
|
|
array(
|
|
'label' => 'Code erreurs/messages',
|
|
'controller' => 'documentation',
|
|
'action' => 'erreur',
|
|
),
|
|
array(
|
|
'label' => 'Exemples',
|
|
'controller' => 'documentation',
|
|
'action' => 'exemples',
|
|
),
|
|
),
|
|
),
|
|
array(
|
|
'label' => 'Démonstration',
|
|
'controller' => 'demo',
|
|
'action' => 'index',
|
|
),
|
|
);
|
|
$view->navigation(new Zend_Navigation($menu));
|
|
}
|
|
|
|
protected function _initDb(){}
|
|
|
|
protected function _initRouter()
|
|
{
|
|
$this->bootstrap('frontController');
|
|
$front = $this->getResource('frontController');
|
|
$router = $front->getRouter();
|
|
|
|
//Route pour WS Entreprise
|
|
$route = new Zend_Controller_Router_Route('entreprise/:version', array(
|
|
'controller' => 'service',
|
|
'action' => 'index',
|
|
'service' => 'entreprise',
|
|
'version' => '',
|
|
));
|
|
$router->addRoute('entreprise', $route);
|
|
|
|
//Route pour WS Interne
|
|
$route = new Zend_Controller_Router_Route('interne/:version', array(
|
|
'controller' => 'service',
|
|
'action' => 'index',
|
|
'service' => 'interne',
|
|
'version' => '',
|
|
));
|
|
$router->addRoute('interne', $route);
|
|
|
|
//Route pour WS Clients
|
|
$route = new Zend_Controller_Router_Route('clients/:client/:version', array(
|
|
'controller' => 'service',
|
|
'action' => 'index',
|
|
'service' => 'clients',
|
|
'client' => '',
|
|
'version' => ''
|
|
));
|
|
$router->addRoute('client', $route);
|
|
|
|
return $router;
|
|
}
|
|
|
|
protected function _initWsDebug()
|
|
{
|
|
$autoloader = Zend_Loader_Autoloader::getInstance();
|
|
$autoloader->registerNamespace('WsDebug');
|
|
|
|
$options = array(
|
|
'plugins' => array(
|
|
'Exception',
|
|
),
|
|
);
|
|
|
|
$debug = new WsDebug_Controller_Plugin_Debug($options);
|
|
|
|
$this->bootstrap('frontController');
|
|
$frontController = $this->getResource('frontController');
|
|
$frontController->registerPlugin($debug);
|
|
}
|
|
|
|
}
|
|
|