Code

Added a seperate scroll function for testing
[gosa.git] / html / helpviewer.php
index 93a3b7d6955c53003a45694ffbd01cd70176479b..511dc06676e4806f08294af1e238d8740a19ac0f 100644 (file)
@@ -1,5 +1,4 @@
 <?php
-error_reporting(0);
 /*
    This code is part of GOsa (https://gosa.gonicus.de)
    Copyright (C) 2003  Cajus Pollmeier, Fabian Hickert
@@ -20,12 +19,17 @@ error_reporting(0);
  */
 
 /* Include classes and configs */
-require_once ("../include/php_setup.inc");
-require_once ("functions.inc");
-require_once ("functions_helpviewer.inc");
+@require_once ("../include/php_setup.inc");
+@require_once ("functions.inc");
+@require_once ("functions_helpviewer.inc");
 
+error_reporting(E_ALL);
+restore_error_handler();
 header("Content-type: text/html; charset=UTF-8");
+
 session_start();
+$ui= $_SESSION["ui"];
+$config= $_SESSION['config'];
 
 /* If no config object is found in the session, abort help */
 if (!isset($_SESSION['config'])){
@@ -42,6 +46,7 @@ if ($config->data['MAIN']['LANG'] == ""){
 }
 
 $lang.=".UTF-8";
+
 putenv("LANGUAGE=");
 putenv("LANG=$lang");
 setlocale(LC_ALL, $lang);
@@ -59,6 +64,7 @@ if (isset ($config->data['MAIN']['COMPILE'])){
 } else {
   $smarty->compile_dir= '/var/spool/gosa/';
 }
+$smarty->assign("title", "GOsa - "._("Help browser"));
 
 /* HELP management starts here ...
  */
@@ -67,14 +73,13 @@ if (isset ($config->data['MAIN']['COMPILE'])){
 if(isset($_SESSION['helpobject'])){
   $helpobject = $_SESSION['helpobject'];
 }else{
-  $helpobject['lang']         = "en"
+  $helpobject['lang']         = $lang
   $helpobject['helpconf']     = array();  
   $helpobject['currentplug']  = "";
   $helpobject['file']         = "index.html";
   $helpobject['helpconf']     = $_SESSION['plist']->gen_headlines();
 }
 
-$lang =  get_browser_language();
 $lang = $lang[0].$lang[1];
 
 $helpobject['lang']           = $lang;  
@@ -90,7 +95,7 @@ $backward =$defaultpage;
 $index    =$defaultpage;
 $forward  ="node1.html";
 
-
+$helpdir ="";
 /* Every class which is called within a tab, stores its name in the Session.
  * If $_SESSION['current_class_for_help'] isset, 
  *  get the helpfile specified in the xml file and display it.
@@ -105,19 +110,19 @@ if(isset($_SESSION['current_class_for_help'])){
   $str = $xml->parse();
 
   /* __LANG__ is used as placeholder for the used language*/
-  $helpdir= preg_replace("/__LANG__/i",$lang,$str[($_SESSION['current_class_for_help'])]['PATH']);
+  $helpdir= @preg_replace("/__LANG__/i",$lang,$str[($_SESSION['current_class_for_help'])]['PATH']);
 
   /* If there is no entry in the xml file for this class, display an error message */
   if($helpdir == ""){
     
-    $smarty->assign("help_contents","<br><h2>"._("There is no helpfile specified for this class."))."</h2>";
+    $smarty->assign("help_contents","<br><h2>"._("There is no helpfile specified for this class"))."</h2>";
     $header= "<!-- headers.tpl-->".$smarty->fetch(get_template_path('headers.tpl'));
-    $display= utf8_encode(  $header.$smarty->fetch(get_template_path('help.tpl')));
+    $display= (  $header.$smarty->fetch(get_template_path('help.tpl')));
     echo $display;
     unset($_SESSION['current_class_for_help']);
     exit();  
   }
-  
   /* Save filename */
   $helpobject['file']= $str[($_SESSION['current_class_for_help'])]['FILE'];
   
@@ -167,7 +172,6 @@ if(isset($_GET['pg'])){
     }
   }
 }
-
 $helpdir.="/";
 
 /* Save current settings */
@@ -177,6 +181,42 @@ $_SESSION['helpobject'] = $helpobject;
  * Display management 
  */
 
+$files = array();
+$f = opendir($helpdir);
+while($file = readdir($f)){
+  $files[$file]=$file;
+}
+
+/* Some replacements */
+$backwardlink  = "<a href=\"?pg=%s\"  class=\"maintitlebar\">
+                  <img src='images/back.png' align=\"middle\" alt=\""._("previous")."\" border=\"0\">
+                 </a>";
+
+$forwardlink   = "<a href=\"?pg=%s\"  class=\"maintitlebar\">
+                  <img src='images/forward.png' align=\"middle\" alt=\""._("next")."\" border=\"0\">
+                 </a>";
+
+
+$back = $for  ="";
+if($helpobject['file'] == "index.html"){
+  $back = "&nbsp;";
+  $for  = sprintf($forwardlink,   $prefix."1".$suffix);
+}else{
+  $current = preg_replace("/^".$prefix."/","",$helpobject['file']);
+  $current = preg_replace("/\.html$/","",$current);
+  if(isset($files[$prefix.($current+1).$suffix])) {
+    $for  = sprintf($forwardlink,    $prefix.($current+1).$suffix);
+  }
+  if(isset($files[$prefix.($current-1).$suffix])) {
+    $back = sprintf($backwardlink,   $prefix.($current-1).$suffix);
+  }
+  if(($current-1) == 0){
+    $back = sprintf($backwardlink,   "index.html");
+  }
+}
+
+
 /* If there is no helpdir or file defined, display the index */
 if(isset($_POST['search'])){
   $helpdir = "../doc/guide/user/".$helpobject['lang']."/html/";
@@ -186,7 +226,7 @@ if(isset($_POST['search'])){
   $header= "<!-- headers.tpl-->".$smarty->fetch(get_template_path('headers.tpl'));
 
   /* I don't know why, but we must use utf8_encode to avoid dispplay errors */
-  $display= utf8_encode(  $header.$smarty->fetch(get_template_path('help.tpl')));
+  $display= (  $header.$smarty->fetch(get_template_path('help.tpl')));
   echo $display;
 }elseif(((empty($helpdir)))||($helpdir=="/")){
   /* Generate Index and display it */
@@ -214,6 +254,8 @@ if(isset($_POST['search'])){
   $header= "<!-- headers.tpl-->".$smarty->fetch(get_template_path('headers.tpl'));
   
   /* I don't know why, but we must use utf8_encode to avoid dispplay errors */
+  $smarty->assign("backward",$back);
+  $smarty->assign("forward" ,$for);
   $display= utf8_encode(  $header.$smarty->fetch(get_template_path('help.tpl')));
   echo $display;
 
@@ -222,7 +264,7 @@ if(isset($_POST['search'])){
   /* There was a file requested which actually doesn't exists */
   $smarty->assign("help_contents","<h2>".sprintf(_("Helpdir '%s' is not accessible, can't read any helpfiles."),$helpdir))."</h2><br>";
   $header= "<!-- headers.tpl-->".$smarty->fetch(get_template_path('headers.tpl'));
-  $display= utf8_encode(  $header.$smarty->fetch(get_template_path('help.tpl')));
+  $display= (  $header.$smarty->fetch(get_template_path('help.tpl')));
   echo $display;
 }
 // vim:tabstop=2:expandtab:shiftwidth=2:filetype=php:syntax:ruler: