Source for file check_install.zone.php

Documentation is available at check_install.zone.php

  1. <?php
  2. /**
  3. @package    jelix-modules
  4. @subpackage jelix
  5. @author     Bastien Jaillot
  6. @contributor Laurent Jouanneau
  7. @copyright  2008 Bastien Jaillot
  8. @licence    http://www.gnu.org/licenses/gpl.html GNU General Public Licence, see LICENCE file
  9. */
  10.  
  11. include (JELIX_LIB_CORE_PATH.'jInstallChecker.class.php');
  12.  
  13. /**
  14.  * an HTML reporter for jInstallChecker
  15.  * @package jelix
  16.  */
  17. class checkZoneInstallReporter implements jIInstallCheckReporter {
  18.     public $trace = '';
  19.     protected $list='';
  20.     function start(){
  21.     }
  22.     function showError($message){
  23.         $this->list .= '<li class="checkerror">'.htmlspecialchars($message).'</li>';
  24.     }
  25.     function showWarning($message){
  26.         $this->list .= '<li class="checkwarning">'.htmlspecialchars($message).'</li>';
  27.  
  28.     }
  29.     function showOk($message){
  30.         // $this->list .= '<li class="checkok">'.htmlspecialchars($message).'</li>';
  31.  
  32.     }
  33.     function showNotice($message){
  34.         $this->list .= '<li class="checknotice">'.htmlspecialchars($message).'</li>';
  35.  
  36.     }
  37.     function end($checker){
  38.         if($this->list !='')
  39.             $this->trace = '<ul class="checkresults">'.$this->list.'</ul>';
  40.  
  41.         $this->trace .= '<div class="results">';
  42.         if($checker->nbError){
  43.             $this->trace .= ' '.$checker->nbError$checker->messages->get( ($checker->nbError 1?'number.errors':'number.error'));
  44.         }
  45.         if($checker->nbWarning){
  46.             $this->trace .= ' '.$checker->nbWarning$checker->messages->get(($checker->nbWarning 1?'number.warnings':'number.warning'));
  47.         }
  48.         if($checker->nbNotice){
  49.             $this->trace .= ' '.$checker->nbNotice$checker->messages->get(($checker->nbNotice 1?'number.notices':'number.notice'));
  50.         }
  51.  
  52.         if($checker->nbError){
  53.            $this->trace .= '<p>'.$checker->messages->get(($checker->nbError 1?'conclusion.errors':'conclusion.error')).'</p>';
  54.         }else  if($checker->nbWarning){
  55.             $this->trace .= '<p>'.$checker->messages->get(($checker->nbWarning 1?'conclusion.warnings':'conclusion.warning')).'</p>';
  56.         }else  if($checker->nbNotice){
  57.             $this->trace .= '<p>'.$checker->messages->get(($checker->nbNotice 1?'conclusion.notices':'conclusion.notice')).'</p>';
  58.         }else{
  59.             $this->trace .= '<p>'.$checker->messages->get('conclusion.ok').'</p>';
  60.         }
  61.         $this->trace .= "</div>";
  62.     }
  63. }
  64.  
  65. /**
  66.  * a zone to display a default start page with results of the installation check
  67.  * @package jelix
  68.  */
  69. class check_installZone extends jZone {
  70.  
  71.     protected $_tplname='check_install';
  72.  
  73.     protected function _prepareTpl({
  74.         $lang $GLOBALS['gJConfig']->locale;
  75.         if(!$this->getParam('no_lang_check')) {
  76.             $languages explode(','$_SERVER['HTTP_ACCEPT_LANGUAGE']);
  77.             foreach($languages as $bl){
  78.                 if(preg_match("/^([a-zA-Z]{2})(?:[-_]([a-zA-Z]{2}))?(;q=[0-9]\\.[0-9])?$/",$bl,$match)){
  79.                     if(isset($match[2]))
  80.                         $lang strtolower($match[1]).'_'.strtoupper($match[2]);
  81.                     else
  82.                         $lang strtolower($match[1]).'_'.strtoupper($match[1]);
  83.                     break;
  84.                 }
  85.             }
  86.             if($lang!='fr_FR' && $lang != 'en_EN' && $lang != 'en_US')
  87.                 $lang 'en_EN';
  88.             $GLOBALS['gJConfig']->locale $lang;
  89.         }
  90.  
  91.         $reporter new checkZoneInstallReporter();
  92.         $check new jInstallCheck($reporter$lang);
  93.         $check->run();
  94.         $this->_tpl->assign('wwwpath'JELIX_APP_WWW_PATH);
  95.         $this->_tpl->assign('configpath'JELIX_APP_CONFIG_PATH);
  96.         $this->_tpl->assign('check',$reporter->trace);
  97.    }
  98. }

Documentation generated on Wed, 07 Sep 2011 13:46:28 +0200 by phpDocumentor 1.4.3