You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
544 lines
16 KiB
544 lines
16 KiB
<?php
|
|
/**
|
|
* Initialisation code + library of functions to process to the initialisation in
|
|
* a varied set of ways.
|
|
* This script is a modified version that can only be used with the php extension >= 3.2.32
|
|
* and PHP version 4.2 or higher
|
|
* @package chamilo.plugin.search
|
|
*/
|
|
/**
|
|
* Faking the register_globals code - very bad thing - should escape all vars
|
|
*/
|
|
if (isset ($HTTP_GET_VARS)) {
|
|
while (list ($var, $val) = each($HTTP_GET_VARS)) {
|
|
$$var = $val;
|
|
}
|
|
}
|
|
if (isset ($HTTP_POST_VARS)) {
|
|
while (list ($var, $val) = each($HTTP_POST_VARS)) {
|
|
$$var = $val;
|
|
}
|
|
}
|
|
if (isset ($HTTP_COOKIE_VARS)) {
|
|
while (list ($var, $val) = each($HTTP_COOKIE_VARS)) {
|
|
$$var = $val;
|
|
}
|
|
}
|
|
if (isset ($HTTP_SERVER_VARS)) {
|
|
while (list ($var, $val) = each($HTTP_SERVER_VARS)) {
|
|
$$var = $val;
|
|
}
|
|
}
|
|
|
|
$self = $PHP_SELF;
|
|
|
|
/**
|
|
* Setting default values for variables that will be used globally
|
|
*/
|
|
if ($ps == "")
|
|
$ps = 20;
|
|
if ($np == "")
|
|
$np = 0;
|
|
if ($o == "")
|
|
$o = 0;
|
|
if ($resultslimit <= 0)
|
|
$resultslimit = 0;
|
|
|
|
if ($excerptsize == "")
|
|
$excerptsize = 256;
|
|
if ($excerptpadding == "")
|
|
$excerptsize = 40;
|
|
|
|
if (($dt != 'back') && ($dt != 'er') && ($dt != 'range'))
|
|
$dt = '';
|
|
if ($dp == "")
|
|
$dp = 0;
|
|
if (($dx != 0) && ($dx != -1) && ($dx != 1))
|
|
$dx = 0;
|
|
if ($dy < 1970)
|
|
$dy = 1970;
|
|
if (($dm < 0) || ($dm > 11))
|
|
$dm = 0;
|
|
if (($dd <= 0) || ($dd > 31))
|
|
$dd = "01";
|
|
|
|
$db = urldecode($db);
|
|
$de = urldecode($de);
|
|
$type = urldecode($type);
|
|
|
|
$url = urldecode($url);
|
|
|
|
if ($db == "")
|
|
$db = '01/01/1970';
|
|
if ($de == "")
|
|
$de = '31/12/2020';
|
|
|
|
if ($hlbeg == "")
|
|
$hlbeg = '<b>';
|
|
if ($hlend == "")
|
|
$hlend = '</b>';
|
|
|
|
if ($storedocurl == "")
|
|
$storedocurl = '/cgi-bin/storedoc.cgi';
|
|
|
|
if (isset ($q)) {
|
|
$q = urldecode($q);
|
|
$have_query_flag = 1;
|
|
} else {
|
|
$have_query_flag = 0;
|
|
}
|
|
|
|
$query_orig = $q;
|
|
|
|
if (isset ($CHARSET_SAVED_QUERY_STRING)) {
|
|
$q_local = urldecode($CHARSET_SAVED_QUERY_STRING);
|
|
if (preg_match('/q=([^&]*)\&/', $q_local, $param)) {
|
|
$q_local = urlencode($param[1]);
|
|
}
|
|
elseif (preg_match('/q=(.*)$/', $q_local, $param)) {
|
|
$q_local = urlencode($param[1]);
|
|
} else {
|
|
$q_local = urlencode($q);
|
|
}
|
|
$q_string = $CHARSET_SAVED_QUERY_STRING;
|
|
} else {
|
|
$q_local = urlencode(stripslashes($q));
|
|
$q_string = $QUERY_STRING;
|
|
}
|
|
|
|
$db_local = urlencode($db);
|
|
$de_local = urlencode($de);
|
|
$type_local = urlencode($type);
|
|
|
|
$url_local = urlencode($url);
|
|
|
|
if (($MAX_NP > 0) && ($np > $MAX_NP))
|
|
$np = $MAX_NP;
|
|
if (($MAX_PS > 0) && ($ps > $MAX_PS))
|
|
$ps = $MAX_PS;
|
|
|
|
/**
|
|
* Initialisation function. Gets the global variables defined all over and prepares
|
|
* the udm agent accordingly.
|
|
*
|
|
*/
|
|
function init() {
|
|
global $q, $q_string, $query_orig, $have_query_flag, $have_spell_flag, $auto_wild;
|
|
global $tag, $tag_arr, $cat, $cat_arr, $np, $ps, $lang, $lang_arr, $wm, $wf, $ul, $m;
|
|
global $dt, $dp, $dx, $dm, $dd, $dy, $db, $de, $s, $resultslimit;
|
|
global $trackquery, $localcharset, $browsercharset, $stopwordtable_arr, $stopwordfile_arr;
|
|
global $minwordlength, $maxwordlength, $phrase, $cache;
|
|
global $ispelluseprefixes, $crosswords, $ispellmode, $spell_host;
|
|
global $affix_file, $spell_file, $vardir, $datadir, $sp, $sy;
|
|
global $dbaddr, $dbmode, $udm_agent, $hlbeg, $hlend, $detectclones;
|
|
global $phpver, $synonym_arr, $searchd_arr, $ul_arr;
|
|
global $REMOTE_ADDR, $storedaddr, $type_arr, $type, $groupbysite, $site;
|
|
global $excerptsize, $excerptpadding, $dateformat, $suggest;
|
|
global $XMLOutput;
|
|
|
|
ParseQString();
|
|
|
|
/*
|
|
if (preg_match("/^(\d+)\.(\d+)\.(\d+)/",phpversion(),$param)) {
|
|
$phpver=$param[1];
|
|
if ($param[2] < 9) {
|
|
$phpver .= "0$param[2]";
|
|
} else {
|
|
$phpver .= "$param[2]";
|
|
}
|
|
if ($param[3] < 9) {
|
|
$phpver .= "0$param[3]";
|
|
} else {
|
|
$phpver .= "$param[3]";
|
|
}
|
|
} else {
|
|
print "Cannot determine php version: <b>".phpversion()."</b>\n";
|
|
exit;
|
|
}
|
|
*/
|
|
$have_spell_flag = 0;
|
|
|
|
$stopwordtable_arr = array ();
|
|
$stopwordfile_arr = array ();
|
|
$synonym_arr = array ();
|
|
$searchd_arr = array ();
|
|
|
|
read_template();
|
|
|
|
if ($sp == '')
|
|
$sp = 0;
|
|
if ($sy == '')
|
|
$sy = 0;
|
|
|
|
$udm_agent = udm_alloc_agent_array($dbaddr);
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_PAGE_SIZE, $ps);
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_PAGE_NUM, $np);
|
|
|
|
$trackquery = strtolower($trackquery);
|
|
if ($trackquery == 'yes') {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_TRACK_MODE, UDM_ENABLED);
|
|
} else {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_TRACK_MODE, UDM_DISABLED);
|
|
}
|
|
|
|
$cache = strtolower($cache);
|
|
if ($cache == 'yes') {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_CACHE_MODE, UDM_ENABLED);
|
|
} else {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_CACHE_MODE, UDM_DISABLED);
|
|
}
|
|
|
|
$ispelluseprefixes = strtolower($ispelluseprefixes);
|
|
if ($ispelluseprefixes == 'yes') {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_ISPELL_PREFIXES, UDM_ENABLED);
|
|
} else {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_ISPELL_PREFIXES, UDM_DISABLED);
|
|
}
|
|
|
|
$crosswords = strtolower($crosswords);
|
|
if ($crosswords == 'yes') {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_CROSS_WORDS, UDM_ENABLED);
|
|
} else {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_CROSS_WORDS, UDM_DISABLED);
|
|
}
|
|
|
|
if ($localcharset != '') {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_CHARSET, $localcharset);
|
|
if (!udm_check_charset($udm_agent, $localcharset)) {
|
|
print_template('top');
|
|
flush();
|
|
print_error_local("Incorrect localcharset $localcharset");
|
|
}
|
|
}
|
|
|
|
if ($localcharset == '')
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_CHARSET, 'utf-8');
|
|
if ($browsercharset != '') {
|
|
if (!udm_check_charset($udm_agent, $browsercharset)) {
|
|
print_template('top');
|
|
flush();
|
|
print_error_local("Incorrect browsercharset $browsercharset");
|
|
}
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_BROWSER_CHARSET, $browsercharset);
|
|
if($XMLOutput != 1){
|
|
header("Content-Type: text/html; charset=$browsercharset");
|
|
}else{
|
|
header("Content-Type: text/xml");
|
|
echo "<?xml version='1.0' encoding=\"$browsercharset\" ?>\n";
|
|
}
|
|
} else {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_BROWSER_CHARSET, 'utf-8');
|
|
if($XMLOutput != 1){
|
|
header("Content-Type: text/html; charset=utf-8");
|
|
}else{
|
|
header("Content-Type: text/xml");
|
|
echo "<?xml version='1.0' encoding=\"utf-8\" ?>\n";
|
|
}
|
|
}
|
|
if ($hlbeg == '')
|
|
$hlbeg = '<font color="000088"><b>';
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_HLBEG, $hlbeg);
|
|
|
|
if ($hlend == '')
|
|
$hlend = '</b></font>';
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_HLEND, $hlend);
|
|
|
|
for ($i = 0; $i < count($stopwordfile_arr); $i += 1) {
|
|
if ($stopwordfile_arr[$i] != '') {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_STOPFILE, $stopwordfile_arr[$i]);
|
|
}
|
|
}
|
|
|
|
if ($sy) {
|
|
for ($i = 0; $i < count($synonym_arr); $i += 1) {
|
|
if ($synonym_arr[$i] != '') {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_SYNONYM, $synonym_arr[$i]);
|
|
}
|
|
}
|
|
}
|
|
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_QSTRING, $q_string);
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_REMOTE_ADDR, $REMOTE_ADDR);
|
|
|
|
if ($have_query_flag)
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_QUERY, $query_orig);
|
|
if ($storedaddr != '')
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_STORED, $storedaddr);
|
|
|
|
$groupbysite = strtolower($groupbysite);
|
|
if ($groupbysite == 'yes') {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_GROUPBYSITE, UDM_ENABLED);
|
|
} else {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_GROUPBYSITE, UDM_DISABLED);
|
|
}
|
|
if ($site)
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_SITEID, $site);
|
|
$detectclones = strtolower($detectclones);
|
|
if ($detectclones == 'yes') {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_DETECT_CLONES, UDM_ENABLED);
|
|
} else {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_DETECT_CLONES, UDM_DISABLED);
|
|
}
|
|
|
|
if ($m == 'any') {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_SEARCH_MODE, UDM_MODE_ANY);
|
|
}
|
|
elseif ($m == 'all') {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_SEARCH_MODE, UDM_MODE_ALL);
|
|
}
|
|
elseif ($m == 'bool') {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_SEARCH_MODE, UDM_MODE_BOOL);
|
|
}
|
|
elseif ($m == 'phrase') {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_SEARCH_MODE, UDM_MODE_PHRASE);
|
|
} else {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_SEARCH_MODE, UDM_MODE_ALL);
|
|
}
|
|
|
|
if ($wm == 'wrd') {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_WORD_MATCH, UDM_MATCH_WORD);
|
|
}
|
|
elseif ($wm == 'beg') {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_WORD_MATCH, UDM_MATCH_BEGIN);
|
|
}
|
|
elseif ($wm == 'end') {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_WORD_MATCH, UDM_MATCH_END);
|
|
}
|
|
elseif ($wm == 'sub') {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_WORD_MATCH, UDM_MATCH_SUBSTR);
|
|
} else {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_WORD_MATCH, UDM_MATCH_WORD);
|
|
}
|
|
|
|
if ($minwordlength > 0) {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_MIN_WORD_LEN, $minwordlength);
|
|
} else {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_MIN_WORD_LEN, 1);
|
|
}
|
|
|
|
if ($maxwordlength > 0) {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_MAX_WORD_LEN, $maxwordlength);
|
|
} else {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_MAX_WORD_LEN, 32);
|
|
}
|
|
|
|
if ($vardir != '')
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_VARDIR, $vardir);
|
|
if ($datadir != '')
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_VARDIR, $datadir);
|
|
|
|
if ($wf != '') {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_WEIGHT_FACTOR, $wf);
|
|
}
|
|
|
|
for ($i = 0; $i < count($ul_arr); $i += 1) {
|
|
$temp_ul = $ul_arr[$i];
|
|
if ($temp_ul != '') {
|
|
$auto_wild = strtolower($auto_wild);
|
|
if (($auto_wild == 'yes') || ($auto_wild == '')) {
|
|
if ((substr($temp_ul, 0, 7) == 'http://') || (substr($temp_ul, 0, 8) == 'https://') || (substr($temp_ul, 0, 7) == 'news://') || (substr($temp_ul, 0, 6) == 'ftp://')) {
|
|
udm_add_search_limit($udm_agent, UDM_LIMIT_URL, "$temp_ul%");
|
|
} else {
|
|
udm_add_search_limit($udm_agent, UDM_LIMIT_URL, "%$temp_ul%");
|
|
}
|
|
} else {
|
|
udm_add_search_limit($udm_agent, UDM_LIMIT_URL, $temp_ul);
|
|
}
|
|
}
|
|
}
|
|
|
|
for ($i = 0; $i < count($tag_arr); $i += 1) {
|
|
$temp_tag = $tag_arr[$i];
|
|
if ($temp_tag != '')
|
|
udm_add_search_limit($udm_agent, UDM_LIMIT_TAG, $temp_tag);
|
|
}
|
|
|
|
for ($i = 0; $i < count($type_arr); $i += 1) {
|
|
$temp_type = $type_arr[$i];
|
|
if ($temp_type != '')
|
|
udm_add_search_limit($udm_agent, UDM_LIMIT_TYPE, $temp_type);
|
|
}
|
|
|
|
for ($i = 0; $i < count($cat_arr); $i += 1) {
|
|
$temp_cat = $cat_arr[$i];
|
|
if ($temp_cat != '')
|
|
udm_add_search_limit($udm_agent, UDM_LIMIT_CAT, $temp_cat);
|
|
}
|
|
|
|
for ($i = 0; $i < count($lang_arr); $i += 1) {
|
|
$temp_lang = $lang_arr[$i];
|
|
if ($temp_lang != '')
|
|
udm_add_search_limit($udm_agent, UDM_LIMIT_LANG, $temp_lang);
|
|
}
|
|
|
|
if (function_exists('udm_set_agent_param_ex')) {
|
|
if ($excerptsize > 0)
|
|
udm_set_agent_param_ex($udm_agent, 'ExcerptSize', $excerptsize);
|
|
if ($excerptpadding > 0)
|
|
udm_set_agent_param_ex($udm_agent, 'ExcerptPadding', $excerptpadding);
|
|
if ($dateformat != '')
|
|
udm_set_agent_param_ex($udm_agent, 'DateFormat', $dateformat);
|
|
|
|
if ($s != '')
|
|
udm_set_agent_param_ex($udm_agent, 's', $s);
|
|
if ($resultslimit > 0)
|
|
udm_set_agent_param_ex($udm_agent, 'resultslimit', $resultslimit);
|
|
|
|
if (($dt == 'back') || ($dt == 'er') || ($dt == 'range')) {
|
|
udm_set_agent_param_ex($udm_agent, 'dt', $dt);
|
|
udm_set_agent_param_ex($udm_agent, 'dx', $dx);
|
|
udm_set_agent_param_ex($udm_agent, 'dm', $dm);
|
|
udm_set_agent_param_ex($udm_agent, 'dy', $dy);
|
|
udm_set_agent_param_ex($udm_agent, 'dd', $dd);
|
|
udm_set_agent_param_ex($udm_agent, 'dp', $dp);
|
|
udm_set_agent_param_ex($udm_agent, 'db', $db);
|
|
udm_set_agent_param_ex($udm_agent, 'de', $de);
|
|
}
|
|
|
|
$suggest = strtolower($suggest);
|
|
if ($suggest == 'yes')
|
|
udm_set_agent_param_ex($udm_agent, 'suggest', 'yes');
|
|
}
|
|
|
|
if (($dt == 'back') && ($dp != '0')) {
|
|
$recent_time = format_dp($dp);
|
|
if ($recent_time != 0) {
|
|
$dl = time() - $recent_time;
|
|
udm_add_search_limit($udm_agent, UDM_LIMIT_DATE, ">$dl");
|
|
}
|
|
}
|
|
elseif ($dt == 'er') {
|
|
$recent_time = mktime(0, 0, 0, ($dm +1), $dd, $dy);
|
|
if ($dx == -1) {
|
|
udm_add_search_limit($udm_agent, UDM_LIMIT_DATE, "<$recent_time");
|
|
}
|
|
elseif ($dx == 1) {
|
|
udm_add_search_limit($udm_agent, UDM_LIMIT_DATE, ">$recent_time");
|
|
}
|
|
}
|
|
elseif ($dt == 'range') {
|
|
$begin_time = format_userdate($db);
|
|
if ($begin_time)
|
|
udm_add_search_limit($udm_agent, UDM_LIMIT_DATE, ">$begin_time");
|
|
|
|
$end_time = format_userdate($de);
|
|
if ($end_time)
|
|
udm_add_search_limit($udm_agent, UDM_LIMIT_DATE, "<$end_time");
|
|
}
|
|
|
|
print_template('top');
|
|
flush();
|
|
|
|
$ispellmode = strtolower($ispellmode);
|
|
if ($ispellmode == 'db') {
|
|
if (!udm_load_ispell_data($udm_agent, UDM_ISPELL_TYPE_DB, '', '', 1)) {
|
|
print_error_local(udm_error($udm_agent));
|
|
} else
|
|
$have_spell_flag = 1;
|
|
}
|
|
elseif ($ispellmode == 'server') {
|
|
if (!udm_load_ispell_data($udm_agent, UDM_ISPELL_TYPE_SERVER, $spell_host, '', 1)) {
|
|
print_error_local("Error loading ispell data from server $spell_host");
|
|
} else
|
|
$have_spell_flag = 1;
|
|
}
|
|
elseif (($ispellmode == 'text') && ($sp)) {
|
|
reset($affix_file);
|
|
while (list ($t_lang, $file) = each($affix_file)) {
|
|
$param = array();
|
|
if (preg_match("/(.+)\;(.+)/", $file, $param)) {
|
|
$t_charset = trim($param[1]);
|
|
$t_file = trim($param[2]);
|
|
if (!udm_load_ispell_data($udm_agent, UDM_ISPELL_TYPE_AFFIX, $t_lang, $t_charset, $t_file, 0)) {
|
|
print_error_local("Error loading ispell data from file");
|
|
} else
|
|
$have_spell_flag = 1;
|
|
}
|
|
|
|
$temp = $spell_file[$t_lang];
|
|
for ($i = 0; $i < count($temp); $i += 1) {
|
|
if (preg_match("/(.+)\;(.+)/", $temp[$i], $param)) {
|
|
$t_charset = trim($param[1]);
|
|
$t_file = trim($param[2]);
|
|
if (!udm_load_ispell_data($udm_agent, UDM_ISPELL_TYPE_SPELL, $t_lang, $t_charset, $t_file, 1)) {
|
|
print_error_local("Error loading ispell data from file");
|
|
} else
|
|
$have_spell_flag = 1;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
udm_parse_query_string($udm_agent, $q_string);
|
|
}
|
|
|
|
/**
|
|
* Some variation of the init function?
|
|
*
|
|
*/
|
|
function init_cc() {
|
|
global $q, $q_string, $query_orig, $have_query_flag, $have_spell_flag, $auto_wild;
|
|
global $tag, $tag_arr, $cat, $cat_arr, $np, $ps, $lang, $lang_arr, $wm, $wf, $ul, $m;
|
|
global $dt, $dp, $dx, $dm, $dd, $dy, $db, $de, $s, $resultslimit;
|
|
global $trackquery, $localcharset, $browsercharset, $stopwordtable_arr, $stopwordfile_arr;
|
|
global $minwordlength, $maxwordlength, $phrase, $cache;
|
|
global $ispelluseprefixes, $crosswords, $ispellmode, $spell_host;
|
|
global $affix_file, $spell_file, $vardir, $datadir, $sp, $sy;
|
|
global $dbaddr, $dbmode, $udm_agent, $hlbeg, $hlend, $detectclones;
|
|
global $phpver, $synonym_arr, $searchd_arr, $ul_arr;
|
|
global $REMOTE_ADDR, $storedaddr, $type_arr, $type, $groupbysite, $site;
|
|
global $excerptsize, $excerptpadding, $dateformat, $suggest;
|
|
|
|
//parse the $QUERY_STRING global variable and puts pieces into corresponding arrays
|
|
ParseQString();
|
|
|
|
//read the template file
|
|
read_template();
|
|
|
|
$udm_agent = udm_alloc_agent_array($dbaddr);
|
|
|
|
if ($localcharset != '') {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_CHARSET, $localcharset);
|
|
if (!udm_check_charset($udm_agent, $localcharset)) {
|
|
print_template('top');
|
|
flush();
|
|
print_error_local("Incorrect localcharset $localcharset");
|
|
}
|
|
}
|
|
|
|
if ($localcharset == '')
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_CHARSET, 'utf-8');
|
|
if ($browsercharset != '') {
|
|
if (!udm_check_charset($udm_agent, $browsercharset)) {
|
|
print_template('top');
|
|
flush();
|
|
print_error_local("Incorrect browsercharset $browsercharset");
|
|
}
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_BROWSER_CHARSET, $browsercharset);
|
|
header("Content-Type: text/html; charset=$browsercharset");
|
|
} else {
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_BROWSER_CHARSET, 'utf-8');
|
|
header("Content-Type: text/html; charset=utf-8");
|
|
}
|
|
if ($hlbeg == '')
|
|
$hlbeg = '<font color="000088"><b>';
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_HLBEG, $hlbeg);
|
|
|
|
if ($hlend == '')
|
|
$hlend = '</b></font>';
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_HLEND, $hlend);
|
|
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_QSTRING, $q_string);
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_REMOTE_ADDR, $REMOTE_ADDR);
|
|
|
|
if ($have_query_flag)
|
|
udm_set_agent_param($udm_agent, UDM_PARAM_QUERY, $query_orig);
|
|
|
|
if (function_exists('udm_set_agent_param_ex')) {
|
|
if ($dateformat != '')
|
|
udm_set_agent_param_ex($udm_agent, 'DateFormat', $dateformat);
|
|
}
|
|
|
|
udm_parse_query_string($udm_agent, $q_string);
|
|
}
|
|
?>
|
|
|