, , ,
,
function string_sanitise($text)
{
$ntext = preg_replace (array('/"\']*)["\']?>([^<]*)<\/a>/i'),
array('[[$1][$2]]'),
$text);
$ntext = htmlspecialchars($ntext, ENT_QUOTES);
$ntext = preg_replace(array('/<(\/?(p|br|b|em))>/i',
'/\[\[([^\]]+)\]\[([^\]]+)\]\]/'),
array('<$1>','$2'),
$ntext);
return $ntext;
}
function basepath()
{
global $cfg;
global $_SERVER;
$pos = strpos(strtolower($cfg['home']), strtolower($_SERVER['SERVER_NAME']));
$base = substr($cfg['home'], $pos+strlen($_SERVER['SERVER_NAME']));
$pos = strpos($_SERVER['REQUEST_URI'], "?");
if ($pos === false)
$uri = $_SERVER['REQUEST_URI'];
else
$uri = substr($_SERVER['REQUEST_URI'], 0, $pos);
if (strpos($uri, $base) === 0) {
$cfg['path'] = substr($uri, strlen($base));
$pos = strrpos($cfg['path'], '/');
if ($pos !== false) {
$cfg['dir'] = substr($cfg['path'], 0, $pos);
}
return str_repeat("../", substr_count($cfg['path'], "/"));
}
}
function logged_in()
{
global $_SESSION;
return isset($_SESSION['uid']);
}
function javascript_ok()
{
global $_SESSION;
if (!logged_in())
return true;
if ($_SESSION['javascript'] == true)
return true;
return false;
}
function is_spider()
{
global $_SERVER;
global $_SESSION;
if (isset($_SESSION['uid']))
if (isset($_SESSION['robot']))
return $_SESSION['robot'];
if (strpos($_SERVER['HTTP_USER_AGENT'], 'Yahoo! Slurp') !== false ||
strpos($_SERVER['HTTP_USER_AGENT'], 'Googlebot') !== false ||
strpos($_SERVER['HTTP_USER_AGENT'], 'Mediapartners-Google') !== false ||
strpos($_SERVER['HTTP_USER_AGENT'], 'VoilaBot') !== false ||
strpos($_SERVER['HTTP_USER_AGENT'], 'Gigabot/3.0') !== false ||
strpos($_SERVER['HTTP_USER_AGENT'], 'Speedy Spider') !== false ||
strpos($_SERVER['HTTP_USER_AGENT'], 'LinkWalker/2.0') !== false ||
strpos($_SERVER['HTTP_USER_AGENT'], 'proximic') !== false ||
strpos($_SERVER['HTTP_USER_AGENT'], 'Yeti/1.0') !== false ||
strpos($_SERVER['HTTP_USER_AGENT'], 'Eurobot/1.0') !== false ||
strpos($_SERVER['HTTP_USER_AGENT'], 'MnoGoSearch/') !== false ||
strpos($_SERVER['HTTP_USER_AGENT'], 'ia_archiver') !== false ||
strpos($_SERVER['HTTP_USER_AGENT'], 'Seekbot/1.0') !== false ||
strpos($_SERVER['HTTP_USER_AGENT'], 'MyEngines-Bot') !== false ||
strpos($_SERVER['HTTP_USER_AGENT'], 'larbin_') !== false ||
strpos($_SERVER['HTTP_USER_AGENT'], 'findlinks/1') !== false ||
strpos($_SERVER['HTTP_USER_AGENT'], 'holmes/3.12') !== false ||
strpos($_SERVER['HTTP_USER_AGENT'], 'NoteworthyBot/0.1') !== false ||
strpos($_SERVER['HTTP_USER_AGENT'], 'Eurosoft-Bot') !== false ||
strpos($_SERVER['HTTP_USER_AGENT'], 'msnbot') !== false) {
strpos($_SERVER['HTTP_USER_AGENT'], 'Cityreview Robot') !== false) {
if (isset($_SESSION['uid']))
$_SESSION['robot'] = true;
return true;
}
if (isset($_SESSION['uid']))
$_SESSION['robot'] = false;
return false;
}
function format_info_bookmarks()
{
global $_SESSION;
global $cfg;
if (!isset($_SESSION['uid']))
return false;
$query = sprintf("SELECT zeitung,name FROM bookmarks " .
"JOIN zeitungen ON zeitungen.id = zeitung " .
"WHERE uid = %d " .
"ORDER BY priority,name LIMIT 20",
$_SESSION['uid']);
$sth = db_query($query);
if ($sth === false || pg_NumRows ($sth) == 0)
return false;
$ret = '