X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=html%2Fhelpviewer.php;h=d1828ac92086ba6f49b13232096f3f85baaa4ac6;hb=be6a0e4897da0b88b201934fc652e688898885c6;hp=93a3b7d6955c53003a45694ffbd01cd70176479b;hpb=77a6ebc9b0e427e3bdb20c7b7277ca9f99205f1c;p=gosa.git diff --git a/html/helpviewer.php b/html/helpviewer.php index 93a3b7d69..d1828ac92 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,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","

"._("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']; @@ -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 = " + \""._("previous")."\" + "; + +$forwardlink = " + \""._("next")."\" + "; + + +$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/"; @@ -186,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 */ @@ -214,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; @@ -222,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: