<?php
/**************************************************************************
* page_header.php
* -------------------
* Разработка: phpBB Group.
***************************************************************************/
if ( !defined('IN_PHPBB') )
{
die("Hacking attempt");
}
define('HEADER_INC', TRUE);
$do_gzip_compress = FALSE;
if ( $board_config['gzip_compress'] )
{
$phpver = phpversion();
$useragent = (isset($HTTP_SERVER_VARS['HTTP_USER_AGENT'])) ? $HTTP_SERVER_VARS['HTTP_USER_AGENT'] : getenv('HTTP_USER_AGENT');
if ( $phpver >= '4.0.4pl1' && ( strstr($useragent,'compatible') || strstr($useragent,'Gecko') ) )
{
if ( extension_loaded('zlib') )
{
ob_start('ob_gzhandler');
}
}
else if ( $phpver > '4.0' )
{
if ( strstr($HTTP_SERVER_VARS['HTTP_ACCEPT_ENCODING'], 'gzip') )
{
if ( extension_loaded('zlib') )
{
$do_gzip_compress = TRUE;
ob_start();
ob_implicit_flush(0);
header('Content-Encoding: gzip');
}
}
}
}
$template->set_filenames(array(
'overall_header' => ( empty($gen_simple_header) ) ? 'overall_header.tpl' : 'simple_header.tpl')
);
$current_time = time();
if ($board_config['reputation_last_check_time'] + $board_config['reputation_check_rate'] * 60 < $current_time)
{
if ($board_config['reputation_delete_expired'] != -1)
{
$delete_time = $current_time - $board_config['reputation_delete_expired'] * 86400;
$result = db_query('SELECT id
FROM {REPUTATION_TABLE}
WHERE (modification = {REPUTATION_WARNING_EXPIRED} OR modification = {REPUTATION_BAN_EXPIRED})
AND expire < %d', $delete_time);
$in_sql = '';
while ($row = $db->sql_fetchrow($result))
{
$in_sql .= ($in_sql ? ',' : '') . $row['id'];
}
if ($in_sql)
{
db_query('DELETE FROM {REPUTATION_TABLE}
WHERE id IN (' . $in_sql . ')');
db_query('DELETE FROM {REPUTATION_TEXT_TABLE}
WHERE id IN (' . $in_sql . ')');
}
}
else
{
$delete_time = -1;
}
$result = db_query('SELECT id, user_id, modification FROM {REPUTATION_TABLE}
WHERE (modification = {REPUTATION_WARNING} OR modification = {REPUTATION_BAN})
AND expire < %d', $current_time);
while ($row = $db->sql_fetchrow($result))
{
if ($delete_time != -1 && $row['expire'] < $delete_time)
{
db_query('DELETE FROM {REPUTATION_TABLE} WHERE id = %d', $row['id']);
db_query('DELETE FROM {REPUTATION_TEXT_TABLE} WHERE id = %d', $row['id']);
}
else
{
$set = ($row['modification'] == REPUTATION_WARNING) ? REPUTATION_WARNING_EXPIRED : REPUTATION_BAN_EXPIRED;
db_query('UPDATE {REPUTATION_TABLE} SET modification = %d WHERE id = %d', $set, $row['id']);
}
if ($row['modification'] == REPUTATION_BAN)
{
db_query('DELETE FROM {BANLIST_TABLE} WHERE ban_userid = %d', $row['user_id']);
db_query('UPDATE {USERS_TABLE} SET user_allow_pm = 1 WHERE user_id = %d', $row['user_id']);
}
db_query('UPDATE {USERS_TABLE} SET user_warnings = user_warnings - 1 WHERE user_id = %d', $row['user_id']);
}
db_query('UPDATE {CONFIG_TABLE} SET config_value = %d WHERE config_name = \'reputation_last_check_time\'', $current_time);
}
// [begin] SE Friendly Board mod
function replace_mod_rewrite($s)
{
$url_in = array(
"'(?<!/)viewforum.php\?f=([0-9]+)&topicdays=([0-9]+)&start=0'",
"'(?<!/)viewforum.php\?f=([0-9]+)&topicdays=([0-9]+)&start=([0-9]+)'",
"'(?<!/)viewforum.php\?f=([0-9]+)'",
"'(?<!/)viewtopic.php\?t=([0-9]+)&postdays=([0-9]+)&postorder=([a-zA-Z]+)&start=0'",
"'(?<!/)viewtopic.php\?t=([0-9]+)&postdays=([0-9]+)&postorder=([a-zA-Z]+)&start=([0-9]+)'",
"'(?<!/)viewtopic.php\?t=([0-9]+)&start=0&postdays=([0-9]+)&postorder=([a-zA-Z]+)&highlight=([a-zA-Z0-9%+]*)'",
"'(?<!/)viewtopic.php\?t=([0-9]+)&start=([0-9]+)&postdays=([0-9]+)&postorder=([a-zA-Z]+)&highlight=([a-zA-Z0-9%+]*)'",
"'(?<!/)viewtopic.php\?t=([0-9]+)&start=0'",
"'(?<!/)viewtopic.php\?t=([0-9]+)&start=([0-9]+)'",
"'(?<!/)viewtopic.php\?t=([0-9]+)&highlight=([a-zA-Z0-9%+]*)'",
"'(?<!/)viewtopic.php\?t=([0-9]+)'",
"'(?<!/)viewtopic.php\?p=([0-9]+)'",
"'(?<!/)viewpost.php\?p=([0-9]+)'",
"'(?<!/)forum.php\?c=([0-9]+)'"
);
$url_out = array(
'forum$1.xhtml',
'forum$1-$3.xhtml',
'forum$1.xhtml',
'topic$1.xhtml',
'topic$1-$4.xhtml',
'topic$1.xhtml',
'topic$1-$2.xhtml',
'topic$1.xhtml',
'topic$1-$2.xhtml',
'topic$1.xhtml',
'topic$1.xhtml',
'post$1.xhtml',
'viewpost$1.xhtml',
'cat$1.xhtml'
);
$s = preg_replace($url_in, $url_out, $s);
// Processing invalid links
$s = str_replace('.xhtml&', '.xhtml?', $s);
$s = str_replace('.xhtml&', '.xhtml?', $s);
return $s;
}
if ( !$userdata['session_logged_in'] )
{
ob_start();
}
// [end] SE Friendly Board mod
if ( $userdata['session_logged_in'] )
{
$u_login_logout = 'login.'.$phpEx.'?logout=true&sid=' . $userdata['session_id'];
$l_login_logout = $lang['Logout'] . ' [ ' . $userdata['username'] . ' ]';
}
else
{
$u_login_logout = 'login.'.$phpEx;
$l_login_logout = $lang['Login'];
}
$s_last_visit = ( $userdata['session_logged_in'] ) ? create_date($board_config['default_dateformat'], $userdata['user_lastvisit'], $board_config['board_timezone']) : '';
$logged_visible_online = 0;
$logged_hidden_online = 0;
$guests_online = 0;
$online_userlist = '';
$l_online_users = '';
if (defined('SHOW_ONLINE'))
{
$user_forum_sql = ( !empty($forum_id) ) ? "AND s.session_page = " . intval($forum_id) : '';
$sql = "SELECT u.username, u.user_id, u.user_allow_viewonline, u.user_level, s.session_logged_in, s.session_ip
FROM " . USERS_TABLE . " u, " . SESSIONS_TABLE . " s
WHERE u.user_id = s.session_user_id
AND s.session_time >= ".( time() - 300 ) . "
$user_forum_sql
ORDER BY u.username ASC, s.session_ip ASC";
if( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not obtain user/online information', '', __LINE__, __FILE__, $sql);
}
$userlist_ary = array();
$userlist_visible = array();
$prev_user_id = 0;
$prev_user_ip = $prev_session_ip = '';
while( $row = $db->sql_fetchrow($result) )
{
if ( $row['session_logged_in'] )
{
if ( $row['user_id'] != $prev_user_id )
{
if ( $row['user_allow_viewonline'] )
{
$user_online_link = '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['user_id']) . '"' . $style_color .'>' . $row['username'] . '</a>';
$logged_visible_online++;
}
else
{
$user_online_link = '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['user_id']) . '"' . $style_color .'><i>' . $row['username'] . '</i></a>';
$logged_hidden_online++;
}
if ( $row['user_allow_viewonline'] || $userdata['user_level'] == ADMIN )
{
$online_userlist .= ( $online_userlist != '' ) ? ', ' . $user_online_link : $user_online_link;
}
}
$prev_user_id = $row['user_id'];
}
else
{
if ( $row['session_ip'] != $prev_session_ip )
{
$guests_online++;
}
}
$prev_session_ip = $row['session_ip'];
}
$db->sql_freeresult($result);
//------SEARCH MANITOR------
}
$sm_findbyhost = false; ////Нетрожь!!Убьет)
$sql = "SELECT * FROM " . USERS_TABLE . '_bots';
$res = $db->sql_query($sql);
$findme = getenv("HTTP_USER_AGENT").getenv("REMOTE_ADDR");
if($sm_findbyhost)
{
$findme .= @gethostbyaddr(getenv("REMOTE_ADDR"));
$findme = strtolower($findme);
}
while( $row = $db->sql_fetchrow($res) )
{
if (@strpos($findme,strtolower(trim($row[name])))!==false)
{
$botix = $row[name];
$row[was] = intval($row[was])+1;
$row[lastvisit] = time();
$sql = "UPDATE " . USERS_TABLE . "_bots
SET `lastvisit` = '" . time() . "', `ip` = '" . addslashes(getenv("REMOTE_ADDR")) . "', `was` = '" . intval($row[was]) . "'
WHERE `name` = '" . addslashes($botix) . "'";
$db->sql_query($sql);
}
if (($row[lastvisit] > (time()-300)) and ($row[show] == 1))
if (( empty($topic_id) ) and ( empty($forum_id) ))
{
$guests_online--;
$logged_visible_online++;
if (trim($row[view]) !== '')
{
$row[name] = $row[view];
}
if ($online_userlist !== '')
{
$online_userlist .= ', <font color="olive"><u>' . $row[name] . '</u></font>';
}
else
{
$online_userlist .= '<font color="olive"><u>' . $row[name] . '</u></font>';
}
}
}
if ($guests_online < 1)
{
$guests_online=0;
}
if (defined('SHOW_ONLINE'))
{
//----SEARCH MANITOR------
if ( empty($online_userlist) )
{
$online_userlist = $lang['None'];
}
$online_userlist = ( ( isset($forum_id) ) ? $lang['Browsing_forum'] : $lang['Registered_users'] ) . ' ' . $online_userlist;
$total_online_users = $logged_visible_online + $logged_hidden_online + $guests_online;
if ( $total_online_users > $board_config['record_online_users'])
{
$board_config['record_online_users'] = $total_online_users;
$board_config['record_online_date'] = time();
$sql = "UPDATE " . CONFIG_TABLE . "
SET config_value = '$total_online_users'
WHERE config_name = 'record_online_users'";
if ( !$db->sql_query($sql) )
{
message_die(GENERAL_ERROR, 'Could not update online user record (nr of users)', '', __LINE__, __FILE__, $sql);
}
$sql = "UPDATE " . CONFIG_TABLE . "
SET config_value = '" . $board_config['record_online_date'] . "'
WHERE config_name = 'record_online_date'";
if ( !$db->sql_query($sql) )
{
message_die(GENERAL_ERROR, 'Could not update online user record (date)', '', __LINE__, __FILE__, $sql);
}
}
if ( $total_online_users == 0 )
{
$l_t_user_s = $lang['Online_users_zero_total1'];
}
else if ( $total_online_users == 1 )
{
$l_t_user_s = $lang['Online_user_total1'];
}
else
{
$l_t_user_s = $lang['Online_users_total1'];
}
if ( $logged_visible_online == 0 )
{
$l_r_user_s = $lang['Reg_users_zero_total1'];
}
else if ( $logged_visible_online == 1 )
{
$l_r_user_s = $lang['Reg_user_total1'];
}
else
{
$l_r_user_s = $lang['Reg_users_total1'];
}
if ( $logged_hidden_online == 0 )
{
$l_h_user_s = $lang['Hidden_users_zero_total1'];
}
else if ( $logged_hidden_online == 1 )
{
$l_h_user_s = $lang['Hidden_user_total1'];
}
else
{
$l_h_user_s = $lang['Hidden_users_total1'];
}
if ( $guests_online == 0 )
{
$l_g_user_s = $lang['Guest_users_zero_total1'];
}
else if ( $guests_online == 1 )
{
$l_g_user_s = $lang['Guest_user_total1'];
}
else
{
$l_g_user_s = $lang['Guest_users_total1'];
}
$l_online_users = sprintf($l_t_user_s, $total_online_users);
$l_online_users .= sprintf($l_r_user_s, $logged_visible_online);
$l_online_users .= sprintf($l_h_user_s, $logged_hidden_online);
$l_online_users .= sprintf($l_g_user_s, $guests_online);
}
if ( ($userdata['session_logged_in']) && (empty($gen_simple_header)) )
{
if ( $userdata['user_new_privmsg'] )
{
$l_message_new = ( $userdata['user_new_privmsg'] == 1 ) ? $lang['New_pm'] : $lang['New_pms'];
$l_message_neww = ( $userdata['user_new_privmsg'] == 1 ) ? $lang['You_new_pm'] : $lang['You_new_pms'];
$l_privmsgs_text = sprintf($l_message_neww, $userdata['user_new_privmsg']);
$l_privmsgs_text1 = '<a href="'.append_sid('privmsg.'.$phpEx.'?folder=inbox').'">'.sprintf($l_message_neww, $userdata['user_new_privmsg']).'</a>';
$icon_pm = '<img src="./images/newpm.gif" alt=""/>';
$template->assign_block_vars('switch_new_privmsg', array());
if ( $userdata['user_last_privmsg'] > $userdata['user_lastvisit'] )
{
$sql = "UPDATE " . USERS_TABLE . "
SET user_last_privmsg = " . $userdata['user_lastvisit'] . "
WHERE user_id = " . $userdata['user_id'];
if ( !$db->sql_query($sql) )
{
message_die(GENERAL_ERROR, 'Could not update private message new/read time for user', '', __LINE__, __FILE__, $sql);
}
$s_privmsg_new = 1;
}
else
{
$s_privmsg_new = 0;
}
}
else
{
$icon_pm = '';
$l_privmsgs_text = $lang['No_new_pm'];
$s_privmsg_new = 0;
}
if ( $userdata['user_unread_privmsg'] )
{
$l_message_unread = ( $userdata['user_unread_privmsg'] == 1 ) ? $lang['Unread_pm'] : $lang['Unread_pms'];
$l_privmsgs_text_unread = sprintf($l_message_unread, $userdata['user_unread_privmsg']);
}
else
{
$l_privmsgs_text_unread = $lang['No_unread_pm'];
}
if ($userdata['user_level'] == ADMIN || $userdata['user_level'] == MOD)
{
$result = db_query('SELECT COUNT(report_id) AS num_reports FROM {POST_REPORTS_TABLE}');
$row = $db->sql_fetchrow($result);
if ( $row['num_reports'] == 1 )
{
$l_privmsgs_text1 .= ( $userdata['user_new_privmsg'] ) ? '<br/><a href="' . append_sid("report.$phpEx?mode=view") . '">поступила 1 жалоба</a>' : '<a href="' . append_sid("report.$phpEx?mode=view") . '">поступила 1 жалоба</a>';
}
elseif ( $row['num_reports'] > 1 )
{
$l_privmsgs_text1 .= ( $userdata['user_new_privmsg'] ) ? '<br/><a href="' . append_sid("report.$phpEx?mode=view") . '">поступило ' . $row['num_reports'] . ' жалобы</a>' : '<a href="' . append_sid("report.$phpEx?mode=view") . '">поступило ' . $row['num_reports'] . ' жалобы</a>';
}
}
}
else
{
$l_privmsgs_text = $lang['Login_check_pm'];
$l_privmsgs_text_unread = '';
$s_privmsg_new = 0;
}
$online_color = ' style="color: #0fff0f"';
$offline_color = ' style="color: #b40000"';
$hidden_color = ' style="color: #888888"';
$l_timezone = explode('.', $board_config['board_timezone']);
$l_timezone = (count($l_timezone) > 1 && $l_timezone[count($l_timezone)-1] != 0) ? $lang[sprintf('%.1f', $board_config['board_timezone'])] : $lang[number_format($board_config['board_timezone'])];
$nav_links_html.=$rss_link; // RSS autodiscovery
avatar_img($userdata['user_avatar_type'], $userdata['user_allowavatar'], $userdata['user_avatar'], $avatar_img, $avatar_mini);
// Start Points in header mod by volf
//
if ($userdata['user_id'] != ANONYMOUS && $userdata['admin_allow_points'])
{
$points_name = ($points_config['points_name']) ? $points_config['points_name'] : 'points';
$template->assign_block_vars('user_points', array(
'USERNAME' => $userdata['username'],
'NAME' => $points_name,
'POINTS' => sprintf($lang['You_points'], $userdata['user_points'], $points_name))
);
}
$user_style = ($profiledata['user_id']) ? '?' . POST_USERS_URL . '=' . $profiledata['user_id'] : '';
$css_style = ( $style_id != '' ) ? '/style.php?s=' . $style_id : '/style.php'.$user_style;
//
// End points in header mod
$template->assign_vars(array(
'SITENAME' => $board_config['sitename'],
'SITE_DESCRIPTION' => $board_config['site_desc'],
'PAGE_TITLE' => ($page_title == '') ? $board_config['site_desc'] : $page_title,
'AVATAR_IMG' => $avatar_img,
'AVATAR_MINI' => $avatar_mini,
'LAST_VISIT_DATE' => sprintf($lang['You_last_visit'], $s_last_visit),
'CURRENT_TIME' => sprintf($lang['Current_time'], create_date($board_config['default_dateformat'], time(), $board_config['board_timezone'])),
'TOTAL_USERS_ONLINE' => $l_online_users,
'LOGGED_IN_USER_LIST' => $online_userlist,
'RECORD_USERS' => sprintf($lang['Record_online_users'], $board_config['record_online_users'], create_date($board_config['default_dateformat'], $board_config['record_online_date'], $board_config['board_timezone'])),
'PRIVATE_MESSAGE_INFO' => $l_privmsgs_text,
'PRIVATE_MESSAGE_INFO_UNREAD' => $l_privmsgs_text_unread,
'PRIVATE_MESSAGE_NEW_FLAG' => $s_privmsg_new,
'PRIVMSG_IMG' => $icon_pm,
'HOBOE' => $l_privmsgs_text1,
'L_USERNAME' => $lang['Username'],
'L_PASSWORD' => $lang['Password'],
'L_LOGIN_LOGOUT' => $l_login_logout,
'L_LOGIN' => $lang['Login'],
'L_LOG_ME_IN' => $lang['Log_me_in'],
'L_AUTO_LOGIN' => $lang['Log_me_in'],
'L_INDEX' => sprintf($lang['Forum_Index'], $board_config['sitename']),
'L_PORTAL' => $lang['Portal'],
'L_VIKT' => $lang['Vikt'],
'L_INFORM' => $lang['Inform'],
'L_FILES' => $lang['Files'],
'L_FORUM' => $lang['Forum'],
'L_REGISTER' => $lang['Register'],
'L_PROFILE' => $lang['Profile'],
'L_SEARCH' => $lang['Search'],
'L_PRIVATEMSGS' => $lang['Private_Messages'],
'L_WHO_IS_ONLINE' => $lang['Who_is_Online'],
'L_MEMBERLIST' => $lang['Memberlist'],
'L_FAQ' => $lang['FAQ'],
'L_RULES' => $lang['Rules'],
'L_USERGROUPS' => $lang['Usergroups'],
'L_SEARCH_NEW' => $lang['Search_new'],
'L_SEARCH_UNANSWERED' => $lang['Search_unanswered'],
'L_SEARCH_SELF' => $lang['Search_your_posts'],
'U_SEARCH_UNANSWERED' => append_sid('search.'.$phpEx.'?search_id=unanswered'),
'U_SEARCH_SELF' => append_sid('search.'.$phpEx.'?search_id=egosearch'),
'U_SEARCH_NEW' => append_sid('search.'.$phpEx.'?search_id=newposts'),
'U_INDEX' => append_sid('forum.'.$phpEx),
'U_PORTAL' => append_sid('index.'.$phpEx),
'U_VIKT' => append_sid('viktorina.'.$phpEx),
'U_INFORM' => append_sid('inform.'.$phpEx),
'U_FILES' => append_sid('files.'.$phpEx),
'U_REGISTER' => append_sid('profile.'.$phpEx.'?mode=register'),
'U_PROFILE' => append_sid('profile.'.$phpEx.'?mode=viewprofile&u='.$userdata['user_id']),
'U_PRIVATEMSGS' => append_sid('privmsg.'.$phpEx),
'U_PRIVATEMSGS_POPUP' => append_sid('privmsg.'.$phpEx.'?mode=newpm'),
'U_SEARCH' => append_sid('search.'.$phpEx),
'U_MEMBERLIST' => append_sid('memberlist.'.$phpEx),
'U_BANLIST' => append_sid('memberlist.'.$phpEx.'?ban'),
'U_MODCP' => append_sid('modcp.'.$phpEx),
'U_VIEWONLINE' => append_sid('viewonline.'.$phpEx),
'U_LOGIN_LOGOUT' => append_sid($u_login_logout),
'U_GROUP_CP' => append_sid('groupcp.'.$phpEx),
'U_RULES' => append_sid('rules.'.$phpEx),
'U_STAFF' => append_sid('memberlist.'.$phpEx.'?admin'),
'L_STAFF' => $lang['Staff'],
'L_ALBUM' => $lang['Album'],
'U_ALBUM' => append_sid('album.'.$phpEx),
'CSS_STYLE' => $css_style,
'L_WEBLOGS' => $lang['Weblogs'],
'L_WEBLOG_CONFIG' => $lang['Weblog_CP'],
'L_MYWEBLOG' => $lang['Weblog_MyWeblog'],
'L_ENTRIES' => $lang['Entries'],
'U_WEBLOGS' => append_sid("weblogs.$phpEx"),
'U_MYWEBLOG' => append_sid("weblog.$phpEx?" . POST_WEBLOG_URL . "=" . $userdata['user_weblog']),
'U_WEBLOG_CONFIG' => append_sid("weblog_config.$phpEx"),
'U_ENTRIES' => append_sid("entries.$phpEx"),
'S_CONTENT_DIRECTION' => $lang['DIRECTION'],
'S_CONTENT_ENCODING' => $lang['ENCODING'],
'S_CONTENT_DIR_LEFT' => $lang['LEFT'],
'S_CONTENT_DIR_RIGHT' => $lang['RIGHT'],
'S_TIMEZONE' => sprintf($lang['All_times'], $l_timezone),
'S_LOGIN_ACTION' => append_sid('login.'.$phpEx))
);
//---------------РЕКЛАМА ЭТО ХОРОШО-------------------------------------------------
$sql = "SELECT * FROM " . LINKS_TABLE . " ORDER BY link_text";
if( !$result = $db->sql_query($sql) )
{
message_die(GENERAL_ERROR, "Couldn't obtain links data from database", "", __LINE__, __FILE__, $sql);
}
$links_data = $db->sql_fetchrowset($result);
for ($i = 0; $i < count($links_data); $i++)
{
$set_id = $links_data[$i]['link_set'];
$template->assign_block_vars("url" . $set_id . "", array(
"URL" => $links_data[$i]['link_url'],
"NAME" => $links_data[$i]['link_text'])
);
}
//-------------------МНОГО ОЧЕНЬ ПЛОХО----------------------------------------------
if ( !$userdata['session_logged_in'] )
{
$template->assign_block_vars('switch_user_logged_out', array());
if (!isset($board_config['allow_autologin']) || $board_config['allow_autologin'] )
{
$template->assign_block_vars('switch_allow_autologin', array());
$template->assign_block_vars('switch_user_logged_out.switch_allow_autologin', array());
}
}
else
{
$template->assign_block_vars('switch_user_logged_in', array());
if ( !empty($userdata['user_popup_pm']) )
{
$template->assign_block_vars('switch_enable_pm_popup', array());
}
}
if ( $board_config['shop'] )
{
$template->assign_block_vars('shop_on', array());
}
//$c_no_cache = (isset($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_sid']) || isset($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_data'])) ? 'no-cache="set-cookie", ' : '';
if (!empty($HTTP_SERVER_VARS['SERVER_SOFTWARE']) && strstr($HTTP_SERVER_VARS['SERVER_SOFTWARE'], 'Apache/2'))
{
header ('Cache-Control: no-cache, pre-check=0, post-check=0');
}
else
{
header ('Cache-Control: private, pre-check=0, post-check=0, max-age=0');
}
header ('Expires: 0');
header ('Pragma: no-cache');
$template->pparse('overall_header');
?>