"._("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
*/
/* 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:
?>