mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-03 13:05:44 +02:00
261 lines
6.3 KiB
PHP
261 lines
6.3 KiB
PHP
<?php
|
|
/***************************************************************************
|
|
* pagestart.php
|
|
* -------------------
|
|
* begin : Thursday, Aug 2, 2001
|
|
* copyright : (C) 2001 The phpBB Group
|
|
* email : support@phpbb.com
|
|
*
|
|
* $Id$
|
|
*
|
|
***************************************************************************/
|
|
|
|
/***************************************************************************
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as published by
|
|
* the Free Software Foundation; either version 2 of the License, or
|
|
* (at your option) any later version.
|
|
*
|
|
***************************************************************************/
|
|
|
|
if ( !defined('IN_PHPBB') )
|
|
{
|
|
die('Hacking attempt');
|
|
}
|
|
|
|
define('IN_ADMIN', true);
|
|
include($phpbb_root_path . 'common.'.$phpEx);
|
|
|
|
// Start session management
|
|
$user->start($update);
|
|
$user->setup();
|
|
$auth->acl($user->data);
|
|
// End session management
|
|
|
|
//
|
|
// If session_ids do not match, rewrite the URL correctly then redirect the user
|
|
//
|
|
if ($_REQUEST['sid'] != $user->data['session_id'])
|
|
{
|
|
$url = preg_replace('/sid=([^&]*)(&?)/i', '', $_SERVER['REQUEST_URI']);
|
|
$url = preg_replace('/\?$/', '', $url);
|
|
$url .= ((strpos($url, '?')) ? '&' : '?') . 'sid=' . $user->data['session_id'];
|
|
redirect($url);
|
|
}
|
|
|
|
// -----------------------------
|
|
// Functions
|
|
function page_header($sub_title, $meta = '', $table_html = true)
|
|
{
|
|
global $config, $db, $user, $phpEx;
|
|
|
|
define('HEADER_INC', true);
|
|
|
|
// gzip_compression
|
|
if ( $config['gzip_compress'] )
|
|
{
|
|
if ( extension_loaded('zlib') && strstr($HTTP_USER_AGENT,'compatible') && !headers_sent() )
|
|
{
|
|
ob_start('ob_gzhandler');
|
|
}
|
|
}
|
|
|
|
header("Content-type: text/html; charset=" . $user->lang['ENCODING']);
|
|
|
|
?>
|
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
|
<html>
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=<?php echo $user->lang['ENCODING']; ?>">
|
|
<meta http-equiv="Content-Style-Type" content="text/css">
|
|
<link rel="stylesheet" href="subSilver.css" type="text/css">
|
|
<?php
|
|
|
|
echo $meta;
|
|
|
|
?>
|
|
<style type="text/css">
|
|
<!--
|
|
th { background-image: url('images/cellpic3.gif') }
|
|
td.cat { background-image: url('images/cellpic1.gif') }
|
|
//-->
|
|
</style>
|
|
<title><?php echo $config['sitename'] . ' - ' . $page_title; ?></title>
|
|
</head>
|
|
<body>
|
|
|
|
<?php
|
|
|
|
if ( $table_html )
|
|
{
|
|
|
|
?>
|
|
<a name="top"></a>
|
|
|
|
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
<tr>
|
|
<td colspan="2" height="25" align="right" nowrap="nowrap"><span class="subtitle">» <i><?php echo $sub_title; ?></i></span> </td>
|
|
</tr>
|
|
</table>
|
|
|
|
<table width="95%" cellspacing="0" cellpadding="0" border="0" align="center">
|
|
<tr>
|
|
<td><br clear="all" />
|
|
|
|
<?php
|
|
|
|
}
|
|
|
|
}
|
|
|
|
function page_footer($copyright_html = true)
|
|
{
|
|
global $config, $db, $phpEx;
|
|
|
|
// Close our DB connection.
|
|
$db->sql_close();
|
|
?>
|
|
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
<?php
|
|
|
|
if ( $copyright_html )
|
|
{
|
|
|
|
?>
|
|
|
|
<div align="center"><span class="copyright">Powered by phpBB <?php echo $config['version']; ?> © 2002 <a href="http://www.phpbb.com/" target="_phpbb" class="copyright">phpBB Group</a></span></div>
|
|
|
|
<br clear="all" />
|
|
|
|
</body>
|
|
</html>
|
|
<?php
|
|
|
|
}
|
|
|
|
exit;
|
|
}
|
|
|
|
function page_message($title, $message, $show_header = false)
|
|
{
|
|
global $phpEx, $SID, $user;
|
|
|
|
if ( $show_header )
|
|
{
|
|
|
|
?>
|
|
|
|
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
<tr>
|
|
<td><a href="../index.<?php echo $phpEx . $SID; ?>"><img src="images/header_left.jpg" width="200" height="60" alt="phpBB Logo" title="phpBB Logo" border="0"/></a></td>
|
|
<td width="100%" background="images/header_bg.jpg" height="60" align="right" nowrap="nowrap"><span class="maintitle"><?php echo $user->lang['Admin_title']; ?></span> </td>
|
|
</tr>
|
|
</table>
|
|
|
|
<?php
|
|
|
|
}
|
|
|
|
?>
|
|
|
|
<br /><br />
|
|
|
|
<table class="bg" width="80%" cellpadding="4" cellspacing="1" border="0" align="center">
|
|
<tr>
|
|
<th><?php echo $title; ?></th>
|
|
</tr>
|
|
<tr>
|
|
<td class="row1" align="center"><?php echo $message; ?></td>
|
|
</tr>
|
|
</table>
|
|
|
|
<br />
|
|
|
|
<?php
|
|
|
|
}
|
|
|
|
function add_admin_log()
|
|
{
|
|
global $db, $user;
|
|
|
|
$arguments = func_get_args();
|
|
|
|
$action = array_shift($arguments);
|
|
$data = ( !sizeof($arguments) ) ? '' : addslashes(serialize($arguments));
|
|
|
|
$sql = "INSERT INTO " . LOG_ADMIN_TABLE . " (user_id, log_ip, log_time, log_operation, log_data)
|
|
VALUES (" . $user->data['user_id'] . ", '$user->ip', " . time() . ", '$action', '$data')";
|
|
$db->sql_query($sql);
|
|
|
|
return;
|
|
}
|
|
|
|
function view_log($mode, &$log, &$log_count, $limit = 0, $offset = 0, $forum_id = 0, $limit_days = 0, $sort_by = 'l.log_time DESC')
|
|
{
|
|
global $db, $user, $phpEx, $SID;
|
|
|
|
$table_sql = ( $mode == 'admin' ) ? LOG_ADMIN_TABLE : LOG_MOD_TABLE;
|
|
$forum_sql = ( $mode == 'mod' && $forum_id ) ? "AND l.forum_id = $forum_id" : '';
|
|
$limit_sql = ( $limit ) ? ( ( $offset ) ? "LIMIT $offset, $limit" : "LIMIT $limit" ) : '';
|
|
|
|
$sql = "SELECT l.log_id, l.user_id, l.log_ip, l.log_time, l.log_operation, l.log_data, u.username
|
|
FROM $table_sql l, " . USERS_TABLE . " u
|
|
WHERE u.user_id = l.user_id
|
|
AND l.log_time >= $limit_days
|
|
$forum_sql
|
|
ORDER BY $sort_by
|
|
$limit_sql";
|
|
$result = $db->sql_query($sql);
|
|
|
|
$log = array();
|
|
if ( $row = $db->sql_fetchrow($result) )
|
|
{
|
|
$i = 0;
|
|
do
|
|
{
|
|
$log[$i]['id'] = $row['log_id'];
|
|
$log[$i]['username'] = '<a href="admin_users.'.$phpEx . $SID . '&u=' . $row['user_id'] . '">' . $row['username'] . '</a>';
|
|
$log[$i]['ip'] = $row['log_ip'];
|
|
$log[$i]['time'] = $row['log_time'];
|
|
|
|
$log[$i]['action'] = ( !empty($user->lang[$row['log_operation']]) ) ? $user->lang[$row['log_operation']] : ucfirst(str_replace('_', ' ', $row['log_operation']));
|
|
|
|
if ( !empty($row['log_data']) )
|
|
{
|
|
$log_data_ary = unserialize(stripslashes($row['log_data']));
|
|
|
|
foreach ( $log_data_ary as $log_data )
|
|
{
|
|
$log[$i]['action'] = preg_replace('#%s#', $log_data, $log[$i]['action'], 1);
|
|
}
|
|
}
|
|
|
|
$i++;
|
|
}
|
|
while ( $row = $db->sql_fetchrow($result) );
|
|
}
|
|
|
|
$db->sql_freeresult($result);
|
|
|
|
$sql = "SELECT COUNT(*) AS total_entries
|
|
FROM $table_sql l
|
|
WHERE l.log_time >= $limit_days
|
|
$forum_sql";
|
|
$result = $db->sql_query($sql);
|
|
|
|
$row = $db->sql_fetchrow($result);
|
|
$db->sql_freeresult($result);
|
|
|
|
$log_count = $row['total_entries'];
|
|
|
|
return;
|
|
}
|
|
// End Functions
|
|
// -----------------------------
|
|
|
|
?>
|