"._("Help is not available if you are not logged in.").""; exit; } /* Set template compile directory */ $config= $_SESSION['config']; if (isset ($config->data['MAIN']['COMPILE'])){ $smarty->compile_dir= $config->data['MAIN']['COMPILE']; } else { $smarty->compile_dir= '/var/spool/gosa/'; } /* Language setup */ if ($config->data['MAIN']['LANG'] == ""){ $lang= get_browser_language(); } else { $lang= $config->data['MAIN']['LANG']; } $lang.=".UTF-8"; putenv("LANGUAGE="); putenv("LANG=$lang"); setlocale(LC_ALL, $lang); $GLOBALS['t_language']= $lang; $GLOBALS['t_gettext_message_dir'] = $BASE_DIR.'/locale/'; /* Set the text domain as 'messages' */ $domain = 'messages'; bindtextdomain($domain, "$BASE_DIR/locale"); textdomain($domain); @DEBUG (DEBUG_TRACE, __LINE__, __FUNCTION__, __FILE__, $lang, "Setting language to"); /* Get plugin list */ $plist= $_SESSION['plist']; /* ################## My PART ^^ ################## */ set_error_handler("myone"); $helpdir = HELP_BASEDIR."/en/manual_gosa_en/"; // Folder to use for help files $defaultpage = "index.html"; // alternative file, shown on error, or on first call $prefix = "node"; // Prefix of the generated help files $suffix = ".html"; // Suffix of the generated helpfiles $maxresults = 10; // max number of results shown in result list $minwordlength = 3; // Word less than 3 chars will be dropped in search $allowed_chars_in_searchword = "'[^a-z0-9 %_-]'i"; // Remove all chars that would disturb our search like < or > ... $pre_mark = "" ; // Sign words with this $suf_mark = ""; // and this // Only for testing delete this if everything works fine function myone($par1,$par2,$par3,$par3) { print "
Seite : ".$par1."
Name : ".$par2."
Seite : ".$par3."
Zeile : ".$par3; } /* Define which tags musst be delete, header, navigation, banner */ $replacements=array(); $replacements['from']=array("@@si", "@]*?>.*?DIV>@si", "''", "/
/", "@]*?>.*?ADDRESS>@si", "@<\/BODY[^>]*?>.*?HTML>@si", "''", "/

/"); $replacements['to']=array("", "", "", "", "", "", "", "

"); /* Default pages */ $backward =$defaultpage; $index =$defaultpage; $forward ="node1.html"; /* Here it begins, the real function, above only definitions */ if(!file_exists(HELP_BASEDIR."/en/manual_gosa_en/")){ /* prevent php warning missing value ... or so*/ $smarty->assign("backward",""); $smarty->assign("index" ,""); $smarty->assign("forward" ,""); $smarty->assign("search_string",""); $smarty->assign("help_contents","
".sprintf(_("Can't read any helpfiles from ' %s ', possibly there is no help available."),HELP_BASEDIR."/en/manual_gosa_en/")); /* Output html ...*/ $header= "".$smarty->fetch(get_template_path('headers.tpl')); $display= $header.$smarty->fetch(get_template_path('help.tpl')); echo $display; }else{ /* We prepare to search, all Document for the given keyword */ if(isset($_POST['search'])){ /* Get Keyword */ $keyword = $_POST['search_string']; /* Save Keyword to be able to show last searched word in template */ $_SESSION['search_string']= $keyword; /* Read all files with contents*/ /* |Folder="/var/ww...", | |Fileprefix="node" | | |Filesuffix=".html" | | | |WithoutContent=false(This means : read content) | | | | |Singlepage=false(Means read all, if w want to read single, specify its filename)"*/ $arr = readfiles($helpdir,$prefix,$suffix,false,$singlepage=false); /* Create Searchresult for our Keyword(s) */ $res = search($arr,$keyword); /* Tell smarty which pages to use for backward forwa.. */ $smarty->assign("backward",$backward); $smarty->assign("index" ,$index); $smarty->assign("forward" ,$forward); /* Tell smarty the Keyword, to show it in the input field again */ $smarty->assign("search_string",$keyword); /* Create result list */ $smarty->assign("help_contents",searchlist($arr,$res,$maxresults)); /* Output html ...*/ $header= "".$smarty->fetch(get_template_path('headers.tpl')); $display= $header.$smarty->fetch(get_template_path('help.tpl')); echo $display; /* Don't search, only show selected page */ }else{ /* present last searched word(s)*/ if(!isset($_SESSION['search_string'])){ $_SESSION['search_string']=""; } $smarty->assign("search_string",$_SESSION['search_string']); /* Read all files, prepare to serach */ $helppages = readfiles($helpdir,$prefix,$suffix,true); /* Get transmitted page */ if(isset($_GET['pg'])){ $page = $_GET['pg']; }else{ $page = $defaultpage; } /* test if this page exists, in our array of files */ if((!isset($helppages[$page]))&&($page!=$defaultpage)) { //print "Requested helppage is unknown, redirekted to index"; // For debugging only $page = $defaultpage; } /* Check forward backward, funtionality*/ if($page != $defaultpage) { /* Extract Number of node page */ $number = str_replace($prefix,"",str_replace($suffix,"",$page)); /* Check if we can switch forward and/or backward*/ $bck = $prefix.($number-1).$suffix; $fck = $prefix.($number+1).$suffix; /* backward page exists ?, so allow it*/ if((isset($helppages[$bck]))) { $backward = $bck; } /* forward exists ?*/ if((isset($helppages[$fck]))) { $forward = $fck; } } $help_contents=readfiles($helpdir,$prefix,$suffix,false,$page); /* Mark last searched words */ if(isset($_GET['mark'])){ $marks = ($_SESSION['lastresults']) ; $help_contents = markup_page($help_contents[$page]['content'],$marks[$page]); $help_contents=remove_unwanted_tags($help_contents,$replacements); }else{ $help_contents=remove_unwanted_tags($help_contents[$page]['content'],$replacements); } $smarty->assign("help_contents",$help_contents); /* Define our own navigation pages */ $smarty->assign("backward",$backward); $smarty->assign("index" ,$index); $smarty->assign("forward" ,$forward); /* Fill page */ $header= "".$smarty->fetch(get_template_path('headers.tpl')); $display= $header.$smarty->fetch(get_template_path('help.tpl')); echo $display; } } // vim:tabstop=2:expandtab:shiftwidth=2:filetype=php:syntax:ruler: ?>