[ Index ]
 

Code source de Dotclear 2.0-beta6

Accédez au Source d'autres logiciels libresSoutenez Angelica Josefina !

title

Body

[fermer]

/admin/ -> help.php (source)

   1  <?php
   2  # ***** BEGIN LICENSE BLOCK *****
   3  # This file is part of DotClear.
   4  # Copyright (c) 2005 Olivier Meunier and contributors. All rights
   5  # reserved.
   6  #
   7  # DotClear is free software; you can redistribute it and/or modify
   8  # it under the terms of the GNU General Public License as published by
   9  # the Free Software Foundation; either version 2 of the License, or
  10  # (at your option) any later version.
  11  # 
  12  # DotClear is distributed in the hope that it will be useful,
  13  # but WITHOUT ANY WARRANTY; without even the implied warranty of
  14  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  15  # GNU General Public License for more details.
  16  # 
  17  # You should have received a copy of the GNU General Public License
  18  # along with DotClear; if not, write to the Free Software
  19  # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  20  #
  21  # ***** END LICENSE BLOCK *****
  22  
  23  require dirname(__FILE__).'/../inc/admin/prepend.php';
  24  
  25  dcPage::check('usage,contentadmin');
  26  
  27  try
  28  {
  29      $hfile = '%s/help/%s/%s.html';
  30      
  31      $p = !empty($_GET['p']) ? $_GET['p'] : 'index';
  32      $p = preg_replace('#[./]#','',$p);
  33      
  34      $lang = $core->auth->getInfo('user_lang');
  35      $root = dirname(__FILE__);
  36      
  37      $help_file = sprintf($hfile,$root,$lang,$p);
  38      
  39      if (!file_exists($help_file)) {
  40          $help_file = sprintf($hfile,$root,'en',$p);
  41      }
  42      
  43      if (!file_exists($help_file)) {
  44          throw new Exception('Help file does not exist.');
  45      }
  46      
  47      $fc = file_get_contents($help_file);
  48      
  49      if (preg_match('|<title[^>]*?>(.*?)</title>.*<body[^>]*?>(.*?)</body>|ms',
  50          $fc,$matches))
  51      {
  52              $title = $matches[1];
  53              $page_content = $matches[2];
  54      }
  55      else
  56      {
  57          throw new Exception('No content for this file.');
  58      }
  59      
  60      # Set page title
  61      if ($p != 'index') {
  62          $page_title = '<a href="help.php?p=index">'.__('Online help').'</a> &gt; '.$title;
  63      } else {
  64          $page_title = $title;
  65      }
  66      
  67      # Change every link in content
  68      $page_content = preg_replace('|href="(.*?).html(#.*?)?"|ms','href="help.php?p=$1$2"',$page_content);
  69  }
  70  catch (Exception $e)
  71  {
  72      $title = __('error');
  73      $core->error->add($e->getMessage());
  74  }
  75  
  76  dcPage::openPopup($title);
  77  
  78  if (!empty($page_content)) {
  79      echo '<h2>'.$page_title.'</h2>';
  80      echo '<div class="help-content">'.$page_content.'</div>';
  81  }
  82  
  83  echo '<p><a href="#" onclick="window.close();">'.__('Close this window').'</a></p>';
  84  
  85  dcPage::closePopup();
  86  ?>


Généré le : Fri Feb 23 22:16:06 2007 par Balluche grâce à PHPXref 0.7