X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=html%2Fhelpviewer.php;h=4cbc459abf94bd630ae888d5c414469b832aef5e;hb=4b0ae24d1609910eaaa03f2b5cd2fc0057c5f020;hp=7de5c2ece33b0bef39f2ca8d00b7db36a020b6fa;hpb=a3ffa4d951d8141e9212b58e34388a9a6974f5d8;p=gosa.git
diff --git a/html/helpviewer.php b/html/helpviewer.php
index 7de5c2ece..4cbc459ab 100644
--- a/html/helpviewer.php
+++ b/html/helpviewer.php
@@ -1,5 +1,4 @@
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,14 @@ 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 = preg_replace("/_.*$/","",get_browser_language());
+$lang = $lang[0].$lang[1];
$helpobject['lang'] = $lang;
$defaultpage = "index.html"; // alternative file, shown on error, or on first call
@@ -89,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.
@@ -102,21 +108,21 @@ if(isset($_SESSION['current_class_for_help'])){
/* Generate help array */
$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","
"._("There is no helpfile specified for this class."))."
";
+ $smarty->assign("help_contents","
"._("There is no helpfile specified for this class"))."
";
$header= "".$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'];
@@ -124,7 +130,9 @@ if(isset($_SESSION['current_class_for_help'])){
$helpobject['currentplug'] = $helpdir;
/* Avoid displaying the same help every time */
- unset($_SESSION['current_class_for_help']);
+ if(isset($_GET['pg'])){
+ unset($_SESSION['current_class_for_help']);
+ }
}elseif(isset($_GET['plug'])){
/* This displays helpfiles depending on the current $_GET[plug] */
@@ -164,7 +172,6 @@ if(isset($_GET['pg'])){
}
}
}
-
$helpdir.="/";
/* Save current settings */
@@ -174,6 +181,42 @@ $_SESSION['helpobject'] = $helpobject;
* Display management
*/
+$files = array();
+$f = opendir($helpdir);
+while($file = readdir($f)){
+ $files[$file]=$file;
+}
+
+/* Some replacements */
+$backwardlink = "
+
+ ";
+
+$forwardlink = "
+
+ ";
+
+
+$back = $for ="";
+if($helpobject['file'] == "index.html"){
+ $back = " ";
+ $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/";
@@ -183,7 +226,7 @@ if(isset($_POST['search'])){
$header= "".$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 */
@@ -211,6 +254,8 @@ if(isset($_POST['search'])){
$header= "".$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;
@@ -219,7 +264,7 @@ if(isset($_POST['search'])){
/* There was a file requested which actually doesn't exists */
$smarty->assign("help_contents","".sprintf(_("Helpdir '%s' is not accessible, can't read any helpfiles."),$helpdir))."
";
$header= "".$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: