mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-07 20:08:53 +00:00
- removed db cache (might re-appear, but for now we do not see the need for it)
- all changes to styles/subsilver/template are purely cosmetic (no functional changes) - cosmetics - bugfixes - add index to modules table - use modules ordering code for forums too git-svn-id: file:///svn/phpbb/trunk@6073 89ea8834-ac86-4346-8a33-228a782c2dd0
This commit is contained in:
parent
a3c9182e0f
commit
b0c3e39582
144 changed files with 4275 additions and 4156 deletions
|
@ -108,7 +108,7 @@ function adm_page_header($page_title)
|
||||||
// gzip_compression
|
// gzip_compression
|
||||||
if ($config['gzip_compress'])
|
if ($config['gzip_compress'])
|
||||||
{
|
{
|
||||||
if (extension_loaded('zlib') && !headers_sent())
|
if (@extension_loaded('zlib') && !headers_sent())
|
||||||
{
|
{
|
||||||
ob_start('ob_gzhandler');
|
ob_start('ob_gzhandler');
|
||||||
}
|
}
|
||||||
|
@ -135,6 +135,12 @@ function adm_page_header($page_title)
|
||||||
'T_RANKS_PATH' => "{$phpbb_root_path}{$config['ranks_path']}/",
|
'T_RANKS_PATH' => "{$phpbb_root_path}{$config['ranks_path']}/",
|
||||||
'T_UPLOAD_PATH' => "{$phpbb_root_path}{$config['upload_path']}/",
|
'T_UPLOAD_PATH' => "{$phpbb_root_path}{$config['upload_path']}/",
|
||||||
|
|
||||||
|
'ICON_MOVE_UP' => '<img src="' . $phpbb_admin_path . 'images/icon_up.gif" alt="' . $user->lang['MOVE_UP'] . '" title="' . $user->lang['MOVE_UP'] . '" />',
|
||||||
|
'ICON_MOVE_DOWN' => '<img src="' . $phpbb_admin_path . 'images/icon_down.gif" alt="' . $user->lang['MOVE_DOWN'] . '" title="' . $user->lang['MOVE_DOWN'] . '" />',
|
||||||
|
'ICON_EDIT' => '<img src="' . $phpbb_admin_path . 'images/icon_edit.gif" alt="' . $user->lang['EDIT'] . '" title="' . $user->lang['EDIT'] . '" />',
|
||||||
|
'ICON_DELETE' => '<img src="' . $phpbb_admin_path . 'images/icon_delete.gif" alt="' . $user->lang['DELETE'] . '" title="' . $user->lang['DELETE'] . '" />',
|
||||||
|
'ICON_SYNC' => '<img src="' . $phpbb_admin_path . 'images/icon_sync.gif" alt="' . $user->lang['RESYNC'] . '" title="' . $user->lang['RESYNC'] . '" />',
|
||||||
|
|
||||||
'S_CONTENT_DIRECTION' => $user->lang['DIRECTION'],
|
'S_CONTENT_DIRECTION' => $user->lang['DIRECTION'],
|
||||||
'S_CONTENT_ENCODING' => $user->lang['ENCODING'],
|
'S_CONTENT_ENCODING' => $user->lang['ENCODING'],
|
||||||
'S_CONTENT_DIR_LEFT' => $user->lang['LEFT'],
|
'S_CONTENT_DIR_LEFT' => $user->lang['LEFT'],
|
||||||
|
|
|
@ -87,7 +87,7 @@
|
||||||
<!-- BEGIN bbcodes -->
|
<!-- BEGIN bbcodes -->
|
||||||
<!-- IF bbcodes.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
|
<!-- IF bbcodes.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
|
||||||
<td style="text-align: center;">{bbcodes.BBCODE_TAG}</td>
|
<td style="text-align: center;">{bbcodes.BBCODE_TAG}</td>
|
||||||
<td style="text-align: center;"><a href="{bbcodes.U_EDIT}">{L_EDIT}</a> | <a href="{bbcodes.U_DELETE}">{L_DELETE}</a></td>
|
<td style="text-align: center;"><a href="{bbcodes.U_EDIT}">{ICON_EDIT}</a> <a href="{bbcodes.U_DELETE}">{ICON_DELETE}</a></td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- END bbcodes -->
|
<!-- END bbcodes -->
|
||||||
</tbody>
|
</tbody>
|
||||||
|
|
|
@ -316,11 +316,11 @@
|
||||||
<!-- IF forums.S_FORUM_POST --><br /><br /><span>{L_TOPICS}: <b>{forums.FORUM_TOPICS}</b> / {L_POSTS}: <b>{forums.FORUM_POSTS}</b></span><!-- ENDIF -->
|
<!-- IF forums.S_FORUM_POST --><br /><br /><span>{L_TOPICS}: <b>{forums.FORUM_TOPICS}</b> / {L_POSTS}: <b>{forums.FORUM_POSTS}</b></span><!-- ENDIF -->
|
||||||
</td>
|
</td>
|
||||||
<td style="width: 15%; text-align: right; white-space: nowrap;">
|
<td style="width: 15%; text-align: right; white-space: nowrap;">
|
||||||
<!-- IF not forums.S_FIRST_ROW --><a href="{forums.U_MOVE_UP}"><img src="images/icon_up.gif" alt="{L_MOVE_UP}" title="{L_MOVE_UP}" width="16" height="16" /></a> <!-- ENDIF -->
|
<!-- IF not forums.S_FIRST_ROW --><a href="{forums.U_MOVE_UP}">{ICON_MOVE_UP}</a> <!-- ENDIF -->
|
||||||
<!-- IF not forums.S_LAST_ROW --><a href="{forums.U_MOVE_DOWN}"><img src="images/icon_down.gif" alt="{L_MOVE_DOWN}" title="{L_MOVE_DOWN}" width="16" height="16" /></a> <!-- ENDIF -->
|
<!-- IF not forums.S_LAST_ROW --><a href="{forums.U_MOVE_DOWN}">{ICON_MOVE_DOWN}</a> <!-- ENDIF -->
|
||||||
<a href="{forums.U_EDIT}"><img src="images/icon_edit.gif" alt="{L_EDIT}" title="{L_EDIT}" width="16" height="16" /></a>
|
<a href="{forums.U_EDIT}">{ICON_EDIT}</a>
|
||||||
<!-- IF not forums.S_LINK --><a href="{forums.U_SYNC}"><img src="images/icon_sync.gif" alt="{L_RESYNC}" title="{L_RESYNC}" width="16" height="16" /></a> <!-- ENDIF -->
|
<!-- IF not forums.S_LINK --><a href="{forums.U_SYNC}">{ICON_SYNC}</a> <!-- ENDIF -->
|
||||||
<a href="{forums.U_DELETE}"><img src="images/icon_delete.gif" alt="{L_DELETE}" title="{L_DELETE}" width="16" height="16" /></a>
|
<a href="{forums.U_DELETE}">{ICON_DELETE}</a>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- END forums -->
|
<!-- END forums -->
|
||||||
|
|
|
@ -145,10 +145,10 @@
|
||||||
<td style="text-align: center;">{items.EMOTION}</td>
|
<td style="text-align: center;">{items.EMOTION}</td>
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
<td style="width: 15%; text-align: right; white-space: nowrap;">
|
<td style="width: 15%; text-align: right; white-space: nowrap;">
|
||||||
<!-- IF not items.S_FIRST_ROW --><a href="{items.U_MOVE_UP}"><img src="images/icon_up.gif" alt="{L_MOVE_UP}" title="{L_MOVE_UP}" width="16" height="16" /></a> <!-- ENDIF -->
|
<!-- IF not items.S_FIRST_ROW --><a href="{items.U_MOVE_UP}">{ICON_MOVE_UP}</a> <!-- ENDIF -->
|
||||||
<!-- IF not items.S_LAST_ROW --><a href="{items.U_MOVE_DOWN}"><img src="images/icon_down.gif" alt="{L_MOVE_DOWN}" title="{L_MOVE_DOWN}" width="16" height="16" /></a> <!-- ENDIF -->
|
<!-- IF not items.S_LAST_ROW --><a href="{items.U_MOVE_DOWN}">{ICON_MOVE_DOWN}</a> <!-- ENDIF -->
|
||||||
<a href="{items.U_EDIT}"><img src="images/icon_edit.gif" alt="{L_EDIT}" title="{L_EDIT}" width="16" height="16" /></a>
|
<a href="{items.U_EDIT}">{ICON_EDIT}</a>
|
||||||
<a href="{items.U_DELETE}"><img src="images/icon_delete.gif" alt="{L_DELETE}" title="{L_DELETE}" width="16" height="16" /></a>
|
<a href="{items.U_DELETE}">{ICON_DELETE}</a>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- END items -->
|
<!-- END items -->
|
||||||
|
|
|
@ -144,11 +144,13 @@
|
||||||
<tr>
|
<tr>
|
||||||
<td style="width: 5%;">{modules.MODULE_IMAGE}</td>
|
<td style="width: 5%;">{modules.MODULE_IMAGE}</td>
|
||||||
<td style="width: 50%;"><a href="{modules.U_MODULE}">{modules.MODULE_TITLE}</a><!-- IF not modules.MODULE_DISPLAYED --> <span class="small">[{L_HIDDEN_MODULE}]</span><!-- ENDIF --></td>
|
<td style="width: 50%;"><a href="{modules.U_MODULE}">{modules.MODULE_TITLE}</a><!-- IF not modules.MODULE_DISPLAYED --> <span class="small">[{L_HIDDEN_MODULE}]</span><!-- ENDIF --></td>
|
||||||
<td style="width: 15%; white-space: nowrap; text-align: center; vertical-align: middle;"><a href="{modules.U_MOVE_UP}">{L_MOVE_UP}</a><br /><a href="{modules.U_MOVE_DOWN}">{L_MOVE_DOWN}</a></td>
|
<td style="width: 15%; white-space: nowrap; text-align: center; vertical-align: middle;"> <!-- IF modules.MODULE_ENABLED --><a href="{modules.U_DISABLE}">{L_DISABLE}</a><!-- ELSE --><a href="{modules.U_ENABLE}">{L_ENABLE}</a><!-- ENDIF --> </td>
|
||||||
<td style="width: 20%; white-space: nowrap; text-align: center; vertical-align: middle;">
|
<td style="width: 20%; white-space: nowrap; text-align: center; vertical-align: middle;">
|
||||||
<a href="{modules.U_EDIT}">{L_EDIT}</a> | <a href="{modules.U_DELETE}">{L_DELETE}</a> |
|
<!-- IF not modules.S_FIRST_ROW --><a href="{modules.U_MOVE_UP}">{ICON_MOVE_UP}</a> <!-- ENDIF -->
|
||||||
<!-- IF modules.MODULE_ENABLED --><a href="{modules.U_DISABLE}">{L_DISABLE}</a><!-- ELSE --><a href="{modules.U_ENABLE}">{L_ENABLE}</a><!-- ENDIF -->
|
<!-- IF not modules.S_LAST_ROW --><a href="{modules.U_MOVE_DOWN}">{ICON_MOVE_DOWN}</a> <!-- ENDIF -->
|
||||||
</td>
|
<a href="{modules.U_EDIT}">{ICON_EDIT}</a>
|
||||||
|
<a href="{modules.U_DELETE}">{ICON_DELETE}</a>
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- END modules -->
|
<!-- END modules -->
|
||||||
</tbody>
|
</tbody>
|
||||||
|
|
|
@ -188,10 +188,10 @@
|
||||||
</td>
|
</td>
|
||||||
<td style="vertical-align: top; white-space: nowrap;"><!-- IF roles.U_DISPLAY_ITEMS --><a href="{roles.U_DISPLAY_ITEMS}">{L_VIEW_ASSIGNED_ITEMS}</a><!-- ELSE -->{L_VIEW_ASSIGNED_ITEMS}<!-- ENDIF --></td>
|
<td style="vertical-align: top; white-space: nowrap;"><!-- IF roles.U_DISPLAY_ITEMS --><a href="{roles.U_DISPLAY_ITEMS}">{L_VIEW_ASSIGNED_ITEMS}</a><!-- ELSE -->{L_VIEW_ASSIGNED_ITEMS}<!-- ENDIF --></td>
|
||||||
<td style="vertical-align: top; white-space: nowrap;">
|
<td style="vertical-align: top; white-space: nowrap;">
|
||||||
<!-- IF not roles.S_FIRST_ROW --><a href="{roles.U_MOVE_UP}"><img src="images/icon_up.gif" alt="{L_MOVE_UP}" title="{L_MOVE_UP}" width="16" height="16" /></a> <!-- ENDIF -->
|
<!-- IF not roles.S_FIRST_ROW --><a href="{roles.U_MOVE_UP}">{ICON_MOVE_UP}</a> <!-- ENDIF -->
|
||||||
<!-- IF not roles.S_LAST_ROW --><a href="{roles.U_MOVE_DOWN}"><img src="images/icon_down.gif" alt="{L_MOVE_DOWN}" title="{L_MOVE_DOWN}" width="16" height="16" /></a> <!-- ENDIF -->
|
<!-- IF not roles.S_LAST_ROW --><a href="{roles.U_MOVE_DOWN}">{ICON_MOVE_DOWN}</a> <!-- ENDIF -->
|
||||||
<a href="{roles.U_EDIT}"><img src="images/icon_edit.gif" alt="{L_EDIT_ROLE}" title="{L_EDIT_ROLE}" width="16" height="16" /></a>
|
<a href="{roles.U_EDIT}" title="{L_EDIT_ROLE}">{ICON_EDIT}</a>
|
||||||
<a href="{roles.U_REMOVE}"><img src="images/icon_delete.gif" alt="{L_REMOVE_ROLE}" title="{L_REMOVE_ROLE}" width="16" height="16" /></a>
|
<a href="{roles.U_REMOVE}" title="{L_REMOVE_ROLE}">{ICON_DELETE}</a>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- END roles -->
|
<!-- END roles -->
|
||||||
|
|
|
@ -167,10 +167,10 @@
|
||||||
<td><a href="{fields.U_ACTIVATE_DEACTIVATE}">{fields.L_ACTIVATE_DEACTIVATE}</a><!-- IF fields.S_NEED_EDIT --> | <a href="{fields.U_EDIT}"><span style="color:red;">{L_EDIT}</span><!-- ENDIF --></td>
|
<td><a href="{fields.U_ACTIVATE_DEACTIVATE}">{fields.L_ACTIVATE_DEACTIVATE}</a><!-- IF fields.S_NEED_EDIT --> | <a href="{fields.U_EDIT}"><span style="color:red;">{L_EDIT}</span><!-- ENDIF --></td>
|
||||||
|
|
||||||
<td style="width: 15%; text-align: right; white-space: nowrap;">
|
<td style="width: 15%; text-align: right; white-space: nowrap;">
|
||||||
<!-- IF not fields.S_FIRST_ROW --><a href="{fields.U_MOVE_UP}"><img src="images/icon_up.gif" alt="{L_MOVE_UP}" title="{L_MOVE_UP}" width="16" height="16" /></a> <!-- ENDIF -->
|
<!-- IF not fields.S_FIRST_ROW --><a href="{fields.U_MOVE_UP}">{ICON_MOVE_UP}</a> <!-- ENDIF -->
|
||||||
<!-- IF not fields.S_LAST_ROW --><a href="{fields.U_MOVE_DOWN}"><img src="images/icon_down.gif" alt="{L_MOVE_DOWN}" title="{L_MOVE_DOWN}" width="16" height="16" /></a> <!-- ENDIF -->
|
<!-- IF not fields.S_LAST_ROW --><a href="{fields.U_MOVE_DOWN}">{ICON_MOVE_DOWN}</a> <!-- ENDIF -->
|
||||||
<!-- IF not fields.S_NEED_EDIT --><a href="{fields.U_EDIT}"><img src="images/icon_edit.gif" alt="{L_EDIT}" title="{L_EDIT}" width="16" height="16" /></a> <!-- ENDIF -->
|
<!-- IF not fields.S_NEED_EDIT --><a href="{fields.U_EDIT}">{ICON_EDIT}</a> <!-- ENDIF -->
|
||||||
<a href="{fields.U_DELETE}"><img src="images/icon_delete.gif" alt="{L_DELETE}" title="{L_DELETE}" width="16" height="16" /></a>
|
<a href="{fields.U_DELETE}">{ICON_DELETE}</a>
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
</tr>
|
</tr>
|
||||||
|
|
|
@ -75,7 +75,7 @@
|
||||||
<td style="text-align: center;"><!-- IF ranks.S_RANK_IMAGE --><img src="{ranks.RANK_IMAGE}" alt="{ranks.RANK_TITLE}" title="{ranks.RANK_TITLE}" /><!-- ELSE --> - <!-- ENDIF --></td>
|
<td style="text-align: center;"><!-- IF ranks.S_RANK_IMAGE --><img src="{ranks.RANK_IMAGE}" alt="{ranks.RANK_TITLE}" title="{ranks.RANK_TITLE}" /><!-- ELSE --> - <!-- ENDIF --></td>
|
||||||
<td style="text-align: center;">{ranks.RANK_TITLE}</td>
|
<td style="text-align: center;">{ranks.RANK_TITLE}</td>
|
||||||
<td style="text-align: center;"><!-- IF ranks.S_SPECIAL_RANK --> - <!-- ELSE -->{ranks.MIN_POSTS}<!-- ENDIF --></td>
|
<td style="text-align: center;"><!-- IF ranks.S_SPECIAL_RANK --> - <!-- ELSE -->{ranks.MIN_POSTS}<!-- ENDIF --></td>
|
||||||
<td style="text-align: center;"><a href="{ranks.U_EDIT}">{L_EDIT}</a> | <a href="{ranks.U_DELETE}">{L_DELETE}</a></td>
|
<td style="text-align: center;"><a href="{ranks.U_EDIT}">{ICON_EDIT}</a> <a href="{ranks.U_DELETE}">{ICON_DELETE}</a></td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- END ranks -->
|
<!-- END ranks -->
|
||||||
</tbody>
|
</tbody>
|
||||||
|
|
|
@ -65,10 +65,10 @@
|
||||||
</td>
|
</td>
|
||||||
<td style="width: 100px;">{reasons.REASON_COUNT}</td>
|
<td style="width: 100px;">{reasons.REASON_COUNT}</td>
|
||||||
<td style="width: 15%; text-align: right; white-space: nowrap;">
|
<td style="width: 15%; text-align: right; white-space: nowrap;">
|
||||||
<!-- IF not reasons.S_FIRST_ROW --><a href="{reasons.U_MOVE_UP}"><img src="images/icon_up.gif" alt="{L_MOVE_UP}" title="{L_MOVE_UP}" width="16" height="16" /></a> <!-- ENDIF -->
|
<!-- IF not reasons.S_FIRST_ROW --><a href="{reasons.U_MOVE_UP}">{ICON_MOVE_UP}</a> <!-- ENDIF -->
|
||||||
<!-- IF not reasons.S_LAST_ROW --><a href="{reasons.U_MOVE_DOWN}"><img src="images/icon_down.gif" alt="{L_MOVE_DOWN}" title="{L_MOVE_DOWN}" width="16" height="16" /></a> <!-- ENDIF -->
|
<!-- IF not reasons.S_LAST_ROW --><a href="{reasons.U_MOVE_DOWN}">{ICON_MOVE_DOWN}</a> <!-- ENDIF -->
|
||||||
<a href="{reasons.U_EDIT}"><img src="images/icon_edit.gif" alt="{L_EDIT}" title="{L_EDIT}" width="16" height="16" /></a>
|
<a href="{reasons.U_EDIT}">{ICON_EDIT}</a>
|
||||||
<!-- IF reasons.U_DELETE --><a href="{reasons.U_DELETE}"><img src="images/icon_delete.gif" alt="{L_DELETE}" title="{L_DELETE}" width="16" height="16" /></a><!-- ENDIF -->
|
<!-- IF reasons.U_DELETE --><a href="{reasons.U_DELETE}">{ICON_DELETE}</a><!-- ENDIF -->
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- END reasons -->
|
<!-- END reasons -->
|
||||||
|
|
|
@ -1,227 +0,0 @@
|
||||||
<?php
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* @package acm
|
|
||||||
* @version $Id$
|
|
||||||
* @copyright (c) 2005 phpBB Group
|
|
||||||
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @package acm
|
|
||||||
* ACM Database Caching
|
|
||||||
*/
|
|
||||||
class acm
|
|
||||||
{
|
|
||||||
// Contains all loaded variables
|
|
||||||
var $vars = '';
|
|
||||||
|
|
||||||
// Contains the names of the variables that are ready to be used
|
|
||||||
// (iow, variables that have been unserialized)
|
|
||||||
var $var_ready = array();
|
|
||||||
|
|
||||||
// Contains variables that have been updated or destroyed this session
|
|
||||||
var $var_expires = array();
|
|
||||||
|
|
||||||
// Contains variables that have already been requested
|
|
||||||
// If a variable has been requested but not loaded, it simply means it
|
|
||||||
// wasn't found in the db
|
|
||||||
var $var_requested = array();
|
|
||||||
|
|
||||||
function load($var_names = '')
|
|
||||||
{
|
|
||||||
global $db;
|
|
||||||
$this->vars = array();
|
|
||||||
|
|
||||||
if (is_array($var_names))
|
|
||||||
{
|
|
||||||
$var_requested = $var_names;
|
|
||||||
$sql_condition = "var_name IN ('" . implode("', '", $var_names) . "')";
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
// $sql_condition = "var_name NOT LIKE '\_%'";
|
|
||||||
$sql_condition = "LEFT(var_name, 1) <> '_'";
|
|
||||||
}
|
|
||||||
|
|
||||||
$sql = 'SELECT var_name, var_data
|
|
||||||
FROM ' . CACHE_TABLE . '
|
|
||||||
WHERE var_expires > ' . time() . "
|
|
||||||
AND $sql_condition";
|
|
||||||
$result = $db->sql_query($sql);
|
|
||||||
|
|
||||||
while ($row = $db->sql_fetchrow($result))
|
|
||||||
{
|
|
||||||
$this->vars[$row['var_name']] = $row['var_data'];
|
|
||||||
|
|
||||||
if (!$var_names)
|
|
||||||
{
|
|
||||||
$this->var_requested[] = $row['var_name'];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function unload()
|
|
||||||
{
|
|
||||||
$this->save();
|
|
||||||
unset($this->vars);
|
|
||||||
}
|
|
||||||
|
|
||||||
function save()
|
|
||||||
{
|
|
||||||
global $db;
|
|
||||||
|
|
||||||
$delete = $insert = array();
|
|
||||||
foreach ($this->var_expires as $var_name => $expires)
|
|
||||||
{
|
|
||||||
if ($expires == 'now')
|
|
||||||
{
|
|
||||||
$delete[] = $var_name;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
$delete[] = $var_name;
|
|
||||||
$insert[] = "'$var_name', $expires, '" . $db->sql_escape(serialize($this->vars[$var_name])) . "'";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$this->var_expires = array();
|
|
||||||
|
|
||||||
if (sizeof($delete))
|
|
||||||
{
|
|
||||||
$sql = 'DELETE FROM ' . CACHE_TABLE . "
|
|
||||||
WHERE var_name IN ('" . implode("', '", $delete) . "')";
|
|
||||||
$db->sql_query($sql);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (sizeof($insert))
|
|
||||||
{
|
|
||||||
switch (SQL_LAYER)
|
|
||||||
{
|
|
||||||
case 'mysql':
|
|
||||||
case 'mysql4':
|
|
||||||
case 'mysqli':
|
|
||||||
$sql = 'INSERT INTO ' . CACHE_TABLE . ' (var_name, var_expires, var_data)
|
|
||||||
VALUES (' . implode('), (', $insert) . ')';
|
|
||||||
$db->sql_query($sql);
|
|
||||||
break;
|
|
||||||
|
|
||||||
default:
|
|
||||||
foreach ($insert as $values)
|
|
||||||
{
|
|
||||||
$sql = 'INSERT INTO ' . CACHE_TABLE . " (var_name, var_expires, var_data)
|
|
||||||
VALUES ($values)";
|
|
||||||
$db->sql_query($sql);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function tidy()
|
|
||||||
{
|
|
||||||
global $db;
|
|
||||||
|
|
||||||
$sql = 'DELETE FROM ' . CACHE_TABLE . '
|
|
||||||
WHERE var_expires < ' . time();
|
|
||||||
$db->sql_query($sql);
|
|
||||||
|
|
||||||
set_config('cache_last_gc', time(), true);
|
|
||||||
}
|
|
||||||
|
|
||||||
function get($var_name)
|
|
||||||
{
|
|
||||||
if (!is_array($this->vars))
|
|
||||||
{
|
|
||||||
$this->load();
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($var_name{0} == '_')
|
|
||||||
{
|
|
||||||
if (!in_array($var_name, $this->var_requested))
|
|
||||||
{
|
|
||||||
$this->var_requested[] = $var_name;
|
|
||||||
|
|
||||||
global $db;
|
|
||||||
$sql = 'SELECT var_data
|
|
||||||
FROM ' . CACHE_TABLE . "
|
|
||||||
WHERE var_name = '$var_name'
|
|
||||||
AND var_expires > " . time();
|
|
||||||
$result = $db->sql_query($sql);
|
|
||||||
if ($row = $db->sql_fetchrow($result))
|
|
||||||
{
|
|
||||||
$this->vars[$var_name] = $row['var_data'];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($this->_exists($var_name))
|
|
||||||
{
|
|
||||||
if (empty($this->var_ready[$var_name]))
|
|
||||||
{
|
|
||||||
$this->vars[$var_name] = unserialize($this->vars[$var_name]);
|
|
||||||
$this->var_ready[$var_name] = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
return $this->vars[$var_name];
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function put($var_name, $var_data, $ttl = 31536000)
|
|
||||||
{
|
|
||||||
$this->vars[$var_name] = $var_data;
|
|
||||||
|
|
||||||
if ($var_name{0} == '_')
|
|
||||||
{
|
|
||||||
global $db;
|
|
||||||
|
|
||||||
switch (SQL_LAYER)
|
|
||||||
{
|
|
||||||
case 'mysql':
|
|
||||||
case 'mysql4':
|
|
||||||
case 'mysqli':
|
|
||||||
$INSERT = 'REPLACE';
|
|
||||||
break;
|
|
||||||
|
|
||||||
default:
|
|
||||||
$sql = 'DELETE FROM ' . CACHE_TABLE . "
|
|
||||||
WHERE var_name = '$var_name'";
|
|
||||||
$db->sql_query($sql);
|
|
||||||
|
|
||||||
$INSERT = 'INSERT';
|
|
||||||
}
|
|
||||||
|
|
||||||
$sql = "$INSERT INTO " . CACHE_TABLE . " (var_name, var_expires, var_data)
|
|
||||||
VALUES ('$var_name', " . (time() + $ttl) . ", '" . $db->sql_escape(serialize($var_data)) . "')";
|
|
||||||
$db->sql_query($sql);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
$this->var_expires[$var_name] = time() + $ttl;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function destroy($var_name, $void = NULL)
|
|
||||||
{
|
|
||||||
if (isset($this->vars[$var_name]))
|
|
||||||
{
|
|
||||||
$this->var_expires[$var_name] = 'now';
|
|
||||||
unset($this->vars[$var_name]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function _exists($var_name)
|
|
||||||
{
|
|
||||||
if (!is_array($this->vars))
|
|
||||||
{
|
|
||||||
$this->load();
|
|
||||||
}
|
|
||||||
|
|
||||||
return isset($this->vars[$var_name]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
?>
|
|
|
@ -256,7 +256,6 @@ class acp_attachments
|
||||||
{
|
{
|
||||||
if ($submit)
|
if ($submit)
|
||||||
{
|
{
|
||||||
|
|
||||||
// Change Extensions ?
|
// Change Extensions ?
|
||||||
$extension_change_list = (isset($_POST['extension_change_list'])) ? array_map('intval', $_POST['extension_change_list']) : array();
|
$extension_change_list = (isset($_POST['extension_change_list'])) ? array_map('intval', $_POST['extension_change_list']) : array();
|
||||||
$group_select_list = (isset($_POST['group_select'])) ? array_map('intval', $_POST['group_select']) : array();
|
$group_select_list = (isset($_POST['group_select'])) ? array_map('intval', $_POST['group_select']) : array();
|
||||||
|
@ -282,6 +281,7 @@ class acp_attachments
|
||||||
SET group_id = ' . (int) $extensions[$row['extension_id']]['group_id'] . '
|
SET group_id = ' . (int) $extensions[$row['extension_id']]['group_id'] . '
|
||||||
WHERE extension_id = ' . $row['extension_id'];
|
WHERE extension_id = ' . $row['extension_id'];
|
||||||
$db->sql_query($sql);
|
$db->sql_query($sql);
|
||||||
|
|
||||||
add_log('admin', 'LOG_ATTACH_EXT_UPDATE', $row['extension']);
|
add_log('admin', 'LOG_ATTACH_EXT_UPDATE', $row['extension']);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -312,7 +312,7 @@ class acp_attachments
|
||||||
add_log('admin', 'LOG_ATTACH_EXT_DEL', $extension_list);
|
add_log('admin', 'LOG_ATTACH_EXT_DEL', $extension_list);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Add Extension?
|
// Add Extension?
|
||||||
$add_extension = strtolower(request_var('add_extension', ''));
|
$add_extension = strtolower(request_var('add_extension', ''));
|
||||||
$add_extension_group = request_var('add_group_select', 0);
|
$add_extension_group = request_var('add_group_select', 0);
|
||||||
|
@ -400,7 +400,7 @@ class acp_attachments
|
||||||
{
|
{
|
||||||
$action = request_var('action', '');
|
$action = request_var('action', '');
|
||||||
$group_id = request_var('g', 0);
|
$group_id = request_var('g', 0);
|
||||||
|
|
||||||
if ($action != 'add' && $action != 'edit')
|
if ($action != 'add' && $action != 'edit')
|
||||||
{
|
{
|
||||||
trigger_error('WRONG_MODE');
|
trigger_error('WRONG_MODE');
|
||||||
|
@ -439,6 +439,7 @@ class acp_attachments
|
||||||
FROM ' . EXTENSION_GROUPS_TABLE . "
|
FROM ' . EXTENSION_GROUPS_TABLE . "
|
||||||
WHERE LOWER(group_name) = '" . $db->sql_escape(strtolower($new_group_name)) . "'";
|
WHERE LOWER(group_name) = '" . $db->sql_escape(strtolower($new_group_name)) . "'";
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
|
|
||||||
if ($db->sql_fetchrow($result))
|
if ($db->sql_fetchrow($result))
|
||||||
{
|
{
|
||||||
$error[] = sprintf($user->lang['EXTENSION_GROUP_EXIST'], $new_group_name);
|
$error[] = sprintf($user->lang['EXTENSION_GROUP_EXIST'], $new_group_name);
|
||||||
|
@ -461,7 +462,7 @@ class acp_attachments
|
||||||
if ($max_filesize == $config['max_filesize'])
|
if ($max_filesize == $config['max_filesize'])
|
||||||
{
|
{
|
||||||
$max_filesize = 0;
|
$max_filesize = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!sizeof($allowed_forums))
|
if (!sizeof($allowed_forums))
|
||||||
{
|
{
|
||||||
|
@ -484,7 +485,7 @@ class acp_attachments
|
||||||
$sql .= ($action == 'edit') ? " WHERE group_id = $group_id" : '';
|
$sql .= ($action == 'edit') ? " WHERE group_id = $group_id" : '';
|
||||||
|
|
||||||
$db->sql_query($sql);
|
$db->sql_query($sql);
|
||||||
|
|
||||||
if ($action == 'add')
|
if ($action == 'add')
|
||||||
{
|
{
|
||||||
$group_id = $db->sql_nextid();
|
$group_id = $db->sql_nextid();
|
||||||
|
@ -580,7 +581,8 @@ class acp_attachments
|
||||||
trigger_error($user->lang['NO_EXTENSION_GROUP'] . adm_back_link($this->u_action));
|
trigger_error($user->lang['NO_EXTENSION_GROUP'] . adm_back_link($this->u_action));
|
||||||
}
|
}
|
||||||
|
|
||||||
$sql = 'SELECT * FROM ' . EXTENSION_GROUPS_TABLE . "
|
$sql = 'SELECT *
|
||||||
|
FROM ' . EXTENSION_GROUPS_TABLE . "
|
||||||
WHERE group_id = $group_id";
|
WHERE group_id = $group_id";
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
$ext_group_row = $db->sql_fetchrow($result);
|
$ext_group_row = $db->sql_fetchrow($result);
|
||||||
|
@ -588,6 +590,8 @@ class acp_attachments
|
||||||
|
|
||||||
$forum_ids = (!$ext_group_row['allowed_forums']) ? array() : unserialize(trim($ext_group_row['allowed_forums']));
|
$forum_ids = (!$ext_group_row['allowed_forums']) ? array() : unserialize(trim($ext_group_row['allowed_forums']));
|
||||||
|
|
||||||
|
// no break;
|
||||||
|
|
||||||
case 'add':
|
case 'add':
|
||||||
|
|
||||||
if ($action == 'add')
|
if ($action == 'add')
|
||||||
|
@ -607,8 +611,10 @@ class acp_attachments
|
||||||
|
|
||||||
$extensions = array();
|
$extensions = array();
|
||||||
|
|
||||||
$sql = 'SELECT * FROM ' . EXTENSIONS_TABLE . "
|
$sql = 'SELECT *
|
||||||
WHERE group_id = $group_id OR group_id = 0
|
FROM ' . EXTENSIONS_TABLE . "
|
||||||
|
WHERE group_id = $group_id
|
||||||
|
OR group_id = 0
|
||||||
ORDER BY extension";
|
ORDER BY extension";
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
$extensions = $db->sql_fetchrowset($result);
|
$extensions = $db->sql_fetchrowset($result);
|
||||||
|
@ -674,7 +680,7 @@ class acp_attachments
|
||||||
'UPLOAD_ICON_SRC' => $phpbb_root_path . $img_path . '/' . $ext_group_row['upload_icon'],
|
'UPLOAD_ICON_SRC' => $phpbb_root_path . $img_path . '/' . $ext_group_row['upload_icon'],
|
||||||
'EXTGROUP_FILESIZE' => $ext_group_row['max_filesize'],
|
'EXTGROUP_FILESIZE' => $ext_group_row['max_filesize'],
|
||||||
'ASSIGNED_EXTENSIONS' => $assigned_extensions,
|
'ASSIGNED_EXTENSIONS' => $assigned_extensions,
|
||||||
|
|
||||||
'S_CATEGORY_SELECT' => $this->category_select('special_category', $group_id, 'category'),
|
'S_CATEGORY_SELECT' => $this->category_select('special_category', $group_id, 'category'),
|
||||||
'S_DOWNLOAD_SELECT' => $this->download_select('download_mode', $group_id, 'download_mode'),
|
'S_DOWNLOAD_SELECT' => $this->download_select('download_mode', $group_id, 'download_mode'),
|
||||||
'S_EXT_GROUP_SIZE_OPTIONS' => size_select_options($size_format),
|
'S_EXT_GROUP_SIZE_OPTIONS' => size_select_options($size_format),
|
||||||
|
@ -756,7 +762,7 @@ class acp_attachments
|
||||||
|
|
||||||
case 'deactivate':
|
case 'deactivate':
|
||||||
case 'activate':
|
case 'activate':
|
||||||
|
|
||||||
if (!$group_id)
|
if (!$group_id)
|
||||||
{
|
{
|
||||||
trigger_error($user->lang['NO_EXTENSION_GROUP'] . adm_back_link($this->u_action));
|
trigger_error($user->lang['NO_EXTENSION_GROUP'] . adm_back_link($this->u_action));
|
||||||
|
@ -781,9 +787,9 @@ class acp_attachments
|
||||||
while ($row = $db->sql_fetchrow($result))
|
while ($row = $db->sql_fetchrow($result))
|
||||||
{
|
{
|
||||||
$s_add_spacer = ($row['allow_group'] == 0 && $act_deact == 'deactivate') ? true : false;
|
$s_add_spacer = ($row['allow_group'] == 0 && $act_deact == 'deactivate') ? true : false;
|
||||||
|
|
||||||
$act_deact = ($row['allow_group']) ? 'deactivate' : 'activate';
|
$act_deact = ($row['allow_group']) ? 'deactivate' : 'activate';
|
||||||
|
|
||||||
$template->assign_block_vars('groups', array(
|
$template->assign_block_vars('groups', array(
|
||||||
'S_ADD_SPACER' => $s_add_spacer,
|
'S_ADD_SPACER' => $s_add_spacer,
|
||||||
'S_ALLOWED_IN_PM' => ($row['allow_in_pm']) ? true : false,
|
'S_ALLOWED_IN_PM' => ($row['allow_in_pm']) ? true : false,
|
||||||
|
@ -792,7 +798,7 @@ class acp_attachments
|
||||||
'U_EDIT' => $this->u_action . "&action=edit&g={$row['group_id']}",
|
'U_EDIT' => $this->u_action . "&action=edit&g={$row['group_id']}",
|
||||||
'U_DELETE' => $this->u_action . "&action=delete&g={$row['group_id']}",
|
'U_DELETE' => $this->u_action . "&action=delete&g={$row['group_id']}",
|
||||||
'U_ACT_DEACT' => $this->u_action . "&action=$act_deact&g={$row['group_id']}",
|
'U_ACT_DEACT' => $this->u_action . "&action=$act_deact&g={$row['group_id']}",
|
||||||
|
|
||||||
'L_ACT_DEACT' => $user->lang[strtoupper($act_deact)],
|
'L_ACT_DEACT' => $user->lang[strtoupper($act_deact)],
|
||||||
'GROUP_NAME' => $row['group_name'],
|
'GROUP_NAME' => $row['group_name'],
|
||||||
'CATEGORY' => $cat_lang[$row['cat_id']],
|
'CATEGORY' => $cat_lang[$row['cat_id']],
|
||||||
|
@ -808,7 +814,6 @@ class acp_attachments
|
||||||
|
|
||||||
if ($submit)
|
if ($submit)
|
||||||
{
|
{
|
||||||
|
|
||||||
$delete_files = (isset($_POST['delete'])) ? array_keys(request_var('delete', array('' => 0))) : array();
|
$delete_files = (isset($_POST['delete'])) ? array_keys(request_var('delete', array('' => 0))) : array();
|
||||||
$add_files = (isset($_POST['add'])) ? array_keys(request_var('add', array('' => 0))) : array();
|
$add_files = (isset($_POST['add'])) ? array_keys(request_var('add', array('' => 0))) : array();
|
||||||
$post_ids = request_var('post_id', array('' => 0));
|
$post_ids = request_var('post_id', array('' => 0));
|
||||||
|
@ -862,15 +867,15 @@ class acp_attachments
|
||||||
{
|
{
|
||||||
$return = true;
|
$return = true;
|
||||||
|
|
||||||
if ($auth->acl_gets('f_attach', 'u_attach', $row['forum_id']))
|
if ($auth->acl_get('f_attach', $row['forum_id']))
|
||||||
{
|
{
|
||||||
$return = $this->upload_file($row['post_id'], $row['topic_id'], $row['forum_id'], $config['upload_path'], $upload_list[$row['post_id']]);
|
$return = $this->upload_file($row['post_id'], $row['topic_id'], $row['forum_id'], $config['upload_path'], $upload_list[$row['post_id']]);
|
||||||
}
|
}
|
||||||
|
|
||||||
$template->assign_block_vars('upload', array(
|
$template->assign_block_vars('upload', array(
|
||||||
'FILE_INFO' => sprintf($user->lang['UPLOADING_FILE_TO'], $upload_list[$row['post_id']], $row['post_id']),
|
'FILE_INFO' => sprintf($user->lang['UPLOADING_FILE_TO'], $upload_list[$row['post_id']], $row['post_id']),
|
||||||
'S_DENIED' => (!$auth->acl_gets('f_attach', 'u_attach', $row['forum_id'])) ? true : false,
|
'S_DENIED' => (!$auth->acl_get('f_attach', $row['forum_id'])) ? true : false,
|
||||||
'L_DENIED' => (!$auth->acl_gets('f_attach', 'u_attach', $row['forum_id'])) ? sprintf($user->lang['UPLOAD_DENIED_FORUM'], $forum_names[$row['forum_id']]) : '',
|
'L_DENIED' => (!$auth->acl_get('f_attach', $row['forum_id'])) ? sprintf($user->lang['UPLOAD_DENIED_FORUM'], $forum_names[$row['forum_id']]) : '',
|
||||||
'ERROR_MSG' => ($return === true) ? false : $return)
|
'ERROR_MSG' => ($return === true) ? false : $return)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -883,7 +888,7 @@ class acp_attachments
|
||||||
$template->assign_vars(array(
|
$template->assign_vars(array(
|
||||||
'S_ORPHAN' => true)
|
'S_ORPHAN' => true)
|
||||||
);
|
);
|
||||||
|
|
||||||
$attach_filelist = array();
|
$attach_filelist = array();
|
||||||
|
|
||||||
$dir = @opendir($phpbb_root_path . $config['upload_path']);
|
$dir = @opendir($phpbb_root_path . $config['upload_path']);
|
||||||
|
@ -939,7 +944,6 @@ class acp_attachments
|
||||||
'NOTIFY_MSG' => implode('<br />', $notify))
|
'NOTIFY_MSG' => implode('<br />', $notify))
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -962,7 +966,7 @@ class acp_attachments
|
||||||
FROM ' . EXTENSION_GROUPS_TABLE . '
|
FROM ' . EXTENSION_GROUPS_TABLE . '
|
||||||
WHERE group_id = ' . (int) $group_id;
|
WHERE group_id = ' . (int) $group_id;
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
|
|
||||||
$cat_type = (!($row = $db->sql_fetchrow($result))) ? ATTACHMENT_CATEGORY_NONE : $row['cat_id'];
|
$cat_type = (!($row = $db->sql_fetchrow($result))) ? ATTACHMENT_CATEGORY_NONE : $row['cat_id'];
|
||||||
|
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
@ -1037,8 +1041,8 @@ class acp_attachments
|
||||||
global $db, $user;
|
global $db, $user;
|
||||||
|
|
||||||
$types = array(
|
$types = array(
|
||||||
INLINE_LINK => $user->lang['MODE_INLINE'],
|
INLINE_LINK => $user->lang['MODE_INLINE'],
|
||||||
PHYSICAL_LINK => $user->lang['MODE_PHYSICAL']
|
PHYSICAL_LINK => $user->lang['MODE_PHYSICAL']
|
||||||
);
|
);
|
||||||
|
|
||||||
if ($group_id)
|
if ($group_id)
|
||||||
|
@ -1047,7 +1051,7 @@ class acp_attachments
|
||||||
FROM " . EXTENSION_GROUPS_TABLE . "
|
FROM " . EXTENSION_GROUPS_TABLE . "
|
||||||
WHERE group_id = " . (int) $group_id;
|
WHERE group_id = " . (int) $group_id;
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
|
|
||||||
$download_mode = (!($row = $db->sql_fetchrow($result))) ? INLINE_LINK : $row['download_mode'];
|
$download_mode = (!($row = $db->sql_fetchrow($result))) ? INLINE_LINK : $row['download_mode'];
|
||||||
|
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
@ -1072,7 +1076,6 @@ class acp_attachments
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Upload already uploaded file... huh? are you kidding?
|
* Upload already uploaded file... huh? are you kidding?
|
||||||
* @todo integrate into upload class
|
|
||||||
*/
|
*/
|
||||||
function upload_file($post_id, $topic_id, $forum_id, $upload_dir, $filename)
|
function upload_file($post_id, $topic_id, $forum_id, $upload_dir, $filename)
|
||||||
{
|
{
|
||||||
|
@ -1141,7 +1144,7 @@ class acp_attachments
|
||||||
function search_imagemagick()
|
function search_imagemagick()
|
||||||
{
|
{
|
||||||
$imagick = '';
|
$imagick = '';
|
||||||
|
|
||||||
$exe = ((defined('PHP_OS')) && (preg_match('#win#i', PHP_OS))) ? '.exe' : '';
|
$exe = ((defined('PHP_OS')) && (preg_match('#win#i', PHP_OS))) ? '.exe' : '';
|
||||||
|
|
||||||
$magic_home = getenv('MAGICK_HOME');
|
$magic_home = getenv('MAGICK_HOME');
|
||||||
|
@ -1150,7 +1153,7 @@ class acp_attachments
|
||||||
{
|
{
|
||||||
$locations = array('C:/WINDOWS/', 'C:/WINNT/', 'C:/WINDOWS/SYSTEM/', 'C:/WINNT/SYSTEM/', 'C:/WINDOWS/SYSTEM32/', 'C:/WINNT/SYSTEM32/', '/usr/bin/', '/usr/sbin/', '/usr/local/bin/', '/usr/local/sbin/', '/opt/', '/usr/imagemagick/', '/usr/bin/imagemagick/');
|
$locations = array('C:/WINDOWS/', 'C:/WINNT/', 'C:/WINDOWS/SYSTEM/', 'C:/WINNT/SYSTEM/', 'C:/WINDOWS/SYSTEM32/', 'C:/WINNT/SYSTEM32/', '/usr/bin/', '/usr/sbin/', '/usr/local/bin/', '/usr/local/sbin/', '/opt/', '/usr/imagemagick/', '/usr/bin/imagemagick/');
|
||||||
$path_locations = str_replace('\\', '/', (explode(($exe) ? ';' : ':', getenv('PATH'))));
|
$path_locations = str_replace('\\', '/', (explode(($exe) ? ';' : ':', getenv('PATH'))));
|
||||||
|
|
||||||
$locations = array_merge($path_locations, $locations);
|
$locations = array_merge($path_locations, $locations);
|
||||||
|
|
||||||
foreach ($locations as $location)
|
foreach ($locations as $location)
|
||||||
|
@ -1198,13 +1201,13 @@ class acp_attachments
|
||||||
$error[] = sprintf($user->lang['NO_UPLOAD_DIR'], $upload_dir);
|
$error[] = sprintf($user->lang['NO_UPLOAD_DIR'], $upload_dir);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!is_dir($phpbb_root_path . $upload_dir))
|
if (!is_dir($phpbb_root_path . $upload_dir))
|
||||||
{
|
{
|
||||||
$error[] = sprintf($user->lang['UPLOAD_NOT_DIR'], $upload_dir);
|
$error[] = sprintf($user->lang['UPLOAD_NOT_DIR'], $upload_dir);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!is_writable($phpbb_root_path . $upload_dir))
|
if (!is_writable($phpbb_root_path . $upload_dir))
|
||||||
{
|
{
|
||||||
$error[] = sprintf($user->lang['NO_WRITE_UPLOAD'], $upload_dir);
|
$error[] = sprintf($user->lang['NO_WRITE_UPLOAD'], $upload_dir);
|
||||||
|
@ -1332,6 +1335,7 @@ class acp_attachments
|
||||||
unset($iplist_tmp);
|
unset($iplist_tmp);
|
||||||
unset($hostlist_tmp);
|
unset($hostlist_tmp);
|
||||||
}
|
}
|
||||||
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
if (sizeof($iplist))
|
if (sizeof($iplist))
|
||||||
{
|
{
|
||||||
|
@ -1380,6 +1384,7 @@ class acp_attachments
|
||||||
{
|
{
|
||||||
$l_unip_list .= (($l_unip_list != '') ? ', ' : '') . (($row['site_ip']) ? $row['site_ip'] : $row['site_hostname']);
|
$l_unip_list .= (($l_unip_list != '') ? ', ' : '') . (($row['site_ip']) ? $row['site_ip'] : $row['site_hostname']);
|
||||||
}
|
}
|
||||||
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
$sql = 'DELETE FROM ' . SITELIST_TABLE . "
|
$sql = 'DELETE FROM ' . SITELIST_TABLE . "
|
||||||
WHERE site_id IN ($unip_sql)";
|
WHERE site_id IN ($unip_sql)";
|
||||||
|
@ -1416,12 +1421,12 @@ class acp_attachments
|
||||||
$extensions[$extension]['max_filesize'] = (int) $row['max_filesize'];
|
$extensions[$extension]['max_filesize'] = (int) $row['max_filesize'];
|
||||||
|
|
||||||
$allowed_forums = ($row['allowed_forums']) ? unserialize(trim($row['allowed_forums'])) : array();
|
$allowed_forums = ($row['allowed_forums']) ? unserialize(trim($row['allowed_forums'])) : array();
|
||||||
|
|
||||||
if ($row['allow_in_pm'])
|
if ($row['allow_in_pm'])
|
||||||
{
|
{
|
||||||
$allowed_forums = array_merge($allowed_forums, array(0));
|
$allowed_forums = array_merge($allowed_forums, array(0));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Store allowed extensions forum wise
|
// Store allowed extensions forum wise
|
||||||
$extensions['_allowed_'][$extension] = (!sizeof($allowed_forums)) ? 0 : $allowed_forums;
|
$extensions['_allowed_'][$extension] = (!sizeof($allowed_forums)) ? 0 : $allowed_forums;
|
||||||
}
|
}
|
||||||
|
|
|
@ -96,6 +96,9 @@ class acp_ban
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Display ban options
|
||||||
|
*/
|
||||||
function display_ban_options($mode)
|
function display_ban_options($mode)
|
||||||
{
|
{
|
||||||
global $user, $db, $template;
|
global $user, $db, $template;
|
||||||
|
|
|
@ -42,12 +42,13 @@ class acp_bbcodes
|
||||||
FROM ' . BBCODES_TABLE . '
|
FROM ' . BBCODES_TABLE . '
|
||||||
WHERE bbcode_id = ' . $bbcode_id;
|
WHERE bbcode_id = ' . $bbcode_id;
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
|
$row = $db->sql_fetchrow($result);
|
||||||
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
if (!$row = $db->sql_fetchrow($result))
|
if (!$row)
|
||||||
{
|
{
|
||||||
trigger_error('BBCODE_NOT_EXIST');
|
trigger_error('BBCODE_NOT_EXIST');
|
||||||
}
|
}
|
||||||
$db->sql_freeresult($result);
|
|
||||||
|
|
||||||
$bbcode_match = $row['bbcode_match'];
|
$bbcode_match = $row['bbcode_match'];
|
||||||
$bbcode_tpl = htmlspecialchars($row['bbcode_tpl']);
|
$bbcode_tpl = htmlspecialchars($row['bbcode_tpl']);
|
||||||
|
@ -59,14 +60,15 @@ class acp_bbcodes
|
||||||
FROM ' . BBCODES_TABLE . '
|
FROM ' . BBCODES_TABLE . '
|
||||||
WHERE bbcode_id = ' . $bbcode_id;
|
WHERE bbcode_id = ' . $bbcode_id;
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
|
$row = $db->sql_fetchrow($result);
|
||||||
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
if (!$row = $db->sql_fetchrow($result))
|
if (!$row)
|
||||||
{
|
{
|
||||||
trigger_error('BBCODE_NOT_EXIST');
|
trigger_error('BBCODE_NOT_EXIST');
|
||||||
}
|
}
|
||||||
$db->sql_freeresult($result);
|
|
||||||
|
|
||||||
// No break here
|
// No break here
|
||||||
|
|
||||||
case 'create':
|
case 'create':
|
||||||
$display_on_posting = request_var('display_on_posting', 0);
|
$display_on_posting = request_var('display_on_posting', 0);
|
||||||
|
@ -151,12 +153,17 @@ class acp_bbcodes
|
||||||
$sql_ary['bbcode_id'] = (int) $bbcode_id;
|
$sql_ary['bbcode_id'] = (int) $bbcode_id;
|
||||||
|
|
||||||
$db->sql_query('INSERT INTO ' . BBCODES_TABLE . $db->sql_build_array('INSERT', $sql_ary));
|
$db->sql_query('INSERT INTO ' . BBCODES_TABLE . $db->sql_build_array('INSERT', $sql_ary));
|
||||||
|
|
||||||
$lang = 'BBCODE_ADDED';
|
$lang = 'BBCODE_ADDED';
|
||||||
$log_action = 'LOG_BBCODE_ADD';
|
$log_action = 'LOG_BBCODE_ADD';
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$db->sql_query('UPDATE ' . BBCODES_TABLE . ' SET ' . $db->sql_build_array('UPDATE', $sql_ary) . ' WHERE bbcode_id = ' . $bbcode_id);
|
$sql = 'UPDATE ' . BBCODES_TABLE . '
|
||||||
|
SET ' . $db->sql_build_array('UPDATE', $sql_ary) . '
|
||||||
|
WHERE bbcode_id = ' . $bbcode_id;
|
||||||
|
$db->sql_query($sql);
|
||||||
|
|
||||||
$lang = 'BBCODE_EDITED';
|
$lang = 'BBCODE_EDITED';
|
||||||
$log_action = 'LOG_BBCODE_EDIT';
|
$log_action = 'LOG_BBCODE_EDIT';
|
||||||
}
|
}
|
||||||
|
@ -173,13 +180,14 @@ class acp_bbcodes
|
||||||
FROM ' . BBCODES_TABLE . "
|
FROM ' . BBCODES_TABLE . "
|
||||||
WHERE bbcode_id = $bbcode_id";
|
WHERE bbcode_id = $bbcode_id";
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
|
$row = $db->sql_fetchrow($result);
|
||||||
if ($row = $db->sql_fetchrow($result))
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
|
if ($row)
|
||||||
{
|
{
|
||||||
$db->sql_query('DELETE FROM ' . BBCODES_TABLE . " WHERE bbcode_id = $bbcode_id");
|
$db->sql_query('DELETE FROM ' . BBCODES_TABLE . " WHERE bbcode_id = $bbcode_id");
|
||||||
add_log('admin', 'LOG_BBCODE_DELETE', $row['bbcode_tag']);
|
add_log('admin', 'LOG_BBCODE_DELETE', $row['bbcode_tag']);
|
||||||
}
|
}
|
||||||
$db->sql_freeresult($result);
|
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
|
@ -498,7 +498,6 @@ class acp_board
|
||||||
// Output relevant page
|
// Output relevant page
|
||||||
foreach ($display_vars['vars'] as $config_key => $vars)
|
foreach ($display_vars['vars'] as $config_key => $vars)
|
||||||
{
|
{
|
||||||
|
|
||||||
if (!is_array($vars) && strpos($config_key, 'legend') === false)
|
if (!is_array($vars) && strpos($config_key, 'legend') === false)
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
|
@ -564,6 +563,9 @@ class acp_board
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Select auth method
|
||||||
|
*/
|
||||||
function select_auth_method($selected_method, $key = '')
|
function select_auth_method($selected_method, $key = '')
|
||||||
{
|
{
|
||||||
global $phpbb_root_path, $phpEx;
|
global $phpbb_root_path, $phpEx;
|
||||||
|
@ -591,6 +593,9 @@ class acp_board
|
||||||
return $auth_select;
|
return $auth_select;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Select mail authentication method
|
||||||
|
*/
|
||||||
function mail_auth_select($selected_method, $key = '')
|
function mail_auth_select($selected_method, $key = '')
|
||||||
{
|
{
|
||||||
global $user;
|
global $user;
|
||||||
|
@ -606,6 +611,9 @@ class acp_board
|
||||||
return $s_smtp_auth_options;
|
return $s_smtp_auth_options;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Select full folder action
|
||||||
|
*/
|
||||||
function full_folder_select($value, $key = '')
|
function full_folder_select($value, $key = '')
|
||||||
{
|
{
|
||||||
global $user;
|
global $user;
|
||||||
|
@ -613,6 +621,9 @@ class acp_board
|
||||||
return '<option value="1"' . (($value == 1) ? ' selected="selected"' : '') . '>' . $user->lang['DELETE_OLDEST_MESSAGES'] . '</option><option value="2"' . (($value == 2) ? ' selected="selected"' : '') . '>' . $user->lang['HOLD_NEW_MESSAGES_SHORT'] . '</option>';
|
return '<option value="1"' . (($value == 1) ? ' selected="selected"' : '') . '>' . $user->lang['DELETE_OLDEST_MESSAGES'] . '</option><option value="2"' . (($value == 2) ? ' selected="selected"' : '') . '>' . $user->lang['HOLD_NEW_MESSAGES_SHORT'] . '</option>';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Select captcha pixel noise
|
||||||
|
*/
|
||||||
function captcha_pixel_noise_select($value, $key = '')
|
function captcha_pixel_noise_select($value, $key = '')
|
||||||
{
|
{
|
||||||
global $user;
|
global $user;
|
||||||
|
@ -620,6 +631,9 @@ class acp_board
|
||||||
return '<option value="0"' . (($value == 0) ? ' selected="selected"' : '') . '>' . $user->lang['NONE'] . '</option><option value="1"' . (($value == 1) ? ' selected="selected"' : '') . '>' . $user->lang['LIGHT'] . '</option><option value="2"' . (($value == 2) ? ' selected="selected"' : '') . '>' . $user->lang['MEDIUM'] . '</option><option value="3"' . (($value == 3) ? ' selected="selected"' : '') . '>' . $user->lang['HEAVY'] . '</option>';
|
return '<option value="0"' . (($value == 0) ? ' selected="selected"' : '') . '>' . $user->lang['NONE'] . '</option><option value="1"' . (($value == 1) ? ' selected="selected"' : '') . '>' . $user->lang['LIGHT'] . '</option><option value="2"' . (($value == 2) ? ' selected="selected"' : '') . '>' . $user->lang['MEDIUM'] . '</option><option value="3"' . (($value == 3) ? ' selected="selected"' : '') . '>' . $user->lang['HEAVY'] . '</option>';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Select ip validation
|
||||||
|
*/
|
||||||
function select_ip_check($value, $key = '')
|
function select_ip_check($value, $key = '')
|
||||||
{
|
{
|
||||||
$radio_ary = array(4 => 'ALL', 3 => 'CLASS_C', 2 => 'CLASS_B', 0 => 'NONE');
|
$radio_ary = array(4 => 'ALL', 3 => 'CLASS_C', 2 => 'CLASS_B', 0 => 'NONE');
|
||||||
|
@ -627,6 +641,9 @@ class acp_board
|
||||||
return h_radio('config[ip_check]', $radio_ary, $value, $key);
|
return h_radio('config[ip_check]', $radio_ary, $value, $key);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Select account activation method
|
||||||
|
*/
|
||||||
function select_acc_activation($value, $key = '')
|
function select_acc_activation($value, $key = '')
|
||||||
{
|
{
|
||||||
global $user, $config;
|
global $user, $config;
|
||||||
|
@ -640,6 +657,9 @@ class acp_board
|
||||||
return h_radio('config[require_activation]', $radio_ary, $value, $key);
|
return h_radio('config[require_activation]', $radio_ary, $value, $key);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Maximum/Minimum username length
|
||||||
|
*/
|
||||||
function username_length($value, $key = '')
|
function username_length($value, $key = '')
|
||||||
{
|
{
|
||||||
global $user;
|
global $user;
|
||||||
|
@ -647,6 +667,9 @@ class acp_board
|
||||||
return '<input id="' . $key . '" type="text" size="3" maxlength="3" name="config[min_name_chars]" value="' . $value . '" /> ' . $user->lang['MIN_CHARS'] . ' <input type="text" size="3" maxlength="3" name="config[max_name_chars]" value="' . $this->new_config['max_name_chars'] . '" /> ' . $user->lang['MAX_CHARS'];
|
return '<input id="' . $key . '" type="text" size="3" maxlength="3" name="config[min_name_chars]" value="' . $value . '" /> ' . $user->lang['MIN_CHARS'] . ' <input type="text" size="3" maxlength="3" name="config[max_name_chars]" value="' . $this->new_config['max_name_chars'] . '" /> ' . $user->lang['MAX_CHARS'];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Allowed chars in usernames
|
||||||
|
*/
|
||||||
function select_username_chars($selected_value, $key)
|
function select_username_chars($selected_value, $key)
|
||||||
{
|
{
|
||||||
global $user;
|
global $user;
|
||||||
|
@ -662,6 +685,9 @@ class acp_board
|
||||||
return $user_char_options;
|
return $user_char_options;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Maximum/Minimum password length
|
||||||
|
*/
|
||||||
function password_length($value, $key)
|
function password_length($value, $key)
|
||||||
{
|
{
|
||||||
global $user;
|
global $user;
|
||||||
|
@ -669,6 +695,9 @@ class acp_board
|
||||||
return '<input id="' . $key . '" type="text" size="3" maxlength="3" name="config[min_pass_chars]" value="' . $value . '" /> ' . $user->lang['MIN_CHARS'] . ' <input type="text" size="3" maxlength="3" name="config[max_pass_chars]" value="' . $this->new_config['max_pass_chars'] . '" /> ' . $user->lang['MAX_CHARS'];
|
return '<input id="' . $key . '" type="text" size="3" maxlength="3" name="config[min_pass_chars]" value="' . $value . '" /> ' . $user->lang['MIN_CHARS'] . ' <input type="text" size="3" maxlength="3" name="config[max_pass_chars]" value="' . $this->new_config['max_pass_chars'] . '" /> ' . $user->lang['MAX_CHARS'];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Required chars in passwords
|
||||||
|
*/
|
||||||
function select_password_chars($selected_value, $key)
|
function select_password_chars($selected_value, $key)
|
||||||
{
|
{
|
||||||
global $user;
|
global $user;
|
||||||
|
@ -684,6 +713,9 @@ class acp_board
|
||||||
return $pass_char_options;
|
return $pass_char_options;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Select bump interval
|
||||||
|
*/
|
||||||
function bump_interval($value, $key)
|
function bump_interval($value, $key)
|
||||||
{
|
{
|
||||||
global $user;
|
global $user;
|
||||||
|
@ -699,6 +731,9 @@ class acp_board
|
||||||
return '<input id="' . $key . '" type="text" size="3" maxlength="4" name="config[bump_interval]" value="' . $value . '" /> <select name="config[bump_type]">' . $s_bump_type . '</select>';
|
return '<input id="' . $key . '" type="text" size="3" maxlength="4" name="config[bump_interval]" value="' . $value . '" /> <select name="config[bump_type]">' . $s_bump_type . '</select>';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Board disable option and message
|
||||||
|
*/
|
||||||
function board_disable($value, $key)
|
function board_disable($value, $key)
|
||||||
{
|
{
|
||||||
global $user;
|
global $user;
|
||||||
|
@ -708,6 +743,9 @@ class acp_board
|
||||||
return h_radio('config[board_disable]', $radio_ary, $value) . '<br /><input id="' . $key . '" type="text" name="config[board_disable_msg]" maxlength="255" size="40" value="' . $this->new_config['board_disable_msg'] . '" />';
|
return h_radio('config[board_disable]', $radio_ary, $value) . '<br /><input id="' . $key . '" type="text" name="config[board_disable_msg]" maxlength="255" size="40" value="' . $this->new_config['board_disable_msg'] . '" />';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Select default dateformat
|
||||||
|
*/
|
||||||
function dateformat_select($value, $key)
|
function dateformat_select($value, $key)
|
||||||
{
|
{
|
||||||
global $user;
|
global $user;
|
||||||
|
|
|
@ -111,6 +111,8 @@ class acp_bots
|
||||||
|
|
||||||
case 'edit':
|
case 'edit':
|
||||||
case 'add':
|
case 'add':
|
||||||
|
include_once($phpbb_root_path . 'includes/functions_user.' . $phpEx);
|
||||||
|
|
||||||
$bot_row = array(
|
$bot_row = array(
|
||||||
'bot_name' => request_var('bot_name', '', true),
|
'bot_name' => request_var('bot_name', '', true),
|
||||||
'bot_agent' => request_var('bot_agent', ''),
|
'bot_agent' => request_var('bot_agent', ''),
|
||||||
|
@ -160,25 +162,18 @@ class acp_bots
|
||||||
trigger_error($user->lang['NO_GROUP'] . adm_back_link($this->u_action . "&id=$bot_id&action=$action"));
|
trigger_error($user->lang['NO_GROUP'] . adm_back_link($this->u_action . "&id=$bot_id&action=$action"));
|
||||||
}
|
}
|
||||||
|
|
||||||
$sql = 'INSERT INTO ' . USERS_TABLE . ' ' . $db->sql_build_array('INSERT', array(
|
$user_id = user_add(array(
|
||||||
|
'user_type' => (int) USER_IGNORE,
|
||||||
'group_id' => (int) $group_row['group_id'],
|
'group_id' => (int) $group_row['group_id'],
|
||||||
'username' => (string) $bot_row['bot_name'],
|
'username' => (string) $bot_row['bot_name'],
|
||||||
'user_type' => (int) USER_IGNORE,
|
'user_regdate' => time(),
|
||||||
|
'user_password' => '',
|
||||||
'user_colour' => (string) $group_row['group_colour'],
|
'user_colour' => (string) $group_row['group_colour'],
|
||||||
|
'user_email' => '',
|
||||||
'user_lang' => (string) $bot_row['bot_lang'],
|
'user_lang' => (string) $bot_row['bot_lang'],
|
||||||
'user_style' => (int) $bot_row['bot_style'],
|
'user_style' => (int) $bot_row['bot_style'],
|
||||||
'user_options' => 0)
|
'user_options' => 0)
|
||||||
);
|
);
|
||||||
$db->sql_query($sql);
|
|
||||||
|
|
||||||
$user_id = $db->sql_nextid();
|
|
||||||
|
|
||||||
// Add to Bots usergroup
|
|
||||||
$sql = 'INSERT INTO ' . USER_GROUP_TABLE . ' ' . $db->sql_build_array('INSERT', array(
|
|
||||||
'user_id' => $user_id,
|
|
||||||
'group_id' => $group_row['group_id'])
|
|
||||||
);
|
|
||||||
$db->sql_query($sql);
|
|
||||||
|
|
||||||
$sql = 'INSERT INTO ' . BOTS_TABLE . ' ' . $db->sql_build_array('INSERT', array(
|
$sql = 'INSERT INTO ' . BOTS_TABLE . ' ' . $db->sql_build_array('INSERT', array(
|
||||||
'user_id' => (int) $user_id,
|
'user_id' => (int) $user_id,
|
||||||
|
@ -225,7 +220,7 @@ class acp_bots
|
||||||
$db->sql_transaction('commit');
|
$db->sql_transaction('commit');
|
||||||
|
|
||||||
$cache->destroy('bots');
|
$cache->destroy('bots');
|
||||||
|
|
||||||
add_log('admin', 'LOG_BOT_' . $log, $bot_row['bot_name']);
|
add_log('admin', 'LOG_BOT_' . $log, $bot_row['bot_name']);
|
||||||
trigger_error($user->lang['BOT_' . $log] . adm_back_link($this->u_action . "&id=$bot_id&action=$action"));
|
trigger_error($user->lang['BOT_' . $log] . adm_back_link($this->u_action . "&id=$bot_id&action=$action"));
|
||||||
}
|
}
|
||||||
|
|
|
@ -33,7 +33,7 @@ class acp_disallow
|
||||||
|
|
||||||
if ($disallow)
|
if ($disallow)
|
||||||
{
|
{
|
||||||
$disallowed_user = str_replace('*', '%', request_var('disallowed_user', ''));
|
$disallowed_user = str_replace('*', '%', request_var('disallowed_user', '', true));
|
||||||
|
|
||||||
if (!$disallowed_user)
|
if (!$disallowed_user)
|
||||||
{
|
{
|
||||||
|
|
|
@ -84,14 +84,16 @@ class acp_email
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
|
$row = $db->sql_fetchrow($result);
|
||||||
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
if (!($row = $db->sql_fetchrow($result)))
|
if (!$row)
|
||||||
{
|
{
|
||||||
trigger_error($user->lang['NO_USER'] . adm_back_link($this->u_action));
|
trigger_error($user->lang['NO_USER'] . adm_back_link($this->u_action));
|
||||||
}
|
}
|
||||||
$db->sql_freeresult($result);
|
|
||||||
|
|
||||||
$i = $j = 0;
|
$i = $j = 0;
|
||||||
|
|
||||||
// Send with BCC, no more than 50 recipients for one mail (to not exceed the limit)
|
// Send with BCC, no more than 50 recipients for one mail (to not exceed the limit)
|
||||||
$max_chunk_size = 50;
|
$max_chunk_size = 50;
|
||||||
$email_list = array();
|
$email_list = array();
|
||||||
|
@ -175,8 +177,7 @@ class acp_email
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// Not great but the logging routine doesn't cope well with localising
|
// Not great but the logging routine doesn't cope well with localising on the fly
|
||||||
// on the fly
|
|
||||||
$group_name = $user->lang['ALL_USERS'];
|
$group_name = $user->lang['ALL_USERS'];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -253,7 +253,7 @@ class acp_forums
|
||||||
trigger_error($user->lang['NO_FORUM'] . adm_back_link($this->u_action . '&parent_id=' . $this->parent_id));
|
trigger_error($user->lang['NO_FORUM'] . adm_back_link($this->u_action . '&parent_id=' . $this->parent_id));
|
||||||
}
|
}
|
||||||
|
|
||||||
$sql = 'SELECT parent_id, left_id, right_id
|
$sql = 'SELECT *
|
||||||
FROM ' . FORUMS_TABLE . "
|
FROM ' . FORUMS_TABLE . "
|
||||||
WHERE forum_id = $forum_id";
|
WHERE forum_id = $forum_id";
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
|
@ -265,91 +265,14 @@ class acp_forums
|
||||||
trigger_error($user->lang['NO_FORUM'] . adm_back_link($this->u_action . '&parent_id=' . $this->parent_id));
|
trigger_error($user->lang['NO_FORUM'] . adm_back_link($this->u_action . '&parent_id=' . $this->parent_id));
|
||||||
}
|
}
|
||||||
|
|
||||||
$forum_info = array($forum_id => $row);
|
$move_forum_name = $this->move_forum_by($row, $action, 1);
|
||||||
|
|
||||||
// Get the adjacent forum
|
if ($move_forum_name !== false)
|
||||||
$sql = 'SELECT forum_id, forum_name, left_id, right_id
|
|
||||||
FROM ' . FORUMS_TABLE . "
|
|
||||||
WHERE parent_id = $this->parent_id
|
|
||||||
AND " . (($action == 'move_up') ? "right_id < {$row['right_id']} ORDER BY right_id DESC" : "left_id > {$row['left_id']} ORDER BY left_id ASC");
|
|
||||||
$result = $db->sql_query_limit($sql, 1);
|
|
||||||
$row = $db->sql_fetchrow($result);
|
|
||||||
$db->sql_freeresult($result);
|
|
||||||
|
|
||||||
if (!$row)
|
|
||||||
{
|
{
|
||||||
// already on top or at bottom
|
add_log('admin', 'LOG_FORUM_' . strtoupper($action), $row['forum_name'], $move_forum_name);
|
||||||
break;
|
$cache->destroy('sql', FORUMS_TABLE);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($action == 'move_up')
|
|
||||||
{
|
|
||||||
$log_action = 'LOG_FORUM_MOVE_UP';
|
|
||||||
$up_id = $forum_id;
|
|
||||||
$down_id = $row['forum_id'];
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
$log_action = 'LOG_FORUM_MOVE_DOWN';
|
|
||||||
$up_id = $row['forum_id'];
|
|
||||||
$down_id = $forum_id;
|
|
||||||
}
|
|
||||||
|
|
||||||
$move_forum_name = $row['forum_name'];
|
|
||||||
$forum_info[$row['forum_id']] = $row;
|
|
||||||
$diff_up = $forum_info[$up_id]['right_id'] - $forum_info[$up_id]['left_id'];
|
|
||||||
$diff_down = $forum_info[$down_id]['right_id'] - $forum_info[$down_id]['left_id'];
|
|
||||||
|
|
||||||
$forum_ids = array();
|
|
||||||
|
|
||||||
$sql = 'SELECT forum_id
|
|
||||||
FROM ' . FORUMS_TABLE . '
|
|
||||||
WHERE left_id > ' . $forum_info[$up_id]['left_id'] . '
|
|
||||||
AND right_id < ' . $forum_info[$up_id]['right_id'];
|
|
||||||
$result = $db->sql_query($sql);
|
|
||||||
|
|
||||||
while ($row = $db->sql_fetchrow($result))
|
|
||||||
{
|
|
||||||
$forum_ids[] = $row['forum_id'];
|
|
||||||
}
|
|
||||||
$db->sql_freeresult($result);
|
|
||||||
|
|
||||||
// Start transaction
|
|
||||||
$db->sql_transaction('begin');
|
|
||||||
|
|
||||||
$sql = 'UPDATE ' . FORUMS_TABLE . '
|
|
||||||
SET left_id = left_id + ' . ($diff_up + 1) . ', right_id = right_id + ' . ($diff_up + 1) . '
|
|
||||||
WHERE left_id > ' . $forum_info[$down_id]['left_id'] . '
|
|
||||||
AND right_id < ' . $forum_info[$down_id]['right_id'];
|
|
||||||
$db->sql_query($sql);
|
|
||||||
|
|
||||||
if (sizeof($forum_ids))
|
|
||||||
{
|
|
||||||
$sql = 'UPDATE ' . FORUMS_TABLE . '
|
|
||||||
SET left_id = left_id - ' . ($diff_down + 1) . ', right_id = right_id - ' . ($diff_down + 1) . '
|
|
||||||
WHERE forum_id IN (' . implode(', ', $forum_ids) . ')';
|
|
||||||
$db->sql_query($sql);
|
|
||||||
}
|
|
||||||
|
|
||||||
$sql = 'UPDATE ' . FORUMS_TABLE . '
|
|
||||||
SET left_id = ' . $forum_info[$down_id]['left_id'] . ', right_id = ' . ($forum_info[$down_id]['left_id'] + $diff_up) . '
|
|
||||||
WHERE forum_id = ' . $up_id;
|
|
||||||
$db->sql_query($sql);
|
|
||||||
|
|
||||||
$sql = 'UPDATE ' . FORUMS_TABLE . '
|
|
||||||
SET left_id = ' . ($forum_info[$up_id]['right_id'] - $diff_down) . ', right_id = ' . $forum_info[$up_id]['right_id'] . '
|
|
||||||
WHERE forum_id = ' . $down_id;
|
|
||||||
$db->sql_query($sql);
|
|
||||||
|
|
||||||
$db->sql_transaction('commit');
|
|
||||||
|
|
||||||
$forum_data = $this->get_forum_info($forum_id);
|
|
||||||
|
|
||||||
add_log('admin', $log_action, $forum_data['forum_name'], $move_forum_name);
|
|
||||||
unset($forum_data);
|
|
||||||
|
|
||||||
$cache->destroy('sql', FORUMS_TABLE);
|
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'sync':
|
case 'sync':
|
||||||
|
@ -1439,15 +1362,91 @@ class acp_forums
|
||||||
$db->sql_query("UPDATE $table SET forum_id = 0 WHERE forum_id = $forum_id");
|
$db->sql_query("UPDATE $table SET forum_id = 0 WHERE forum_id = $forum_id");
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* @todo run cron for optimize table or redirect to database management screen
|
|
||||||
*/
|
|
||||||
|
|
||||||
$db->sql_transaction('commit');
|
$db->sql_transaction('commit');
|
||||||
|
|
||||||
return array();
|
return array();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Move forum position by $steps up/down
|
||||||
|
*/
|
||||||
|
function move_forum_by($forum_row, $action = 'move_up', $steps = 1)
|
||||||
|
{
|
||||||
|
global $db;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Fetch all the siblings between the module's current spot
|
||||||
|
* and where we want to move it to. If there are less than $steps
|
||||||
|
* siblings between the current spot and the target then the
|
||||||
|
* module will move as far as possible
|
||||||
|
*/
|
||||||
|
$sql = 'SELECT forum_id, forum_name, left_id, right_id
|
||||||
|
FROM ' . FORUMS_TABLE . "
|
||||||
|
WHERE parent_id = {$forum_row['parent_id']}
|
||||||
|
AND " . (($action == 'move_up') ? "right_id < {$forum_row['right_id']} ORDER BY right_id DESC" : "left_id > {$forum_row['left_id']} ORDER BY left_id ASC");
|
||||||
|
$result = $db->sql_query_limit($sql, $steps);
|
||||||
|
|
||||||
|
$target = array();
|
||||||
|
while ($row = $db->sql_fetchrow($result))
|
||||||
|
{
|
||||||
|
$target = $row;
|
||||||
|
}
|
||||||
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
|
if (!sizeof($target))
|
||||||
|
{
|
||||||
|
// The forum is already on top or bottom
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* $left_id and $right_id define the scope of the nodes that are affected by the move.
|
||||||
|
* $diff_up and $diff_down are the values to substract or add to each node's left_id
|
||||||
|
* and right_id in order to move them up or down.
|
||||||
|
* $move_up_left and $move_up_right define the scope of the nodes that are moving
|
||||||
|
* up. Other nodes in the scope of ($left_id, $right_id) are considered to move down.
|
||||||
|
*/
|
||||||
|
if ($action == 'move_up')
|
||||||
|
{
|
||||||
|
$left_id = $target['left_id'];
|
||||||
|
$right_id = $forum_row['right_id'];
|
||||||
|
|
||||||
|
$diff_up = $forum_row['left_id'] - $target['left_id'];
|
||||||
|
$diff_down = $forum_row['right_id'] + 1 - $forum_row['left_id'];
|
||||||
|
|
||||||
|
$move_up_left = $forum_row['left_id'];
|
||||||
|
$move_up_right = $forum_row['right_id'];
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$left_id = $forum_row['left_id'];
|
||||||
|
$right_id = $target['right_id'];
|
||||||
|
|
||||||
|
$diff_up = $forum_row['right_id'] + 1 - $forum_row['left_id'];
|
||||||
|
$diff_down = $target['right_id'] - $forum_row['right_id'];
|
||||||
|
|
||||||
|
$move_up_left = $forum_row['right_id'] + 1;
|
||||||
|
$move_up_right = $target['right_id'];
|
||||||
|
}
|
||||||
|
|
||||||
|
// Now do the dirty job
|
||||||
|
$sql = 'UPDATE ' . FORUMS_TABLE . "
|
||||||
|
SET left_id = left_id + CASE
|
||||||
|
WHEN left_id BETWEEN {$move_up_left} AND {$move_up_right} THEN -{$diff_up}
|
||||||
|
ELSE {$diff_down}
|
||||||
|
END,
|
||||||
|
right_id = right_id + CASE
|
||||||
|
WHEN right_id BETWEEN {$move_up_left} AND {$move_up_right} THEN -{$diff_up}
|
||||||
|
ELSE {$diff_down}
|
||||||
|
END,
|
||||||
|
forum_parents = ''
|
||||||
|
WHERE
|
||||||
|
left_id BETWEEN {$left_id} AND {$right_id}
|
||||||
|
AND right_id BETWEEN {$left_id} AND {$right_id}";
|
||||||
|
$db->sql_query($sql);
|
||||||
|
|
||||||
|
return $target['forum_name'];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
?>
|
?>
|
|
@ -66,7 +66,7 @@ class acp_groups
|
||||||
{
|
{
|
||||||
trigger_error($user->lang['NO_GROUP'] . adm_back_link($this->u_action));
|
trigger_error($user->lang['NO_GROUP'] . adm_back_link($this->u_action));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Approve, demote or promote
|
// Approve, demote or promote
|
||||||
group_user_attributes($action, $group_id, $mark_ary, false, ($group_id) ? $group_row['group_name'] : false);
|
group_user_attributes($action, $group_id, $mark_ary, false, ($group_id) ? $group_row['group_name'] : false);
|
||||||
|
|
||||||
|
@ -75,11 +75,11 @@ class acp_groups
|
||||||
case 'demote':
|
case 'demote':
|
||||||
$message = 'GROUP_MODS_DEMOTED';
|
$message = 'GROUP_MODS_DEMOTED';
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'promote':
|
case 'promote':
|
||||||
$message = 'GROUP_MODS_PROMOTED';
|
$message = 'GROUP_MODS_PROMOTED';
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'approve':
|
case 'approve':
|
||||||
$message = 'USERS_APPROVED';
|
$message = 'USERS_APPROVED';
|
||||||
break;
|
break;
|
||||||
|
@ -99,7 +99,7 @@ class acp_groups
|
||||||
if (!sizeof($mark_ary))
|
if (!sizeof($mark_ary))
|
||||||
{
|
{
|
||||||
$start = 0;
|
$start = 0;
|
||||||
|
|
||||||
do
|
do
|
||||||
{
|
{
|
||||||
$sql = 'SELECT user_id
|
$sql = 'SELECT user_id
|
||||||
|
@ -320,7 +320,7 @@ class acp_groups
|
||||||
// Only set the rank, colour, etc. if it's changed or if we're adding a new
|
// Only set the rank, colour, etc. if it's changed or if we're adding a new
|
||||||
// group. This prevents existing group members being updated if no changes
|
// group. This prevents existing group members being updated if no changes
|
||||||
// were made.
|
// were made.
|
||||||
|
|
||||||
$group_attributes = array();
|
$group_attributes = array();
|
||||||
$test_variables = array('rank', 'colour', 'avatar', 'avatar_type', 'avatar_width', 'avatar_height', 'receive_pm', 'legend', 'message_limit');
|
$test_variables = array('rank', 'colour', 'avatar', 'avatar_type', 'avatar_width', 'avatar_height', 'receive_pm', 'legend', 'message_limit');
|
||||||
foreach ($test_variables as $test)
|
foreach ($test_variables as $test)
|
||||||
|
@ -449,10 +449,11 @@ class acp_groups
|
||||||
{
|
{
|
||||||
case AVATAR_UPLOAD:
|
case AVATAR_UPLOAD:
|
||||||
$avatar_img = $phpbb_root_path . $config['avatar_path'] . '/';
|
$avatar_img = $phpbb_root_path . $config['avatar_path'] . '/';
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case AVATAR_GALLERY:
|
case AVATAR_GALLERY:
|
||||||
$avatar_img = $phpbb_root_path . $config['avatar_gallery_path'] . '/';
|
$avatar_img = $phpbb_root_path . $config['avatar_gallery_path'] . '/';
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
$avatar_img .= $group_row['group_avatar'];
|
$avatar_img .= $group_row['group_avatar'];
|
||||||
|
|
||||||
|
@ -505,7 +506,7 @@ class acp_groups
|
||||||
'S_DESC_BBCODE_CHECKED' => $group_desc_data['allow_bbcode'],
|
'S_DESC_BBCODE_CHECKED' => $group_desc_data['allow_bbcode'],
|
||||||
'S_DESC_URLS_CHECKED' => $group_desc_data['allow_urls'],
|
'S_DESC_URLS_CHECKED' => $group_desc_data['allow_urls'],
|
||||||
'S_DESC_SMILIES_CHECKED'=> $group_desc_data['allow_smilies'],
|
'S_DESC_SMILIES_CHECKED'=> $group_desc_data['allow_smilies'],
|
||||||
|
|
||||||
'S_RANK_OPTIONS' => $rank_options,
|
'S_RANK_OPTIONS' => $rank_options,
|
||||||
'S_GROUP_OPTIONS' => group_select_options(0),
|
'S_GROUP_OPTIONS' => group_select_options(0),
|
||||||
'AVATAR_IMAGE' => $avatar_img,
|
'AVATAR_IMAGE' => $avatar_img,
|
||||||
|
|
|
@ -97,6 +97,8 @@ class acp_icons
|
||||||
unset($_images);
|
unset($_images);
|
||||||
$_images = array();
|
$_images = array();
|
||||||
|
|
||||||
|
// no break;
|
||||||
|
|
||||||
case 'add':
|
case 'add':
|
||||||
|
|
||||||
$order_list = '';
|
$order_list = '';
|
||||||
|
@ -269,9 +271,10 @@ class acp_icons
|
||||||
{
|
{
|
||||||
$update = true;
|
$update = true;
|
||||||
|
|
||||||
$result = $db->sql_query("SELECT {$fields}_order
|
$sql = "SELECT {$fields}_order
|
||||||
FROM $table
|
FROM $table
|
||||||
WHERE {$fields}_id = " . $image_id[$image]);
|
WHERE {$fields}_id = " . $image_id[$image];
|
||||||
|
$result = $db->sql_query($sql);
|
||||||
$order_old = (int) $db->sql_fetchfield($fields . '_order');
|
$order_old = (int) $db->sql_fetchfield($fields . '_order');
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
|
@ -403,8 +406,9 @@ class acp_icons
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
|
||||||
$db->sql_query("UPDATE $table SET " . $db->sql_build_array('UPDATE', $sql) . "
|
$sql = "UPDATE $table SET " . $db->sql_build_array('UPDATE', $sql) . "
|
||||||
WHERE $field_sql = '" . $db->sql_escape($replace_sql) . "'");
|
WHERE $field_sql = '" . $db->sql_escape($replace_sql) . "'";
|
||||||
|
$db->sql_query($sql);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -638,7 +642,6 @@ class acp_icons
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -65,11 +65,10 @@ class acp_jabber
|
||||||
{
|
{
|
||||||
if (!$jabber->connect())
|
if (!$jabber->connect())
|
||||||
{
|
{
|
||||||
trigger_error('Could not connect to Jabber server' . adm_back_link($this->u_action));
|
trigger_error($user->lang['ERR_JAB_CONNECT'] . adm_back_link($this->u_action));
|
||||||
}
|
}
|
||||||
|
|
||||||
// First we'll try to authorise using this account, if that fails we'll
|
// First we'll try to authorise using this account, if that fails we'll try to create it.
|
||||||
// try to create it.
|
|
||||||
if (!($result = $jabber->send_auth()))
|
if (!($result = $jabber->send_auth()))
|
||||||
{
|
{
|
||||||
if (($result = $jabber->account_registration($config['board_email'], $config['sitename'])) <> 2)
|
if (($result = $jabber->account_registration($config['board_email'], $config['sitename'])) <> 2)
|
||||||
|
@ -95,12 +94,12 @@ class acp_jabber
|
||||||
{
|
{
|
||||||
if (!$jabber->connect())
|
if (!$jabber->connect())
|
||||||
{
|
{
|
||||||
trigger_error('Could not connect to Jabber server' . adm_back_link($this->u_action));
|
trigger_error($user->lang['ERR_JAB_CONNECT'] . adm_back_link($this->u_action));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!$jabber->send_auth())
|
if (!$jabber->send_auth())
|
||||||
{
|
{
|
||||||
trigger_error('Could not authorise on Jabber server' . adm_back_link($this->u_action));
|
trigger_error($user->lang['ERR_JAB_AUTH'] . adm_back_link($this->u_action));
|
||||||
}
|
}
|
||||||
$jabber->send_presence(NULL, NULL, 'online');
|
$jabber->send_presence(NULL, NULL, 'online');
|
||||||
|
|
||||||
|
|
|
@ -60,9 +60,7 @@ class acp_language
|
||||||
if ($action == 'upload_data' && request_var('test_connection', ''))
|
if ($action == 'upload_data' && request_var('test_connection', ''))
|
||||||
{
|
{
|
||||||
$test_connection = false;
|
$test_connection = false;
|
||||||
|
|
||||||
$action = 'upload_file';
|
$action = 'upload_file';
|
||||||
|
|
||||||
$method = request_var('method', '');
|
$method = request_var('method', '');
|
||||||
|
|
||||||
include_once($phpbb_root_path . 'includes/functions_transfer.' . $phpEx);
|
include_once($phpbb_root_path . 'includes/functions_transfer.' . $phpEx);
|
||||||
|
@ -72,6 +70,7 @@ class acp_language
|
||||||
case 'ftp':
|
case 'ftp':
|
||||||
$transfer = new ftp(request_var('host', ''), request_var('username', ''), request_var('password', ''), request_var('root_path', ''), request_var('port', ''), request_var('timeout', ''));
|
$transfer = new ftp(request_var('host', ''), request_var('username', ''), request_var('password', ''), request_var('root_path', ''), request_var('port', ''), request_var('timeout', ''));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
trigger_error($user->lang['INVALID_UPLOAD_METHOD']);
|
trigger_error($user->lang['INVALID_UPLOAD_METHOD']);
|
||||||
}
|
}
|
||||||
|
|
|
@ -109,7 +109,6 @@ class acp_logs
|
||||||
'S_SORT_KEY' => $s_sort_key,
|
'S_SORT_KEY' => $s_sort_key,
|
||||||
'S_SORT_DIR' => $s_sort_dir,
|
'S_SORT_DIR' => $s_sort_dir,
|
||||||
'S_CLEARLOGS' => $auth->acl_get('a_clearlogs'),
|
'S_CLEARLOGS' => $auth->acl_get('a_clearlogs'),
|
||||||
|
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
|
@ -31,11 +31,10 @@ class acp_modules
|
||||||
global $db, $user, $auth, $template;
|
global $db, $user, $auth, $template;
|
||||||
global $config, $phpbb_admin_path, $phpbb_root_path, $phpEx;
|
global $config, $phpbb_admin_path, $phpbb_root_path, $phpEx;
|
||||||
|
|
||||||
// Set a global define for modules we might include (the author is able to prevent executing of code with this)
|
// Set a global define for modules we might include (the author is able to prevent execution of code by checking this constant)
|
||||||
define('MODULE_INCLUDE', true);
|
define('MODULE_INCLUDE', true);
|
||||||
|
|
||||||
$user->add_lang('acp/modules');
|
$user->add_lang('acp/modules');
|
||||||
|
|
||||||
$this->tpl_name = 'acp_modules';
|
$this->tpl_name = 'acp_modules';
|
||||||
|
|
||||||
// module class
|
// module class
|
||||||
|
@ -560,6 +559,7 @@ class acp_modules
|
||||||
WHERE module_class = '" . $db->sql_escape($this->module_class) . "'
|
WHERE module_class = '" . $db->sql_escape($this->module_class) . "'
|
||||||
ORDER BY left_id ASC";
|
ORDER BY left_id ASC";
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
$sql = 'SELECT module_id, module_enabled, module_name, parent_id, module_langname, left_id, right_id, module_auth
|
$sql = 'SELECT module_id, module_enabled, module_name, parent_id, module_langname, left_id, right_id, module_auth
|
||||||
FROM ' . MODULES_TABLE . "
|
FROM ' . MODULES_TABLE . "
|
||||||
|
@ -649,6 +649,7 @@ class acp_modules
|
||||||
|
|
||||||
default:
|
default:
|
||||||
$condition = 'm2.left_id BETWEEN m1.left_id AND m1.right_id OR m1.left_id BETWEEN m2.left_id AND m2.right_id';
|
$condition = 'm2.left_id BETWEEN m1.left_id AND m1.right_id OR m1.left_id BETWEEN m2.left_id AND m2.right_id';
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
$rows = array();
|
$rows = array();
|
||||||
|
@ -934,14 +935,11 @@ class acp_modules
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Move module position by $steps up/down
|
* Move module position by $steps up/down
|
||||||
* @todo support more than one step up/down (at the moment $steps needs to be 1)!
|
|
||||||
*/
|
*/
|
||||||
function move_module_by($module_row, $action = 'move_up', $steps = 1)
|
function move_module_by($module_row, $action = 'move_up', $steps = 1)
|
||||||
{
|
{
|
||||||
global $db;
|
global $db;
|
||||||
|
|
||||||
$module_id = $module_row['module_id'];
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Fetch all the siblings between the module's current spot
|
* Fetch all the siblings between the module's current spot
|
||||||
* and where we want to move it to. If there are less than $steps
|
* and where we want to move it to. If there are less than $steps
|
||||||
|
@ -955,14 +953,14 @@ class acp_modules
|
||||||
AND " . (($action == 'move_up') ? "right_id < {$module_row['right_id']} ORDER BY right_id DESC" : "left_id > {$module_row['left_id']} ORDER BY left_id ASC");
|
AND " . (($action == 'move_up') ? "right_id < {$module_row['right_id']} ORDER BY right_id DESC" : "left_id > {$module_row['left_id']} ORDER BY left_id ASC");
|
||||||
$result = $db->sql_query_limit($sql, $steps);
|
$result = $db->sql_query_limit($sql, $steps);
|
||||||
|
|
||||||
$target_module = array();
|
$target = array();
|
||||||
while ($row = $db->sql_fetchrow($result))
|
while ($row = $db->sql_fetchrow($result))
|
||||||
{
|
{
|
||||||
$target_module = $row;
|
$target = $row;
|
||||||
}
|
}
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
if (!sizeof($target_module))
|
if (!sizeof($target))
|
||||||
{
|
{
|
||||||
// The module is already on top or bottom
|
// The module is already on top or bottom
|
||||||
return false;
|
return false;
|
||||||
|
@ -977,10 +975,10 @@ class acp_modules
|
||||||
*/
|
*/
|
||||||
if ($action == 'move_up')
|
if ($action == 'move_up')
|
||||||
{
|
{
|
||||||
$left_id = $target_module['left_id'];
|
$left_id = $target['left_id'];
|
||||||
$right_id = $module_row['right_id'];
|
$right_id = $module_row['right_id'];
|
||||||
|
|
||||||
$diff_up = $module_row['left_id'] - $target_module['left_id'];
|
$diff_up = $module_row['left_id'] - $target['left_id'];
|
||||||
$diff_down = $module_row['right_id'] + 1 - $module_row['left_id'];
|
$diff_down = $module_row['right_id'] + 1 - $module_row['left_id'];
|
||||||
|
|
||||||
$move_up_left = $module_row['left_id'];
|
$move_up_left = $module_row['left_id'];
|
||||||
|
@ -989,13 +987,13 @@ class acp_modules
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$left_id = $module_row['left_id'];
|
$left_id = $module_row['left_id'];
|
||||||
$right_id = $target_module['right_id'];
|
$right_id = $target['right_id'];
|
||||||
|
|
||||||
$diff_up = $module_row['right_id'] + 1 - $module_row['left_id'];
|
$diff_up = $module_row['right_id'] + 1 - $module_row['left_id'];
|
||||||
$diff_down = $target_module['right_id'] - $module_row['right_id'];
|
$diff_down = $target['right_id'] - $module_row['right_id'];
|
||||||
|
|
||||||
$move_up_left = $module_row['right_id'] + 1;
|
$move_up_left = $module_row['right_id'] + 1;
|
||||||
$move_up_right = $target_module['right_id'];
|
$move_up_right = $target['right_id'];
|
||||||
}
|
}
|
||||||
|
|
||||||
// Now do the dirty job
|
// Now do the dirty job
|
||||||
|
@ -1015,7 +1013,7 @@ class acp_modules
|
||||||
|
|
||||||
$this->remove_cache_file();
|
$this->remove_cache_file();
|
||||||
|
|
||||||
return $this->lang_name($target_module['module_langname']);
|
return $this->lang_name($target['module_langname']);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -128,6 +128,8 @@ class acp_permission_roles
|
||||||
trigger_error($user->lang['NO_ROLE_SELECTED'] . adm_back_link($this->u_action));
|
trigger_error($user->lang['NO_ROLE_SELECTED'] . adm_back_link($this->u_action));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// no break;
|
||||||
|
|
||||||
case 'add':
|
case 'add':
|
||||||
|
|
||||||
$role_name = request_var('role_name', '', true);
|
$role_name = request_var('role_name', '', true);
|
||||||
|
@ -178,7 +180,7 @@ class acp_permission_roles
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
$sql_ary['role_order'] = $max_order + 1;
|
$sql_ary['role_order'] = $max_order + 1;
|
||||||
|
|
||||||
$sql = 'INSERT INTO ' . ACL_ROLES_TABLE . ' ' . $db->sql_build_array('INSERT', $sql_ary);
|
$sql = 'INSERT INTO ' . ACL_ROLES_TABLE . ' ' . $db->sql_build_array('INSERT', $sql_ary);
|
||||||
$db->sql_query($sql);
|
$db->sql_query($sql);
|
||||||
|
|
||||||
|
@ -193,7 +195,6 @@ class acp_permission_roles
|
||||||
trigger_error($user->lang['ROLE_' . strtoupper($action) . '_SUCCESS'] . adm_back_link($this->u_action));
|
trigger_error($user->lang['ROLE_' . strtoupper($action) . '_SUCCESS'] . adm_back_link($this->u_action));
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -243,6 +244,8 @@ class acp_permission_roles
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// no break;
|
||||||
|
|
||||||
case 'edit':
|
case 'edit':
|
||||||
|
|
||||||
if ($action == 'edit')
|
if ($action == 'edit')
|
||||||
|
@ -284,13 +287,13 @@ class acp_permission_roles
|
||||||
|
|
||||||
'U_ACTION' => $this->u_action . "&action={$action}&role_id={$role_id}",
|
'U_ACTION' => $this->u_action . "&action={$action}&role_id={$role_id}",
|
||||||
'U_BACK' => $this->u_action,
|
'U_BACK' => $this->u_action,
|
||||||
|
|
||||||
'ROLE_NAME' => $role_row['role_name'],
|
'ROLE_NAME' => $role_row['role_name'],
|
||||||
'ROLE_DESCRIPTION' => $role_row['role_description'],
|
'ROLE_DESCRIPTION' => $role_row['role_description'],
|
||||||
'L_ACL_TYPE' => $user->lang['ACL_TYPE_' . strtoupper($permission_type)],
|
'L_ACL_TYPE' => $user->lang['ACL_TYPE_' . strtoupper($permission_type)],
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
// We need to fill the auth options array with ACL_UNSET options ;)
|
// We need to fill the auth options array with ACL_UNSET options ;)
|
||||||
$sql = 'SELECT auth_option_id, auth_option
|
$sql = 'SELECT auth_option_id, auth_option
|
||||||
FROM ' . ACL_OPTIONS_TABLE . "
|
FROM ' . ACL_OPTIONS_TABLE . "
|
||||||
|
@ -348,7 +351,7 @@ class acp_permission_roles
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
// By default, check that image_order is valid and fix it if necessary
|
// By default, check that role_order is valid and fix it if necessary
|
||||||
$sql = 'SELECT role_id, role_order
|
$sql = 'SELECT role_id, role_order
|
||||||
FROM ' . ACL_ROLES_TABLE . "
|
FROM ' . ACL_ROLES_TABLE . "
|
||||||
WHERE role_type = '" . $db->sql_escape($permission_type) . "'
|
WHERE role_type = '" . $db->sql_escape($permission_type) . "'
|
||||||
|
@ -430,12 +433,12 @@ class acp_permission_roles
|
||||||
$content_array = $categories = array();
|
$content_array = $categories = array();
|
||||||
$key_sort_array = array(0);
|
$key_sort_array = array(0);
|
||||||
$auth_options = array(0 => $auth_options);
|
$auth_options = array(0 => $auth_options);
|
||||||
|
|
||||||
// Making use of auth_admin method here (we do not really want to change two similar code fragments)
|
// Making use of auth_admin method here (we do not really want to change two similar code fragments)
|
||||||
auth_admin::build_permission_array($auth_options, $content_array, $categories, $key_sort_array);
|
auth_admin::build_permission_array($auth_options, $content_array, $categories, $key_sort_array);
|
||||||
|
|
||||||
$content_array = $content_array[0];
|
$content_array = $content_array[0];
|
||||||
|
|
||||||
$template->assign_var('S_NUM_PERM_COLS', sizeof($categories));
|
$template->assign_var('S_NUM_PERM_COLS', sizeof($categories));
|
||||||
|
|
||||||
// Assign to template
|
// Assign to template
|
||||||
|
@ -448,7 +451,7 @@ class acp_permission_roles
|
||||||
'S_NO' => ($cat_array['S_NO'] && !$cat_array['S_YES'] && !$cat_array['S_UNSET']) ? true : false,
|
'S_NO' => ($cat_array['S_NO'] && !$cat_array['S_YES'] && !$cat_array['S_UNSET']) ? true : false,
|
||||||
'S_UNSET' => ($cat_array['S_UNSET'] && !$cat_array['S_NO'] && !$cat_array['S_YES']) ? true : false)
|
'S_UNSET' => ($cat_array['S_UNSET'] && !$cat_array['S_NO'] && !$cat_array['S_YES']) ? true : false)
|
||||||
);
|
);
|
||||||
|
|
||||||
foreach ($cat_array['permissions'] as $permission => $allowed)
|
foreach ($cat_array['permissions'] as $permission => $allowed)
|
||||||
{
|
{
|
||||||
$template->assign_block_vars('auth.mask', array(
|
$template->assign_block_vars('auth.mask', array(
|
||||||
|
@ -471,7 +474,7 @@ class acp_permission_roles
|
||||||
global $db;
|
global $db;
|
||||||
|
|
||||||
$auth_admin = new auth_admin();
|
$auth_admin = new auth_admin();
|
||||||
|
|
||||||
// Get complete auth array
|
// Get complete auth array
|
||||||
$sql = 'SELECT auth_option, auth_option_id
|
$sql = 'SELECT auth_option, auth_option_id
|
||||||
FROM ' . ACL_OPTIONS_TABLE . "
|
FROM ' . ACL_OPTIONS_TABLE . "
|
||||||
|
|
|
@ -129,13 +129,14 @@ class acp_permissions
|
||||||
|
|
||||||
// Define some common variables for every mode
|
// Define some common variables for every mode
|
||||||
$error = array();
|
$error = array();
|
||||||
|
|
||||||
$permission_scope = (strpos($mode, '_global') !== false) ? 'global' : 'local';
|
$permission_scope = (strpos($mode, '_global') !== false) ? 'global' : 'local';
|
||||||
|
|
||||||
// Showing introductionary page?
|
// Showing introductionary page?
|
||||||
if ($mode == 'intro')
|
if ($mode == 'intro')
|
||||||
{
|
{
|
||||||
$this->page_title = 'ACP_PERMISSIONS';
|
$this->page_title = 'ACP_PERMISSIONS';
|
||||||
|
|
||||||
$template->assign_vars(array(
|
$template->assign_vars(array(
|
||||||
'S_INTRO' => true)
|
'S_INTRO' => true)
|
||||||
);
|
);
|
||||||
|
@ -263,7 +264,7 @@ class acp_permissions
|
||||||
);
|
);
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'forums':
|
case 'forums':
|
||||||
|
|
||||||
if (sizeof($forum_id))
|
if (sizeof($forum_id))
|
||||||
|
@ -362,9 +363,9 @@ class acp_permissions
|
||||||
),
|
),
|
||||||
|
|
||||||
'WHERE' => "(a.auth_option_id = o.auth_option_id OR r.auth_option_id = o.auth_option_id)
|
'WHERE' => "(a.auth_option_id = o.auth_option_id OR r.auth_option_id = o.auth_option_id)
|
||||||
$sql_permission_option
|
$sql_permission_option
|
||||||
$sql_forum_id
|
$sql_forum_id
|
||||||
AND u.user_id = a.user_id",
|
AND u.user_id = a.user_id",
|
||||||
|
|
||||||
'ORDER_BY' => 'u.username, u.user_regdate ASC'
|
'ORDER_BY' => 'u.username, u.user_regdate ASC'
|
||||||
));
|
));
|
||||||
|
@ -599,7 +600,7 @@ class acp_permissions
|
||||||
FROM $table
|
FROM $table
|
||||||
WHERE $sql_id IN (" . implode(', ', $ids) . ')';
|
WHERE $sql_id IN (" . implode(', ', $ids) . ')';
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
|
|
||||||
$ids = array();
|
$ids = array();
|
||||||
while ($row = $db->sql_fetchrow($result))
|
while ($row = $db->sql_fetchrow($result))
|
||||||
{
|
{
|
||||||
|
@ -709,7 +710,7 @@ class acp_permissions
|
||||||
{
|
{
|
||||||
trigger_error($user->lang['NO_ADMIN'] . adm_back_link($this->u_action));
|
trigger_error($user->lang['NO_ADMIN'] . adm_back_link($this->u_action));
|
||||||
}
|
}
|
||||||
|
|
||||||
$auth_settings = (isset($_POST['setting'])) ? $_POST['setting'] : array();
|
$auth_settings = (isset($_POST['setting'])) ? $_POST['setting'] : array();
|
||||||
$auth_roles = (isset($_POST['role'])) ? $_POST['role'] : array();
|
$auth_roles = (isset($_POST['role'])) ? $_POST['role'] : array();
|
||||||
$ug_ids = $forum_ids = array();
|
$ug_ids = $forum_ids = array();
|
||||||
|
@ -719,7 +720,7 @@ class acp_permissions
|
||||||
{
|
{
|
||||||
$ug_id = (int) $ug_id;
|
$ug_id = (int) $ug_id;
|
||||||
$ug_ids[] = $ug_id;
|
$ug_ids[] = $ug_id;
|
||||||
|
|
||||||
foreach ($forum_auth_row as $forum_id => $auth_options)
|
foreach ($forum_auth_row as $forum_id => $auth_options)
|
||||||
{
|
{
|
||||||
$forum_id = (int) $forum_id;
|
$forum_id = (int) $forum_id;
|
||||||
|
@ -824,7 +825,7 @@ class acp_permissions
|
||||||
}
|
}
|
||||||
|
|
||||||
$this->log_action($mode, 'del', $permission_type, $ug_type, (($ug_type == 'user') ? $user_id : $group_id), (sizeof($forum_id) ? $forum_id : array(0 => 0)));
|
$this->log_action($mode, 'del', $permission_type, $ug_type, (($ug_type == 'user') ? $user_id : $group_id), (sizeof($forum_id) ? $forum_id : array(0 => 0)));
|
||||||
|
|
||||||
trigger_error($user->lang['AUTH_UPDATED'] . adm_back_link($this->u_action));
|
trigger_error($user->lang['AUTH_UPDATED'] . adm_back_link($this->u_action));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -942,7 +943,7 @@ class acp_permissions
|
||||||
FROM ' . FORUMS_TABLE . "
|
FROM ' . FORUMS_TABLE . "
|
||||||
WHERE forum_id = $forum_id";
|
WHERE forum_id = $forum_id";
|
||||||
$result = $db->sql_query($sql, 3600);
|
$result = $db->sql_query($sql, 3600);
|
||||||
$forum_name = $db->sql_fetchfield('forum_name', false, $result);
|
$forum_name = $db->sql_fetchfield('forum_name');
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -142,7 +142,7 @@ class acp_prune
|
||||||
'U_ACTION' => $this->u_action,
|
'U_ACTION' => $this->u_action,
|
||||||
'S_SELECT_FORUM' => true,
|
'S_SELECT_FORUM' => true,
|
||||||
'S_FORUM_OPTIONS' => make_forum_select(false, false, false))
|
'S_FORUM_OPTIONS' => make_forum_select(false, false, false))
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -150,9 +150,11 @@ class acp_prune
|
||||||
FROM ' . FORUMS_TABLE . '
|
FROM ' . FORUMS_TABLE . '
|
||||||
WHERE forum_id IN (' . implode(', ', $forum_id) . ')';
|
WHERE forum_id IN (' . implode(', ', $forum_id) . ')';
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
|
$row = $db->sql_fetchrow($result);
|
||||||
|
|
||||||
if (!($row = $db->sql_fetchrow($result)))
|
if (!$row)
|
||||||
{
|
{
|
||||||
|
$db->sql_freeresult($result);
|
||||||
trigger_error($user->lang['NO_FORUM'] . adm_back_link($this->u_action));
|
trigger_error($user->lang['NO_FORUM'] . adm_back_link($this->u_action));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -175,9 +177,7 @@ class acp_prune
|
||||||
'FORUM_LIST' => $forum_list,
|
'FORUM_LIST' => $forum_list,
|
||||||
'S_HIDDEN_FIELDS' => $s_hidden_fields)
|
'S_HIDDEN_FIELDS' => $s_hidden_fields)
|
||||||
);
|
);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -361,7 +361,6 @@ class acp_prune
|
||||||
'S_COUNT_OPTIONS' => $s_find_count,
|
'S_COUNT_OPTIONS' => $s_find_count,
|
||||||
'U_FIND_USER' => append_sid($phpbb_root_path . "memberlist.$phpEx", 'mode=searchuser&form=acp_prune&field=users'))
|
'U_FIND_USER' => append_sid($phpbb_root_path . "memberlist.$phpEx", 'mode=searchuser&form=acp_prune&field=users'))
|
||||||
);
|
);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -30,7 +30,6 @@ class acp_reasons
|
||||||
$this->tpl_name = 'acp_reasons';
|
$this->tpl_name = 'acp_reasons';
|
||||||
$this->page_title = 'ACP_REASONS';
|
$this->page_title = 'ACP_REASONS';
|
||||||
|
|
||||||
// dumdidum... do i really need to do something mom?
|
|
||||||
$error = array();
|
$error = array();
|
||||||
|
|
||||||
switch ($action)
|
switch ($action)
|
||||||
|
|
|
@ -31,7 +31,7 @@ class acp_users
|
||||||
$username = request_var('username', '', true);
|
$username = request_var('username', '', true);
|
||||||
$user_id = request_var('u', 0);
|
$user_id = request_var('u', 0);
|
||||||
$action = request_var('action', '');
|
$action = request_var('action', '');
|
||||||
|
|
||||||
$submit = (isset($_POST['update'])) ? true : false;
|
$submit = (isset($_POST['update'])) ? true : false;
|
||||||
|
|
||||||
// Whois (special case)
|
// Whois (special case)
|
||||||
|
@ -57,7 +57,7 @@ class acp_users
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Show user selection mask
|
// Show user selection mask
|
||||||
if (!$username && !$user_id)
|
if (!$username && !$user_id)
|
||||||
{
|
{
|
||||||
|
@ -130,6 +130,12 @@ class acp_users
|
||||||
'S_FORM_OPTIONS' => $s_form_options)
|
'S_FORM_OPTIONS' => $s_form_options)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
// Prevent normal users/admins change/view founders if they are not a founder by themselves
|
||||||
|
if ($user->data['user_type'] != USER_FOUNDER && $user_row['user_type'] == USER_FOUNDER)
|
||||||
|
{
|
||||||
|
trigger_error($user->lang['NOT_MANAGE_FOUNDER'] . adm_back_link($this->u_action));
|
||||||
|
}
|
||||||
|
|
||||||
switch ($mode)
|
switch ($mode)
|
||||||
{
|
{
|
||||||
case 'overview':
|
case 'overview':
|
||||||
|
@ -1502,9 +1508,9 @@ class acp_users
|
||||||
'SIGNATURE' => $signature,
|
'SIGNATURE' => $signature,
|
||||||
'SIGNATURE_PREVIEW' => $signature_preview,
|
'SIGNATURE_PREVIEW' => $signature_preview,
|
||||||
|
|
||||||
'S_BBCODE_CHECKED' => (!$enable_bbcode) ? 'checked="checked"' : '',
|
'S_BBCODE_CHECKED' => (!$enable_bbcode) ? 'checked="checked"' : '',
|
||||||
'S_SMILIES_CHECKED' => (!$enable_smilies) ? 'checked="checked"' : '',
|
'S_SMILIES_CHECKED' => (!$enable_smilies) ? 'checked="checked"' : '',
|
||||||
'S_MAGIC_URL_CHECKED' => (!$enable_urls) ? 'checked="checked"' : '',
|
'S_MAGIC_URL_CHECKED' => (!$enable_urls) ? 'checked="checked"' : '',
|
||||||
|
|
||||||
'BBCODE_STATUS' => ($config['allow_sig_bbcode']) ? sprintf($user->lang['BBCODE_IS_ON'], '<a href="' . append_sid("{$phpbb_root_path}faq.$phpEx", 'mode=bbcode') . '" onclick="target=\'_phpbbcode\';">', '</a>') : sprintf($user->lang['BBCODE_IS_OFF'], '<a href="' . append_sid("{$phpbb_root_path}faq.$phpEx", 'mode=bbcode') . '" onclick="target=\'_phpbbcode\';">', '</a>'),
|
'BBCODE_STATUS' => ($config['allow_sig_bbcode']) ? sprintf($user->lang['BBCODE_IS_ON'], '<a href="' . append_sid("{$phpbb_root_path}faq.$phpEx", 'mode=bbcode') . '" onclick="target=\'_phpbbcode\';">', '</a>') : sprintf($user->lang['BBCODE_IS_OFF'], '<a href="' . append_sid("{$phpbb_root_path}faq.$phpEx", 'mode=bbcode') . '" onclick="target=\'_phpbbcode\';">', '</a>'),
|
||||||
'SMILIES_STATUS' => ($config['allow_sig_smilies']) ? $user->lang['SMILIES_ARE_ON'] : $user->lang['SMILIES_ARE_OFF'],
|
'SMILIES_STATUS' => ($config['allow_sig_smilies']) ? $user->lang['SMILIES_ARE_ON'] : $user->lang['SMILIES_ARE_OFF'],
|
||||||
|
|
|
@ -124,6 +124,7 @@ class auth_admin extends auth
|
||||||
FROM ' . USERS_TABLE . '
|
FROM ' . USERS_TABLE . '
|
||||||
WHERE user_id IN (' . implode(',', $ug_id) . ')';
|
WHERE user_id IN (' . implode(',', $ug_id) . ')';
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
|
|
||||||
while ($userdata = $db->sql_fetchrow($result))
|
while ($userdata = $db->sql_fetchrow($result))
|
||||||
{
|
{
|
||||||
if ($user->data['user_id'] != $user_id)
|
if ($user->data['user_id'] != $user_id)
|
||||||
|
@ -148,6 +149,7 @@ class auth_admin extends auth
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
unset($userdata);
|
unset($userdata);
|
||||||
unset($auth2);
|
unset($auth2);
|
||||||
}
|
}
|
||||||
|
@ -393,9 +395,9 @@ class auth_admin extends auth
|
||||||
$groups[$row['group_id']] = $row;
|
$groups[$row['group_id']] = $row;
|
||||||
}
|
}
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
$memberships = group_memberships(false, array_keys($hold_ary), false);
|
$memberships = group_memberships(false, array_keys($hold_ary), false);
|
||||||
|
|
||||||
// User is not a member of any group? Bad admin, bad bad admin...
|
// User is not a member of any group? Bad admin, bad bad admin...
|
||||||
if ($memberships)
|
if ($memberships)
|
||||||
{
|
{
|
||||||
|
@ -546,6 +548,7 @@ class auth_admin extends auth
|
||||||
|
|
||||||
default:
|
default:
|
||||||
$folder_image = ($forum_names_ary[$forum_id]['left_id'] + 1 != $forum_names_ary[$forum_id]['right_id']) ? '<img src="images/icon_folder_sub_small.gif" width="22" height="18" alt="' . $user->lang['SUBFORUM'] . '" />' : '<img src="images/icon_folder_small.gif" width="19" height="18" alt="' . $user->lang['FOLDER'] . '" />';
|
$folder_image = ($forum_names_ary[$forum_id]['left_id'] + 1 != $forum_names_ary[$forum_id]['right_id']) ? '<img src="images/icon_folder_sub_small.gif" width="22" height="18" alt="' . $user->lang['SUBFORUM'] . '" />' : '<img src="images/icon_folder_small.gif" width="19" height="18" alt="' . $user->lang['FOLDER'] . '" />';
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -596,7 +599,7 @@ class auth_admin extends auth
|
||||||
'NAME' => ($forum_id == 0) ? $user->lang['GLOBAL_MASK'] : $forum_names[$forum_id],
|
'NAME' => ($forum_id == 0) ? $user->lang['GLOBAL_MASK'] : $forum_names[$forum_id],
|
||||||
'FORUM_ID' => $forum_id)
|
'FORUM_ID' => $forum_id)
|
||||||
);
|
);
|
||||||
|
|
||||||
if (isset($auth_ary['users']) && sizeof($auth_ary['users']))
|
if (isset($auth_ary['users']) && sizeof($auth_ary['users']))
|
||||||
{
|
{
|
||||||
$sql = 'SELECT user_id, username
|
$sql = 'SELECT user_id, username
|
||||||
|
@ -740,6 +743,7 @@ class auth_admin extends auth
|
||||||
}
|
}
|
||||||
|
|
||||||
$cache->destroy('acl_options');
|
$cache->destroy('acl_options');
|
||||||
|
$this->acl_clear_prefetch();
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -762,7 +766,7 @@ class auth_admin extends auth
|
||||||
{
|
{
|
||||||
$ug_id = array($ug_id);
|
$ug_id = array($ug_id);
|
||||||
}
|
}
|
||||||
|
|
||||||
$ug_id_sql = 'IN (' . implode(', ', array_map('intval', $ug_id)) . ')';
|
$ug_id_sql = 'IN (' . implode(', ', array_map('intval', $ug_id)) . ')';
|
||||||
$forum_sql = 'IN (' . implode(', ', array_map('intval', $forum_id)) . ') ';
|
$forum_sql = 'IN (' . implode(', ', array_map('intval', $forum_id)) . ') ';
|
||||||
|
|
||||||
|
@ -1181,7 +1185,7 @@ class auth_admin extends auth
|
||||||
* The other user is always able to revert back to his permission set.
|
* The other user is always able to revert back to his permission set.
|
||||||
* This function does not check for lower/higher permissions, it is possible for the user to gain
|
* This function does not check for lower/higher permissions, it is possible for the user to gain
|
||||||
* "more" permissions by this.
|
* "more" permissions by this.
|
||||||
*
|
* Admin permissions will not be copied.
|
||||||
*/
|
*/
|
||||||
function ghost_permissions($from_user_id, $to_user_id)
|
function ghost_permissions($from_user_id, $to_user_id)
|
||||||
{
|
{
|
||||||
|
|
|
@ -53,7 +53,6 @@ class auth
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
$cache->put('acl_options', $this->acl_options);
|
$cache->put('acl_options', $this->acl_options);
|
||||||
$this->acl_clear_prefetch();
|
|
||||||
$this->acl_cache($userdata);
|
$this->acl_cache($userdata);
|
||||||
}
|
}
|
||||||
else if (!trim($userdata['user_permissions']))
|
else if (!trim($userdata['user_permissions']))
|
||||||
|
|
|
@ -28,7 +28,7 @@ function login_apache(&$username, &$password)
|
||||||
$php_auth_user = $_SERVER['PHP_AUTH_USER'];
|
$php_auth_user = $_SERVER['PHP_AUTH_USER'];
|
||||||
$php_auth_pw = $_SERVER['PHP_AUTH_PW'];
|
$php_auth_pw = $_SERVER['PHP_AUTH_PW'];
|
||||||
|
|
||||||
if ((!empty($php_auth_user)) && (!empty($php_auth_pw)))
|
if (!empty($php_auth_user) && !empty($php_auth_pw))
|
||||||
{
|
{
|
||||||
$sql = 'SELECT user_id, username, user_password, user_passchg, user_email, user_type
|
$sql = 'SELECT user_id, username, user_password, user_passchg, user_email, user_type
|
||||||
FROM ' . USERS_TABLE . "
|
FROM ' . USERS_TABLE . "
|
||||||
|
@ -85,16 +85,17 @@ function autologin_apache()
|
||||||
$php_auth_user = $_SERVER['PHP_AUTH_USER'];
|
$php_auth_user = $_SERVER['PHP_AUTH_USER'];
|
||||||
$php_auth_pw = $_SERVER['PHP_AUTH_PW'];
|
$php_auth_pw = $_SERVER['PHP_AUTH_PW'];
|
||||||
|
|
||||||
if ((!empty($php_auth_user)) && (!empty($php_auth_pw)))
|
if (!empty($php_auth_user) && !empty($php_auth_pw))
|
||||||
{
|
{
|
||||||
$sql = 'SELECT *
|
$sql = 'SELECT *
|
||||||
FROM ' . USERS_TABLE . "
|
FROM ' . USERS_TABLE . "
|
||||||
WHERE username = '" . $db->sql_escape($php_auth_user) . "'";
|
WHERE username = '" . $db->sql_escape($php_auth_user) . "'";
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
|
$row = $db->sql_fetchrow($result);
|
||||||
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
if ($row = $db->sql_fetchrow($result))
|
if ($row)
|
||||||
{
|
{
|
||||||
$db->sql_freeresult($result);
|
|
||||||
return ($row['user_type'] == USER_INACTIVE || $row['user_type'] == USER_IGNORE) ? array() : $row;
|
return ($row['user_type'] == USER_INACTIVE || $row['user_type'] == USER_IGNORE) ? array() : $row;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -109,7 +110,7 @@ function autologin_apache()
|
||||||
*/
|
*/
|
||||||
function validate_session_apache(&$user)
|
function validate_session_apache(&$user)
|
||||||
{
|
{
|
||||||
return ($_SERVER['PHP_AUTH_USER'] == $user['username']) ? true : false;
|
return ($_SERVER['PHP_AUTH_USER'] === $user['username']) ? true : false;
|
||||||
}
|
}
|
||||||
|
|
||||||
?>
|
?>
|
|
@ -103,7 +103,10 @@ function login_db(&$username, &$password)
|
||||||
if (md5($password) == $row['user_password'])
|
if (md5($password) == $row['user_password'])
|
||||||
{
|
{
|
||||||
// Successful, reset login attempts (the user passed all stages)
|
// Successful, reset login attempts (the user passed all stages)
|
||||||
$db->sql_query('UPDATE ' . USERS_TABLE . ' SET user_login_attempts = 0 WHERE user_id = ' . $row['user_id']);
|
$sql = 'UPDATE ' . USERS_TABLE . '
|
||||||
|
SET user_login_attempts = 0
|
||||||
|
WHERE user_id = ' . $row['user_id'];
|
||||||
|
$db->sql_query($sql);
|
||||||
|
|
||||||
// User inactive...
|
// User inactive...
|
||||||
if ($row['user_type'] == USER_INACTIVE || $row['user_type'] == USER_IGNORE)
|
if ($row['user_type'] == USER_INACTIVE || $row['user_type'] == USER_IGNORE)
|
||||||
|
@ -124,8 +127,11 @@ function login_db(&$username, &$password)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Password incorrect - increase login attempts
|
// Password incorrect - increase login attempts
|
||||||
$db->sql_query('UPDATE ' . USERS_TABLE . ' SET user_login_attempts = user_login_attempts + 1 WHERE user_id = ' . $row['user_id']);
|
$sql = 'UPDATE ' . USERS_TABLE . '
|
||||||
|
SET user_login_attempts = user_login_attempts + 1
|
||||||
|
WHERE user_id = ' . $row['user_id'];
|
||||||
|
$db->sql_query($sql);
|
||||||
|
|
||||||
// Give status about wrong password...
|
// Give status about wrong password...
|
||||||
return array(
|
return array(
|
||||||
'status' => LOGIN_ERROR_PASSWORD,
|
'status' => LOGIN_ERROR_PASSWORD,
|
||||||
|
|
|
@ -20,13 +20,15 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* Connect to ldap server
|
||||||
* Only allow changing authentication to ldap if we can connect to the ldap server
|
* Only allow changing authentication to ldap if we can connect to the ldap server
|
||||||
|
* Called in acp_board while setting authentication plugins
|
||||||
*/
|
*/
|
||||||
function init_ldap()
|
function init_ldap()
|
||||||
{
|
{
|
||||||
global $config, $user;
|
global $config, $user;
|
||||||
|
|
||||||
if (!extension_loaded('ldap'))
|
if (!@extension_loaded('ldap'))
|
||||||
{
|
{
|
||||||
return $user->lang['LDAP_NO_LDAP_EXTENSION'];
|
return $user->lang['LDAP_NO_LDAP_EXTENSION'];
|
||||||
}
|
}
|
||||||
|
@ -38,13 +40,10 @@ function init_ldap()
|
||||||
|
|
||||||
@ldap_set_option($ldap, LDAP_OPT_PROTOCOL_VERSION, 3);
|
@ldap_set_option($ldap, LDAP_OPT_PROTOCOL_VERSION, 3);
|
||||||
|
|
||||||
// We'll get a notice here that we don't want, if we cannot connect to the server.
|
|
||||||
// ldap_connect only checks whether the specified server is valid, so the connection might still fail
|
// ldap_connect only checks whether the specified server is valid, so the connection might still fail
|
||||||
ob_start();
|
|
||||||
|
|
||||||
$search = @ldap_search($ldap, $config['ldap_base_dn'], $config['ldap_uid'] . '=' . $user->data['username'], array($config['ldap_uid']));
|
$search = @ldap_search($ldap, $config['ldap_base_dn'], $config['ldap_uid'] . '=' . $user->data['username'], array($config['ldap_uid']));
|
||||||
|
|
||||||
if (ob_get_clean())
|
if ($search === false)
|
||||||
{
|
{
|
||||||
return $user->lang['LDAP_NO_SERVER_CONNECTION'];
|
return $user->lang['LDAP_NO_SERVER_CONNECTION'];
|
||||||
}
|
}
|
||||||
|
@ -68,7 +67,7 @@ function login_ldap(&$username, &$password)
|
||||||
{
|
{
|
||||||
global $db, $config;
|
global $db, $config;
|
||||||
|
|
||||||
if (!extension_loaded('ldap'))
|
if (!@extension_loaded('ldap'))
|
||||||
{
|
{
|
||||||
return array(
|
return array(
|
||||||
'status' => LOGIN_ERROR_EXTERNAL_AUTH,
|
'status' => LOGIN_ERROR_EXTERNAL_AUTH,
|
||||||
|
@ -115,7 +114,7 @@ function login_ldap(&$username, &$password)
|
||||||
'user_row' => $row,
|
'user_row' => $row,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Successful login... set user_login_attempts to zero...
|
// Successful login... set user_login_attempts to zero...
|
||||||
return array(
|
return array(
|
||||||
'status' => LOGIN_SUCCESS,
|
'status' => LOGIN_SUCCESS,
|
||||||
|
@ -155,7 +154,7 @@ function admin_ldap(&$new)
|
||||||
global $user;
|
global $user;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @todo Using same approach with cfg_build_template?
|
* @todo Using same approach as with cfg_build_template?
|
||||||
*/
|
*/
|
||||||
|
|
||||||
$tpl = '
|
$tpl = '
|
||||||
|
|
|
@ -375,14 +375,17 @@ class bbcode
|
||||||
{
|
{
|
||||||
if (empty($bbcode_hardtpl))
|
if (empty($bbcode_hardtpl))
|
||||||
{
|
{
|
||||||
static $bbcode_hardtpl = array(
|
global $user;
|
||||||
|
static $bbcode_hardtpl = array();
|
||||||
|
|
||||||
|
$bbcode_hardtpl = array(
|
||||||
'b_open' => '<span style="font-weight: bold">',
|
'b_open' => '<span style="font-weight: bold">',
|
||||||
'b_close' => '</span>',
|
'b_close' => '</span>',
|
||||||
'i_open' => '<span style="font-style: italic">',
|
'i_open' => '<span style="font-style: italic">',
|
||||||
'i_close' => '</span>',
|
'i_close' => '</span>',
|
||||||
'u_open' => '<span style="text-decoration: underline">',
|
'u_open' => '<span style="text-decoration: underline">',
|
||||||
'u_close' => '</span>',
|
'u_close' => '</span>',
|
||||||
'img' => '<img src="$1" border="0" />',
|
'img' => '<img src="$1" alt="' . $user->lang['IMAGE'] . '" />',
|
||||||
'size' => '<span style="font-size: $1px; line-height: normal">$2</span>',
|
'size' => '<span style="font-size: $1px; line-height: normal">$2</span>',
|
||||||
'color' => '<span style="color: $1">$2</span>',
|
'color' => '<span style="color: $1">$2</span>',
|
||||||
'email' => '<a href="mailto:$1">$2</a>'
|
'email' => '<a href="mailto:$1">$2</a>'
|
||||||
|
|
|
@ -25,7 +25,7 @@ class captcha
|
||||||
// If we can we will generate a single filtered png, we avoid nastiness via emulation of some Zlib stuff
|
// If we can we will generate a single filtered png, we avoid nastiness via emulation of some Zlib stuff
|
||||||
$this->define_filtered_pngs();
|
$this->define_filtered_pngs();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create the image containing $code
|
* Create the image containing $code
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -143,7 +143,6 @@ define('BANLIST_TABLE', $table_prefix . 'banlist');
|
||||||
define('BBCODES_TABLE', $table_prefix . 'bbcodes');
|
define('BBCODES_TABLE', $table_prefix . 'bbcodes');
|
||||||
define('BOOKMARKS_TABLE', $table_prefix . 'bookmarks');
|
define('BOOKMARKS_TABLE', $table_prefix . 'bookmarks');
|
||||||
define('BOTS_TABLE', $table_prefix . 'bots');
|
define('BOTS_TABLE', $table_prefix . 'bots');
|
||||||
define('CACHE_TABLE', $table_prefix . 'cache');
|
|
||||||
define('CONFIG_TABLE', $table_prefix . 'config');
|
define('CONFIG_TABLE', $table_prefix . 'config');
|
||||||
define('CONFIRM_TABLE', $table_prefix . 'confirm');
|
define('CONFIRM_TABLE', $table_prefix . 'confirm');
|
||||||
define('PROFILE_FIELDS_TABLE', $table_prefix . 'profile_fields');
|
define('PROFILE_FIELDS_TABLE', $table_prefix . 'profile_fields');
|
||||||
|
|
|
@ -2357,7 +2357,7 @@ function page_header($page_title = '', $display_online_list = true)
|
||||||
// gzip_compression
|
// gzip_compression
|
||||||
if ($config['gzip_compress'])
|
if ($config['gzip_compress'])
|
||||||
{
|
{
|
||||||
if (extension_loaded('zlib') && !headers_sent())
|
if (@extension_loaded('zlib') && !headers_sent())
|
||||||
{
|
{
|
||||||
ob_start('ob_gzhandler');
|
ob_start('ob_gzhandler');
|
||||||
}
|
}
|
||||||
|
|
|
@ -474,7 +474,7 @@ class compress_tar extends compress
|
||||||
*/
|
*/
|
||||||
function extract($dst)
|
function extract($dst)
|
||||||
{
|
{
|
||||||
$fzread = ($this->isbz && function_exists('bzread')) ? 'bzread' : (($this->isgz && extension_loaded('zlib')) ? 'gzread' : 'fread');
|
$fzread = ($this->isbz && function_exists('bzread')) ? 'bzread' : (($this->isgz && @extension_loaded('zlib')) ? 'gzread' : 'fread');
|
||||||
|
|
||||||
// Run through the file and grab directory entries
|
// Run through the file and grab directory entries
|
||||||
while ($buffer = $fzread($this->fp, 512))
|
while ($buffer = $fzread($this->fp, 512))
|
||||||
|
@ -536,11 +536,11 @@ class compress_tar extends compress
|
||||||
*/
|
*/
|
||||||
function close()
|
function close()
|
||||||
{
|
{
|
||||||
$fzclose = ($this->isbz && function_exists('bzclose')) ? 'bzclose' : (($this->isgz && extension_loaded('zlib')) ? 'gzclose' : 'fclose');
|
$fzclose = ($this->isbz && function_exists('bzclose')) ? 'bzclose' : (($this->isgz && @extension_loaded('zlib')) ? 'gzclose' : 'fclose');
|
||||||
|
|
||||||
if ($this->wrote)
|
if ($this->wrote)
|
||||||
{
|
{
|
||||||
$fzwrite = ($this->isbz && function_exists('bzwrite')) ? 'bzwrite' : (($this->isgz && extension_loaded('zlib')) ? 'gzwrite' : 'fwrite');
|
$fzwrite = ($this->isbz && function_exists('bzwrite')) ? 'bzwrite' : (($this->isgz && @extension_loaded('zlib')) ? 'gzwrite' : 'fwrite');
|
||||||
|
|
||||||
// Symbolizes that there are no more files
|
// Symbolizes that there are no more files
|
||||||
$fzwrite($this->fp, pack("a512", ""));
|
$fzwrite($this->fp, pack("a512", ""));
|
||||||
|
@ -555,7 +555,7 @@ class compress_tar extends compress
|
||||||
function data($name, $data, $is_dir = false, $stat)
|
function data($name, $data, $is_dir = false, $stat)
|
||||||
{
|
{
|
||||||
$this->wrote = true;
|
$this->wrote = true;
|
||||||
$fzwrite = ($this->isbz && function_exists('bzwrite')) ? 'bzwrite' : (($this->isgz && extension_loaded('zlib')) ? 'gzwrite' : 'fwrite');
|
$fzwrite = ($this->isbz && function_exists('bzwrite')) ? 'bzwrite' : (($this->isgz && @extension_loaded('zlib')) ? 'gzwrite' : 'fwrite');
|
||||||
|
|
||||||
$typeflag = ($is_dir) ? '5' : '';
|
$typeflag = ($is_dir) ? '5' : '';
|
||||||
|
|
||||||
|
@ -600,7 +600,7 @@ class compress_tar extends compress
|
||||||
*/
|
*/
|
||||||
function open()
|
function open()
|
||||||
{
|
{
|
||||||
$fzopen = ($this->isbz && function_exists('bzopen')) ? 'bzopen' : (($this->isgz && extension_loaded('zlib')) ? 'gzopen' : 'fopen');
|
$fzopen = ($this->isbz && function_exists('bzopen')) ? 'bzopen' : (($this->isgz && @extension_loaded('zlib')) ? 'gzopen' : 'fopen');
|
||||||
$this->fp = @$fzopen($this->file, $this->mode . 'b' . (($fzopen == 'gzopen') ? '9' : ''));
|
$this->fp = @$fzopen($this->file, $this->mode . 'b' . (($fzopen == 'gzopen') ? '9' : ''));
|
||||||
|
|
||||||
if (!$this->fp)
|
if (!$this->fp)
|
||||||
|
|
|
@ -114,7 +114,7 @@ class custom_profile
|
||||||
return 'FIELD_INVALID_DATE';
|
return 'FIELD_INVALID_DATE';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!checkdate($month, $day, $year) === false)
|
if (checkdate($month, $day, $year) === false)
|
||||||
{
|
{
|
||||||
return 'FIELD_INVALID_DATE';
|
return 'FIELD_INVALID_DATE';
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,9 +25,9 @@ class mcp_ban
|
||||||
// Include the admin banning interface...
|
// Include the admin banning interface...
|
||||||
include($phpbb_root_path . 'includes/acp/acp_ban.' . $phpEx);
|
include($phpbb_root_path . 'includes/acp/acp_ban.' . $phpEx);
|
||||||
|
|
||||||
$bansubmit = (isset($_POST['bansubmit'])) ? true : false;
|
$bansubmit = (isset($_POST['bansubmit'])) ? true : false;
|
||||||
$unbansubmit= (isset($_POST['unbansubmit'])) ? true : false;
|
$unbansubmit = (isset($_POST['unbansubmit'])) ? true : false;
|
||||||
$current_time = time();
|
$current_time = time();
|
||||||
|
|
||||||
$user->add_lang('acp/ban');
|
$user->add_lang('acp/ban');
|
||||||
$this->tpl_name = 'mcp_ban';
|
$this->tpl_name = 'mcp_ban';
|
||||||
|
|
|
@ -24,11 +24,11 @@ function mcp_forum_view($id, $mode, $action, $forum_info)
|
||||||
unset($_POST['sk'], $_POST['sd'], $_REQUEST['sk'], $_REQUEST['sd']);
|
unset($_POST['sk'], $_POST['sd'], $_REQUEST['sk'], $_REQUEST['sd']);
|
||||||
}
|
}
|
||||||
|
|
||||||
$forum_id = $forum_info['forum_id'];
|
$forum_id = $forum_info['forum_id'];
|
||||||
$start = request_var('start', 0);
|
$start = request_var('start', 0);
|
||||||
$topic_id_list = request_var('topic_id_list', array(0));
|
$topic_id_list = request_var('topic_id_list', array(0));
|
||||||
$post_id_list = request_var('post_id_list', array(0));
|
$post_id_list = request_var('post_id_list', array(0));
|
||||||
$topic_id = request_var('t', 0);
|
$topic_id = request_var('t', 0);
|
||||||
|
|
||||||
// Resync Topics
|
// Resync Topics
|
||||||
if ($action == 'resync')
|
if ($action == 'resync')
|
||||||
|
@ -180,12 +180,12 @@ function mcp_forum_view($id, $mode, $action, $forum_info)
|
||||||
'TOPIC_ICON_IMG_HEIGHT' => (!empty($icons[$row['icon_id']])) ? $icons[$row['icon_id']]['height'] : '',
|
'TOPIC_ICON_IMG_HEIGHT' => (!empty($icons[$row['icon_id']])) ? $icons[$row['icon_id']]['height'] : '',
|
||||||
'UNAPPROVED_IMG' => ($topic_unapproved || $posts_unapproved) ? $user->img('icon_unapproved', ($topic_unapproved) ? 'TOPIC_UNAPPROVED' : 'POSTS_UNAPPROVED') : '',
|
'UNAPPROVED_IMG' => ($topic_unapproved || $posts_unapproved) ? $user->img('icon_unapproved', ($topic_unapproved) ? 'TOPIC_UNAPPROVED' : 'POSTS_UNAPPROVED') : '',
|
||||||
|
|
||||||
'TOPIC_TYPE' => $topic_type,
|
'TOPIC_TYPE' => $topic_type,
|
||||||
'TOPIC_TITLE' => $topic_title,
|
'TOPIC_TITLE' => $topic_title,
|
||||||
'REPLIES' => ($auth->acl_get('m_approve', $row['forum_id'])) ? $row['topic_replies_real'] : $row['topic_replies'],
|
'REPLIES' => ($auth->acl_get('m_approve', $row['forum_id'])) ? $row['topic_replies_real'] : $row['topic_replies'],
|
||||||
'LAST_POST_TIME' => $user->format_date($row['topic_last_post_time']),
|
'LAST_POST_TIME' => $user->format_date($row['topic_last_post_time']),
|
||||||
'TOPIC_ID' => $row['topic_id'],
|
'TOPIC_ID' => $row['topic_id'],
|
||||||
'S_TOPIC_CHECKED' => ($topic_id_list && in_array($row['topic_id'], $topic_id_list)) ? 'checked="checked" ' : '',
|
'S_TOPIC_CHECKED' => ($topic_id_list && in_array($row['topic_id'], $topic_id_list)) ? 'checked="checked" ' : '',
|
||||||
|
|
||||||
'S_TOPIC_REPORTED' => (!empty($row['topic_reported']) && $auth->acl_gets('m_report', $row['forum_id'])) ? true : false,
|
'S_TOPIC_REPORTED' => (!empty($row['topic_reported']) && $auth->acl_gets('m_report', $row['forum_id'])) ? true : false,
|
||||||
'S_TOPIC_UNAPPROVED' => $topic_unapproved,
|
'S_TOPIC_UNAPPROVED' => $topic_unapproved,
|
||||||
|
@ -228,6 +228,7 @@ function mcp_resync_topics($topic_ids)
|
||||||
{
|
{
|
||||||
add_log('mod', $row['forum_id'], $row['topic_id'], 'LOG_TOPIC_RESYNC', $row['topic_title']);
|
add_log('mod', $row['forum_id'], $row['topic_id'], 'LOG_TOPIC_RESYNC', $row['topic_title']);
|
||||||
}
|
}
|
||||||
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
$msg = (sizeof($topic_ids) == 1) ? $user->lang['TOPIC_RESYNC_SUCCESS'] : $user->lang['TOPICS_RESYNC_SUCCESS'];
|
$msg = (sizeof($topic_ids) == 1) ? $user->lang['TOPIC_RESYNC_SUCCESS'] : $user->lang['TOPICS_RESYNC_SUCCESS'];
|
||||||
|
|
||||||
|
|
|
@ -56,6 +56,7 @@ function mcp_front_view($id, $mode, $action)
|
||||||
AND post_approved = 0
|
AND post_approved = 0
|
||||||
ORDER BY post_id DESC';
|
ORDER BY post_id DESC';
|
||||||
$result = $db->sql_query_limit($sql, 5);
|
$result = $db->sql_query_limit($sql, 5);
|
||||||
|
|
||||||
while ($row = $db->sql_fetchrow($result))
|
while ($row = $db->sql_fetchrow($result))
|
||||||
{
|
{
|
||||||
$post_list[] = $row['post_id'];
|
$post_list[] = $row['post_id'];
|
||||||
|
@ -79,12 +80,12 @@ function mcp_front_view($id, $mode, $action)
|
||||||
}
|
}
|
||||||
|
|
||||||
$template->assign_block_vars('unapproved', array(
|
$template->assign_block_vars('unapproved', array(
|
||||||
'U_POST_DETAILS'=> append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=main&mode=post_details&f=' . $row['forum_id'] . '&p=' . $row['post_id']),
|
'U_POST_DETAILS' => append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=main&mode=post_details&f=' . $row['forum_id'] . '&p=' . $row['post_id']),
|
||||||
'U_MCP_FORUM' => (!$global_topic) ? append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=main&mode=forum_view&f=' . $row['forum_id']) : '',
|
'U_MCP_FORUM' => (!$global_topic) ? append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=main&mode=forum_view&f=' . $row['forum_id']) : '',
|
||||||
'U_MCP_TOPIC' => append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=main&mode=topic_view&f=' . $row['forum_id'] . '&t=' . $row['topic_id']),
|
'U_MCP_TOPIC' => append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=main&mode=topic_view&f=' . $row['forum_id'] . '&t=' . $row['topic_id']),
|
||||||
'U_FORUM' => (!$global_topic) ? append_sid("{$phpbb_root_path}viewforum.$phpEx", 'f=' . $row['forum_id']) : '',
|
'U_FORUM' => (!$global_topic) ? append_sid("{$phpbb_root_path}viewforum.$phpEx", 'f=' . $row['forum_id']) : '',
|
||||||
'U_TOPIC' => append_sid("{$phpbb_root_path}viewtopic.$phpEx", 'f=' . $row['forum_id'] . '&t=' . $row['topic_id']),
|
'U_TOPIC' => append_sid("{$phpbb_root_path}viewtopic.$phpEx", 'f=' . $row['forum_id'] . '&t=' . $row['topic_id']),
|
||||||
'U_AUTHOR' => ($row['poster_id'] == ANONYMOUS) ? '' : append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=viewprofile&u=' . $row['poster_id']),
|
'U_AUTHOR' => ($row['poster_id'] == ANONYMOUS) ? '' : append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=viewprofile&u=' . $row['poster_id']),
|
||||||
|
|
||||||
'FORUM_NAME' => (!$global_topic) ? $forum_names[$row['forum_id']] : $user->lang['GLOBAL_ANNOUNCEMENT'],
|
'FORUM_NAME' => (!$global_topic) ? $forum_names[$row['forum_id']] : $user->lang['GLOBAL_ANNOUNCEMENT'],
|
||||||
'TOPIC_TITLE' => $row['topic_title'],
|
'TOPIC_TITLE' => $row['topic_title'],
|
||||||
|
@ -116,6 +117,7 @@ function mcp_front_view($id, $mode, $action)
|
||||||
$forum_list = get_forum_list('m_');
|
$forum_list = get_forum_list('m_');
|
||||||
|
|
||||||
$template->assign_var('S_SHOW_REPORTS', (!empty($forum_list)) ? true : false);
|
$template->assign_var('S_SHOW_REPORTS', (!empty($forum_list)) ? true : false);
|
||||||
|
|
||||||
if (!empty($forum_list))
|
if (!empty($forum_list))
|
||||||
{
|
{
|
||||||
$sql = 'SELECT COUNT(r.report_id) AS total
|
$sql = 'SELECT COUNT(r.report_id) AS total
|
||||||
|
@ -124,8 +126,8 @@ function mcp_front_view($id, $mode, $action)
|
||||||
AND r.report_closed = 0
|
AND r.report_closed = 0
|
||||||
AND p.forum_id IN (0, ' . implode(', ', $forum_list) . ')';
|
AND p.forum_id IN (0, ' . implode(', ', $forum_list) . ')';
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
$row = $db->sql_fetchrow($result);
|
$total = (int) $db->sql_fetchfield('total');
|
||||||
$total = $row['total'];
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
if ($total)
|
if ($total)
|
||||||
{
|
{
|
||||||
|
@ -140,7 +142,6 @@ function mcp_front_view($id, $mode, $action)
|
||||||
TOPICS_TABLE => 't',
|
TOPICS_TABLE => 't',
|
||||||
USERS_TABLE => 'u',
|
USERS_TABLE => 'u',
|
||||||
POSTS_TABLE => 'p'
|
POSTS_TABLE => 'p'
|
||||||
|
|
||||||
),
|
),
|
||||||
|
|
||||||
'LEFT_JOIN' => array(
|
'LEFT_JOIN' => array(
|
||||||
|
@ -151,11 +152,11 @@ function mcp_front_view($id, $mode, $action)
|
||||||
),
|
),
|
||||||
|
|
||||||
'WHERE' => 'r.post_id = p.post_id
|
'WHERE' => 'r.post_id = p.post_id
|
||||||
AND r.report_closed = 0
|
AND r.report_closed = 0
|
||||||
AND r.reason_id = rr.reason_id
|
AND r.reason_id = rr.reason_id
|
||||||
AND p.topic_id = t.topic_id
|
AND p.topic_id = t.topic_id
|
||||||
AND r.user_id = u.user_id
|
AND r.user_id = u.user_id
|
||||||
AND p.forum_id IN (0, ' . implode(', ', $forum_list) . ')',
|
AND p.forum_id IN (0, ' . implode(', ', $forum_list) . ')',
|
||||||
|
|
||||||
'ORDER_BY' => 'p.post_id DESC'
|
'ORDER_BY' => 'p.post_id DESC'
|
||||||
));
|
));
|
||||||
|
@ -170,12 +171,12 @@ function mcp_front_view($id, $mode, $action)
|
||||||
}
|
}
|
||||||
|
|
||||||
$template->assign_block_vars('report', array(
|
$template->assign_block_vars('report', array(
|
||||||
'U_POST_DETAILS'=> append_sid("{$phpbb_root_path}mcp.$phpEx", 'f=' . $row['forum_id'] . '&p=' . $row['post_id'] . "&i=reports&mode=report_details"),
|
'U_POST_DETAILS' => append_sid("{$phpbb_root_path}mcp.$phpEx", 'f=' . $row['forum_id'] . '&p=' . $row['post_id'] . "&i=reports&mode=report_details"),
|
||||||
'U_MCP_FORUM' => (!$global_topic) ? append_sid("{$phpbb_root_path}mcp.$phpEx", 'f=' . $row['forum_id'] . "&i=$id&mode=forum_view") : '',
|
'U_MCP_FORUM' => (!$global_topic) ? append_sid("{$phpbb_root_path}mcp.$phpEx", 'f=' . $row['forum_id'] . "&i=$id&mode=forum_view") : '',
|
||||||
'U_MCP_TOPIC' => append_sid("{$phpbb_root_path}mcp.$phpEx", 'f=' . $row['forum_id'] . '&t=' . $row['topic_id'] . "&i=$id&mode=topic_view"),
|
'U_MCP_TOPIC' => append_sid("{$phpbb_root_path}mcp.$phpEx", 'f=' . $row['forum_id'] . '&t=' . $row['topic_id'] . "&i=$id&mode=topic_view"),
|
||||||
'U_FORUM' => (!$global_topic) ? append_sid("{$phpbb_root_path}viewforum.$phpEx", 'f=' . $row['forum_id']) : '',
|
'U_FORUM' => (!$global_topic) ? append_sid("{$phpbb_root_path}viewforum.$phpEx", 'f=' . $row['forum_id']) : '',
|
||||||
'U_TOPIC' => append_sid("{$phpbb_root_path}viewtopic.$phpEx", 'f=' . $row['forum_id'] . '&t=' . $row['topic_id']),
|
'U_TOPIC' => append_sid("{$phpbb_root_path}viewtopic.$phpEx", 'f=' . $row['forum_id'] . '&t=' . $row['topic_id']),
|
||||||
'U_REPORTER' => ($row['user_id'] == ANONYMOUS) ? '' : append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=viewprofile&u=' . $row['user_id']),
|
'U_REPORTER' => ($row['user_id'] == ANONYMOUS) ? '' : append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=viewprofile&u=' . $row['user_id']),
|
||||||
|
|
||||||
'FORUM_NAME' => (!$global_topic) ? $row['forum_name'] : $user->lang['GLOBAL_ANNOUNCEMENT'],
|
'FORUM_NAME' => (!$global_topic) ? $row['forum_name'] : $user->lang['GLOBAL_ANNOUNCEMENT'],
|
||||||
'TOPIC_TITLE' => $row['topic_title'],
|
'TOPIC_TITLE' => $row['topic_title'],
|
||||||
|
@ -221,8 +222,8 @@ function mcp_front_view($id, $mode, $action)
|
||||||
'IP' => $row['ip'],
|
'IP' => $row['ip'],
|
||||||
'TIME' => $user->format_date($row['time']),
|
'TIME' => $user->format_date($row['time']),
|
||||||
'ACTION' => $row['action'],
|
'ACTION' => $row['action'],
|
||||||
'U_VIEWTOPIC' => isset($row['viewtopic']) ? $row['viewtopic'] : '',
|
'U_VIEWTOPIC' => (!empty($row['viewtopic'])) ? $row['viewtopic'] : '',
|
||||||
'U_VIEWLOGS' => isset($row['viewlogs']) ? $row['viewlogs'] : '')
|
'U_VIEWLOGS' => (!empty($row['viewlogs'])) ? $row['viewlogs'] : '')
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -17,7 +17,7 @@ class mcp_logs
|
||||||
{
|
{
|
||||||
var $u_action;
|
var $u_action;
|
||||||
var $p_master;
|
var $p_master;
|
||||||
|
|
||||||
function mcp_main(&$p_master)
|
function mcp_main(&$p_master)
|
||||||
{
|
{
|
||||||
$this->p_master = &$p_master;
|
$this->p_master = &$p_master;
|
||||||
|
@ -121,12 +121,12 @@ class mcp_logs
|
||||||
'TOTAL' => ($log_count == 1) ? $user->lang['TOTAL_LOG'] : sprintf($user->lang['TOTAL_LOGS'], $log_count),
|
'TOTAL' => ($log_count == 1) ? $user->lang['TOTAL_LOG'] : sprintf($user->lang['TOTAL_LOGS'], $log_count),
|
||||||
'PAGINATION' => generate_pagination($this->u_action . "&$u_sort_param", $log_count, $config['topics_per_page'], $start),
|
'PAGINATION' => generate_pagination($this->u_action . "&$u_sort_param", $log_count, $config['topics_per_page'], $start),
|
||||||
|
|
||||||
'U_POST_ACTION' => $this->u_action,
|
'U_POST_ACTION' => $this->u_action,
|
||||||
'S_CLEAR_ALLOWED' => ($auth->acl_get('a_clearlogs')) ? true : false,
|
'S_CLEAR_ALLOWED' => ($auth->acl_get('a_clearlogs')) ? true : false,
|
||||||
'S_SELECT_SORT_DIR' => $s_sort_dir,
|
'S_SELECT_SORT_DIR' => $s_sort_dir,
|
||||||
'S_SELECT_SORT_KEY' => $s_sort_key,
|
'S_SELECT_SORT_KEY' => $s_sort_key,
|
||||||
'S_SELECT_SORT_DAYS'=> $s_limit_days,
|
'S_SELECT_SORT_DAYS' => $s_limit_days,
|
||||||
'S_LOGS' => ($log_count > 0),
|
'S_LOGS' => ($log_count > 0),
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
|
@ -180,7 +180,7 @@ class mcp_main
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
trigger_error("Unknown mode: $mode");
|
trigger_error("Unknown mode: $mode", E_USER_ERROR);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -543,7 +543,9 @@ function mcp_delete_topic($topic_ids)
|
||||||
|
|
||||||
$return = delete_topics('topic_id', $topic_ids, true);
|
$return = delete_topics('topic_id', $topic_ids, true);
|
||||||
|
|
||||||
// TODO: Adjust total post count...
|
/**
|
||||||
|
* @todo Adjust total post count (mcp_delete_topic)
|
||||||
|
*/
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -778,7 +780,7 @@ function mcp_fork_topic($topic_ids)
|
||||||
$new_topic_id_list[$topic_id] = $new_topic_id;
|
$new_topic_id_list[$topic_id] = $new_topic_id;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @todo enable
|
* @todo enable? (is this still needed?)
|
||||||
* markread('topic', $to_forum_id, $new_topic_id);
|
* markread('topic', $to_forum_id, $new_topic_id);
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -793,9 +795,14 @@ function mcp_fork_topic($topic_ids)
|
||||||
|
|
||||||
while ($row = $db->sql_fetchrow($result))
|
while ($row = $db->sql_fetchrow($result))
|
||||||
{
|
{
|
||||||
$sql = 'INSERT INTO ' . POLL_OPTIONS_TABLE . ' (poll_option_id, topic_id, poll_option_text, poll_option_total)
|
$sql_ary = array(
|
||||||
VALUES (' . $row['poll_option_id'] . ', ' . $new_topic_id . ", '" . $db->sql_escape($row['poll_option_text']) . "', 0)";
|
'poll_option_id' => (int) $row['poll_option_id'],
|
||||||
$db->sql_query($sql);
|
'topic_id' => (int) $new_topic_id,
|
||||||
|
'poll_option_text' => (string) $row['poll_option_text'],
|
||||||
|
'poll_option_total' => 0
|
||||||
|
);
|
||||||
|
|
||||||
|
$db->sql_query('INSERT INTO ' . POLL_OPTIONS_TABLE . ' ' . $db->sql_build_array('INSERT', $sql_ary));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -810,7 +817,7 @@ function mcp_fork_topic($topic_ids)
|
||||||
{
|
{
|
||||||
$post_rows[] = $row;
|
$post_rows[] = $row;
|
||||||
}
|
}
|
||||||
$db->sql_freeresult();
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
if (!sizeof($post_rows))
|
if (!sizeof($post_rows))
|
||||||
{
|
{
|
||||||
|
|
|
@ -39,7 +39,7 @@ class mcp_queue
|
||||||
{
|
{
|
||||||
case 'approve':
|
case 'approve':
|
||||||
case 'disapprove':
|
case 'disapprove':
|
||||||
include_once($phpbb_root_path . 'includes/functions_messenger.'.$phpEx);
|
include_once($phpbb_root_path . 'includes/functions_messenger.' . $phpEx);
|
||||||
|
|
||||||
$post_id_list = request_var('post_id_list', array(0));
|
$post_id_list = request_var('post_id_list', array(0));
|
||||||
|
|
||||||
|
@ -111,7 +111,7 @@ class mcp_queue
|
||||||
$message = $post_info['post_text'];
|
$message = $post_info['post_text'];
|
||||||
if ($post_info['bbcode_bitfield'])
|
if ($post_info['bbcode_bitfield'])
|
||||||
{
|
{
|
||||||
include_once($phpbb_root_path . 'includes/bbcode.'.$phpEx);
|
include_once($phpbb_root_path . 'includes/bbcode.' . $phpEx);
|
||||||
$bbcode = new bbcode($post_info['bbcode_bitfield']);
|
$bbcode = new bbcode($post_info['bbcode_bitfield']);
|
||||||
$bbcode->bbcode_second_pass($message, $post_info['bbcode_uid'], $post_info['bbcode_bitfield']);
|
$bbcode->bbcode_second_pass($message, $post_info['bbcode_uid'], $post_info['bbcode_bitfield']);
|
||||||
}
|
}
|
||||||
|
@ -179,7 +179,7 @@ class mcp_queue
|
||||||
$forum_list[] = $row['forum_id'];
|
$forum_list[] = $row['forum_id'];
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!$forum_list = implode(', ', $forum_list))
|
if (!($forum_list = implode(', ', $forum_list)))
|
||||||
{
|
{
|
||||||
trigger_error('NOT_MODERATOR');
|
trigger_error('NOT_MODERATOR');
|
||||||
}
|
}
|
||||||
|
@ -244,6 +244,7 @@ class mcp_queue
|
||||||
$post_ids[] = $row['post_id'];
|
$post_ids[] = $row['post_id'];
|
||||||
$row_num[$row['post_id']] = $i++;
|
$row_num[$row['post_id']] = $i++;
|
||||||
}
|
}
|
||||||
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
if (sizeof($post_ids))
|
if (sizeof($post_ids))
|
||||||
{
|
{
|
||||||
|
@ -252,8 +253,8 @@ class mcp_queue
|
||||||
WHERE p.post_id IN (" . implode(', ', $post_ids) . ")
|
WHERE p.post_id IN (" . implode(', ', $post_ids) . ")
|
||||||
AND t.topic_id = p.topic_id
|
AND t.topic_id = p.topic_id
|
||||||
AND u.user_id = p.poster_id";
|
AND u.user_id = p.poster_id";
|
||||||
|
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
|
|
||||||
$post_data = $rowset = array();
|
$post_data = $rowset = array();
|
||||||
while ($row = $db->sql_fetchrow($result))
|
while ($row = $db->sql_fetchrow($result))
|
||||||
{
|
{
|
||||||
|
@ -311,6 +312,7 @@ class mcp_queue
|
||||||
{
|
{
|
||||||
$forum_names[$row['forum_id']] = $row['forum_name'];
|
$forum_names[$row['forum_id']] = $row['forum_name'];
|
||||||
}
|
}
|
||||||
|
$db->sql_freeresult($result);
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach ($rowset as $row)
|
foreach ($rowset as $row)
|
||||||
|
@ -324,8 +326,6 @@ class mcp_queue
|
||||||
$poster = $row['username'];
|
$poster = $row['username'];
|
||||||
}
|
}
|
||||||
|
|
||||||
$s_checkbox = '<input type="checkbox" class="radio" name="post_id_list[]" value="' . $row['post_id'] . '" />';
|
|
||||||
|
|
||||||
$global_topic = ($row['forum_id']) ? false : true;
|
$global_topic = ($row['forum_id']) ? false : true;
|
||||||
if ($global_topic)
|
if ($global_topic)
|
||||||
{
|
{
|
||||||
|
@ -333,22 +333,21 @@ class mcp_queue
|
||||||
}
|
}
|
||||||
|
|
||||||
$template->assign_block_vars('postrow', array(
|
$template->assign_block_vars('postrow', array(
|
||||||
'U_VIEWFORUM' => (!$global_topic) ? append_sid("{$phpbb_root_path}viewforum.$phpEx", 'f=' . $row['forum_id']) : '',
|
'U_VIEWFORUM' => (!$global_topic) ? append_sid("{$phpbb_root_path}viewforum.$phpEx", 'f=' . $row['forum_id']) : '',
|
||||||
// Q: Why accessing the topic by a post_id instead of its topic_id?
|
// Q: Why accessing the topic by a post_id instead of its topic_id?
|
||||||
// A: To prevent the post from being hidden because of wrong encoding or different charset
|
// A: To prevent the post from being hidden because of wrong encoding or different charset
|
||||||
'U_VIEWTOPIC' => append_sid("{$phpbb_root_path}viewtopic.$phpEx", 'f=' . $row['forum_id'] . '&p=' . $row['post_id']) . (($mode == 'unapproved_posts') ? '#p' . $row['post_id'] : ''),
|
'U_VIEWTOPIC' => append_sid("{$phpbb_root_path}viewtopic.$phpEx", 'f=' . $row['forum_id'] . '&p=' . $row['post_id']) . (($mode == 'unapproved_posts') ? '#p' . $row['post_id'] : ''),
|
||||||
'U_VIEW_DETAILS'=> append_sid("{$phpbb_root_path}mcp.$phpEx", "i=queue&start=$start&mode=approve_details&f={$row['forum_id']}&p={$row['post_id']}" . (($mode == 'unapproved_topics') ? "&t={$row['topic_id']}" : '')),
|
'U_VIEW_DETAILS' => append_sid("{$phpbb_root_path}mcp.$phpEx", "i=queue&start=$start&mode=approve_details&f={$row['forum_id']}&p={$row['post_id']}" . (($mode == 'unapproved_topics') ? "&t={$row['topic_id']}" : '')),
|
||||||
'U_VIEWPROFILE' => ($row['poster_id'] != ANONYMOUS) ? append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=viewprofile&u=' . $row['poster_id']) : '',
|
'U_VIEWPROFILE' => ($row['poster_id'] != ANONYMOUS) ? append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=viewprofile&u=' . $row['poster_id']) : '',
|
||||||
|
|
||||||
|
'POST_ID' => $row['post_id'],
|
||||||
'FORUM_NAME' => (!$global_topic) ? $forum_names[$row['forum_id']] : $user->lang['GLOBAL_ANNOUNCEMENT'],
|
'FORUM_NAME' => (!$global_topic) ? $forum_names[$row['forum_id']] : $user->lang['GLOBAL_ANNOUNCEMENT'],
|
||||||
'TOPIC_TITLE' => $row['topic_title'],
|
'TOPIC_TITLE' => $row['topic_title'],
|
||||||
'POSTER' => $poster,
|
'POSTER' => $poster,
|
||||||
'POST_TIME' => $user->format_date($row['post_time']),
|
'POST_TIME' => $user->format_date($row['post_time']))
|
||||||
'S_CHECKBOX' => $s_checkbox)
|
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
unset($rowset);
|
unset($rowset, $forum_names);
|
||||||
unset($forum_names);
|
|
||||||
|
|
||||||
// Now display the page
|
// Now display the page
|
||||||
$template->assign_vars(array(
|
$template->assign_vars(array(
|
||||||
|
@ -372,7 +371,9 @@ class mcp_queue
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Approve Post/Topic
|
/**
|
||||||
|
* Approve Post/Topic
|
||||||
|
*/
|
||||||
function approve_post($post_id_list, $mode)
|
function approve_post($post_id_list, $mode)
|
||||||
{
|
{
|
||||||
global $db, $template, $user, $config;
|
global $db, $template, $user, $config;
|
||||||
|
@ -588,7 +589,9 @@ function approve_post($post_id_list, $mode)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Disapprove Post/Topic
|
/**
|
||||||
|
* Disapprove Post/Topic
|
||||||
|
*/
|
||||||
function disapprove_post($post_id_list, $mode)
|
function disapprove_post($post_id_list, $mode)
|
||||||
{
|
{
|
||||||
global $db, $template, $user, $config;
|
global $db, $template, $user, $config;
|
||||||
|
@ -627,7 +630,7 @@ function disapprove_post($post_id_list, $mode)
|
||||||
|
|
||||||
if (!$row || (!$reason && $row['reason_title'] == 'other'))
|
if (!$row || (!$reason && $row['reason_title'] == 'other'))
|
||||||
{
|
{
|
||||||
$additional_msg = 'Please give an appropiate reason for disapproval';
|
$additional_msg = $user->lang['NO_REASON_DISAPPROVAL'];
|
||||||
unset($_POST['confirm']);
|
unset($_POST['confirm']);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -698,7 +701,7 @@ function disapprove_post($post_id_list, $mode)
|
||||||
{
|
{
|
||||||
if (!function_exists('delete_posts'))
|
if (!function_exists('delete_posts'))
|
||||||
{
|
{
|
||||||
include_once($phpbb_root_path . 'includes/functions_admin.'.$phpEx);
|
include_once($phpbb_root_path . 'includes/functions_admin.' . $phpEx);
|
||||||
}
|
}
|
||||||
|
|
||||||
// We do not check for permissions here, because the moderator allowed approval/disapproval should be allowed to delete the disapproved posts
|
// We do not check for permissions here, because the moderator allowed approval/disapproval should be allowed to delete the disapproved posts
|
||||||
|
|
|
@ -39,7 +39,7 @@ class mcp_reports
|
||||||
{
|
{
|
||||||
case 'close':
|
case 'close':
|
||||||
case 'delete':
|
case 'delete':
|
||||||
include_once($phpbb_root_path . 'includes/functions_messenger.'.$phpEx);
|
include_once($phpbb_root_path . 'includes/functions_messenger.' . $phpEx);
|
||||||
|
|
||||||
$post_id_list = request_var('post_id_list', array(0));
|
$post_id_list = request_var('post_id_list', array(0));
|
||||||
|
|
||||||
|
@ -76,14 +76,14 @@ class mcp_reports
|
||||||
AND rr.reason_id = r.reason_id
|
AND rr.reason_id = r.reason_id
|
||||||
AND r.user_id = u.user_id";
|
AND r.user_id = u.user_id";
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
|
$report = $db->sql_fetchrow($result);
|
||||||
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
if (!($report = $db->sql_fetchrow($result)))
|
if (!$report)
|
||||||
{
|
{
|
||||||
trigger_error('NO_POST_REPORT');
|
trigger_error('NO_POST_REPORT');
|
||||||
}
|
}
|
||||||
|
|
||||||
$db->sql_freeresult($result);
|
|
||||||
|
|
||||||
$reason = array('title' => $report['reason_title'], 'description' => $report['reason_description']);
|
$reason = array('title' => $report['reason_title'], 'description' => $report['reason_description']);
|
||||||
if (isset($user->lang['report_reasons']['TITLE'][strtoupper($reason['title'])]) && isset($user->lang['report_reasons']['DESCRIPTION'][strtoupper($reason['title'])]))
|
if (isset($user->lang['report_reasons']['TITLE'][strtoupper($reason['title'])]) && isset($user->lang['report_reasons']['DESCRIPTION'][strtoupper($reason['title'])]))
|
||||||
{
|
{
|
||||||
|
@ -111,7 +111,8 @@ class mcp_reports
|
||||||
$message = $post_info['post_text'];
|
$message = $post_info['post_text'];
|
||||||
if ($post_info['bbcode_bitfield'])
|
if ($post_info['bbcode_bitfield'])
|
||||||
{
|
{
|
||||||
include_once($phpbb_root_path . 'includes/bbcode.'.$phpEx);
|
include_once($phpbb_root_path . 'includes/bbcode.' . $phpEx);
|
||||||
|
|
||||||
$bbcode = new bbcode($post_info['bbcode_bitfield']);
|
$bbcode = new bbcode($post_info['bbcode_bitfield']);
|
||||||
$bbcode->bbcode_second_pass($message, $post_info['bbcode_uid'], $post_info['bbcode_bitfield']);
|
$bbcode->bbcode_second_pass($message, $post_info['bbcode_uid'], $post_info['bbcode_bitfield']);
|
||||||
}
|
}
|
||||||
|
@ -126,28 +127,27 @@ class mcp_reports
|
||||||
'S_POST_LOCKED' => $post_info['post_edit_locked'],
|
'S_POST_LOCKED' => $post_info['post_edit_locked'],
|
||||||
'S_USER_NOTES' => true,
|
'S_USER_NOTES' => true,
|
||||||
|
|
||||||
'U_EDIT' => ($auth->acl_get('m_edit', $post_info['forum_id'])) ? append_sid("{$phpbb_root_path}posting.$phpEx", "mode=edit&f={$post_info['forum_id']}&p={$post_info['post_id']}") : '',
|
'U_EDIT' => ($auth->acl_get('m_edit', $post_info['forum_id'])) ? append_sid("{$phpbb_root_path}posting.$phpEx", "mode=edit&f={$post_info['forum_id']}&p={$post_info['post_id']}") : '',
|
||||||
'U_MCP_APPROVE' => append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=queue&mode=approve_details&f=' . $post_info['forum_id'] . '&p=' . $post_id),
|
'U_MCP_APPROVE' => append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=queue&mode=approve_details&f=' . $post_info['forum_id'] . '&p=' . $post_id),
|
||||||
'U_MCP_REPORT' => append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=reports&mode=report_details&f=' . $post_info['forum_id'] . '&p=' . $post_id),
|
'U_MCP_REPORT' => append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=reports&mode=report_details&f=' . $post_info['forum_id'] . '&p=' . $post_id),
|
||||||
'U_MCP_REPORTER_NOTES' => append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=notes&mode=user_notes&u=' . $report['user_id']),
|
'U_MCP_REPORTER_NOTES' => append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=notes&mode=user_notes&u=' . $report['user_id']),
|
||||||
'U_MCP_USER_NOTES' => append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=notes&mode=user_notes&u=' . $post_info['user_id']),
|
'U_MCP_USER_NOTES' => append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=notes&mode=user_notes&u=' . $post_info['user_id']),
|
||||||
'U_MCP_WARN_REPORTER' => ($auth->acl_getf_global('m_warn')) ? append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=warn&mode=warn_user&u=' . $report['user_id']) : '',
|
'U_MCP_WARN_REPORTER' => ($auth->acl_getf_global('m_warn')) ? append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=warn&mode=warn_user&u=' . $report['user_id']) : '',
|
||||||
'U_MCP_WARN_USER' => ($auth->acl_getf_global('m_warn')) ? append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=warn&mode=warn_user&u=' . $post_info['user_id']) : '',
|
'U_MCP_WARN_USER' => ($auth->acl_getf_global('m_warn')) ? append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=warn&mode=warn_user&u=' . $post_info['user_id']) : '',
|
||||||
'U_VIEW_PROFILE' => ($post_info['user_id'] != ANONYMOUS) ? append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=viewprofile&u=' . $post_info['user_id']) : '',
|
'U_VIEW_PROFILE' => ($post_info['user_id'] != ANONYMOUS) ? append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=viewprofile&u=' . $post_info['user_id']) : '',
|
||||||
'U_VIEW_REPORTER_PROFILE' => ($report['user_id'] != ANONYMOUS) ? append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=viewprofile&u=' . $report['user_id']) : '',
|
'U_VIEW_REPORTER_PROFILE' => ($report['user_id'] != ANONYMOUS) ? append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=viewprofile&u=' . $report['user_id']) : '',
|
||||||
|
|
||||||
'EDIT_IMG' => $user->img('btn_edit', $user->lang['EDIT_POST']),
|
'EDIT_IMG' => $user->img('btn_edit', $user->lang['EDIT_POST']),
|
||||||
|
|
||||||
'RETURN_REPORTS' => sprintf($user->lang['RETURN_REPORTS'], '<a href="' . append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=reports' . (($post_info['post_reported']) ? '&mode=reports' : '&mode=reports_closed') . '&start=' . $start) . '">', '</a>'),
|
|
||||||
'REPORTED_IMG' => $user->img('icon_reported', $user->lang['POST_REPORTED']),
|
|
||||||
'REPORT_REASON_TITLE' => $reason['title'],
|
|
||||||
'REPORT_REASON_DESCRIPTION' => $reason['description'],
|
|
||||||
'REPORTER_NAME' => ($report['user_id'] == ANONYMOUS) ? $user->lang['GUEST'] : $report['username'],
|
|
||||||
'REPORT_DATE' => $user->format_date($report['report_time']),
|
|
||||||
'REPORT_TEXT' => $report['report_text'],
|
|
||||||
|
|
||||||
'UNAPPROVED_IMG' => $user->img('icon_unapproved', $user->lang['POST_UNAPPROVED']),
|
'UNAPPROVED_IMG' => $user->img('icon_unapproved', $user->lang['POST_UNAPPROVED']),
|
||||||
|
|
||||||
|
'RETURN_REPORTS' => sprintf($user->lang['RETURN_REPORTS'], '<a href="' . append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=reports' . (($post_info['post_reported']) ? '&mode=reports' : '&mode=reports_closed') . '&start=' . $start) . '">', '</a>'),
|
||||||
|
'REPORTED_IMG' => $user->img('icon_reported', $user->lang['POST_REPORTED']),
|
||||||
|
'REPORT_REASON_TITLE' => $reason['title'],
|
||||||
|
'REPORT_REASON_DESCRIPTION' => $reason['description'],
|
||||||
|
'REPORTER_NAME' => ($report['user_id'] == ANONYMOUS) ? $user->lang['GUEST'] : $report['username'],
|
||||||
|
'REPORT_DATE' => $user->format_date($report['report_time']),
|
||||||
|
'REPORT_TEXT' => $report['report_text'],
|
||||||
|
|
||||||
'POSTER_NAME' => $poster,
|
'POSTER_NAME' => $poster,
|
||||||
'POST_PREVIEW' => $message,
|
'POST_PREVIEW' => $message,
|
||||||
'POST_SUBJECT' => $post_info['post_subject'],
|
'POST_SUBJECT' => $post_info['post_subject'],
|
||||||
|
@ -189,7 +189,7 @@ class mcp_reports
|
||||||
$forum_list[] = $row['forum_id'];
|
$forum_list[] = $row['forum_id'];
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!$forum_list = implode(', ', $forum_list))
|
if (!($forum_list = implode(', ', $forum_list)))
|
||||||
{
|
{
|
||||||
trigger_error('NOT_MODERATOR');
|
trigger_error('NOT_MODERATOR');
|
||||||
}
|
}
|
||||||
|
@ -200,7 +200,6 @@ class mcp_reports
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
$forum_info['forum_topics'] = (int) $db->sql_fetchfield('sum_forum_topics');
|
$forum_info['forum_topics'] = (int) $db->sql_fetchfield('sum_forum_topics');
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -263,6 +262,7 @@ class mcp_reports
|
||||||
$post_ids[] = $row['post_id'];
|
$post_ids[] = $row['post_id'];
|
||||||
$row_num[$row['post_id']] = $i++;
|
$row_num[$row['post_id']] = $i++;
|
||||||
}
|
}
|
||||||
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
if (sizeof($post_ids))
|
if (sizeof($post_ids))
|
||||||
{
|
{
|
||||||
|
@ -273,8 +273,8 @@ class mcp_reports
|
||||||
AND r.post_id = p.post_id
|
AND r.post_id = p.post_id
|
||||||
AND u.user_id = p.poster_id
|
AND u.user_id = p.poster_id
|
||||||
AND ru.user_id = r.user_id";
|
AND ru.user_id = r.user_id";
|
||||||
|
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
|
|
||||||
$post_data = $rowset = array();
|
$post_data = $rowset = array();
|
||||||
while ($row = $db->sql_fetchrow($result))
|
while ($row = $db->sql_fetchrow($result))
|
||||||
{
|
{
|
||||||
|
@ -295,8 +295,6 @@ class mcp_reports
|
||||||
$poster = $row['username'];
|
$poster = $row['username'];
|
||||||
}
|
}
|
||||||
|
|
||||||
$s_checkbox = '<input type="checkbox" class="radio" name="post_id_list[]" value="' . $row['post_id'] . '" />';
|
|
||||||
|
|
||||||
$template->assign_block_vars('postrow', array(
|
$template->assign_block_vars('postrow', array(
|
||||||
'U_VIEWFORUM' => append_sid("{$phpbb_root_path}viewforum.$phpEx", 'f=' . $row['forum_id']),
|
'U_VIEWFORUM' => append_sid("{$phpbb_root_path}viewforum.$phpEx", 'f=' . $row['forum_id']),
|
||||||
// Q: Why accessing the topic by a post_id instead of its topic_id?
|
// Q: Why accessing the topic by a post_id instead of its topic_id?
|
||||||
|
@ -306,10 +304,9 @@ class mcp_reports
|
||||||
'U_VIEW_POSTER_PROFILE' => ($row['poster_id'] != ANONYMOUS) ? append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=viewprofile&u=' . $row['poster_id']) : '',
|
'U_VIEW_POSTER_PROFILE' => ($row['poster_id'] != ANONYMOUS) ? append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=viewprofile&u=' . $row['poster_id']) : '',
|
||||||
'U_VIEW_REPORTER_PROFILE' => ($row['reporter_id'] != ANONYMOUS) ? append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=viewprofile&u=' . $row['reporter_id']) : '',
|
'U_VIEW_REPORTER_PROFILE' => ($row['reporter_id'] != ANONYMOUS) ? append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=viewprofile&u=' . $row['reporter_id']) : '',
|
||||||
|
|
||||||
'S_CHECKBOX' => $s_checkbox,
|
|
||||||
|
|
||||||
'FORUM_NAME' => ($row['forum_id']) ? $forum_data[$row['forum_id']]['forum_name'] : $user->lang['ALL_FORUMS'],
|
'FORUM_NAME' => ($row['forum_id']) ? $forum_data[$row['forum_id']]['forum_name'] : $user->lang['ALL_FORUMS'],
|
||||||
'POSTER' => $poster,
|
'POSTER' => $poster,
|
||||||
|
'POST_ID' => $row['post_id'],
|
||||||
'POST_SUBJECT' => $row['post_subject'],
|
'POST_SUBJECT' => $row['post_subject'],
|
||||||
'POST_TIME' => $user->format_date($row['post_time']),
|
'POST_TIME' => $user->format_date($row['post_time']),
|
||||||
'REPORTER' => ($row['reporter_id'] == ANONYMOUS) ? $user->lang['GUEST'] : $row['reporter_name'],
|
'REPORTER' => ($row['reporter_id'] == ANONYMOUS) ? $user->lang['GUEST'] : $row['reporter_name'],
|
||||||
|
@ -383,12 +380,9 @@ function close_report($post_id_list, $mode, $action)
|
||||||
{
|
{
|
||||||
$reports[$report['post_id']] = $report;
|
$reports[$report['post_id']] = $report;
|
||||||
}
|
}
|
||||||
|
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
$close_report_posts = array();
|
$close_report_posts = $close_report_topics = $notify_reporters = array();
|
||||||
$close_report_topics = array();
|
|
||||||
$notify_reporters = array();
|
|
||||||
foreach ($post_info as $post_id => $post_data)
|
foreach ($post_info as $post_id => $post_data)
|
||||||
{
|
{
|
||||||
if (isset($reports[$post_id]))
|
if (isset($reports[$post_id]))
|
||||||
|
@ -420,6 +414,7 @@ function close_report($post_id_list, $mode, $action)
|
||||||
{
|
{
|
||||||
$keep_report_topics[] = $row['topic_id'];
|
$keep_report_topics[] = $row['topic_id'];
|
||||||
}
|
}
|
||||||
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
$close_report_topics = array_diff($close_report_topics, $keep_report_topics);
|
$close_report_topics = array_diff($close_report_topics, $keep_report_topics);
|
||||||
unset($keep_report_topics);
|
unset($keep_report_topics);
|
||||||
|
|
|
@ -31,12 +31,12 @@ function mcp_topic_view($id, $mode, $action)
|
||||||
$topic_info = $topic_info[$topic_id];
|
$topic_info = $topic_info[$topic_id];
|
||||||
|
|
||||||
// Set up some vars
|
// Set up some vars
|
||||||
$icon_id = request_var('icon', 0);
|
$icon_id = request_var('icon', 0);
|
||||||
$subject = request_var('subject', '', true);
|
$subject = request_var('subject', '', true);
|
||||||
$start = request_var('start', 0);
|
$start = request_var('start', 0);
|
||||||
$to_topic_id = request_var('to_topic_id', 0);
|
$to_topic_id = request_var('to_topic_id', 0);
|
||||||
$to_forum_id = request_var('to_forum_id', 0);
|
$to_forum_id = request_var('to_forum_id', 0);
|
||||||
$post_id_list = request_var('post_id_list', array(0));
|
$post_id_list = request_var('post_id_list', array(0));
|
||||||
|
|
||||||
// Split Topic?
|
// Split Topic?
|
||||||
if ($action == 'split_all' || $action == 'split_beyond')
|
if ($action == 'split_all' || $action == 'split_beyond')
|
||||||
|
@ -60,8 +60,7 @@ function mcp_topic_view($id, $mode, $action)
|
||||||
// Jumpbox, sort selects and that kind of things
|
// Jumpbox, sort selects and that kind of things
|
||||||
make_jumpbox($url . "&i=$id&mode=forum_view", $topic_info['forum_id'], false, 'm_');
|
make_jumpbox($url . "&i=$id&mode=forum_view", $topic_info['forum_id'], false, 'm_');
|
||||||
$where_sql = ($action == 'reports') ? 'WHERE post_reported = 1 AND ' : 'WHERE';
|
$where_sql = ($action == 'reports') ? 'WHERE post_reported = 1 AND ' : 'WHERE';
|
||||||
|
|
||||||
|
|
||||||
$sort_days = $total = 0;
|
$sort_days = $total = 0;
|
||||||
$sort_key = $sort_dir = '';
|
$sort_key = $sort_dir = '';
|
||||||
$sort_by_sql = $sort_order_sql = array();
|
$sort_by_sql = $sort_order_sql = array();
|
||||||
|
@ -73,6 +72,7 @@ function mcp_topic_view($id, $mode, $action)
|
||||||
{
|
{
|
||||||
$total = $topic_info['topic_replies'] + 1;
|
$total = $topic_info['topic_replies'] + 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
$posts_per_page = max(0, request_var('posts_per_page', intval($config['posts_per_page'])));
|
$posts_per_page = max(0, request_var('posts_per_page', intval($config['posts_per_page'])));
|
||||||
if ($posts_per_page == 0)
|
if ($posts_per_page == 0)
|
||||||
{
|
{
|
||||||
|
@ -94,6 +94,7 @@ function mcp_topic_view($id, $mode, $action)
|
||||||
$rowset[] = $row;
|
$rowset[] = $row;
|
||||||
$bbcode_bitfield |= $row['bbcode_bitfield'];
|
$bbcode_bitfield |= $row['bbcode_bitfield'];
|
||||||
}
|
}
|
||||||
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
if ($bbcode_bitfield)
|
if ($bbcode_bitfield)
|
||||||
{
|
{
|
||||||
|
@ -118,9 +119,6 @@ function mcp_topic_view($id, $mode, $action)
|
||||||
$message = smiley_text($message);
|
$message = smiley_text($message);
|
||||||
$message = str_replace("\n", '<br />', $message);
|
$message = str_replace("\n", '<br />', $message);
|
||||||
|
|
||||||
$checked = ($post_id_list && in_array(intval($row['post_id']), $post_id_list)) ? 'checked="checked" ' : '';
|
|
||||||
$s_checkbox = '<input type="checkbox" class="radio" name="post_id_list[]" value="' . $row['post_id'] . '" ' . $checked . '/>';
|
|
||||||
|
|
||||||
if (!$row['post_approved'])
|
if (!$row['post_approved'])
|
||||||
{
|
{
|
||||||
$has_unapproved_posts = true;
|
$has_unapproved_posts = true;
|
||||||
|
@ -136,9 +134,9 @@ function mcp_topic_view($id, $mode, $action)
|
||||||
|
|
||||||
'MINI_POST_IMG' => ($row['post_time'] > $user->data['user_lastvisit'] && $user->data['is_registered']) ? $user->img('icon_post_new', $user->lang['NEW_POST']) : $user->img('icon_post', $user->lang['POST']),
|
'MINI_POST_IMG' => ($row['post_time'] > $user->data['user_lastvisit'] && $user->data['is_registered']) ? $user->img('icon_post_new', $user->lang['NEW_POST']) : $user->img('icon_post', $user->lang['POST']),
|
||||||
|
|
||||||
'S_CHECKBOX' => $s_checkbox,
|
|
||||||
'S_POST_REPORTED' => ($row['post_reported']) ? true : false,
|
'S_POST_REPORTED' => ($row['post_reported']) ? true : false,
|
||||||
'S_POST_UNAPPROVED' => ($row['post_approved']) ? false : true,
|
'S_POST_UNAPPROVED' => ($row['post_approved']) ? false : true,
|
||||||
|
'S_CHECKED' => ($post_id_list && in_array(intval($row['post_id']), $post_id_list)) ? true : false,
|
||||||
|
|
||||||
'U_POST_DETAILS' => "$url&i=$id&p={$row['post_id']}&mode=post_details",
|
'U_POST_DETAILS' => "$url&i=$id&p={$row['post_id']}&mode=post_details",
|
||||||
'U_MCP_APPROVE' => append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=queue&mode=approve_details&f=' . $topic_info['forum_id'] . '&p=' . $row['post_id']),
|
'U_MCP_APPROVE' => append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=queue&mode=approve_details&f=' . $topic_info['forum_id'] . '&p=' . $row['post_id']),
|
||||||
|
@ -200,8 +198,8 @@ function mcp_topic_view($id, $mode, $action)
|
||||||
'S_CAN_LOCK' => ($auth->acl_get('m_lock', $topic_info['forum_id'])) ? true : false,
|
'S_CAN_LOCK' => ($auth->acl_get('m_lock', $topic_info['forum_id'])) ? true : false,
|
||||||
'S_REPORT_VIEW' => ($action == 'reports') ? true : false,
|
'S_REPORT_VIEW' => ($action == 'reports') ? true : false,
|
||||||
|
|
||||||
'S_SHOW_TOPIC_ICONS'=> $s_topic_icons,
|
'S_SHOW_TOPIC_ICONS' => $s_topic_icons,
|
||||||
'S_TOPIC_ICON' => $icon_id,
|
'S_TOPIC_ICON' => $icon_id,
|
||||||
|
|
||||||
'U_SELECT_TOPIC' => "$url&i=$id&mode=forum_view&action=merge_select",
|
'U_SELECT_TOPIC' => "$url&i=$id&mode=forum_view&action=merge_select",
|
||||||
|
|
||||||
|
@ -344,6 +342,7 @@ function split_topic($action, $topic_id, $to_forum_id, $subject)
|
||||||
$post_id_list[] = $row['post_id'];
|
$post_id_list[] = $row['post_id'];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
$db->sql_freeresult($result);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!sizeof($post_id_list))
|
if (!sizeof($post_id_list))
|
||||||
|
|
|
@ -42,19 +42,22 @@ class mcp_warn
|
||||||
case 'front':
|
case 'front':
|
||||||
mcp_warn_front_view($id, $mode);
|
mcp_warn_front_view($id, $mode);
|
||||||
$this->tpl_name = 'mcp_warn_front';
|
$this->tpl_name = 'mcp_warn_front';
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'list':
|
case 'list':
|
||||||
mcp_warn_list_view($id, $mode, $action);
|
mcp_warn_list_view($id, $mode, $action);
|
||||||
$this->tpl_name = 'mcp_warn_list';
|
$this->tpl_name = 'mcp_warn_list';
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'warn_post':
|
case 'warn_post':
|
||||||
mcp_warn_post_view($id, $mode, $action);
|
mcp_warn_post_view($id, $mode, $action);
|
||||||
$this->tpl_name = 'mcp_warn_post';
|
$this->tpl_name = 'mcp_warn_post';
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'warn_user':
|
case 'warn_user':
|
||||||
mcp_warn_user_view($id, $mode, $action);
|
mcp_warn_user_view($id, $mode, $action);
|
||||||
$this->tpl_name = 'mcp_warn_user';
|
$this->tpl_name = 'mcp_warn_user';
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -127,10 +130,10 @@ function mcp_warn_list_view($id, $mode, $action)
|
||||||
|
|
||||||
$user->add_lang('memberlist');
|
$user->add_lang('memberlist');
|
||||||
|
|
||||||
$start = request_var('start', 0);
|
$start = request_var('start', 0);
|
||||||
$st = request_var('st', 0);
|
$st = request_var('st', 0);
|
||||||
$sk = request_var('sk', 'b');
|
$sk = request_var('sk', 'b');
|
||||||
$sd = request_var('sd', 'd');
|
$sd = request_var('sd', 'd');
|
||||||
|
|
||||||
$limit_days = array(0 => $user->lang['ALL_ENTRIES'], 1 => $user->lang['1_DAY'], 7 => $user->lang['7_DAYS'], 14 => $user->lang['2_WEEKS'], 30 => $user->lang['1_MONTH'], 90 => $user->lang['3_MONTHS'], 180 => $user->lang['6_MONTHS'], 365 => $user->lang['1_YEAR']);
|
$limit_days = array(0 => $user->lang['ALL_ENTRIES'], 1 => $user->lang['1_DAY'], 7 => $user->lang['7_DAYS'], 14 => $user->lang['2_WEEKS'], 30 => $user->lang['1_MONTH'], 90 => $user->lang['3_MONTHS'], 180 => $user->lang['6_MONTHS'], 365 => $user->lang['1_YEAR']);
|
||||||
$sort_by_text = array('a' => $user->lang['SORT_USERNAME'], 'b' => $user->lang['SORT_DATE'], 'c' => $user->lang['SORT_WARNINGS']);
|
$sort_by_text = array('a' => $user->lang['SORT_USERNAME'], 'b' => $user->lang['SORT_DATE'], 'c' => $user->lang['SORT_WARNINGS']);
|
||||||
|
@ -162,11 +165,11 @@ function mcp_warn_list_view($id, $mode, $action)
|
||||||
}
|
}
|
||||||
|
|
||||||
$template->assign_vars(array(
|
$template->assign_vars(array(
|
||||||
'U_POST_ACTION' => append_sid("{$phpbb_root_path}mcp.$phpEx", "i=$id&mode=$mode"),
|
'U_POST_ACTION' => append_sid("{$phpbb_root_path}mcp.$phpEx", "i=$id&mode=$mode"),
|
||||||
'S_CLEAR_ALLOWED' => ($auth->acl_get('a_clearlogs')) ? true : false,
|
'S_CLEAR_ALLOWED' => ($auth->acl_get('a_clearlogs')) ? true : false,
|
||||||
'S_SELECT_SORT_DIR' => $s_sort_dir,
|
'S_SELECT_SORT_DIR' => $s_sort_dir,
|
||||||
'S_SELECT_SORT_KEY' => $s_sort_key,
|
'S_SELECT_SORT_KEY' => $s_sort_key,
|
||||||
'S_SELECT_SORT_DAYS' => $s_limit_days,
|
'S_SELECT_SORT_DAYS' => $s_limit_days,
|
||||||
|
|
||||||
'PAGE_NUMBER' => on_page($user_count, $config['topics_per_page'], $start),
|
'PAGE_NUMBER' => on_page($user_count, $config['topics_per_page'], $start),
|
||||||
'PAGINATION' => generate_pagination(append_sid("{$phpbb_root_path}mcp.$phpEx", "i=$id&mode=$mode&st=$st&sk=$sk&sd=$sd"), $user_count, $config['topics_per_page'], $start),
|
'PAGINATION' => generate_pagination(append_sid("{$phpbb_root_path}mcp.$phpEx", "i=$id&mode=$mode&st=$st&sk=$sk&sd=$sd"), $user_count, $config['topics_per_page'], $start),
|
||||||
|
@ -188,16 +191,18 @@ function mcp_warn_post_view($id, $mode, $action)
|
||||||
$notify = (isset($_REQUEST['notify_user'])) ? true : false;
|
$notify = (isset($_REQUEST['notify_user'])) ? true : false;
|
||||||
$warning = request_var('warning', '', true);
|
$warning = request_var('warning', '', true);
|
||||||
|
|
||||||
$sql = 'SELECT u.*, p.* FROM ' . POSTS_TABLE . ' p, ' . USERS_TABLE . " u
|
$sql = 'SELECT u.*, p.*
|
||||||
|
FROM ' . POSTS_TABLE . ' p, ' . USERS_TABLE . " u
|
||||||
WHERE post_id = $post_id
|
WHERE post_id = $post_id
|
||||||
AND u.user_id = p.poster_id";
|
AND u.user_id = p.poster_id";
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
|
$userrow = $db->sql_fetchrow($result);
|
||||||
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
if (!$userrow = $db->sql_fetchrow($result))
|
if (!$userrow)
|
||||||
{
|
{
|
||||||
trigger_error($user->lang['NO_POST']);
|
trigger_error($user->lang['NO_POST']);
|
||||||
}
|
}
|
||||||
$db->sql_freeresult($result);
|
|
||||||
|
|
||||||
// There is no point issuing a warning to ignored users (ie anonymous and bots)
|
// There is no point issuing a warning to ignored users (ie anonymous and bots)
|
||||||
if ($userrow['user_type'] == USER_IGNORE)
|
if ($userrow['user_type'] == USER_IGNORE)
|
||||||
|
@ -207,16 +212,18 @@ function mcp_warn_post_view($id, $mode, $action)
|
||||||
|
|
||||||
// Check if there is already a warning for this post to prevent multiple
|
// Check if there is already a warning for this post to prevent multiple
|
||||||
// warnings for the same offence
|
// warnings for the same offence
|
||||||
$sql = 'SELECT * FROM ' . WARNINGS_TABLE . "
|
$sql = 'SELECT post_id
|
||||||
|
FROM ' . WARNINGS_TABLE . "
|
||||||
WHERE post_id = $post_id";
|
WHERE post_id = $post_id";
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
|
$row = $db->sql_fetchrow($result);
|
||||||
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
if ($row = $db->sql_fetchrow($result))
|
if ($row)
|
||||||
{
|
{
|
||||||
trigger_error($user->lang['ALREADY_WARNED']);
|
trigger_error($user->lang['ALREADY_WARNED']);
|
||||||
}
|
}
|
||||||
$db->sql_freeresult($result);
|
|
||||||
|
|
||||||
$user_id = $userrow['user_id'];
|
$user_id = $userrow['user_id'];
|
||||||
|
|
||||||
if ($warning && $action == 'add_warning')
|
if ($warning && $action == 'add_warning')
|
||||||
|
@ -237,7 +244,8 @@ function mcp_warn_post_view($id, $mode, $action)
|
||||||
// Second parse bbcode here
|
// Second parse bbcode here
|
||||||
if ($userrow['bbcode_bitfield'])
|
if ($userrow['bbcode_bitfield'])
|
||||||
{
|
{
|
||||||
include_once($phpbb_root_path . 'includes/bbcode.'.$phpEx);
|
include_once($phpbb_root_path . 'includes/bbcode.' . $phpEx);
|
||||||
|
|
||||||
$bbcode = new bbcode($userrow['bbcode_bitfield']);
|
$bbcode = new bbcode($userrow['bbcode_bitfield']);
|
||||||
$bbcode->bbcode_second_pass($message, $row['bbcode_uid'], $row['bbcode_bitfield']);
|
$bbcode->bbcode_second_pass($message, $row['bbcode_uid'], $row['bbcode_bitfield']);
|
||||||
}
|
}
|
||||||
|
@ -259,14 +267,15 @@ function mcp_warn_post_view($id, $mode, $action)
|
||||||
{
|
{
|
||||||
case AVATAR_UPLOAD:
|
case AVATAR_UPLOAD:
|
||||||
$avatar_img = $config['avatar_path'] . '/';
|
$avatar_img = $config['avatar_path'] . '/';
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case AVATAR_GALLERY:
|
case AVATAR_GALLERY:
|
||||||
$avatar_img = $config['avatar_gallery_path'] . '/';
|
$avatar_img = $config['avatar_gallery_path'] . '/';
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
$avatar_img .= $userrow['user_avatar'];
|
$avatar_img .= $userrow['user_avatar'];
|
||||||
|
|
||||||
$avatar_img = '<img src="' . $avatar_img . '" width="' . $userrow['user_avatar_width'] . '" height="' . $userrow['user_avatar_height'] . '" border="0" alt="" />';
|
$avatar_img = '<img src="' . $avatar_img . '" width="' . $userrow['user_avatar_width'] . '" height="' . $userrow['user_avatar_height'] . '" alt="" />';
|
||||||
}
|
}
|
||||||
|
|
||||||
$template->assign_vars(array(
|
$template->assign_vars(array(
|
||||||
|
@ -307,6 +316,11 @@ function mcp_warn_user_view($id, $mode, $action)
|
||||||
$userrow = $db->sql_fetchrow($result);
|
$userrow = $db->sql_fetchrow($result);
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
|
if (!$userrow)
|
||||||
|
{
|
||||||
|
trigger_error('NO_USER');
|
||||||
|
}
|
||||||
|
|
||||||
$user_id = $userrow['user_id'];
|
$user_id = $userrow['user_id'];
|
||||||
|
|
||||||
if ($warning && $action == 'add_warning')
|
if ($warning && $action == 'add_warning')
|
||||||
|
@ -329,14 +343,15 @@ function mcp_warn_user_view($id, $mode, $action)
|
||||||
{
|
{
|
||||||
case AVATAR_UPLOAD:
|
case AVATAR_UPLOAD:
|
||||||
$avatar_img = $config['avatar_path'] . '/';
|
$avatar_img = $config['avatar_path'] . '/';
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case AVATAR_GALLERY:
|
case AVATAR_GALLERY:
|
||||||
$avatar_img = $config['avatar_gallery_path'] . '/';
|
$avatar_img = $config['avatar_gallery_path'] . '/';
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
$avatar_img .= $userrow['user_avatar'];
|
$avatar_img .= $userrow['user_avatar'];
|
||||||
|
|
||||||
$avatar_img = '<img src="' . $avatar_img . '" width="' . $userrow['user_avatar_width'] . '" height="' . $userrow['user_avatar_height'] . '" border="0" alt="" />';
|
$avatar_img = '<img src="' . $avatar_img . '" width="' . $userrow['user_avatar_width'] . '" height="' . $userrow['user_avatar_height'] . '" alt="" />';
|
||||||
}
|
}
|
||||||
|
|
||||||
// OK, they didn't submit a warning so lets build the page for them to do so
|
// OK, they didn't submit a warning so lets build the page for them to do so
|
||||||
|
@ -366,13 +381,14 @@ function add_warning($userrow, $warning, $send_pm = true, $post_id = 0)
|
||||||
|
|
||||||
if ($send_pm)
|
if ($send_pm)
|
||||||
{
|
{
|
||||||
include($phpbb_root_path . 'includes/functions_privmsgs.' . $phpEx);
|
include_once($phpbb_root_path . 'includes/functions_privmsgs.' . $phpEx);
|
||||||
include($phpbb_root_path . 'includes/message_parser.'.$phpEx);
|
include_once($phpbb_root_path . 'includes/message_parser.' . $phpEx);
|
||||||
|
|
||||||
$userrow['user_lang'] = (file_exists($phpbb_root_path . 'language/' . $userrow['user_lang'] . "/mcp.$phpEx")) ? $userrow['user_lang'] : $config['default_lang'];
|
$userrow['user_lang'] = (file_exists($phpbb_root_path . 'language/' . $userrow['user_lang'] . "/mcp.$phpEx")) ? $userrow['user_lang'] : $config['default_lang'];
|
||||||
include($phpbb_root_path . 'language/' . $userrow['user_lang'] . "/mcp.$phpEx");
|
include($phpbb_root_path . 'language/' . basename($userrow['user_lang']) . "/mcp.$phpEx");
|
||||||
|
|
||||||
$message_parser = new parse_message();
|
$message_parser = new parse_message();
|
||||||
|
|
||||||
$message_parser->message = sprintf($lang['WARNING_PM_BODY'], $warning);
|
$message_parser->message = sprintf($lang['WARNING_PM_BODY'], $warning);
|
||||||
$message_parser->parse(true, true, true, false, false, true);
|
$message_parser->parse(true, true, true, false, false, true);
|
||||||
|
|
||||||
|
@ -412,4 +428,5 @@ function add_warning($userrow, $warning, $send_pm = true, $post_id = 0)
|
||||||
WHERE user_id = ' . $userrow['user_id'];
|
WHERE user_id = ' . $userrow['user_id'];
|
||||||
$db->sql_query($sql);
|
$db->sql_query($sql);
|
||||||
}
|
}
|
||||||
|
|
||||||
?>
|
?>
|
|
@ -258,14 +258,21 @@ class bbcode_firstpass extends bbcode
|
||||||
{
|
{
|
||||||
$stats = @getimagesize($in);
|
$stats = @getimagesize($in);
|
||||||
|
|
||||||
if ($config['max_' . $this->mode . '_img_height'] && $config['max_' . $this->mode . '_img_height'] < $stats[1])
|
if ($stats === false)
|
||||||
{
|
{
|
||||||
$this->warn_msg[] = sprintf($user->lang['MAX_IMG_HEIGHT_EXCEEDED'], $config['max_' . $this->mode . '_img_height']);
|
$this->warn_msg[] = $user->lang['UNABLE_GET_IMAGE_SIZE'];
|
||||||
}
|
}
|
||||||
|
else
|
||||||
if ($config['max_' . $this->mode . '_img_width'] && $config['max_' . $this->mode . '_img_width'] < $stats[0])
|
|
||||||
{
|
{
|
||||||
$this->warn_msg[] = sprintf($user->lang['MAX_IMG_WIDTH_EXCEEDED'], $config['max_' . $this->mode . '_img_width']);
|
if ($config['max_' . $this->mode . '_img_height'] && $config['max_' . $this->mode . '_img_height'] < $stats[1])
|
||||||
|
{
|
||||||
|
$this->warn_msg[] = sprintf($user->lang['MAX_IMG_HEIGHT_EXCEEDED'], $config['max_' . $this->mode . '_img_height']);
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($config['max_' . $this->mode . '_img_width'] && $config['max_' . $this->mode . '_img_width'] < $stats[0])
|
||||||
|
{
|
||||||
|
$this->warn_msg[] = sprintf($user->lang['MAX_IMG_WIDTH_EXCEEDED'], $config['max_' . $this->mode . '_img_width']);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -282,7 +289,7 @@ class bbcode_firstpass extends bbcode
|
||||||
*/
|
*/
|
||||||
function bbcode_flash($width, $height, $in)
|
function bbcode_flash($width, $height, $in)
|
||||||
{
|
{
|
||||||
global $config;
|
global $user, $config, $phpEx;
|
||||||
|
|
||||||
if (!$this->check_bbcode('flash', $in))
|
if (!$this->check_bbcode('flash', $in))
|
||||||
{
|
{
|
||||||
|
|
|
@ -52,7 +52,7 @@ class fulltext_mysql extends search_backend
|
||||||
}
|
}
|
||||||
|
|
||||||
$result = $db->sql_query('SELECT VERSION() AS mysql_version');
|
$result = $db->sql_query('SELECT VERSION() AS mysql_version');
|
||||||
$version = $db->sql_fetchfield('mysql_version', 0, $result);
|
$version = $db->sql_fetchfield('mysql_version');
|
||||||
$db->sql_freeresult($result);
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
if (!preg_match('#^4|5|6#s', $version))
|
if (!preg_match('#^4|5|6#s', $version))
|
||||||
|
@ -248,9 +248,11 @@ class fulltext_mysql extends search_backend
|
||||||
$id_ary = array();
|
$id_ary = array();
|
||||||
|
|
||||||
$join_topic = ($type == 'posts') ? false : true;
|
$join_topic = ($type == 'posts') ? false : true;
|
||||||
|
|
||||||
// Build sql strings for sorting
|
// Build sql strings for sorting
|
||||||
$sql_sort = $sort_by_sql[$sort_key] . (($sort_dir == 'a') ? ' ASC' : ' DESC');
|
$sql_sort = $sort_by_sql[$sort_key] . (($sort_dir == 'a') ? ' ASC' : ' DESC');
|
||||||
$sql_sort_table = $sql_sort_join = '';
|
$sql_sort_table = $sql_sort_join = '';
|
||||||
|
|
||||||
switch ($sql_sort[0])
|
switch ($sql_sort[0])
|
||||||
{
|
{
|
||||||
case 'u':
|
case 'u':
|
||||||
|
@ -291,6 +293,7 @@ class fulltext_mysql extends search_backend
|
||||||
default:
|
default:
|
||||||
$sql_match = 'p.post_subject, p.post_text';
|
$sql_match = 'p.post_subject, p.post_text';
|
||||||
$sql_match_where = '';
|
$sql_match_where = '';
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!sizeof($m_approve_fid_ary))
|
if (!sizeof($m_approve_fid_ary))
|
||||||
|
@ -358,6 +361,7 @@ class fulltext_mysql extends search_backend
|
||||||
|
|
||||||
// Get the ids for the current result block
|
// Get the ids for the current result block
|
||||||
$any_words = (sizeof($any_words)) ? ' +(' . implode(' ', $any_words) . ')' : '';
|
$any_words = (sizeof($any_words)) ? ' +(' . implode(' ', $any_words) . ')' : '';
|
||||||
|
|
||||||
$sql = "SELECT $sql_select
|
$sql = "SELECT $sql_select
|
||||||
FROM $sql_from$sql_sort_table" . POSTS_TABLE . " p
|
FROM $sql_from$sql_sort_table" . POSTS_TABLE . " p
|
||||||
WHERE MATCH ($sql_match) AGAINST ('" . $db->sql_escape(implode(' ', $words)) . $any_words . "' IN BOOLEAN MODE)
|
WHERE MATCH ($sql_match) AGAINST ('" . $db->sql_escape(implode(' ', $words)) . $any_words . "' IN BOOLEAN MODE)
|
||||||
|
@ -714,7 +718,8 @@ class fulltext_mysql extends search_backend
|
||||||
return array(
|
return array(
|
||||||
$user->lang['FULLTEXT_MYSQL_TOTAL_POSTS'] => ($this->index_created()) ? $this->stats['total_posts'] : 0,
|
$user->lang['FULLTEXT_MYSQL_TOTAL_POSTS'] => ($this->index_created()) ? $this->stats['total_posts'] : 0,
|
||||||
$user->lang['FULLTEXT_MYSQL_TEXT_CARDINALITY'] => isset($this->stats['post_text']['Cardinality']) ? $this->stats['post_text']['Cardinality'] : 0,
|
$user->lang['FULLTEXT_MYSQL_TEXT_CARDINALITY'] => isset($this->stats['post_text']['Cardinality']) ? $this->stats['post_text']['Cardinality'] : 0,
|
||||||
$user->lang['FULLTEXT_MYSQL_SUBJECT_CARDINALITY'] => isset($this->stats['post_subject']['Cardinality']) ? $this->stats['post_subject']['Cardinality'] : 0);
|
$user->lang['FULLTEXT_MYSQL_SUBJECT_CARDINALITY'] => isset($this->stats['post_subject']['Cardinality']) ? $this->stats['post_subject']['Cardinality'] : 0,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
function get_stats()
|
function get_stats()
|
||||||
|
|
|
@ -284,9 +284,11 @@ class fulltext_native extends search_backend
|
||||||
$id_ary = array();
|
$id_ary = array();
|
||||||
|
|
||||||
$join_topic = ($type == 'posts') ? false : true;
|
$join_topic = ($type == 'posts') ? false : true;
|
||||||
|
|
||||||
// Build sql strings for sorting
|
// Build sql strings for sorting
|
||||||
$sql_sort = $sort_by_sql[$sort_key] . (($sort_dir == 'a') ? ' ASC' : ' DESC');
|
$sql_sort = $sort_by_sql[$sort_key] . (($sort_dir == 'a') ? ' ASC' : ' DESC');
|
||||||
$sql_sort_table = $sql_sort_join = '';
|
$sql_sort_table = $sql_sort_join = '';
|
||||||
|
|
||||||
switch ($sql_sort[0])
|
switch ($sql_sort[0])
|
||||||
{
|
{
|
||||||
case 'u':
|
case 'u':
|
||||||
|
@ -363,17 +365,21 @@ class fulltext_native extends search_backend
|
||||||
{
|
{
|
||||||
case '-':
|
case '-':
|
||||||
$bool = 'NOT';
|
$bool = 'NOT';
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
case '+':
|
case '+':
|
||||||
$bool = 'AND';
|
$bool = 'AND';
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
case '|':
|
case '|':
|
||||||
$bool = 'OR';
|
$bool = 'OR';
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
$bool = ($terms != 'all') ? 'OR' : $bool;
|
$bool = ($terms != 'all') ? 'OR' : $bool;
|
||||||
$sql_words[$bool][] = "'" . $db->sql_escape(preg_replace('#\*+#', '%', trim($word))) . "'";
|
$sql_words[$bool][] = "'" . $db->sql_escape(preg_replace('#\*+#', '%', trim($word))) . "'";
|
||||||
$bool = ($terms == 'all') ? 'AND' : 'OR';
|
$bool = ($terms == 'all') ? 'AND' : 'OR';
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -400,6 +406,7 @@ class fulltext_native extends search_backend
|
||||||
|
|
||||||
if (!($row = $db->sql_fetchrow($result)))
|
if (!($row = $db->sql_fetchrow($result)))
|
||||||
{
|
{
|
||||||
|
$db->sql_freeresult($result);
|
||||||
$id_ary = array();
|
$id_ary = array();
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -444,6 +451,7 @@ class fulltext_native extends search_backend
|
||||||
|
|
||||||
if (!($row = $db->sql_fetchrow($result)))
|
if (!($row = $db->sql_fetchrow($result)))
|
||||||
{
|
{
|
||||||
|
$db->sql_freeresult($result);
|
||||||
$id_ary = array();
|
$id_ary = array();
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
|
@ -71,7 +71,7 @@ class ucp_confirm
|
||||||
}
|
}
|
||||||
|
|
||||||
$policy = '';
|
$policy = '';
|
||||||
if (extension_loaded('gd') && sizeof($policy_modules))
|
if (@extension_loaded('gd') && sizeof($policy_modules))
|
||||||
{
|
{
|
||||||
include($phpbb_root_path . 'includes/captcha/captcha_gd.' . $phpEx);
|
include($phpbb_root_path . 'includes/captcha/captcha_gd.' . $phpEx);
|
||||||
$policy = $policy_modules[array_rand($policy_modules)];
|
$policy = $policy_modules[array_rand($policy_modules)];
|
||||||
|
|
|
@ -17,8 +17,8 @@ function compose_pm($id, $mode, $action)
|
||||||
global $template, $db, $auth, $user;
|
global $template, $db, $auth, $user;
|
||||||
global $phpbb_root_path, $phpEx, $config;
|
global $phpbb_root_path, $phpEx, $config;
|
||||||
|
|
||||||
include($phpbb_root_path . 'includes/functions_posting.'.$phpEx);
|
include($phpbb_root_path . 'includes/functions_posting.' . $phpEx);
|
||||||
include($phpbb_root_path . 'includes/message_parser.'.$phpEx);
|
include($phpbb_root_path . 'includes/message_parser.' . $phpEx);
|
||||||
|
|
||||||
if (!$action)
|
if (!$action)
|
||||||
{
|
{
|
||||||
|
@ -35,17 +35,17 @@ function compose_pm($id, $mode, $action)
|
||||||
// Do NOT use request_var or specialchars here
|
// Do NOT use request_var or specialchars here
|
||||||
$address_list = isset($_REQUEST['address_list']) ? $_REQUEST['address_list'] : array();
|
$address_list = isset($_REQUEST['address_list']) ? $_REQUEST['address_list'] : array();
|
||||||
|
|
||||||
$submit = (isset($_POST['post']));
|
$submit = (isset($_POST['post'])) ? true : false;
|
||||||
$preview = (isset($_POST['preview']));
|
$preview = (isset($_POST['preview'])) ? true : false;
|
||||||
$save = (isset($_POST['save']));
|
$save = (isset($_POST['save'])) ? true : false;
|
||||||
$load = (isset($_POST['load']));
|
$load = (isset($_POST['load'])) ? true : false;
|
||||||
$cancel = (isset($_POST['cancel']) && !isset($_POST['save']));
|
$cancel = (isset($_POST['cancel']) && !isset($_POST['save'])) ? true : false;
|
||||||
$delete = (isset($_POST['delete']));
|
$delete = (isset($_POST['delete'])) ? true : false;
|
||||||
|
|
||||||
$remove_u = (isset($_REQUEST['remove_u']));
|
$remove_u = (isset($_REQUEST['remove_u'])) ? true : false;
|
||||||
$remove_g = (isset($_REQUEST['remove_g']));
|
$remove_g = (isset($_REQUEST['remove_g'])) ? true : false;
|
||||||
$add_to = (isset($_REQUEST['add_to']));
|
$add_to = (isset($_REQUEST['add_to'])) ? true : false;
|
||||||
$add_bcc = (isset($_REQUEST['add_bcc']));
|
$add_bcc = (isset($_REQUEST['add_bcc'])) ? true : false;
|
||||||
|
|
||||||
$refresh = isset($_POST['add_file']) || isset($_POST['delete_file']) || isset($_POST['edit_comment']) || $save || $load
|
$refresh = isset($_POST['add_file']) || isset($_POST['delete_file']) || isset($_POST['edit_comment']) || $save || $load
|
||||||
|| $remove_u || $remove_g || $add_to || $add_bcc;
|
|| $remove_u || $remove_g || $add_to || $add_bcc;
|
||||||
|
@ -273,7 +273,9 @@ function compose_pm($id, $mode, $action)
|
||||||
{
|
{
|
||||||
delete_pm($user->data['user_id'], $msg_id, $folder_id);
|
delete_pm($user->data['user_id'], $msg_id, $folder_id);
|
||||||
|
|
||||||
// TODO - jump to next message in "history"?
|
/**
|
||||||
|
* @todo jump to next message in "history"?
|
||||||
|
*/
|
||||||
$meta_info = append_sid("{$phpbb_root_path}ucp.$phpEx", "i=pm&folder=$folder_id");
|
$meta_info = append_sid("{$phpbb_root_path}ucp.$phpEx", "i=pm&folder=$folder_id");
|
||||||
$message = $user->lang['MESSAGE_DELETED'];
|
$message = $user->lang['MESSAGE_DELETED'];
|
||||||
|
|
||||||
|
@ -284,9 +286,9 @@ function compose_pm($id, $mode, $action)
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$s_hidden_fields = array(
|
$s_hidden_fields = array(
|
||||||
'p' => $msg_id,
|
'p' => $msg_id,
|
||||||
'f' => $folder_id,
|
'f' => $folder_id,
|
||||||
'action'=> 'delete'
|
'action' => 'delete'
|
||||||
);
|
);
|
||||||
|
|
||||||
// "{$phpbb_root_path}ucp.$phpEx?i=pm&mode=compose"
|
// "{$phpbb_root_path}ucp.$phpEx?i=pm&mode=compose"
|
||||||
|
@ -340,12 +342,13 @@ function compose_pm($id, $mode, $action)
|
||||||
AND user_id = ' . $user->data['user_id'] .
|
AND user_id = ' . $user->data['user_id'] .
|
||||||
(($draft_id) ? " AND draft_id <> $draft_id" : '');
|
(($draft_id) ? " AND draft_id <> $draft_id" : '');
|
||||||
$result = $db->sql_query_limit($sql, 1);
|
$result = $db->sql_query_limit($sql, 1);
|
||||||
|
$row = $db->sql_fetchrow($result);
|
||||||
|
$db->sql_freeresult($result);
|
||||||
|
|
||||||
if ($db->sql_fetchrow($result))
|
if ($row)
|
||||||
{
|
{
|
||||||
$drafts = true;
|
$drafts = true;
|
||||||
}
|
}
|
||||||
$db->sql_freeresult($result);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($action == 'edit')
|
if ($action == 'edit')
|
||||||
|
@ -353,10 +356,10 @@ function compose_pm($id, $mode, $action)
|
||||||
$message_parser->bbcode_uid = $bbcode_uid;
|
$message_parser->bbcode_uid = $bbcode_uid;
|
||||||
}
|
}
|
||||||
|
|
||||||
$bbcode_status = ($config['allow_bbcode'] && $config['auth_bbcode_pm'] && $auth->acl_get('u_pm_bbcode'));
|
$bbcode_status = ($config['allow_bbcode'] && $config['auth_bbcode_pm'] && $auth->acl_get('u_pm_bbcode')) ? true : false;
|
||||||
$smilies_status = ($config['allow_smilies'] && $config['auth_smilies_pm'] && $auth->acl_get('u_pm_smilies'));
|
$smilies_status = ($config['allow_smilies'] && $config['auth_smilies_pm'] && $auth->acl_get('u_pm_smilies')) ? true : false;
|
||||||
$img_status = ($config['auth_img_pm'] && $auth->acl_get('u_pm_img'));
|
$img_status = ($config['auth_img_pm'] && $auth->acl_get('u_pm_img')) ? true : false;
|
||||||
$flash_status = ($config['auth_flash_pm'] && $auth->acl_get('u_pm_flash'));
|
$flash_status = ($config['auth_flash_pm'] && $auth->acl_get('u_pm_flash')) ? true : false;
|
||||||
|
|
||||||
// Save Draft
|
// Save Draft
|
||||||
if ($save && $auth->acl_get('u_savedrafts'))
|
if ($save && $auth->acl_get('u_savedrafts'))
|
||||||
|
@ -370,12 +373,13 @@ function compose_pm($id, $mode, $action)
|
||||||
if (confirm_box(true))
|
if (confirm_box(true))
|
||||||
{
|
{
|
||||||
$sql = 'INSERT INTO ' . DRAFTS_TABLE . ' ' . $db->sql_build_array('INSERT', array(
|
$sql = 'INSERT INTO ' . DRAFTS_TABLE . ' ' . $db->sql_build_array('INSERT', array(
|
||||||
'user_id' => $user->data['user_id'],
|
'user_id' => $user->data['user_id'],
|
||||||
'topic_id' => 0,
|
'topic_id' => 0,
|
||||||
'forum_id' => 0,
|
'forum_id' => 0,
|
||||||
'save_time' => $current_time,
|
'save_time' => $current_time,
|
||||||
'draft_subject' => $subject,
|
'draft_subject' => $subject,
|
||||||
'draft_message' => $message));
|
'draft_message' => $message)
|
||||||
|
);
|
||||||
$db->sql_query($sql);
|
$db->sql_query($sql);
|
||||||
|
|
||||||
$redirect_url = append_sid("{$phpbb_root_path}ucp.$phpEx", "i=pm&mode=$mode");
|
$redirect_url = append_sid("{$phpbb_root_path}ucp.$phpEx", "i=pm&mode=$mode");
|
||||||
|
@ -427,6 +431,7 @@ function compose_pm($id, $mode, $action)
|
||||||
{
|
{
|
||||||
$draft_id = 0;
|
$draft_id = 0;
|
||||||
}
|
}
|
||||||
|
$db->sql_freeresult($result);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Load Drafts
|
// Load Drafts
|
||||||
|
@ -761,7 +766,7 @@ function compose_pm($id, $mode, $action)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
trigger_error('NO_ACTION_MODE');
|
trigger_error('NO_ACTION_MODE', E_USER_ERROR);
|
||||||
}
|
}
|
||||||
|
|
||||||
$s_hidden_fields = '<input type="hidden" name="lastclick" value="' . $current_time . '" />';
|
$s_hidden_fields = '<input type="hidden" name="lastclick" value="' . $current_time . '" />';
|
||||||
|
@ -772,9 +777,9 @@ function compose_pm($id, $mode, $action)
|
||||||
|
|
||||||
// Start assigning vars for main posting page ...
|
// Start assigning vars for main posting page ...
|
||||||
$template->assign_vars(array(
|
$template->assign_vars(array(
|
||||||
'L_POST_A' => $page_title,
|
'L_POST_A' => $page_title,
|
||||||
'L_ICON' => $user->lang['PM_ICON'],
|
'L_ICON' => $user->lang['PM_ICON'],
|
||||||
'L_MESSAGE_BODY_EXPLAIN'=> (intval($config['max_post_chars'])) ? sprintf($user->lang['MESSAGE_BODY_EXPLAIN'], intval($config['max_post_chars'])) : '',
|
'L_MESSAGE_BODY_EXPLAIN' => (intval($config['max_post_chars'])) ? sprintf($user->lang['MESSAGE_BODY_EXPLAIN'], intval($config['max_post_chars'])) : '',
|
||||||
|
|
||||||
'SUBJECT' => (isset($message_subject)) ? $message_subject : '',
|
'SUBJECT' => (isset($message_subject)) ? $message_subject : '',
|
||||||
'MESSAGE' => $message_text,
|
'MESSAGE' => $message_text,
|
||||||
|
@ -788,12 +793,12 @@ function compose_pm($id, $mode, $action)
|
||||||
'S_EDIT_POST' => ($action == 'edit'),
|
'S_EDIT_POST' => ($action == 'edit'),
|
||||||
'S_SHOW_PM_ICONS' => $s_pm_icons,
|
'S_SHOW_PM_ICONS' => $s_pm_icons,
|
||||||
'S_BBCODE_ALLOWED' => $bbcode_status,
|
'S_BBCODE_ALLOWED' => $bbcode_status,
|
||||||
'S_BBCODE_CHECKED' => ($bbcode_checked) ? ' checked="checked"' : '',
|
'S_BBCODE_CHECKED' => ($bbcode_checked) ? ' checked="checked"' : '',
|
||||||
'S_SMILIES_ALLOWED' => $smilies_status,
|
'S_SMILIES_ALLOWED' => $smilies_status,
|
||||||
'S_SMILIES_CHECKED' => ($smilies_checked) ? ' checked="checked"' : '',
|
'S_SMILIES_CHECKED' => ($smilies_checked) ? ' checked="checked"' : '',
|
||||||
'S_SIG_ALLOWED' => ($config['allow_sig'] && $auth->acl_get('u_sig')),
|
'S_SIG_ALLOWED' => ($config['allow_sig'] && $auth->acl_get('u_sig')),
|
||||||
'S_SIGNATURE_CHECKED' => ($sig_checked) ? ' checked="checked"' : '',
|
'S_SIGNATURE_CHECKED' => ($sig_checked) ? ' checked="checked"' : '',
|
||||||
'S_MAGIC_URL_CHECKED' => ($urls_checked) ? ' checked="checked"' : '',
|
'S_MAGIC_URL_CHECKED' => ($urls_checked) ? ' checked="checked"' : '',
|
||||||
'S_SAVE_ALLOWED' => $auth->acl_get('u_savedrafts'),
|
'S_SAVE_ALLOWED' => $auth->acl_get('u_savedrafts'),
|
||||||
'S_HAS_DRAFTS' => ($auth->acl_get('u_savedrafts') && $drafts),
|
'S_HAS_DRAFTS' => ($auth->acl_get('u_savedrafts') && $drafts),
|
||||||
'S_FORM_ENCTYPE' => $form_enctype,
|
'S_FORM_ENCTYPE' => $form_enctype,
|
||||||
|
@ -802,9 +807,9 @@ function compose_pm($id, $mode, $action)
|
||||||
'S_BBCODE_FLASH' => $flash_status,
|
'S_BBCODE_FLASH' => $flash_status,
|
||||||
'S_BBCODE_QUOTE' => true,
|
'S_BBCODE_QUOTE' => true,
|
||||||
|
|
||||||
'S_POST_ACTION' => $s_action,
|
'S_POST_ACTION' => $s_action,
|
||||||
'S_HIDDEN_ADDRESS_FIELD'=> $s_hidden_address_field,
|
'S_HIDDEN_ADDRESS_FIELD' => $s_hidden_address_field,
|
||||||
'S_HIDDEN_FIELDS' => $s_hidden_fields,
|
'S_HIDDEN_FIELDS' => $s_hidden_fields,
|
||||||
|
|
||||||
'S_CLOSE_PROGRESS_WINDOW' => isset($_POST['add_file']),
|
'S_CLOSE_PROGRESS_WINDOW' => isset($_POST['add_file']),
|
||||||
'U_PROGRESS_BAR' => append_sid("{$phpbb_root_path}posting.$phpEx", 'f=0&mode=popup'),
|
'U_PROGRESS_BAR' => append_sid("{$phpbb_root_path}posting.$phpEx", 'f=0&mode=popup'),
|
||||||
|
@ -901,7 +906,7 @@ function handle_message_list_actions(&$address_list, $remove_u, $remove_g, $add_
|
||||||
{
|
{
|
||||||
// We need to check their PM status (do they want to receive PM's?)
|
// We need to check their PM status (do they want to receive PM's?)
|
||||||
// Only check if not a moderator or admin, since they are allowed to override this user setting
|
// Only check if not a moderator or admin, since they are allowed to override this user setting
|
||||||
if (!$auth->acl_gets('a_', 'm_'))
|
if (!$auth->acl_gets('a_', 'm_') && !$auth->acl_getf_global('m_'))
|
||||||
{
|
{
|
||||||
$sql = 'SELECT user_id
|
$sql = 'SELECT user_id
|
||||||
FROM ' . USERS_TABLE . '
|
FROM ' . USERS_TABLE . '
|
||||||
|
|
|
@ -340,11 +340,16 @@ class ucp_profile
|
||||||
$error = preg_replace('#^([A-Z_]+)$#e', "(!empty(\$user->lang['\\1'])) ? \$user->lang['\\1'] : '\\1'", $error);
|
$error = preg_replace('#^([A-Z_]+)$#e', "(!empty(\$user->lang['\\1'])) ? \$user->lang['\\1'] : '\\1'", $error);
|
||||||
}
|
}
|
||||||
|
|
||||||
$bday_day = $bday_month = $bday_year = 0;
|
if (!isset($bday_day))
|
||||||
|
|
||||||
if ($user->data['user_birthday'])
|
|
||||||
{
|
{
|
||||||
list($bday_day, $bday_month, $bday_year) = explode('-', $user->data['user_birthday']);
|
if ($user->data['user_birthday'])
|
||||||
|
{
|
||||||
|
list($bday_day, $bday_month, $bday_year) = explode('-', $user->data['user_birthday']);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$bday_day = $bday_month = $bday_year = 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$s_birthday_day_options = '<option value="0"' . ((!$bday_day) ? ' selected="selected"' : '') . '>--</option>';
|
$s_birthday_day_options = '<option value="0"' . ((!$bday_day) ? ' selected="selected"' : '') . '>--</option>';
|
||||||
|
|
|
@ -97,13 +97,13 @@ else
|
||||||
@set_time_limit(120);
|
@set_time_limit(120);
|
||||||
|
|
||||||
// Include essential scripts
|
// Include essential scripts
|
||||||
require($phpbb_root_path . 'includes/functions.'.$phpEx);
|
require($phpbb_root_path . 'includes/functions.' . $phpEx);
|
||||||
include($phpbb_root_path . 'includes/auth.' . $phpEx);
|
include($phpbb_root_path . 'includes/auth.' . $phpEx);
|
||||||
include($phpbb_root_path . 'includes/session.'.$phpEx);
|
include($phpbb_root_path . 'includes/session.' . $phpEx);
|
||||||
include($phpbb_root_path . 'includes/template.'.$phpEx);
|
include($phpbb_root_path . 'includes/template.' . $phpEx);
|
||||||
include($phpbb_root_path . 'includes/acm/acm_file.'.$phpEx);
|
include($phpbb_root_path . 'includes/acm/acm_file.' . $phpEx);
|
||||||
include($phpbb_root_path . 'includes/cache.'.$phpEx);
|
include($phpbb_root_path . 'includes/cache.' . $phpEx);
|
||||||
include($phpbb_root_path . 'includes/functions_admin.'.$phpEx);
|
include($phpbb_root_path . 'includes/functions_admin.' . $phpEx);
|
||||||
|
|
||||||
// Try and load an appropriate language if required
|
// Try and load an appropriate language if required
|
||||||
$language = request_var('language', '');
|
$language = request_var('language', '');
|
||||||
|
@ -152,11 +152,11 @@ if (!$language)
|
||||||
}
|
}
|
||||||
|
|
||||||
// And finally, load the relevant language files
|
// And finally, load the relevant language files
|
||||||
include($phpbb_root_path . 'language/' . $language . '/common.'.$phpEx);
|
include($phpbb_root_path . 'language/' . $language . '/common.' . $phpEx);
|
||||||
include($phpbb_root_path . 'language/' . $language . '/acp/common.'.$phpEx);
|
include($phpbb_root_path . 'language/' . $language . '/acp/common.' . $phpEx);
|
||||||
include($phpbb_root_path . 'language/' . $language . '/acp/board.'.$phpEx);
|
include($phpbb_root_path . 'language/' . $language . '/acp/board.' . $phpEx);
|
||||||
include($phpbb_root_path . 'language/' . $language . '/install.'.$phpEx);
|
include($phpbb_root_path . 'language/' . $language . '/install.' . $phpEx);
|
||||||
include($phpbb_root_path . 'language/' . $language . '/posting.'.$phpEx);
|
include($phpbb_root_path . 'language/' . $language . '/posting.' . $phpEx);
|
||||||
|
|
||||||
$mode = request_var('mode', 'overview');
|
$mode = request_var('mode', 'overview');
|
||||||
$sub = request_var('sub', '');
|
$sub = request_var('sub', '');
|
||||||
|
@ -201,7 +201,9 @@ class module
|
||||||
var $mode;
|
var $mode;
|
||||||
var $sub;
|
var $sub;
|
||||||
|
|
||||||
// Private methods, should not be overwritten
|
/**
|
||||||
|
* Private methods, should not be overwritten
|
||||||
|
*/
|
||||||
function create($module_type, $module_url, $selected_mod = false, $selected_submod = false)
|
function create($module_type, $module_url, $selected_mod = false, $selected_submod = false)
|
||||||
{
|
{
|
||||||
global $db, $config, $phpEx;
|
global $db, $config, $phpEx;
|
||||||
|
@ -263,7 +265,9 @@ class module
|
||||||
} // END foreach
|
} // END foreach
|
||||||
} // END create
|
} // END create
|
||||||
|
|
||||||
// Load and run the relevant module if applicable
|
/**
|
||||||
|
* Load and run the relevant module if applicable
|
||||||
|
*/
|
||||||
function load($mode = false, $run = true)
|
function load($mode = false, $run = true)
|
||||||
{
|
{
|
||||||
global $phpbb_root_path, $phpEx;
|
global $phpbb_root_path, $phpEx;
|
||||||
|
@ -275,13 +279,16 @@ class module
|
||||||
$this->mode = $mode;
|
$this->mode = $mode;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @todo this could be written as $this->module = new $this->filename($this); ... no? (eval statement in install/index.php)
|
||||||
|
*/
|
||||||
eval("\$this->module = new $this->filename(\$this);");
|
eval("\$this->module = new $this->filename(\$this);");
|
||||||
if (method_exists($this->module, 'main'))
|
if (method_exists($this->module, 'main'))
|
||||||
{
|
{
|
||||||
$this->module->main($this->mode, $this->sub);
|
$this->module->main($this->mode, $this->sub);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} // END load
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Output the standard page header
|
* Output the standard page header
|
||||||
|
@ -598,4 +605,5 @@ class module
|
||||||
return $tpl;
|
return $tpl;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
?>
|
?>
|
|
@ -14,13 +14,13 @@
|
||||||
if (!empty($setmodules))
|
if (!empty($setmodules))
|
||||||
{
|
{
|
||||||
$module[] = array(
|
$module[] = array(
|
||||||
'module_type' => 'install',
|
'module_type' => 'install',
|
||||||
'module_title' => 'INSTALL',
|
'module_title' => 'INSTALL',
|
||||||
'module_filename' => substr(basename(__FILE__), 0, -strlen($phpEx)-1),
|
'module_filename' => substr(basename(__FILE__), 0, -strlen($phpEx)-1),
|
||||||
'module_order' => 10,
|
'module_order' => 10,
|
||||||
'module_subs' => '',
|
'module_subs' => '',
|
||||||
'module_stages' => array('INTRO', 'REQUIREMENTS', 'DATABASE', 'ADMINISTRATOR', 'CONFIG_FILE', 'ADVANCED', 'FINAL'),
|
'module_stages' => array('INTRO', 'REQUIREMENTS', 'DATABASE', 'ADMINISTRATOR', 'CONFIG_FILE', 'ADVANCED', 'FINAL'),
|
||||||
'module_reqs' => ''
|
'module_reqs' => ''
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -124,6 +124,7 @@ class install_install extends module
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$passed['php'] = true;
|
$passed['php'] = true;
|
||||||
|
|
||||||
// We also give feedback on whether we're running in safe mode
|
// We also give feedback on whether we're running in safe mode
|
||||||
$result = '<b style="color:green">' . $lang['YES'];
|
$result = '<b style="color:green">' . $lang['YES'];
|
||||||
if (@ini_get('safe_mode') || strtolower(@ini_get('safe_mode')) == 'on')
|
if (@ini_get('safe_mode') || strtolower(@ini_get('safe_mode')) == 'on')
|
||||||
|
@ -132,6 +133,7 @@ class install_install extends module
|
||||||
}
|
}
|
||||||
$result .= '</b>';
|
$result .= '</b>';
|
||||||
}
|
}
|
||||||
|
|
||||||
$template->assign_block_vars('checks', array(
|
$template->assign_block_vars('checks', array(
|
||||||
'TITLE' => $lang['PHP_VERSION_REQD'],
|
'TITLE' => $lang['PHP_VERSION_REQD'],
|
||||||
'RESULT' => $result,
|
'RESULT' => $result,
|
||||||
|
@ -173,7 +175,7 @@ class install_install extends module
|
||||||
{
|
{
|
||||||
$dll = $db_ary['MODULE'];
|
$dll = $db_ary['MODULE'];
|
||||||
|
|
||||||
if (!extension_loaded($dll))
|
if (!@extension_loaded($dll))
|
||||||
{
|
{
|
||||||
if (!$this->can_load_dll($dll))
|
if (!$this->can_load_dll($dll))
|
||||||
{
|
{
|
||||||
|
@ -208,7 +210,7 @@ class install_install extends module
|
||||||
|
|
||||||
foreach ($this->php_dlls_other as $dll)
|
foreach ($this->php_dlls_other as $dll)
|
||||||
{
|
{
|
||||||
if (!extension_loaded($dll))
|
if (!@extension_loaded($dll))
|
||||||
{
|
{
|
||||||
if (!$this->can_load_dll($dll))
|
if (!$this->can_load_dll($dll))
|
||||||
{
|
{
|
||||||
|
@ -222,6 +224,7 @@ class install_install extends module
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$template->assign_block_vars('checks', array(
|
$template->assign_block_vars('checks', array(
|
||||||
'TITLE' => $lang['DLL_' . strtoupper($dll)],
|
'TITLE' => $lang['DLL_' . strtoupper($dll)],
|
||||||
'RESULT' => '<b style="color:green">' . $lang['AVAILABLE'] . '</b>',
|
'RESULT' => '<b style="color:green">' . $lang['AVAILABLE'] . '</b>',
|
||||||
|
@ -429,7 +432,7 @@ class install_install extends module
|
||||||
$available_dbms_temp = array();
|
$available_dbms_temp = array();
|
||||||
foreach ($this->available_dbms as $type => $dbms_ary)
|
foreach ($this->available_dbms as $type => $dbms_ary)
|
||||||
{
|
{
|
||||||
if (!extension_loaded($dbms_ary['MODULE']))
|
if (!@extension_loaded($dbms_ary['MODULE']))
|
||||||
{
|
{
|
||||||
if (!$this->can_load_dll($dbms_ary['MODULE']))
|
if (!$this->can_load_dll($dbms_ary['MODULE']))
|
||||||
{
|
{
|
||||||
|
@ -693,7 +696,7 @@ class install_install extends module
|
||||||
|
|
||||||
foreach ($check_exts as $dll)
|
foreach ($check_exts as $dll)
|
||||||
{
|
{
|
||||||
if (!extension_loaded($dll))
|
if (!@extension_loaded($dll))
|
||||||
{
|
{
|
||||||
if (!$this->can_load_dll($dll))
|
if (!$this->can_load_dll($dll))
|
||||||
{
|
{
|
||||||
|
@ -907,7 +910,7 @@ class install_install extends module
|
||||||
$cookie_domain = ($server_name != '') ? $server_name : (!empty($_SERVER['SERVER_NAME'])) ? $_SERVER['SERVER_NAME'] : getenv('SERVER_NAME');
|
$cookie_domain = ($server_name != '') ? $server_name : (!empty($_SERVER['SERVER_NAME'])) ? $_SERVER['SERVER_NAME'] : getenv('SERVER_NAME');
|
||||||
|
|
||||||
// If we get here and the extension isn't loaded it should be safe to just go ahead and load it
|
// If we get here and the extension isn't loaded it should be safe to just go ahead and load it
|
||||||
if (!extension_loaded($this->available_dbms[$dbms]['MODULE']))
|
if (!@extension_loaded($this->available_dbms[$dbms]['MODULE']))
|
||||||
{
|
{
|
||||||
@dl($this->available_dbms[$dbms]['MODULE'] . ".$prefix");
|
@dl($this->available_dbms[$dbms]['MODULE'] . ".$prefix");
|
||||||
}
|
}
|
||||||
|
@ -1264,34 +1267,28 @@ class install_install extends module
|
||||||
if ($module_class == 'acp')
|
if ($module_class == 'acp')
|
||||||
{
|
{
|
||||||
// Move main module 4 up...
|
// Move main module 4 up...
|
||||||
for ($i = 1; $i <= 4; $i++)
|
$sql = 'SELECT *
|
||||||
{
|
FROM ' . MODULES_TABLE . "
|
||||||
$sql = 'SELECT *
|
WHERE module_name = 'main'
|
||||||
FROM ' . MODULES_TABLE . "
|
AND module_class = 'acp'
|
||||||
WHERE module_name = 'main'
|
AND module_mode = 'main'";
|
||||||
AND module_class = 'acp'
|
$result = $db->sql_query($sql);
|
||||||
AND module_mode = 'main'";
|
$row = $db->sql_fetchrow($result);
|
||||||
$result = $db->sql_query($sql);
|
$db->sql_freeresult($result);
|
||||||
$row = $db->sql_fetchrow($result);
|
|
||||||
$db->sql_freeresult($result);
|
|
||||||
|
|
||||||
$_module->move_module_by($row, 'move_up', 1);
|
$_module->move_module_by($row, 'move_up', 4);
|
||||||
}
|
|
||||||
|
|
||||||
// Move permissions intro screen module 4 up...
|
// Move permissions intro screen module 4 up...
|
||||||
for ($i = 1; $i <= 4; $i++)
|
$sql = 'SELECT *
|
||||||
{
|
FROM ' . MODULES_TABLE . "
|
||||||
$sql = 'SELECT *
|
WHERE module_name = 'permissions'
|
||||||
FROM ' . MODULES_TABLE . "
|
AND module_class = 'acp'
|
||||||
WHERE module_name = 'permissions'
|
AND module_mode = 'intro'";
|
||||||
AND module_class = 'acp'
|
$result = $db->sql_query($sql);
|
||||||
AND module_mode = 'intro'";
|
$row = $db->sql_fetchrow($result);
|
||||||
$result = $db->sql_query($sql);
|
$db->sql_freeresult($result);
|
||||||
$row = $db->sql_fetchrow($result);
|
|
||||||
$db->sql_freeresult($result);
|
|
||||||
|
|
||||||
$_module->move_module_by($row, 'move_up', 1);
|
$_module->move_module_by($row, 'move_up', 4);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// And now for the special ones
|
// And now for the special ones
|
||||||
|
@ -1374,7 +1371,7 @@ class install_install extends module
|
||||||
foreach ($this->bot_list as $bot_name => $bot_ary)
|
foreach ($this->bot_list as $bot_name => $bot_ary)
|
||||||
{
|
{
|
||||||
$user_row = array(
|
$user_row = array(
|
||||||
'user_type' => GROUP_HIDDEN,
|
'user_type' => USER_IGNORE,
|
||||||
'group_id' => $group_id,
|
'group_id' => $group_id,
|
||||||
'username' => $bot_name,
|
'username' => $bot_name,
|
||||||
'user_regdate' => time(),
|
'user_regdate' => time(),
|
||||||
|
@ -1446,7 +1443,7 @@ class install_install extends module
|
||||||
|
|
||||||
if ($config['email_enable'])
|
if ($config['email_enable'])
|
||||||
{
|
{
|
||||||
include_once($phpbb_root_path . 'includes/functions_messenger.'.$phpEx);
|
include_once($phpbb_root_path . 'includes/functions_messenger.' . $phpEx);
|
||||||
|
|
||||||
$messenger = new messenger(false);
|
$messenger = new messenger(false);
|
||||||
|
|
||||||
|
@ -1523,23 +1520,23 @@ class install_install extends module
|
||||||
case 'sqlite':
|
case 'sqlite':
|
||||||
$sql = "SHOW TABLES";
|
$sql = "SHOW TABLES";
|
||||||
$field = "Tables_in_{$dbname}";
|
$field = "Tables_in_{$dbname}";
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'mssql':
|
case 'mssql':
|
||||||
case 'mssql_odbc':
|
case 'mssql_odbc':
|
||||||
$sql = "SELECT name
|
$sql = "SELECT name
|
||||||
FROM sysobjects
|
FROM sysobjects
|
||||||
WHERE type='U'";
|
WHERE type='U'";
|
||||||
$field = "name";
|
$field = 'name';
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'postgres':
|
case 'postgres':
|
||||||
$sql = "SELECT relname
|
$sql = "SELECT relname
|
||||||
FROM pg_class
|
FROM pg_class
|
||||||
WHERE relkind = 'r'
|
WHERE relkind = 'r'
|
||||||
AND relname NOT LIKE 'pg\_%'";
|
AND relname NOT LIKE 'pg\_%'";
|
||||||
$field = "relname";
|
$field = 'relname';
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'firebird':
|
case 'firebird':
|
||||||
$sql = 'SELECT rdb$relation_name
|
$sql = 'SELECT rdb$relation_name
|
||||||
|
@ -1547,12 +1544,12 @@ class install_install extends module
|
||||||
WHERE rdb$view_source is null
|
WHERE rdb$view_source is null
|
||||||
AND rdb$system_flag = 0';
|
AND rdb$system_flag = 0';
|
||||||
$field = 'rdb$relation_name';
|
$field = 'rdb$relation_name';
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'oracle':
|
case 'oracle':
|
||||||
$sql = 'SELECT table_name FROM USER_TABLES';
|
$sql = 'SELECT table_name FROM USER_TABLES';
|
||||||
$field = 'table_name';
|
$field = 'table_name';
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
$result = $db->sql_query($sql);
|
$result = $db->sql_query($sql);
|
||||||
|
|
||||||
|
@ -1563,8 +1560,7 @@ class install_install extends module
|
||||||
|
|
||||||
do
|
do
|
||||||
{
|
{
|
||||||
// All phpBB installations will at least have config else it won't
|
// All phpBB installations will at least have config else it won't work
|
||||||
// work
|
|
||||||
if (in_array(strtolower($row[$field]), $table_ary))
|
if (in_array(strtolower($row[$field]), $table_ary))
|
||||||
{
|
{
|
||||||
$error[] = $lang['INST_ERR_PREFIX'];
|
$error[] = $lang['INST_ERR_PREFIX'];
|
||||||
|
@ -1612,7 +1608,7 @@ class install_install extends module
|
||||||
{
|
{
|
||||||
$path = $phpbb_root_path . 'language/' . $file;
|
$path = $phpbb_root_path . 'language/' . $file;
|
||||||
|
|
||||||
if (is_file($path) || is_link($path) || $file == '.' || $file == '..')
|
if (is_file($path) || is_link($path) || $file == '.' || $file == '..' || $file == 'CVS')
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,13 +14,13 @@
|
||||||
if (!empty($setmodules))
|
if (!empty($setmodules))
|
||||||
{
|
{
|
||||||
$module[] = array(
|
$module[] = array(
|
||||||
'module_type' => 'install',
|
'module_type' => 'install',
|
||||||
'module_title' => 'OVERVIEW',
|
'module_title' => 'OVERVIEW',
|
||||||
'module_filename' => substr(basename(__FILE__), 0, -strlen($phpEx)-1),
|
'module_filename' => substr(basename(__FILE__), 0, -strlen($phpEx)-1),
|
||||||
'module_order' => 0,
|
'module_order' => 0,
|
||||||
'module_subs' => array('INTRO', 'LICENSE', 'SUPPORT'),
|
'module_subs' => array('INTRO', 'LICENSE', 'SUPPORT'),
|
||||||
'module_stages' => '',
|
'module_stages' => '',
|
||||||
'module_reqs' => ''
|
'module_reqs' => ''
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -45,10 +45,12 @@ class install_main extends module
|
||||||
$title = $lang['SUB_INTRO'];
|
$title = $lang['SUB_INTRO'];
|
||||||
$body = $lang['OVERVIEW_BODY'];
|
$body = $lang['OVERVIEW_BODY'];
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'license' :
|
case 'license' :
|
||||||
$title = $lang['GPL'];
|
$title = $lang['GPL'];
|
||||||
$body = implode("<br/>\n", file('../docs/COPYING'));
|
$body = implode("<br/>\n", file('../docs/COPYING'));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'support' :
|
case 'support' :
|
||||||
$title = $lang['SUB_SUPPORT'];
|
$title = $lang['SUB_SUPPORT'];
|
||||||
$body = $lang['SUPPORT_BODY'];
|
$body = $lang['SUPPORT_BODY'];
|
||||||
|
@ -64,4 +66,5 @@ class install_main extends module
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
?>
|
?>
|
|
@ -204,16 +204,6 @@ BEGIN
|
||||||
END;;
|
END;;
|
||||||
|
|
||||||
|
|
||||||
# phpbb_cache
|
|
||||||
CREATE TABLE phpbb_cache (
|
|
||||||
var_name VARCHAR(252) NOT NULL,
|
|
||||||
var_expires INTEGER DEFAULT 0 NOT NULL,
|
|
||||||
var_data BLOB SUB_TYPE TEXT
|
|
||||||
);;
|
|
||||||
|
|
||||||
ALTER TABLE phpbb_cache ADD PRIMARY KEY (var_name);;
|
|
||||||
|
|
||||||
|
|
||||||
# phpbb_config
|
# phpbb_config
|
||||||
CREATE TABLE phpbb_config (
|
CREATE TABLE phpbb_config (
|
||||||
config_name VARCHAR(252) NOT NULL,
|
config_name VARCHAR(252) NOT NULL,
|
||||||
|
@ -565,6 +555,7 @@ ALTER TABLE phpbb_modules ADD PRIMARY KEY (module_id);;
|
||||||
|
|
||||||
CREATE INDEX phpbb_modules_module_enabled ON phpbb_modules(module_enabled);;
|
CREATE INDEX phpbb_modules_module_enabled ON phpbb_modules(module_enabled);;
|
||||||
CREATE INDEX phpbb_modules_left_right_id ON phpbb_modules(left_id, right_id);;
|
CREATE INDEX phpbb_modules_left_right_id ON phpbb_modules(left_id, right_id);;
|
||||||
|
CREATE INDEX phpbb_modules_class_left_id ON phpbb_modules(module_class, left_id);;
|
||||||
|
|
||||||
CREATE GENERATOR phpbb_modules_gen;;
|
CREATE GENERATOR phpbb_modules_gen;;
|
||||||
SET GENERATOR phpbb_modules_gen TO 0;;
|
SET GENERATOR phpbb_modules_gen TO 0;;
|
||||||
|
|
|
@ -329,29 +329,6 @@ CREATE INDEX [bot_active] ON [phpbb_bots]([bot_active]) ON [PRIMARY]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
Table: phpbb_cache
|
|
||||||
*/
|
|
||||||
CREATE TABLE [phpbb_cache] (
|
|
||||||
[var_name] [varchar] (255) NOT NULL ,
|
|
||||||
[var_expires] [int] NOT NULL ,
|
|
||||||
[var_data] [text]
|
|
||||||
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
|
|
||||||
GO
|
|
||||||
|
|
||||||
ALTER TABLE [phpbb_cache] WITH NOCHECK ADD
|
|
||||||
CONSTRAINT [PK_phpbb_cache] PRIMARY KEY CLUSTERED
|
|
||||||
(
|
|
||||||
[var_name]
|
|
||||||
) ON [PRIMARY]
|
|
||||||
GO
|
|
||||||
|
|
||||||
ALTER TABLE [phpbb_cache] WITH NOCHECK ADD
|
|
||||||
CONSTRAINT [DF_phpbb_cache__var_expires] DEFAULT (0) FOR [var_expires],
|
|
||||||
CONSTRAINT [DF_phpbb_cache__var_name] DEFAULT ('') FOR [var_name]
|
|
||||||
GO
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Table: phpbb_config
|
Table: phpbb_config
|
||||||
*/
|
*/
|
||||||
|
@ -895,6 +872,9 @@ GO
|
||||||
CREATE INDEX [module_left_right_id] ON [phpbb_modules]([left_id], [right_id]) ON [PRIMARY]
|
CREATE INDEX [module_left_right_id] ON [phpbb_modules]([left_id], [right_id]) ON [PRIMARY]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
|
CREATE INDEX [module_class_left_id] ON [phpbb_modules]([module_class], [left_id]) ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Table: phpbb_poll_options
|
Table: phpbb_poll_options
|
||||||
|
|
|
@ -132,14 +132,6 @@ CREATE TABLE phpbb_bots (
|
||||||
KEY bot_active (bot_active)
|
KEY bot_active (bot_active)
|
||||||
);
|
);
|
||||||
|
|
||||||
# Table: 'phpbb_cache'
|
|
||||||
CREATE TABLE phpbb_cache (
|
|
||||||
var_name varchar(255) DEFAULT '' NOT NULL,
|
|
||||||
var_expires int(10) UNSIGNED DEFAULT '0' NOT NULL,
|
|
||||||
var_data mediumtext,
|
|
||||||
PRIMARY KEY (var_name)
|
|
||||||
);
|
|
||||||
|
|
||||||
# Table: 'phpbb_config'
|
# Table: 'phpbb_config'
|
||||||
CREATE TABLE phpbb_config (
|
CREATE TABLE phpbb_config (
|
||||||
config_name varchar(255) NOT NULL,
|
config_name varchar(255) NOT NULL,
|
||||||
|
@ -362,7 +354,8 @@ CREATE TABLE phpbb_modules (
|
||||||
module_auth varchar(255) DEFAULT '' NOT NULL,
|
module_auth varchar(255) DEFAULT '' NOT NULL,
|
||||||
PRIMARY KEY (module_id),
|
PRIMARY KEY (module_id),
|
||||||
KEY left_right_id (left_id, right_id),
|
KEY left_right_id (left_id, right_id),
|
||||||
KEY module_enabled (module_enabled)
|
KEY module_enabled (module_enabled),
|
||||||
|
KEY class_left_id (module_class, left_id)
|
||||||
);
|
);
|
||||||
|
|
||||||
# Table: 'phpbb_poll_options'
|
# Table: 'phpbb_poll_options'
|
||||||
|
|
|
@ -307,18 +307,6 @@ CREATE INDEX phpbb_bots_bot_active on phpbb_bots (bot_active)
|
||||||
/
|
/
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
Table: phpbb_cache
|
|
||||||
*/
|
|
||||||
CREATE TABLE phpbb_cache (
|
|
||||||
var_name varchar2(255) DEFAULT '',
|
|
||||||
var_expires number(10) DEFAULT '0' NOT NULL,
|
|
||||||
var_data clob,
|
|
||||||
CONSTRAINT pk_phpbb_cache PRIMARY KEY (var_name)
|
|
||||||
)
|
|
||||||
/
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Table: phpbb_config
|
Table: phpbb_config
|
||||||
*/
|
*/
|
||||||
|
@ -781,6 +769,8 @@ CREATE INDEX phpbb_modules_module_enabled on phpbb_modules (module_enabled)
|
||||||
/
|
/
|
||||||
CREATE INDEX phpbb_modules_left_right_id on phpbb_modules (left_id, right_id)
|
CREATE INDEX phpbb_modules_left_right_id on phpbb_modules (left_id, right_id)
|
||||||
/
|
/
|
||||||
|
CREATE INDEX phpbb_modules_class_left_id on phpbb_modules (module_class, left_id)
|
||||||
|
/
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
|
@ -254,18 +254,6 @@ CREATE TABLE phpbb_bots (
|
||||||
CREATE INDEX phpbb_bots_bot_active ON phpbb_bots (bot_active);
|
CREATE INDEX phpbb_bots_bot_active ON phpbb_bots (bot_active);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* Table: phpbb_cache */
|
|
||||||
CREATE TABLE phpbb_cache (
|
|
||||||
var_name varchar(255) DEFAULT '' NOT NULL,
|
|
||||||
var_expires INT4 DEFAULT '0' NOT NULL,
|
|
||||||
var_data TEXT,
|
|
||||||
PRIMARY KEY (var_name),
|
|
||||||
CHECK (var_expires>=0)
|
|
||||||
);
|
|
||||||
|
|
||||||
|
|
||||||
/* Table: phpbb_config */
|
/* Table: phpbb_config */
|
||||||
CREATE TABLE phpbb_config (
|
CREATE TABLE phpbb_config (
|
||||||
config_name varchar(255) NOT NULL,
|
config_name varchar(255) NOT NULL,
|
||||||
|
@ -590,7 +578,7 @@ CREATE TABLE phpbb_modules (
|
||||||
|
|
||||||
CREATE INDEX phpbb_modules_module_enabled ON phpbb_modules (module_enabled);
|
CREATE INDEX phpbb_modules_module_enabled ON phpbb_modules (module_enabled);
|
||||||
CREATE INDEX phpbb_modules_left_right_id ON phpbb_modules (left_id, right_id);
|
CREATE INDEX phpbb_modules_left_right_id ON phpbb_modules (left_id, right_id);
|
||||||
|
CREATE INDEX phpbb_modules_class_left_id ON phpbb_modules (module_class, left_id);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -146,15 +146,6 @@ CREATE TABLE phpbb_bots (
|
||||||
CREATE INDEX phpbb_bots_bot_active on phpbb_bots (bot_active);
|
CREATE INDEX phpbb_bots_bot_active on phpbb_bots (bot_active);
|
||||||
|
|
||||||
|
|
||||||
# Table: phpbb_cache
|
|
||||||
CREATE TABLE phpbb_cache (
|
|
||||||
var_name varchar(255) NOT NULL DEFAULT '',
|
|
||||||
var_expires int(10) NOT NULL DEFAULT '0',
|
|
||||||
var_data mediumtext(16777215),
|
|
||||||
PRIMARY KEY (var_name)
|
|
||||||
);
|
|
||||||
|
|
||||||
|
|
||||||
# Table: phpbb_config
|
# Table: phpbb_config
|
||||||
CREATE TABLE phpbb_config (
|
CREATE TABLE phpbb_config (
|
||||||
config_name varchar(255) NOT NULL,
|
config_name varchar(255) NOT NULL,
|
||||||
|
@ -392,6 +383,7 @@ CREATE TABLE phpbb_modules (
|
||||||
|
|
||||||
CREATE INDEX phpbb_modules_module_enabled on phpbb_modules (module_enabled);
|
CREATE INDEX phpbb_modules_module_enabled on phpbb_modules (module_enabled);
|
||||||
CREATE INDEX phpbb_modules_left_right_id on phpbb_modules (left_id, right_id);
|
CREATE INDEX phpbb_modules_left_right_id on phpbb_modules (left_id, right_id);
|
||||||
|
CREATE INDEX phpbb_modules_class_left_id on phpbb_modules (module_class, left_id);
|
||||||
|
|
||||||
|
|
||||||
# Table: phpbb_poll_options
|
# Table: phpbb_poll_options
|
||||||
|
|
|
@ -139,9 +139,9 @@ $lang = array_merge($lang, array(
|
||||||
'MAX_POST_FONT_SIZE' => 'Max font size per post',
|
'MAX_POST_FONT_SIZE' => 'Max font size per post',
|
||||||
'MAX_POST_FONT_SIZE_EXPLAIN' => 'Set to 0 for unlimited font size.',
|
'MAX_POST_FONT_SIZE_EXPLAIN' => 'Set to 0 for unlimited font size.',
|
||||||
'MAX_POST_IMG_HEIGHT' => 'Max image height per post',
|
'MAX_POST_IMG_HEIGHT' => 'Max image height per post',
|
||||||
'MAX_POST_IMG_HEIGHT_EXPLAIN' => 'Set to 0 for unlimited image height.',
|
'MAX_POST_IMG_HEIGHT_EXPLAIN' => 'Maximum height of an image/flash file in postings. Set to 0 for unlimited size.',
|
||||||
'MAX_POST_IMG_WIDTH' => 'Max image width per post',
|
'MAX_POST_IMG_WIDTH' => 'Max image width per post',
|
||||||
'MAX_POST_IMG_WIDTH_EXPLAIN' => 'Set to 0 for unlimited image width.',
|
'MAX_POST_IMG_WIDTH_EXPLAIN' => 'Maximum width of an image/flash file in postings. Set to 0 for unlimited size.',
|
||||||
'MAX_POST_URLS' => 'Max links per post',
|
'MAX_POST_URLS' => 'Max links per post',
|
||||||
'MAX_POST_URLS_EXPLAIN' => 'Set to 0 for unlimited links.',
|
'MAX_POST_URLS_EXPLAIN' => 'Set to 0 for unlimited links.',
|
||||||
'POSTING' => 'Posting',
|
'POSTING' => 'Posting',
|
||||||
|
@ -160,9 +160,9 @@ $lang = array_merge($lang, array(
|
||||||
'MAX_SIG_FONT_SIZE' => 'Maximum signature font size',
|
'MAX_SIG_FONT_SIZE' => 'Maximum signature font size',
|
||||||
'MAX_SIG_FONT_SIZE_EXPLAIN' => 'Maximum font size allowed in user signatures. Set to 0 for unlimited size.',
|
'MAX_SIG_FONT_SIZE_EXPLAIN' => 'Maximum font size allowed in user signatures. Set to 0 for unlimited size.',
|
||||||
'MAX_SIG_IMG_HEIGHT' => 'Maximum signature image height',
|
'MAX_SIG_IMG_HEIGHT' => 'Maximum signature image height',
|
||||||
'MAX_SIG_IMG_HEIGHT_EXPLAIN' => 'Maximum height of an image in user signatures. Set to 0 for unlimited size.',
|
'MAX_SIG_IMG_HEIGHT_EXPLAIN' => 'Maximum height of an image/flash file in user signatures. Set to 0 for unlimited size.',
|
||||||
'MAX_SIG_IMG_WIDTH' => 'Maximum signature image width',
|
'MAX_SIG_IMG_WIDTH' => 'Maximum signature image width',
|
||||||
'MAX_SIG_IMG_WIDTH_EXPLAIN' => 'Maximum width of an image in user signatures. Set to 0 for unlimited size.',
|
'MAX_SIG_IMG_WIDTH_EXPLAIN' => 'Maximum width of an image/flash file in user signatures. Set to 0 for unlimited size.',
|
||||||
'MAX_SIG_LENGTH' => 'Maximum signature length',
|
'MAX_SIG_LENGTH' => 'Maximum signature length',
|
||||||
'MAX_SIG_LENGTH_EXPLAIN' => 'Maximum number of characters in user signatures.',
|
'MAX_SIG_LENGTH_EXPLAIN' => 'Maximum number of characters in user signatures.',
|
||||||
'MAX_SIG_SMILIES' => 'Maximum smilies per signature',
|
'MAX_SIG_SMILIES' => 'Maximum smilies per signature',
|
||||||
|
@ -395,6 +395,8 @@ $lang = array_merge($lang, array(
|
||||||
$lang = array_merge($lang, array(
|
$lang = array_merge($lang, array(
|
||||||
'ACP_JABBER_SETTINGS_EXPLAIN' => 'Here you can enable and control the use Jabber for instant messaging and board notices. Jabber is an opensource protocol and therefore available for use by anyone. Some Jabber servers include gateways or transports which allow you to contact users on other networks. Not all servers offer all transports and changes in protocols can prevent transports from operating. Note that it may take several seconds to update Jabber account details, do not stop the script till completed!',
|
'ACP_JABBER_SETTINGS_EXPLAIN' => 'Here you can enable and control the use Jabber for instant messaging and board notices. Jabber is an opensource protocol and therefore available for use by anyone. Some Jabber servers include gateways or transports which allow you to contact users on other networks. Not all servers offer all transports and changes in protocols can prevent transports from operating. Note that it may take several seconds to update Jabber account details, do not stop the script till completed!',
|
||||||
|
|
||||||
|
'ERR_JAB_AUTH' => 'Could not authorise on Jabber server',
|
||||||
|
'ERR_JAB_CONNECT' => 'Could not connect to Jabber server',
|
||||||
'ERR_JAB_PASSCHG' => 'Could not change password',
|
'ERR_JAB_PASSCHG' => 'Could not change password',
|
||||||
'ERR_JAB_PASSFAIL' => 'Password update failed, %s',
|
'ERR_JAB_PASSFAIL' => 'Password update failed, %s',
|
||||||
'ERR_JAB_REGISTER' => 'An error occured trying to register this account, %s',
|
'ERR_JAB_REGISTER' => 'An error occured trying to register this account, %s',
|
||||||
|
|
|
@ -244,6 +244,7 @@ $lang = array_merge($lang, array(
|
||||||
'PROCEED_TO_ACP' => 'Click %sHere%s to proceed to the ACP',
|
'PROCEED_TO_ACP' => 'Click %sHere%s to proceed to the ACP',
|
||||||
'REMIND' => 'Remind',
|
'REMIND' => 'Remind',
|
||||||
'REORDER' => 'Reorder',
|
'REORDER' => 'Reorder',
|
||||||
|
'RESYNC' => 'Sync',
|
||||||
'RETURN_TO' => 'Return to ...',
|
'RETURN_TO' => 'Return to ...',
|
||||||
|
|
||||||
'SELECT_ANONYMOUS' => 'Select Anonymous User',
|
'SELECT_ANONYMOUS' => 'Select Anonymous User',
|
||||||
|
|
|
@ -117,7 +117,6 @@ $lang = array_merge($lang, array(
|
||||||
'PRUNE_OLD_POLLS_EXPLAIN' => 'Removes topics with polls not voted in for post age days.',
|
'PRUNE_OLD_POLLS_EXPLAIN' => 'Removes topics with polls not voted in for post age days.',
|
||||||
|
|
||||||
'REDIRECT_ACL' => 'Now you are able to %sset permissions%s for this forum.',
|
'REDIRECT_ACL' => 'Now you are able to %sset permissions%s for this forum.',
|
||||||
'RESYNC' => 'Sync',
|
|
||||||
|
|
||||||
'TYPE_CAT' => 'Category',
|
'TYPE_CAT' => 'Category',
|
||||||
'TYPE_FORUM' => 'Forum',
|
'TYPE_FORUM' => 'Forum',
|
||||||
|
|
|
@ -57,6 +57,7 @@ $lang = array_merge($lang, array(
|
||||||
'MOVE_POSTS_EXPLAIN' => 'Please select the forum to which you wish to move all the posts this user has made.',
|
'MOVE_POSTS_EXPLAIN' => 'Please select the forum to which you wish to move all the posts this user has made.',
|
||||||
|
|
||||||
'NO_SPECIAL_RANK' => 'No special rank assigned',
|
'NO_SPECIAL_RANK' => 'No special rank assigned',
|
||||||
|
'NOT_MANAGE_FOUNDER' => 'You tried to manage a user with founder status. Only founders are allowed to manage other founders.',
|
||||||
|
|
||||||
'QUICK_TOOLS' => 'Quick tools',
|
'QUICK_TOOLS' => 'Quick tools',
|
||||||
|
|
||||||
|
|
|
@ -207,6 +207,7 @@ $lang = array_merge($lang, array(
|
||||||
'NO_POST' => 'You have to select a post in order to warn the user for a post',
|
'NO_POST' => 'You have to select a post in order to warn the user for a post',
|
||||||
'NO_POST_REPORT' => 'This post was not reported.',
|
'NO_POST_REPORT' => 'This post was not reported.',
|
||||||
'NO_POST_SELECTED' => 'You must select at least one post to perform this action',
|
'NO_POST_SELECTED' => 'You must select at least one post to perform this action',
|
||||||
|
'NO_REASON_DISAPPROVAL' => 'Please give an appropiate reason for disapproval',
|
||||||
'NO_TOPIC_SELECTED' => 'You must select at least one topic to perform this action',
|
'NO_TOPIC_SELECTED' => 'You must select at least one topic to perform this action',
|
||||||
|
|
||||||
'OTHER_IPS' => 'Other IP addresses this user has posted from',
|
'OTHER_IPS' => 'Other IP addresses this user has posted from',
|
||||||
|
|
|
@ -180,6 +180,7 @@ $lang = array_merge($lang, array(
|
||||||
'TOO_MANY_USER_OPTIONS' => 'You cannot specify more Options per User than existing poll options',
|
'TOO_MANY_USER_OPTIONS' => 'You cannot specify more Options per User than existing poll options',
|
||||||
'TOPIC_BUMPED' => 'Topic has been bumped successfully',
|
'TOPIC_BUMPED' => 'Topic has been bumped successfully',
|
||||||
|
|
||||||
|
'UNABLE_GET_IMAGE_SIZE' => 'Accessing the image was impossible or file isn\'t a valid picture.',
|
||||||
'UNAUTHORISED_BBCODE' => 'You cannot use certain bbcodes: ',
|
'UNAUTHORISED_BBCODE' => 'You cannot use certain bbcodes: ',
|
||||||
'UNGLOBALISE_EXPLAIN' => 'To switch this topic back from being global to a normal topic, you need to select the forum you whish this topic to be displayed',
|
'UNGLOBALISE_EXPLAIN' => 'To switch this topic back from being global to a normal topic, you need to select the forum you whish this topic to be displayed',
|
||||||
'UPDATE_COMMENT' => 'Update comment',
|
'UPDATE_COMMENT' => 'Update comment',
|
||||||
|
|
|
@ -379,7 +379,7 @@ if ($mode != 'post' && $config['allow_topic_notify'] && $user->data['is_register
|
||||||
}
|
}
|
||||||
|
|
||||||
// Do we want to edit our post ?
|
// Do we want to edit our post ?
|
||||||
if ($mode == 'edit')
|
if ($mode == 'edit' && $post_data['bbcode_uid'])
|
||||||
{
|
{
|
||||||
$message_parser->bbcode_uid = $post_data['bbcode_uid'];
|
$message_parser->bbcode_uid = $post_data['bbcode_uid'];
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,31 +1,35 @@
|
||||||
<!-- INCLUDE overall_header.html -->
|
<!-- INCLUDE overall_header.html -->
|
||||||
|
|
||||||
<div id="pagecontent">
|
<div id="pagecontent">
|
||||||
|
|
||||||
<form name="confirm" action="{S_CONFIRM_ACTION}" method="post"><table class="tablebg" width="100%" cellspacing="1">
|
<form name="confirm" action="{S_CONFIRM_ACTION}" method="post">
|
||||||
<tr>
|
|
||||||
<th>{MESSAGE_TITLE}</th>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="row1" align="center"><br /><p class="gen">{MESSAGE_TEXT}</p><br />{S_HIDDEN_FIELDS}<input type="submit" name="confirm" value="{YES_VALUE}" class="btnmain" /> <input type="submit" name="cancel" value="{L_NO}" class="btnlite" /></td>
|
|
||||||
</tr>
|
|
||||||
</table></form>
|
|
||||||
|
|
||||||
</div>
|
<table class="tablebg" width="100%" cellspacing="1">
|
||||||
|
<tr>
|
||||||
<br clear="all" />
|
<th>{MESSAGE_TITLE}</th>
|
||||||
|
</tr>
|
||||||
<table class="tablebg" width="100%" cellspacing="1" cellpadding="0">
|
<tr>
|
||||||
<tr>
|
<td class="row1" align="center"><br /><p class="gen">{MESSAGE_TEXT}</p><br />{S_HIDDEN_FIELDS}<input type="submit" name="confirm" value="{YES_VALUE}" class="btnmain" /> <input type="submit" name="cancel" value="{L_NO}" class="btnlite" /></td>
|
||||||
<td class="row1">
|
</tr>
|
||||||
<p class="breadcrumbs"><a href="{U_INDEX}">{L_INDEX}</a><!-- BEGIN navlinks --> » <a href="{navlinks.U_VIEW_FORUM}">{navlinks.FORUM_NAME}</a><!-- END navlinks --></p>
|
|
||||||
<p class="datetime">{S_TIMEZONE}</p>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
|
</form>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
<br clear="all" />
|
<br clear="all" />
|
||||||
|
|
||||||
<div align="right"><!-- INCLUDE jumpbox.html --></div>
|
<table class="tablebg" width="100%" cellspacing="1" cellpadding="0">
|
||||||
|
<tr>
|
||||||
|
<td class="row1">
|
||||||
|
<p class="breadcrumbs"><a href="{U_INDEX}">{L_INDEX}</a><!-- BEGIN navlinks --> » <a href="{navlinks.U_VIEW_FORUM}">{navlinks.FORUM_NAME}</a><!-- END navlinks --></p>
|
||||||
|
<p class="datetime">{S_TIMEZONE}</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<br clear="all" />
|
||||||
|
|
||||||
|
<div align="right"><!-- INCLUDE jumpbox.html --></div>
|
||||||
|
|
||||||
<!-- INCLUDE overall_footer.html -->
|
<!-- INCLUDE overall_footer.html -->
|
|
@ -1,6 +1,7 @@
|
||||||
<!-- INCLUDE overall_header.html -->
|
<!-- INCLUDE overall_header.html -->
|
||||||
|
|
||||||
<a name="faqtop"></a>
|
<a name="faqtop"></a>
|
||||||
|
|
||||||
<div id="pagecontent">
|
<div id="pagecontent">
|
||||||
|
|
||||||
<table class="tablebg" width="100%" cellspacing="1">
|
<table class="tablebg" width="100%" cellspacing="1">
|
||||||
|
@ -53,17 +54,17 @@
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<table class="tablebg" width="100%" cellspacing="1" cellpadding="0">
|
<table class="tablebg" width="100%" cellspacing="1" cellpadding="0">
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1">
|
<td class="row1">
|
||||||
<p class="breadcrumbs"><a href="{U_INDEX}">{L_INDEX}</a><!-- BEGIN navlinks --> » <a href="{navlinks.U_VIEW_FORUM}">{navlinks.FORUM_NAME}</a><!-- END navlinks --></p>
|
<p class="breadcrumbs"><a href="{U_INDEX}">{L_INDEX}</a><!-- BEGIN navlinks --> » <a href="{navlinks.U_VIEW_FORUM}">{navlinks.FORUM_NAME}</a><!-- END navlinks --></p>
|
||||||
<p class="datetime">{S_TIMEZONE}</p>
|
<p class="datetime">{S_TIMEZONE}</p>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<br clear="all" />
|
<br clear="all" />
|
||||||
|
|
||||||
<div align="right"><!-- INCLUDE jumpbox.html --></div>
|
<div align="right"><!-- INCLUDE jumpbox.html --></div>
|
||||||
|
|
||||||
<!-- INCLUDE overall_footer.html -->
|
<!-- INCLUDE overall_footer.html -->
|
|
@ -1,19 +1,19 @@
|
||||||
|
|
||||||
<!-- IF S_DISPLAY_JUMPBOX -->
|
<!-- IF S_DISPLAY_JUMPBOX -->
|
||||||
<form method="post" name="jumpbox" action="{S_JUMPBOX_ACTION}" onsubmit="if(document.jumpbox.f.value == -1){return false;}">
|
<form method="post" name="jumpbox" action="{S_JUMPBOX_ACTION}" onsubmit="if(document.jumpbox.f.value == -1){return false;}">
|
||||||
|
|
||||||
<table cellspacing="0" cellpadding="0" border="0">
|
<table cellspacing="0" cellpadding="0" border="0">
|
||||||
<tr>
|
<tr>
|
||||||
<td nowrap="nowrap"><span class="gensmall">{L_JUMP_TO}:</span> <select name="f" onchange="if(this.options[this.selectedIndex].value != -1){ forms['jumpbox'].submit() }">
|
<td nowrap="nowrap"><span class="gensmall">{L_JUMP_TO}:</span> <select name="f" onchange="if(this.options[this.selectedIndex].value != -1){ forms['jumpbox'].submit() }">
|
||||||
|
|
||||||
<!-- BEGIN jumpbox_forums -->
|
<!-- BEGIN jumpbox_forums -->
|
||||||
<!-- IF jumpbox_forums.S_FORUM_COUNT eq 2 --><option value="-1">------------------</option><!-- ENDIF -->
|
<!-- IF jumpbox_forums.S_FORUM_COUNT eq 2 --><option value="-1">------------------</option><!-- ENDIF -->
|
||||||
<option value="{jumpbox_forums.FORUM_ID}"{jumpbox_forums.SELECTED}><!-- BEGIN level --> <!-- END level -->{jumpbox_forums.FORUM_NAME}</option>
|
<option value="{jumpbox_forums.FORUM_ID}"{jumpbox_forums.SELECTED}><!-- BEGIN level --> <!-- END level -->{jumpbox_forums.FORUM_NAME}</option>
|
||||||
<!-- END jumpbox_forums -->
|
<!-- END jumpbox_forums -->
|
||||||
|
|
||||||
</select> <input class="btnlite" type="submit" value="{L_GO}" /></td>
|
</select> <input class="btnlite" type="submit" value="{L_GO}" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
</form>
|
</form>
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
|
@ -3,46 +3,48 @@
|
||||||
<form action="{S_LOGIN_ACTION}" method="post">
|
<form action="{S_LOGIN_ACTION}" method="post">
|
||||||
|
|
||||||
<table class="tablebg" width="100%" cellspacing="1">
|
<table class="tablebg" width="100%" cellspacing="1">
|
||||||
<tr>
|
<tr>
|
||||||
<th colspan="2">{L_LOGIN}</th>
|
<th colspan="2">{L_LOGIN}</th>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- IF LOGIN_EXPLAIN -->
|
<!-- IF LOGIN_EXPLAIN -->
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row3" colspan="2" align="center"><span class="gensmall">{LOGIN_EXPLAIN}</td>
|
<td class="row3" colspan="2" align="center"><span class="gensmall">{LOGIN_EXPLAIN}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1" width="50%">
|
<td class="row1" width="50%">
|
||||||
<p class="genmed">{L_LOGIN_INFO}</p>
|
<p class="genmed">{L_LOGIN_INFO}</p>
|
||||||
|
|
||||||
<p class="genmed" align="center">
|
<p class="genmed" align="center">
|
||||||
<a href="{U_TERMS_USE}">{L_TERMS_USE}</a> | <a href="{U_PRIVACY}">{L_PRIVACY}</a>
|
<a href="{U_TERMS_USE}">{L_TERMS_USE}</a> | <a href="{U_PRIVACY}">{L_PRIVACY}</a>
|
||||||
</p>
|
</p>
|
||||||
</td>
|
</td>
|
||||||
<td class="row2"><table cellspacing="1" cellpadding="4">
|
<td class="row2">
|
||||||
<!-- IF LOGIN_ERROR -->
|
|
||||||
|
<table cellspacing="1" cellpadding="4">
|
||||||
|
<!-- IF LOGIN_ERROR -->
|
||||||
<tr>
|
<tr>
|
||||||
<td class="gensmall" colspan="2" align="center"><span class="error">{LOGIN_ERROR}</span></td>
|
<td class="gensmall" colspan="2" align="center"><span class="error">{LOGIN_ERROR}</span></td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
|
|
||||||
<tr>
|
<tr>
|
||||||
<td valign="top"><b class="gensmall">{L_USERNAME}:</b></td>
|
<td valign="top"><b class="gensmall">{L_USERNAME}:</b></td>
|
||||||
<td><input class="post" type="text" name="username" size="25" maxlength="40" value="{USERNAME}" tabindex="1" />
|
<td><input class="post" type="text" name="username" size="25" maxlength="40" value="{USERNAME}" tabindex="1" />
|
||||||
<!-- IF not S_ADMIN_AUTH -->
|
<!-- IF not S_ADMIN_AUTH -->
|
||||||
<br /><a class="gensmall" href="{U_REGISTER}">{L_REGISTER}</a>
|
<br /><a class="gensmall" href="{U_REGISTER}">{L_REGISTER}</a>
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td valign="top"><b class="gensmall">{L_PASSWORD}:</b></td>
|
<td valign="top"><b class="gensmall">{L_PASSWORD}:</b></td>
|
||||||
<td>
|
<td>
|
||||||
<input class="post" type="password" name="password" size="25" maxlength="100" tabindex="2" />
|
<input class="post" type="password" name="password" size="25" maxlength="100" tabindex="2" />
|
||||||
<!-- IF U_SEND_PASSWORD --><br /><a class="gensmall" href="{U_SEND_PASSWORD}">{L_FORGOT_PASS}</a><!-- ENDIF -->
|
<!-- IF U_SEND_PASSWORD --><br /><a class="gensmall" href="{U_SEND_PASSWORD}">{L_FORGOT_PASS}</a><!-- ENDIF -->
|
||||||
<!-- IF U_RESEND_ACTIVATION and not S_ADMIN_AUTH --><br /><a class="gensmall" href="{U_RESEND_ACTIVATION}">{L_RESEND_ACTIVATION}</a><!-- ENDIF -->
|
<!-- IF U_RESEND_ACTIVATION and not S_ADMIN_AUTH --><br /><a class="gensmall" href="{U_RESEND_ACTIVATION}">{L_RESEND_ACTIVATION}</a><!-- ENDIF -->
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- IF S_DISPLAY_FULL_LOGIN -->
|
<!-- IF S_DISPLAY_FULL_LOGIN -->
|
||||||
<tr>
|
<tr>
|
||||||
<td> </td>
|
<td> </td>
|
||||||
<td><input type="checkbox" class="radio" name="autologin" tabindex="3" /> <span class="gensmall">{L_LOG_ME_IN}</span></td>
|
<td><input type="checkbox" class="radio" name="autologin" tabindex="3" /> <span class="gensmall">{L_LOG_ME_IN}</span></td>
|
||||||
|
@ -51,10 +53,11 @@
|
||||||
<td> </td>
|
<td> </td>
|
||||||
<td><input type="checkbox" class="radio" name="viewonline" tabindex="4" /> <span class="gensmall">{L_HIDE_ME}</span></td>
|
<td><input type="checkbox" class="radio" name="viewonline" tabindex="4" /> <span class="gensmall">{L_HIDE_ME}</span></td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
</table></td>
|
</table>
|
||||||
</tr>
|
</td>
|
||||||
<!-- IF S_CONFIRM_CODE -->
|
</tr>
|
||||||
|
<!-- IF S_CONFIRM_CODE -->
|
||||||
<tr>
|
<tr>
|
||||||
<th colspan="2" height="28" valign="middle">{L_LOGIN_CONFIRMATION}</th>
|
<th colspan="2" height="28" valign="middle">{L_LOGIN_CONFIRMATION}</th>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -71,26 +74,27 @@
|
||||||
<td class="row1"><b class="genmed">{L_CONFIRM_CODE}: </b><br /><span class="gensmall">{L_CONFIRM_CODE_EXPLAIN}</span></td>
|
<td class="row1"><b class="genmed">{L_CONFIRM_CODE}: </b><br /><span class="gensmall">{L_CONFIRM_CODE_EXPLAIN}</span></td>
|
||||||
<td class="row2"><input class="post" type="text" name="confirm_code" size="8" maxlength="8" /></td>
|
<td class="row2"><input class="post" type="text" name="confirm_code" size="8" maxlength="8" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
<tr>
|
<tr>
|
||||||
<td class="cat" colspan="2" align="center">{S_HIDDEN_FIELDS}<input type="submit" name="login" class="btnmain" value="{L_LOGIN}" tabindex="5" /></td>
|
<td class="cat" colspan="2" align="center">{S_HIDDEN_FIELDS}<input type="submit" name="login" class="btnmain" value="{L_LOGIN}" tabindex="5" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table></form>
|
</table>
|
||||||
|
|
||||||
|
</form>
|
||||||
|
|
||||||
<br clear="all" />
|
<br clear="all" />
|
||||||
|
|
||||||
<table class="tablebg" width="100%" cellspacing="1" cellpadding="0">
|
<table class="tablebg" width="100%" cellspacing="1" cellpadding="0">
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1">
|
<td class="row1">
|
||||||
<p class="breadcrumbs"><a href="{U_INDEX}">{L_INDEX}</a><!-- BEGIN navlinks --> » <a href="{navlinks.U_VIEW_FORUM}">{navlinks.FORUM_NAME}</a><!-- END navlinks --></p>
|
<p class="breadcrumbs"><a href="{U_INDEX}">{L_INDEX}</a><!-- BEGIN navlinks --> » <a href="{navlinks.U_VIEW_FORUM}">{navlinks.FORUM_NAME}</a><!-- END navlinks --></p>
|
||||||
<p class="datetime">{S_TIMEZONE}</p>
|
<p class="datetime">{S_TIMEZONE}</p>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<br clear="all" />
|
<br clear="all" />
|
||||||
|
|
||||||
<div align="right"><!-- INCLUDE jumpbox.html --></div>
|
|
||||||
|
|
||||||
|
<div align="right"><!-- INCLUDE jumpbox.html --></div>
|
||||||
|
|
||||||
<!-- INCLUDE overall_footer.html -->
|
<!-- INCLUDE overall_footer.html -->
|
|
@ -1,49 +1,54 @@
|
||||||
<!-- INCLUDE overall_header.html -->
|
<!-- INCLUDE overall_header.html -->
|
||||||
|
|
||||||
<div id="pagecontent">
|
<div id="pagecontent">
|
||||||
|
|
||||||
<form name="login" method="post" action="{S_LOGIN_ACTION}"><table class="tablebg" width="100%" cellspacing="1" align="center">
|
<form name="login" method="post" action="{S_LOGIN_ACTION}">
|
||||||
|
|
||||||
|
<table class="tablebg" width="100%" cellspacing="1" align="center">
|
||||||
|
<tr>
|
||||||
|
<th>{L_LOGIN}</th>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="row3" align="center"><span class="gensmall">{L_LOGIN_FORUM}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="row1" align="center">
|
||||||
|
|
||||||
|
<table cellspacing="1" cellpadding="4" border="0">
|
||||||
|
<!-- IF LOGIN_ERROR -->
|
||||||
|
<tr>
|
||||||
|
<td class="gensmall" colspan="2" align="center"><span class="error">{LOGIN_ERROR}</span></td>
|
||||||
|
</tr>
|
||||||
|
<!-- ENDIF -->
|
||||||
<tr>
|
<tr>
|
||||||
<th>{L_LOGIN}</th>
|
<td class="gensmall"><b>{L_PASSWORD}:</b></td>
|
||||||
|
<td><input class="post" type="password" name="password" size="25" maxlength="25" tabindex="2" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
</table>
|
||||||
<td class="row3" align="center"><span class="gensmall">{L_LOGIN_FORUM}</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1" align="center"><table cellspacing="1" cellpadding="4" border="0">
|
<td class="cat" colspan="2" align="center">{S_HIDDEN_FIELDS}<input type="submit" name="login" class="btnmain" value="{L_LOGIN}" tabindex="3" /></td>
|
||||||
|
</tr>
|
||||||
<!-- IF LOGIN_ERROR -->
|
|
||||||
<tr>
|
|
||||||
<td class="gensmall" colspan="2" align="center"><span class="error">{LOGIN_ERROR}</span></td>
|
|
||||||
</tr>
|
|
||||||
<!-- ENDIF -->
|
|
||||||
|
|
||||||
<tr>
|
|
||||||
<td class="gensmall"><b>{L_PASSWORD}:</b></td>
|
|
||||||
<td><input class="post" type="password" name="password" size="25" maxlength="25" tabindex="2" /></td>
|
|
||||||
</tr>
|
|
||||||
</table></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="cat" colspan="2" align="center">{S_HIDDEN_FIELDS}<input type="submit" name="login" class="btnmain" value="{L_LOGIN}" tabindex="3" /></td>
|
|
||||||
</tr>
|
|
||||||
</table></form>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<br clear="all" />
|
|
||||||
|
|
||||||
<table class="tablebg" width="100%" cellspacing="1" cellpadding="0">
|
|
||||||
<tr>
|
|
||||||
<td class="row1">
|
|
||||||
<p class="breadcrumbs"><a href="{U_INDEX}">{L_INDEX}</a><!-- BEGIN navlinks --> » <a href="{navlinks.U_VIEW_FORUM}">{navlinks.FORUM_NAME}</a><!-- END navlinks --></p>
|
|
||||||
<p class="datetime">{S_TIMEZONE}</p>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
|
</form>
|
||||||
|
|
||||||
<br clear="all" />
|
</div>
|
||||||
|
|
||||||
<div align="right"><!-- INCLUDE jumpbox.html --></div>
|
<br clear="all" />
|
||||||
|
|
||||||
|
<table class="tablebg" width="100%" cellspacing="1" cellpadding="0">
|
||||||
|
<tr>
|
||||||
|
<td class="row1">
|
||||||
|
<p class="breadcrumbs"><a href="{U_INDEX}">{L_INDEX}</a><!-- BEGIN navlinks --> » <a href="{navlinks.U_VIEW_FORUM}">{navlinks.FORUM_NAME}</a><!-- END navlinks --></p>
|
||||||
|
<p class="datetime">{S_TIMEZONE}</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<br clear="all" />
|
||||||
|
|
||||||
|
<div align="right"><!-- INCLUDE jumpbox.html --></div>
|
||||||
|
|
||||||
<!-- INCLUDE overall_footer.html -->
|
<!-- INCLUDE overall_footer.html -->
|
|
@ -1,109 +1,109 @@
|
||||||
<!-- INCLUDE mcp_header.html -->
|
<!-- INCLUDE mcp_header.html -->
|
||||||
|
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
<!--
|
<!--
|
||||||
|
|
||||||
var ban_length = new Array();
|
var ban_length = new Array();
|
||||||
ban_length[-1] = "";
|
ban_length[-1] = "";
|
||||||
<!-- BEGIN ban_length -->
|
<!-- BEGIN ban_length -->
|
||||||
ban_length['{ban_length.BAN_ID}'] = "{ban_length.A_LENGTH}";
|
ban_length['{ban_length.BAN_ID}'] = "{ban_length.A_LENGTH}";
|
||||||
<!-- END ban_length -->
|
<!-- END ban_length -->
|
||||||
|
|
||||||
var ban_reason = new Array();
|
var ban_reason = new Array();
|
||||||
ban_reason[-1] = "";
|
ban_reason[-1] = "";
|
||||||
<!-- BEGIN ban_reason -->
|
<!-- BEGIN ban_reason -->
|
||||||
ban_reason['{ban_reason.BAN_ID}'] = "{ban_reason.A_REASON}";
|
ban_reason['{ban_reason.BAN_ID}'] = "{ban_reason.A_REASON}";
|
||||||
<!-- END ban_reason -->
|
<!-- END ban_reason -->
|
||||||
|
|
||||||
var ban_give_reason = new Array();
|
var ban_give_reason = new Array();
|
||||||
ban_give_reason[-1] = "";
|
ban_give_reason[-1] = "";
|
||||||
<!-- BEGIN ban_give_reason -->
|
<!-- BEGIN ban_give_reason -->
|
||||||
ban_give_reason['{ban_give_reason.BAN_ID}'] = "{ban_give_reason.A_REASON}";
|
ban_give_reason['{ban_give_reason.BAN_ID}'] = "{ban_give_reason.A_REASON}";
|
||||||
<!-- END ban_give_reason -->
|
<!-- END ban_give_reason -->
|
||||||
|
|
||||||
function display_details(option)
|
function display_details(option)
|
||||||
{
|
{
|
||||||
document.getElementById('mcp_ban').unbangivereason.value = ban_give_reason[option];
|
document.getElementById('mcp_ban').unbangivereason.value = ban_give_reason[option];
|
||||||
document.getElementById('mcp_ban').unbanreason.value = ban_reason[option];
|
document.getElementById('mcp_ban').unbanreason.value = ban_reason[option];
|
||||||
document.getElementById('mcp_ban').unbanlength.value = ban_length[option];
|
document.getElementById('mcp_ban').unbanlength.value = ban_length[option];
|
||||||
}
|
}
|
||||||
|
|
||||||
//-->
|
//-->
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<form id="mcp_ban" method="post" action="{U_ACTION}">
|
<form id="mcp_ban" method="post" action="{U_ACTION}">
|
||||||
|
|
||||||
<table width="100%" class="tablebg" cellspacing="1" cellpadding="4" border="0">
|
<table width="100%" class="tablebg" cellspacing="1" cellpadding="4" border="0">
|
||||||
|
<tr>
|
||||||
|
<th colspan="2" height="28" nowrap="nowrap">{L_TITLE}</th>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="row3" colspan="2">{L_EXPLAIN}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="row1" width="45%" valign="top"><b>{L_BAN_CELL}:</b></td>
|
||||||
|
<td class="row2">
|
||||||
|
<textarea name="ban" id="ban" cols="40" rows="3" class="post"></textarea>
|
||||||
|
<!-- IF S_USERNAME_BAN --><br />[ <a href="#" onclick="window.open('{U_FIND_USER}', '_phpbbsearch', 'height=500, resizable=yes, scrollbars=yes, width=740'); return false;">{L_FIND_USERNAME}</a> ]<!-- ENDIF -->
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="row1" valign="top"><b>{L_BAN_LENGTH}:</b></td>
|
||||||
|
<td class="row2"><select name="banlength">{S_BAN_END_OPTIONS}</select><br /><input type="text" name="banlengthother" class="post" /> (YYYY-MM-DD)</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="row1" valign="top"><b>{L_BAN_EXCLUDE}:</b><br /><span class="gensmall">{L_BAN_EXCLUDE_EXPLAIN}</span></td>
|
||||||
|
<td class="row2"><input type="radio" class="radio" name="banexclude" value="1" /> {L_YES} <input type="radio" class="radio" name="banexclude" value="0" checked="checked" /> {L_NO}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="row1" valign="top"><b>{L_BAN_REASON}:</b></td>
|
||||||
|
<td class="row2"><input name="banreason" type="text" class="post" /></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="row1" valign="top"><b>{L_BAN_GIVE_REASON}:</b></td>
|
||||||
|
<td class="row2"><input name="bangivereason" type="text" class="post" /></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="cat" colspan="2" align="center"><input type="submit" name="bansubmit" value="{L_SUBMIT}" class="btnmain" /> <input type="reset" value="{L_RESET}" class="btnlite" /> </td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<br /><br />
|
||||||
|
|
||||||
|
<table width="100%" class="tablebg" cellspacing="1" cellpadding="4" border="0">
|
||||||
|
<tr>
|
||||||
|
<th colspan="2" height="28" nowrap="nowrap">{L_UNBAN_TITLE}</th>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="row3" colspan="2">{L_UNBAN_EXPLAIN}</td>
|
||||||
|
</tr>
|
||||||
|
<!-- IF S_BANNED_OPTIONS -->
|
||||||
<tr>
|
<tr>
|
||||||
<th colspan="2" height="28" nowrap="nowrap">{L_TITLE}</th>
|
<td class="row1" valign="top" width="45%"><b>{L_BAN_CELL}:</b></td>
|
||||||
</tr>
|
<td class="row2"><select name="unban[]" multiple="multiple" size="10" style="width: 50%" onchange="if (this.selectedIndex > -1) display_details(this.options[this.selectedIndex].value); else display_details(-1);">{BANNED_OPTIONS}</select></td>
|
||||||
<tr>
|
|
||||||
<td class="row3" colspan="2">{L_EXPLAIN}</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="row1" width="45%" valign="top"><b>{L_BAN_CELL}:</b></td>
|
|
||||||
<td class="row2">
|
|
||||||
<textarea name="ban" id="ban" cols="40" rows="3" class="post"></textarea>
|
|
||||||
<!-- IF S_USERNAME_BAN --><br />[ <a href="#" onclick="window.open('{U_FIND_USER}', '_phpbbsearch', 'height=500, resizable=yes, scrollbars=yes, width=740'); return false;">{L_FIND_USERNAME}</a> ]<!-- ENDIF -->
|
|
||||||
</td>
|
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1" valign="top"><b>{L_BAN_LENGTH}:</b></td>
|
<td class="row1" valign="top"><b>{L_BAN_LENGTH}:</b></td>
|
||||||
<td class="row2"><select name="banlength">{S_BAN_END_OPTIONS}</select><br /><input type="text" name="banlengthother" class="post" /> (YYYY-MM-DD)</td>
|
<td class="row2"><input style="border: 0px; width: 100%" type="text" name="unbanlength" disabled="disabled" /></td>
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="row1" valign="top"><b>{L_BAN_EXCLUDE}:</b><br /><span class="gensmall">{L_BAN_EXCLUDE_EXPLAIN}</span></td>
|
|
||||||
<td class="row2"><input type="radio" class="radio" name="banexclude" value="1" /> {L_YES} <input type="radio" class="radio" name="banexclude" value="0" checked="checked" /> {L_NO}</td>
|
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1" valign="top"><b>{L_BAN_REASON}:</b></td>
|
<td class="row1" valign="top"><b>{L_BAN_REASON}:</b></td>
|
||||||
<td class="row2"><input name="banreason" type="text" class="post" /></td>
|
<td class="row2"><input style="border: 0px; width: 100%" type="text" name="unbanreason" disabled="disabled" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1" valign="top"><b>{L_BAN_GIVE_REASON}:</b></td>
|
<td class="row1" valign="top"><b>{L_BAN_GIVE_REASON}:</b></td>
|
||||||
<td class="row2"><input name="bangivereason" type="text" class="post" /></td>
|
<td class="row2"><input style="border: 0px; width: 100%" type="text" name="unbangivereason" disabled="disabled" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="cat" colspan="2" align="center"><input type="submit" name="bansubmit" value="{L_SUBMIT}" class="btnmain" /> <input type="reset" value="{L_RESET}" class="btnlite" /> </td>
|
<td class="cat" colspan="2" align="center"><input type="submit" name="unbansubmit" value="{L_SUBMIT}" class="btnmain" /> <input type="reset" value="{L_RESET}" class="btnlite" /> </td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
<!-- ELSE -->
|
||||||
|
|
||||||
<br /><br />
|
|
||||||
|
|
||||||
<table width="100%" class="tablebg" cellspacing="1" cellpadding="4" border="0">
|
|
||||||
<tr>
|
<tr>
|
||||||
<th colspan="2" height="28" nowrap="nowrap">{L_UNBAN_TITLE}</th>
|
<td class="row1" colspan="2"><b>{L_NO_BAN_CELL}</b></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<!-- ENDIF -->
|
||||||
<td class="row3" colspan="2">{L_UNBAN_EXPLAIN}</td>
|
</table>
|
||||||
</tr>
|
|
||||||
<!-- IF S_BANNED_OPTIONS -->
|
|
||||||
<tr>
|
|
||||||
<td class="row1" valign="top" width="45%"><b>{L_BAN_CELL}:</b></td>
|
|
||||||
<td class="row2"><select name="unban[]" multiple="multiple" size="10" style="width: 50%" onchange="if (this.selectedIndex > -1) display_details(this.options[this.selectedIndex].value); else display_details(-1);">{BANNED_OPTIONS}</select></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="row1" valign="top"><b>{L_BAN_LENGTH}:</b></td>
|
|
||||||
<td class="row2"><input style="border: 0px; width: 100%" type="text" name="unbanlength" disabled="disabled" /></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="row1" valign="top"><b>{L_BAN_REASON}:</b></td>
|
|
||||||
<td class="row2"><input style="border: 0px; width: 100%" type="text" name="unbanreason" disabled="disabled" /></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="row1" valign="top"><b>{L_BAN_GIVE_REASON}:</b></td>
|
|
||||||
<td class="row2"><input style="border: 0px; width: 100%" type="text" name="unbangivereason" disabled="disabled" /></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="cat" colspan="2" align="center"><input type="submit" name="unbansubmit" value="{L_SUBMIT}" class="btnmain" /> <input type="reset" value="{L_RESET}" class="btnlite" /> </td>
|
|
||||||
</tr>
|
|
||||||
<!-- ELSE -->
|
|
||||||
<tr>
|
|
||||||
<td class="row1" colspan="2"><b>{L_NO_BAN_CELL}</b></td>
|
|
||||||
</tr>
|
|
||||||
<!-- ENDIF -->
|
|
||||||
</table>
|
|
||||||
|
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
<!-- INCLUDE mcp_footer.html -->
|
<!-- INCLUDE mcp_footer.html -->
|
|
@ -2,32 +2,33 @@
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<!-- IF PAGINATION -->
|
<!-- IF PAGINATION -->
|
||||||
<table width="80%" align="right" cellspacing="1">
|
<table width="80%" align="right" cellspacing="1">
|
||||||
<tr>
|
<tr>
|
||||||
<td class="nav" valign="middle" nowrap="nowrap"> {PAGE_NUMBER}<br /></td>
|
<td class="nav" valign="middle" nowrap="nowrap"> {PAGE_NUMBER}<br /></td>
|
||||||
<td class="gensmall" nowrap="nowrap"> [ {TOTAL} ] </td>
|
<td class="gensmall" nowrap="nowrap"> [ {TOTAL} ] </td>
|
||||||
<td class="gensmall" width="100%" align="right" nowrap="nowrap"><!-- IF PAGINATION --><b><a href="javascript:jumpto();">{L_GOTO_PAGE}</a> <!-- IF PREVIOUS_PAGE --><a href="{PREVIOUS_PAGE}">{L_PREVIOUS}</a> <!-- ENDIF -->{PAGINATION}<!-- IF NEXT_PAGE --> <a href="{NEXT_PAGE}">{L_NEXT}</a><!-- ENDIF --></b><!-- ENDIF --></td>
|
<td class="gensmall" width="100%" align="right" nowrap="nowrap"><!-- IF PAGINATION --><b><a href="javascript:jumpto();">{L_GOTO_PAGE}</a> <!-- IF PREVIOUS_PAGE --><a href="{PREVIOUS_PAGE}">{L_PREVIOUS}</a> <!-- ENDIF -->{PAGINATION}<!-- IF NEXT_PAGE --> <a href="{NEXT_PAGE}">{L_NEXT}</a><!-- ENDIF --></b><!-- ENDIF --></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<br />
|
<br />
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<br clear="all" />
|
<br clear="all" />
|
||||||
|
|
||||||
<table class="tablebg" width="100%" cellspacing="1" cellpadding="0">
|
<table class="tablebg" width="100%" cellspacing="1" cellpadding="0">
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1">
|
<td class="row1">
|
||||||
<p class="breadcrumbs"><a href="{U_INDEX}">{L_INDEX}</a><!-- BEGIN navlinks --> » <a href="{navlinks.U_VIEW_FORUM}">{navlinks.FORUM_NAME}</a><!-- END navlinks --></p>
|
<p class="breadcrumbs"><a href="{U_INDEX}">{L_INDEX}</a><!-- BEGIN navlinks --> » <a href="{navlinks.U_VIEW_FORUM}">{navlinks.FORUM_NAME}</a><!-- END navlinks --></p>
|
||||||
<p class="datetime">{S_TIMEZONE}</p>
|
<p class="datetime">{S_TIMEZONE}</p>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<br clear="all" />
|
<br clear="all" />
|
||||||
|
|
||||||
<div align="right"><!-- INCLUDE jumpbox.html --></div>
|
<div align="right"><!-- INCLUDE jumpbox.html --></div>
|
||||||
|
|
||||||
<!-- INCLUDE overall_footer.html -->
|
<!-- INCLUDE overall_footer.html -->
|
|
@ -2,22 +2,24 @@
|
||||||
|
|
||||||
<!-- IF U_VIEW_FORUM_LOGS --><a href="{U_VIEW_FORUM_LOGS}">{L_VIEW_FORUM_LOGS}</a><!-- ENDIF -->
|
<!-- IF U_VIEW_FORUM_LOGS --><a href="{U_VIEW_FORUM_LOGS}">{L_VIEW_FORUM_LOGS}</a><!-- ENDIF -->
|
||||||
|
|
||||||
<form method="post" id="mcp" action="{S_MCP_ACTION}"><table class="tablebg" width="100%" cellspacing="1">
|
<form method="post" id="mcp" action="{S_MCP_ACTION}">
|
||||||
<tr>
|
|
||||||
<td class="cat" colspan="6" align="center"><span class="gensmall">{L_DISPLAY_TOPICS}:</span> {S_SELECT_SORT_DAYS} <span class="gensmall">{L_SORT_BY}</span> {S_SELECT_SORT_KEY} {S_SELECT_SORT_DIR} <input class="btnlite" type="submit" name="sort" value="{L_GO}" /></span></td>
|
<table class="tablebg" width="100%" cellspacing="1">
|
||||||
</tr>
|
<tr>
|
||||||
<tr>
|
<td class="cat" colspan="6" align="center"><span class="gensmall">{L_DISPLAY_TOPICS}:</span> {S_SELECT_SORT_DAYS} <span class="gensmall">{L_SORT_BY}</span> {S_SELECT_SORT_KEY} {S_SELECT_SORT_DIR} <input class="btnlite" type="submit" name="sort" value="{L_GO}" /></span></td>
|
||||||
<th width="4%" nowrap="nowrap"> </th>
|
</tr>
|
||||||
<th nowrap="nowrap"> {L_TOPICS} </th>
|
<tr>
|
||||||
<th width="8%" nowrap="nowrap"> {L_REPLIES} </th>
|
<th width="4%" nowrap="nowrap"> </th>
|
||||||
<th width="17%" nowrap="nowrap"> {L_LAST_POST} </th>
|
<th nowrap="nowrap"> {L_TOPICS} </th>
|
||||||
<th width="5%" nowrap="nowrap"> {L_MARK} </th>
|
<th width="8%" nowrap="nowrap"> {L_REPLIES} </th>
|
||||||
</tr>
|
<th width="17%" nowrap="nowrap"> {L_LAST_POST} </th>
|
||||||
<!-- BEGIN topicrow -->
|
<th width="5%" nowrap="nowrap"> {L_MARK} </th>
|
||||||
|
</tr>
|
||||||
|
<!-- BEGIN topicrow -->
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1" width="25" align="center">{topicrow.TOPIC_FOLDER_IMG}</td>
|
<td class="row1" width="25" align="center">{topicrow.TOPIC_FOLDER_IMG}</td>
|
||||||
<!-- IF S_TOPIC_ICONS -->
|
<!-- IF S_TOPIC_ICONS -->
|
||||||
<!-- td class="row1" width="25" align="center">{topicrow.TOPIC_ICON_IMG}</td -->
|
<!-- td class="row1" width="25" align="center">{topicrow.TOPIC_ICON_IMG}</td -->
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
<td class="row1">
|
<td class="row1">
|
||||||
<!-- IF topicrow.S_SELECT_TOPIC -->
|
<!-- IF topicrow.S_SELECT_TOPIC -->
|
||||||
|
@ -35,31 +37,32 @@
|
||||||
<td class="row1" width="50" align="center"><p class="topicdetails">{topicrow.REPLIES}</p></td>
|
<td class="row1" width="50" align="center"><p class="topicdetails">{topicrow.REPLIES}</p></td>
|
||||||
<td class="row1" width="120" align="center"><p class="topicdetails">{topicrow.LAST_POST_TIME}</p></td>
|
<td class="row1" width="120" align="center"><p class="topicdetails">{topicrow.LAST_POST_TIME}</p></td>
|
||||||
<td class="row2" align="center"><input type="checkbox" class="radio" name="topic_id_list[]" value="{topicrow.TOPIC_ID}" {topicrow.S_TOPIC_CHECKED}/></td>
|
<td class="row2" align="center"><input type="checkbox" class="radio" name="topic_id_list[]" value="{topicrow.TOPIC_ID}" {topicrow.S_TOPIC_CHECKED}/></td>
|
||||||
|
|
||||||
</tr>
|
</tr>
|
||||||
<!-- BEGINELSE -->
|
<!-- BEGINELSE -->
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1" colspan="8" height="28" align="center"><p class="gen">{L_NO_TOPICS}</p></td>
|
<td class="row1" colspan="8" height="28" align="center"><p class="gen">{L_NO_TOPICS}</p></td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- END topicrow -->
|
<!-- END topicrow -->
|
||||||
<tr>
|
<tr>
|
||||||
<td class="cat" colspan="6" align="right">
|
<td class="cat" colspan="6" align="right">
|
||||||
<select name="action">
|
<select name="action">
|
||||||
<!-- IF S_CAN_DELETE --><option value="delete_topic">{L_DELETE}</option><!-- ENDIF -->
|
<!-- IF S_CAN_DELETE --><option value="delete_topic">{L_DELETE}</option><!-- ENDIF -->
|
||||||
<!-- IF S_CAN_MOVE --><option value="move">{L_MOVE}</option><!-- ENDIF -->
|
<!-- IF S_CAN_MOVE --><option value="move">{L_MOVE}</option><!-- ENDIF -->
|
||||||
<!-- IF S_CAN_FORK --><option value="fork">{L_FORK}</option><!-- ENDIF -->
|
<!-- IF S_CAN_FORK --><option value="fork">{L_FORK}</option><!-- ENDIF -->
|
||||||
<!-- IF S_CAN_LOCK --><option value="lock">{L_LOCK}</option><option value="unlock">{L_UNLOCK}</option><!-- ENDIF -->
|
<!-- IF S_CAN_LOCK --><option value="lock">{L_LOCK}</option><option value="unlock">{L_UNLOCK}</option><!-- ENDIF -->
|
||||||
<!-- IF S_CAN_SYNC --><option value="resync">{L_RESYNC}</option><!-- ENDIF -->
|
<!-- IF S_CAN_SYNC --><option value="resync">{L_RESYNC}</option><!-- ENDIF -->
|
||||||
</select>
|
</select>
|
||||||
<input class="btnmain" type="submit" value="{L_SUBMIT}" />
|
<input class="btnmain" type="submit" value="{L_SUBMIT}" />
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table></form>
|
</table>
|
||||||
|
|
||||||
|
</form>
|
||||||
|
|
||||||
<table width="100%" cellspacing="2" cellpadding="2" border="0" align="center">
|
<table width="100%" cellspacing="2" cellpadding="2" border="0" align="center">
|
||||||
<tr>
|
<tr>
|
||||||
<td align="right" valign="top" nowrap="nowrap"><b class="gensmall"><a href="javascript:marklist('mcp', 'topic_id_list', true);">{L_MARK_ALL}</a> :: <a href="javascript:marklist('mcp', 'topic_id_list', false);">{L_UNMARK_ALL}</a></b></td>
|
<td align="right" valign="top" nowrap="nowrap"><b class="gensmall"><a href="javascript:marklist('mcp', 'topic_id_list', true);">{L_MARK_ALL}</a> :: <a href="javascript:marklist('mcp', 'topic_id_list', false);">{L_UNMARK_ALL}</a></b></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<!-- INCLUDE mcp_footer.html -->
|
<!-- INCLUDE mcp_footer.html -->
|
|
@ -71,7 +71,7 @@
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
|
|
||||||
<!-- IF S_SHOW_LOGS -->
|
<!-- IF S_SHOW_LOGS -->
|
||||||
<table class="tablebg" width="100%" cellspacing="1" cellpadding="4" border="0" align="right">
|
<table class="tablebg" width="100%" cellspacing="1" cellpadding="4" border="0" align="right">
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row3" colspan="5" align="center"><b class="gen">{L_LATEST_LOGS}</b></td>
|
<td class="row3" colspan="5" align="center"><b class="gen">{L_LATEST_LOGS}</b></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -83,21 +83,21 @@
|
||||||
<th width="18%" nowrap="nowrap">{L_TIME}</th>
|
<th width="18%" nowrap="nowrap">{L_TIME}</th>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- BEGIN log -->
|
<!-- BEGIN log -->
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1" nowrap="nowrap"><span class="gen">{log.USERNAME}</span></td>
|
<td class="row1" nowrap="nowrap"><span class="gen">{log.USERNAME}</span></td>
|
||||||
<td class="row1" align="center" nowrap="nowrap"><span class="gen">{log.IP}</span></td>
|
<td class="row1" align="center" nowrap="nowrap"><span class="gen">{log.IP}</span></td>
|
||||||
<td class="row1"><span class="genmed">{log.ACTION}</span></td>
|
<td class="row1"><span class="genmed">{log.ACTION}</span></td>
|
||||||
<td class="row1" align="center" nowrap="nowrap"><span class="gensmall"><!-- IF log.U_VIEWTOPIC --><a href="{log.U_VIEWTOPIC}">{L_VIEW_TOPIC}</a><!-- IF log.U_VIEWLOGS --> | <!-- ENDIF --><!-- ENDIF --><!-- IF log.U_VIEWLOGS --><a href="{log.U_VIEWLOGS}">{L_VIEW_TOPIC_LOGS}</a><!-- ENDIF --></span></td>
|
<td class="row1" align="center" nowrap="nowrap"><span class="gensmall"><!-- IF log.U_VIEWTOPIC --><a href="{log.U_VIEWTOPIC}">{L_VIEW_TOPIC}</a><!-- IF log.U_VIEWLOGS --> | <!-- ENDIF --><!-- ENDIF --><!-- IF log.U_VIEWLOGS --><a href="{log.U_VIEWLOGS}">{L_VIEW_TOPIC_LOGS}</a><!-- ENDIF --></span></td>
|
||||||
<td class="row1" align="center" nowrap="nowrap"><span class="gensmall">{log.TIME}</span></td>
|
<td class="row1" align="center" nowrap="nowrap"><span class="gensmall">{log.TIME}</span></td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- BEGINELSE -->
|
<!-- BEGINELSE -->
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1" colspan="5" align="center"><span class="gen">{L_NO_ENTRIES}</span></td>
|
<td class="row1" colspan="5" align="center"><span class="gen">{L_NO_ENTRIES}</span></td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- END log -->
|
<!-- END log -->
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<br clear="all" />
|
<br clear="all" />
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
|
|
||||||
<!-- INCLUDE mcp_footer.html -->
|
<!-- INCLUDE mcp_footer.html -->
|
|
@ -1,6 +1,6 @@
|
||||||
<!-- INCLUDE overall_header.html -->
|
<!-- INCLUDE overall_header.html -->
|
||||||
|
|
||||||
<!-- IF TOPIC_TITLE or FORUM_NAME -->
|
<!-- IF TOPIC_TITLE or FORUM_NAME -->
|
||||||
<div id="pageheader">
|
<div id="pageheader">
|
||||||
<h2><!-- IF TOPIC_TITLE --><a class="titles" href="{U_VIEWTOPIC}">{TOPIC_TITLE}</a><!-- ELSE --><a class="titles" href="{U_VIEW_FORUM}">{FORUM_NAME}</a><!-- ENDIF --></h2>
|
<h2><!-- IF TOPIC_TITLE --><a class="titles" href="{U_VIEWTOPIC}">{TOPIC_TITLE}</a><!-- ELSE --><a class="titles" href="{U_VIEW_FORUM}">{FORUM_NAME}</a><!-- ENDIF --></h2>
|
||||||
|
|
||||||
|
@ -13,63 +13,66 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<br clear="all" />
|
<br clear="all" />
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
|
|
||||||
<div id="pagecontent">
|
<div id="pagecontent">
|
||||||
|
|
||||||
|
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr>
|
<tr>
|
||||||
<td width="20%" valign="top">
|
<td width="20%" valign="top">
|
||||||
|
|
||||||
<table class="tablebg" width="100%" cellspacing="1">
|
<table class="tablebg" width="100%" cellspacing="1">
|
||||||
|
<tr>
|
||||||
|
<th>{L_OPTIONS}</th>
|
||||||
|
</tr>
|
||||||
|
<!-- BEGIN l_block1 -->
|
||||||
<tr>
|
<tr>
|
||||||
<th>{L_OPTIONS}</th>
|
<!-- IF l_block1.S_SELECTED -->
|
||||||
</tr>
|
|
||||||
<!-- BEGIN l_block1 -->
|
|
||||||
<tr>
|
|
||||||
<!-- IF l_block1.S_SELECTED -->
|
|
||||||
<td class="row1"><b class="nav">{l_block1.L_TITLE}</b>
|
<td class="row1"><b class="nav">{l_block1.L_TITLE}</b>
|
||||||
|
|
||||||
<ul class="nav" style="margin: 0px; padding: 0px; list-style-type: none; line-height: 175%;">
|
<ul class="nav" style="margin: 0px; padding: 0px; list-style-type: none; line-height: 175%;">
|
||||||
<!-- BEGIN l_block2 -->
|
<!-- BEGIN l_block2 -->
|
||||||
<li>» <!-- IF l_block1.l_block2.S_SELECTED --><b>{l_block1.l_block2.L_TITLE}</b><!-- ELSE --><a href="{l_block1.l_block2.U_TITLE}">{l_block1.l_block2.L_TITLE}</a><!-- ENDIF --></li>
|
<li>» <!-- IF l_block1.l_block2.S_SELECTED --><b>{l_block1.l_block2.L_TITLE}</b><!-- ELSE --><a href="{l_block1.l_block2.U_TITLE}">{l_block1.l_block2.L_TITLE}</a><!-- ENDIF --></li>
|
||||||
<!-- END l_block2 -->
|
<!-- END l_block2 -->
|
||||||
</ul>
|
</ul>
|
||||||
<!-- ELSE -->
|
<!-- ELSE -->
|
||||||
<td class="row2" nowrap="nowrap" onmouseover="this.className='row1'" onmouseout="this.className='row2'" onclick="location.href='{l_block1.U_TITLE}'"><a class="nav" href="{l_block1.U_TITLE}">{l_block1.L_TITLE}</a>
|
<td class="row2" nowrap="nowrap" onmouseover="this.className='row1'" onmouseout="this.className='row2'" onclick="location.href='{l_block1.U_TITLE}'"><a class="nav" href="{l_block1.U_TITLE}">{l_block1.L_TITLE}</a>
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- END l_block1 -->
|
<!-- END l_block1 -->
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<td><img src="images/spacer.gif" width="4" alt="" /></td>
|
<td><img src="images/spacer.gif" width="4" alt="" /></td>
|
||||||
<td width="80%" valign="top">
|
<td width="80%" valign="top">
|
||||||
|
|
||||||
<!-- IF MESSAGE -->
|
<!-- IF MESSAGE -->
|
||||||
<table class="tablebg" width="100%" cellspacing="1">
|
<table class="tablebg" width="100%" cellspacing="1">
|
||||||
<tr>
|
<tr>
|
||||||
<th>{L_MESSAGE}</th>
|
<th>{L_MESSAGE}</th>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1" align="center"><br /><span class="gen">{MESSAGE}<br /><br /><!-- BEGIN return_links -->{return_links.MESSAGE_LINK}<br /><br /><!-- END return_links --></span></td>
|
<td class="row1" align="center"><br /><span class="gen">{MESSAGE}<br /><br /><!-- BEGIN return_links -->{return_links.MESSAGE_LINK}<br /><br /><!-- END return_links --></span></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
|
|
||||||
<!-- IF CONFIRM_MESSAGE -->
|
<!-- IF CONFIRM_MESSAGE -->
|
||||||
<table class="tablebg" width="100%" cellspacing="1"><form name="confirm" method="post" action="{S_CONFIRM_ACTION}">
|
<form name="confirm" method="post" action="{S_CONFIRM_ACTION}">
|
||||||
<tr>
|
|
||||||
<th><b>{L_PLEASE_CONFIRM}</b></th>
|
<table class="tablebg" width="100%" cellspacing="1">
|
||||||
</tr>
|
<tr>
|
||||||
<tr>
|
<th><b>{L_PLEASE_CONFIRM}</b></th>
|
||||||
<td class="row1" align="center"><span class="gen"><br />{CONFIRM_MESSAGE}<br /><br />{S_HIDDEN_FIELDS}<input class="btnmain" type="submit" name="confirm" value="{L_YES}" /> <input class="btnlite" type="submit" name="cancel" value="{L_NO}" /><br /><br /></span></td>
|
</tr>
|
||||||
</tr>
|
<tr>
|
||||||
</form></table>
|
<td class="row1" align="center"><span class="gen"><br />{CONFIRM_MESSAGE}<br /><br />{S_HIDDEN_FIELDS}<input class="btnmain" type="submit" name="confirm" value="{L_YES}" /> <input class="btnlite" type="submit" name="cancel" value="{L_NO}" /><br /><br /></span></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
</form>
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
|
|
|
@ -1,13 +1,17 @@
|
||||||
<!-- Note: no longer in use... -->
|
<!-- Note: no longer in use... -->
|
||||||
|
|
||||||
<form name="jumpbox" method="post" action="{S_JUMPBOX_ACTION}">
|
<form name="jumpbox" method="post" action="{S_JUMPBOX_ACTION}">
|
||||||
<span class="gensmall">{L_JUMP_TO}:</span> <select name="f" onChange="if(this.options[this.selectedIndex].value != -1 && this.options[this.selectedIndex].value != document.jumpbox.current_f.value){ forms['jumpbox'].submit() }">
|
|
||||||
|
<span class="gensmall">{L_JUMP_TO}:</span> <select name="f" onChange="if(this.options[this.selectedIndex].value != -1 && this.options[this.selectedIndex].value != document.jumpbox.current_f.value){ forms['jumpbox'].submit() }">
|
||||||
|
|
||||||
<!-- IF S_ENABLE_SELECT_ALL -->
|
<!-- IF S_ENABLE_SELECT_ALL -->
|
||||||
<option value="0">{L_ALL_FORUMS}</option>
|
<option value="0">{L_ALL_FORUMS}</option>
|
||||||
<!-- ELSE -->
|
<!-- ELSE -->
|
||||||
<option value="-1">{L_SELECT_FORUM}</option>
|
<option value="-1">{L_SELECT_FORUM}</option>
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
<!-- BEGIN options --><option value="{options.VALUE}"<!-- IF options.VALUE eq -1 --> class="greyed"<!-- ENDIF -->{options.SELECTED}/>{options.TEXT}</option>
|
|
||||||
|
<!-- BEGIN options -->
|
||||||
|
<option value="{options.VALUE}"<!-- IF options.VALUE eq -1 --> class="greyed"<!-- ENDIF -->{options.SELECTED}/>{options.TEXT}</option>
|
||||||
<!-- BEGINELSE -->
|
<!-- BEGINELSE -->
|
||||||
<!-- END options -->
|
<!-- END options -->
|
||||||
</select> <input type="hidden" name="current_f" value="{S_CURRENT_FORUM}" /><input name="jumpbox" class="btnlite" type="submit" value="{L_GO}" onClick="if(document.jumpbox.f.value == -1){return false;}" />
|
</select> <input type="hidden" name="current_f" value="{S_CURRENT_FORUM}" /><input name="jumpbox" class="btnlite" type="submit" value="{L_GO}" onClick="if(document.jumpbox.f.value == -1){return false;}" />
|
||||||
|
|
|
@ -1,42 +1,43 @@
|
||||||
<!-- INCLUDE mcp_header.html -->
|
<!-- INCLUDE mcp_header.html -->
|
||||||
|
|
||||||
<form method="post" name="mcp" action="{U_POST_ACTION}">
|
<form method="post" name="mcp" action="{U_POST_ACTION}">
|
||||||
|
|
||||||
<table width="100%" cellpadding="3" cellspacing="1" border="0" class="tablebg">
|
<table width="100%" cellpadding="3" cellspacing="1" border="0" class="tablebg">
|
||||||
<tr>
|
<tr>
|
||||||
<th>{L_USERNAME}</th>
|
<th>{L_USERNAME}</th>
|
||||||
<th>{L_IP}</th>
|
<th>{L_IP}</th>
|
||||||
<th>{L_TIME}</th>
|
<th>{L_TIME}</th>
|
||||||
<th>{L_ACTION}</th>
|
<th>{L_ACTION}</th>
|
||||||
<!-- IF S_CLEAR_ALLOWED --><th>{L_MARK}</th><!-- ENDIF -->
|
<!-- IF S_CLEAR_ALLOWED --><th>{L_MARK}</th><!-- ENDIF -->
|
||||||
</tr>
|
</tr>
|
||||||
<!-- IF S_LOGS -->
|
<!-- IF S_LOGS -->
|
||||||
|
|
||||||
<!-- BEGIN log -->
|
<!-- BEGIN log -->
|
||||||
<!-- IF log.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
|
<!-- IF log.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
|
||||||
<td class="genmed">{log.USERNAME}</td>
|
<td class="genmed">{log.USERNAME}</td>
|
||||||
<td class="genmed" style="text-align: center;">{log.IP}</td>
|
<td class="genmed" style="text-align: center;">{log.IP}</td>
|
||||||
<td class="genmed" style="text-align: center;">{log.DATE}</td>
|
<td class="genmed" style="text-align: center;">{log.DATE}</td>
|
||||||
<td class="genmed">{log.ACTION}<br />{log.DATA}</td>
|
<td class="genmed">{log.ACTION}<br />{log.DATA}</td>
|
||||||
<!-- IF S_CLEAR_ALLOWED --><td width="5%" align="center"><input type="checkbox" class="radio" name="mark[]" value="{log.ID}" /></td><!-- ENDIF -->
|
<!-- IF S_CLEAR_ALLOWED --><td width="5%" align="center"><input type="checkbox" class="radio" name="mark[]" value="{log.ID}" /></td><!-- ENDIF -->
|
||||||
</tr>
|
</tr>
|
||||||
<!-- END log -->
|
<!-- END log -->
|
||||||
<tr align="center">
|
<tr align="center">
|
||||||
<td class="row3" colspan="<!-- IF S_CLEAR_ALLOWED -->5<!-- ELSE -->4<!-- ENDIF -->"><span class="gensmall">{L_DISPLAY_LOG}:</span> {S_SELECT_SORT_DAYS} <span class="gensmall">{L_SORT_BY}</span> {S_SELECT_SORT_KEY} {S_SELECT_SORT_DIR} <input class="btnlite" type="submit" value="{L_GO}" name="sort" /></td>
|
<td class="row3" colspan="<!-- IF S_CLEAR_ALLOWED -->5<!-- ELSE -->4<!-- ENDIF -->"><span class="gensmall">{L_DISPLAY_LOG}:</span> {S_SELECT_SORT_DAYS} <span class="gensmall">{L_SORT_BY}</span> {S_SELECT_SORT_KEY} {S_SELECT_SORT_DIR} <input class="btnlite" type="submit" value="{L_GO}" name="sort" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- IF S_CLEAR_ALLOWED -->
|
<!-- IF S_CLEAR_ALLOWED -->
|
||||||
<tr>
|
|
||||||
<td class="cat" colspan="5" align="center"><input class="btnlite" type="submit" name="action[del_marked]" value="{L_DELETE_MARKED}" /> <input class="btnlite" type="submit" name="action[del_all]" value="{L_DELETE_ALL}" /></td>
|
|
||||||
</tr>
|
|
||||||
<!-- ENDIF -->
|
|
||||||
<!-- ELSE -->
|
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1" colspan="<!-- IF S_CLEAR_ALLOWED -->5<!-- ELSE -->4<!-- ENDIF -->" align="center"><span class="gen">{L_NO_ENTRIES}</span></td>
|
<td class="cat" colspan="5" align="center"><input class="btnlite" type="submit" name="action[del_marked]" value="{L_DELETE_MARKED}" /> <input class="btnlite" type="submit" name="action[del_all]" value="{L_DELETE_ALL}" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
</table>
|
<!-- ELSE -->
|
||||||
|
<tr>
|
||||||
</form>
|
<td class="row1" colspan="<!-- IF S_CLEAR_ALLOWED -->5<!-- ELSE -->4<!-- ENDIF -->" align="center"><span class="gen">{L_NO_ENTRIES}</span></td>
|
||||||
|
</tr>
|
||||||
|
<!-- ENDIF -->
|
||||||
|
</table>
|
||||||
|
|
||||||
<br clear="all" /><br />
|
</form>
|
||||||
|
|
||||||
|
<br clear="all" /><br />
|
||||||
|
|
||||||
<!-- INCLUDE mcp_footer.html -->
|
<!-- INCLUDE mcp_footer.html -->
|
|
@ -1,12 +1,12 @@
|
||||||
<!-- INCLUDE mcp_header.html -->
|
<!-- INCLUDE mcp_header.html -->
|
||||||
|
|
||||||
<table class="tablebg" width="100%" cellspacing="1" cellpadding="4" border="0" align="center">
|
<table class="tablebg" width="100%" cellspacing="1" cellpadding="4" border="0" align="center">
|
||||||
<tr>
|
<tr>
|
||||||
<th height="28"><b>{MESSAGE_TITLE}</b></th>
|
<th height="28"><b>{MESSAGE_TITLE}</b></th>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1" align="center"><br /><span class="gen">{MESSAGE_TEXT}</span><br /><br /></td>
|
<td class="row1" align="center"><br /><span class="gen">{MESSAGE_TEXT}</span><br /><br /></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<br clear="all" />
|
<br clear="all" />
|
||||||
|
|
|
@ -1,41 +1,44 @@
|
||||||
<!-- INCLUDE overall_header.html -->
|
<!-- INCLUDE overall_header.html -->
|
||||||
|
|
||||||
<div id="pagecontent">
|
<div id="pagecontent">
|
||||||
|
|
||||||
<form name="confirm" action="{S_CONFIRM_ACTION}" method="post"><table class="tablebg" width="100%" cellspacing="1">
|
<form name="confirm" action="{S_CONFIRM_ACTION}" method="post">
|
||||||
<tr>
|
|
||||||
<th>{MESSAGE_TITLE}</th>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="row1" align="center">
|
|
||||||
<!-- IF ADDITIONAL_MSG -->
|
|
||||||
<span class="gen" style="color:red">{ADDITIONAL_MSG}</span><br />
|
|
||||||
<!-- ENDIF -->
|
|
||||||
<span class="gen"><br />{L_SELECT_DESTINATION_FORUM} </span>
|
|
||||||
<select name="to_forum_id">{S_FORUM_SELECT}</select><br />
|
|
||||||
<!-- IF S_CAN_LEAVE_SHADOW -->
|
|
||||||
<input type="checkbox" class="radio" name="move_leave_shadow" checked="checked" /><span class="gen">{L_LEAVE_SHADOW}</span><br />
|
|
||||||
<!-- ENDIF -->
|
|
||||||
<br />{S_HIDDEN_FIELDS}<span class="gen">{MESSAGE_TEXT}</span><br /><br />
|
|
||||||
<input type="submit" name="confirm" value="{YES_VALUE}" class="btnmain" /> <input type="submit" name="cancel" value="{L_NO}" class="btnlite" /></span>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table></form>
|
|
||||||
|
|
||||||
</div>
|
<table class="tablebg" width="100%" cellspacing="1">
|
||||||
|
<tr>
|
||||||
<br clear="all" />
|
<th>{MESSAGE_TITLE}</th>
|
||||||
|
</tr>
|
||||||
<table class="tablebg" width="100%" cellspacing="1" cellpadding="0">
|
<tr>
|
||||||
<tr>
|
<td class="row1" align="center">
|
||||||
<td class="row1">
|
<!-- IF ADDITIONAL_MSG -->
|
||||||
<p class="breadcrumbs"><a href="{U_INDEX}">{L_INDEX}</a><!-- BEGIN navlinks --> » <a href="{navlinks.U_VIEW_FORUM}">{navlinks.FORUM_NAME}</a><!-- END navlinks --></p>
|
<span class="gen" style="color:red">{ADDITIONAL_MSG}</span><br />
|
||||||
<p class="datetime">{S_TIMEZONE}</p>
|
<!-- ENDIF -->
|
||||||
</td>
|
<span class="gen"><br />{L_SELECT_DESTINATION_FORUM} </span>
|
||||||
</tr>
|
<select name="to_forum_id">{S_FORUM_SELECT}</select><br />
|
||||||
|
<!-- IF S_CAN_LEAVE_SHADOW -->
|
||||||
|
<input type="checkbox" class="radio" name="move_leave_shadow" checked="checked" /><span class="gen">{L_LEAVE_SHADOW}</span><br />
|
||||||
|
<!-- ENDIF -->
|
||||||
|
<br />{S_HIDDEN_FIELDS}<span class="gen">{MESSAGE_TEXT}</span><br /><br />
|
||||||
|
<input type="submit" name="confirm" value="{YES_VALUE}" class="btnmain" /> <input type="submit" name="cancel" value="{L_NO}" class="btnlite" /></span>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
|
</form>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
<br clear="all" />
|
<br clear="all" />
|
||||||
|
|
||||||
|
<table class="tablebg" width="100%" cellspacing="1" cellpadding="0">
|
||||||
|
<tr>
|
||||||
|
<td class="row1">
|
||||||
|
<p class="breadcrumbs"><a href="{U_INDEX}">{L_INDEX}</a><!-- BEGIN navlinks --> » <a href="{navlinks.U_VIEW_FORUM}">{navlinks.FORUM_NAME}</a><!-- END navlinks --></p>
|
||||||
|
<p class="datetime">{S_TIMEZONE}</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<br clear="all" />
|
||||||
|
|
||||||
<!-- INCLUDE overall_footer.html -->
|
<!-- INCLUDE overall_footer.html -->
|
||||||
|
|
||||||
|
|
|
@ -1,20 +1,22 @@
|
||||||
<!-- INCLUDE mcp_header.html -->
|
<!-- INCLUDE mcp_header.html -->
|
||||||
|
|
||||||
<form method="post" name="mcp" action="{U_POST_ACTION}">
|
<form method="post" name="mcp" action="{U_POST_ACTION}">
|
||||||
<table class="bg" width="75%" cellspacing="1" cellpadding="4" border="0" align="center">
|
|
||||||
<tr>
|
|
||||||
<th colspan="2"align="center">{L_SELECT_USER}</th>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="row1" width="40%"><b class="gen">{L_FIND_USERNAME}: </b><br /><span class="gensmall">[ <a href="{U_FIND_MEMBER}" onclick="window.open('{U_FIND_MEMBER}', '_phpbbsearch', 'HEIGHT=500,resizable=yes,scrollbars=yes,WIDTH=740');return false;">{L_FIND_USERNAME}</a> ]</span></td>
|
|
||||||
<td class="row2"><input type="text" class="post" name="username" maxlength="50" size="20" /></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="cat" colspan="2" align="center"><input type="submit" name="submituser" value="{L_SUBMIT}" class="btnmain" /></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</form>
|
|
||||||
|
|
||||||
<br clear="all" /><br />
|
<table class="bg" width="75%" cellspacing="1" cellpadding="4" border="0" align="center">
|
||||||
|
<tr>
|
||||||
|
<th colspan="2"align="center">{L_SELECT_USER}</th>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="row1" width="40%"><b class="gen">{L_FIND_USERNAME}: </b><br /><span class="gensmall">[ <a href="{U_FIND_MEMBER}" onclick="window.open('{U_FIND_MEMBER}', '_phpbbsearch', 'HEIGHT=500,resizable=yes,scrollbars=yes,WIDTH=740');return false;">{L_FIND_USERNAME}</a> ]</span></td>
|
||||||
|
<td class="row2"><input type="text" class="post" name="username" maxlength="50" size="20" /></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="cat" colspan="2" align="center"><input type="submit" name="submituser" value="{L_SUBMIT}" class="btnmain" /></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
</form>
|
||||||
|
|
||||||
|
<br clear="all" /><br />
|
||||||
|
|
||||||
<!-- INCLUDE mcp_footer.html -->
|
<!-- INCLUDE mcp_footer.html -->
|
|
@ -1,97 +1,104 @@
|
||||||
<!-- INCLUDE mcp_header.html -->
|
<!-- INCLUDE mcp_header.html -->
|
||||||
|
|
||||||
<form method="post" name="mcp" action="{U_POST_ACTION}">
|
<form method="post" name="mcp" action="{U_POST_ACTION}">
|
||||||
|
|
||||||
<table width="100%" cellpadding="3" cellspacing="1" border="0" class="tablebg">
|
<table width="100%" cellpadding="3" cellspacing="1" border="0" class="tablebg">
|
||||||
<tr>
|
<tr>
|
||||||
<th colspan="2" height="28" align="center">{USERNAME}</th>
|
<th colspan="2" height="28" align="center">{USERNAME}</th>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1" align="center"><table cellspacing="1" cellpadding="2" border="0">
|
<td class="row1" align="center">
|
||||||
<tr>
|
<table cellspacing="1" cellpadding="2" border="0">
|
||||||
<td class="gen" align="center"><!-- IF USER_COLOR --><b style="color: #{USER_COLOR}"><!-- ELSE --><b><!-- ENDIF -->{USERNAME}</b></td>
|
<tr>
|
||||||
</tr>
|
<td class="gen" align="center"><!-- IF USER_COLOR --><b style="color: #{USER_COLOR}"><!-- ELSE --><b><!-- ENDIF -->{USERNAME}</b></td>
|
||||||
<!-- IF RANK -->
|
</tr>
|
||||||
|
<!-- IF RANK -->
|
||||||
<tr>
|
<tr>
|
||||||
<td class="postdetails" align="center">{RANK}</td>
|
<td class="postdetails" align="center">{RANK}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
<!-- IF RANK_IMG -->
|
<!-- IF RANK_IMG -->
|
||||||
<tr>
|
<tr>
|
||||||
<td align="center">{RANK_IMG}</td>
|
<td align="center">{RANK_IMG}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
<tr>
|
<tr>
|
||||||
<td align="center"><!-- IF AVATAR_IMG -->{AVATAR_IMG}<!-- ELSE --><img src="{T_THEME_PATH}/images/no_avatar.gif" alt="" /><!-- ENDIF --></td>
|
<td align="center"><!-- IF AVATAR_IMG -->{AVATAR_IMG}<!-- ELSE --><img src="{T_THEME_PATH}/images/no_avatar.gif" alt="" /><!-- ENDIF --></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table></td>
|
</table>
|
||||||
<td class="row1"><table width="100%" cellspacing="1" cellpadding="2" border="0">
|
</td>
|
||||||
<tr>
|
<td class="row1">
|
||||||
<td class="gen" align="right" nowrap="nowrap">{L_JOINED}: </td>
|
<table width="100%" cellspacing="1" cellpadding="2" border="0">
|
||||||
<td width="100%"><b class="gen">{JOINED}</b></td>
|
<tr>
|
||||||
</tr>
|
<td class="gen" align="right" nowrap="nowrap">{L_JOINED}: </td>
|
||||||
<tr>
|
<td width="100%"><b class="gen">{JOINED}</b></td>
|
||||||
<td class="gen" align="right" valign="top" nowrap="nowrap">{L_TOTAL_POSTS}: </td>
|
</tr>
|
||||||
<td><b class="gen">{POSTS}</b></td>
|
<tr>
|
||||||
</tr>
|
<td class="gen" align="right" valign="top" nowrap="nowrap">{L_TOTAL_POSTS}: </td>
|
||||||
<tr>
|
<td><b class="gen">{POSTS}</b></td>
|
||||||
<td class="gen" align="right" valign="top" nowrap="nowrap">{L_WARNINGS}: </td>
|
</tr>
|
||||||
<td><b class="gen">{WARNINGS}</b></td>
|
<tr>
|
||||||
</tr>
|
<td class="gen" align="right" valign="top" nowrap="nowrap">{L_WARNINGS}: </td>
|
||||||
</table></td>
|
<td><b class="gen">{WARNINGS}</b></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<table width="100%" cellpadding="3" cellspacing="1" border="0" class="tablebg">
|
</td>
|
||||||
<tr>
|
</tr>
|
||||||
<th colspan="2" height="28" align="center">{L_FEEDBACK}</th>
|
</table>
|
||||||
</tr>
|
|
||||||
<!-- IF S_USER_NOTES -->
|
<table width="100%" cellpadding="3" cellspacing="1" border="0" class="tablebg">
|
||||||
<!-- BEGIN usernotes -->
|
<tr>
|
||||||
|
<th colspan="2" height="28" align="center">{L_FEEDBACK}</th>
|
||||||
|
</tr>
|
||||||
|
<!-- IF S_USER_NOTES -->
|
||||||
|
|
||||||
|
<!-- BEGIN usernotes -->
|
||||||
<!-- IF usernotes.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
|
<!-- IF usernotes.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
|
||||||
<td<!-- IF not S_CLEAR_ALLOWED --> colspan="2"<!-- ENDIF -->><span class="gensmall">{L_REPORT_BY}: <b>{usernotes.REPORT_BY}</b> {L_ON} {usernotes.REPORT_AT}</span><hr /><span class="gen">{usernotes.ACTION}</span></td>
|
<td<!-- IF not S_CLEAR_ALLOWED --> colspan="2"<!-- ENDIF -->><span class="gensmall">{L_REPORT_BY}: <b>{usernotes.REPORT_BY}</b> {L_ON} {usernotes.REPORT_AT}</span><hr /><span class="gen">{usernotes.ACTION}</span></td>
|
||||||
<!-- IF S_CLEAR_ALLOWED --><td width="5%" align="center"><input type="checkbox" class="radio" name="marknote[]" value="{usernotes.ID}" /></td><!-- ENDIF -->
|
<!-- IF S_CLEAR_ALLOWED --><td width="5%" align="center"><input type="checkbox" class="radio" name="marknote[]" value="{usernotes.ID}" /></td><!-- ENDIF -->
|
||||||
</tr>
|
</tr>
|
||||||
<!-- END usernotes -->
|
<!-- END usernotes -->
|
||||||
<tr align="center">
|
<tr align="center">
|
||||||
<td class="row3" colspan="2"><span class="gensmall">{L_DISPLAY_POSTS}:</span> {S_SELECT_SORT_DAYS} <span class="gensmall">{L_SORT_BY}</span> {S_SELECT_SORT_KEY} {S_SELECT_SORT_DIR} <input class="btnlite" type="submit" value="{L_GO}" name="sort" /></td>
|
<td class="row3" colspan="2"><span class="gensmall">{L_DISPLAY_POSTS}:</span> {S_SELECT_SORT_DAYS} <span class="gensmall">{L_SORT_BY}</span> {S_SELECT_SORT_KEY} {S_SELECT_SORT_DIR} <input class="btnlite" type="submit" value="{L_GO}" name="sort" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- IF S_CLEAR_ALLOWED -->
|
<!-- IF S_CLEAR_ALLOWED -->
|
||||||
<tr>
|
<tr>
|
||||||
<td class="cat" colspan="2" align="center"><input class="btnlite" type="submit" name="action[del_marked]" value="{L_DELETE_MARKED}" /> <input class="btnlite" type="submit" name="action[del_all]" value="{L_DELETE_ALL}" /></td>
|
<td class="cat" colspan="2" align="center"><input class="btnlite" type="submit" name="action[del_marked]" value="{L_DELETE_MARKED}" /> <input class="btnlite" type="submit" name="action[del_all]" value="{L_DELETE_ALL}" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- ENDIF -->
|
|
||||||
<!-- ELSE -->
|
|
||||||
<tr>
|
|
||||||
<td class="row1" colspan="2" align="center"><span class="gen">{L_NO_FEEDBACK}</span></td>
|
|
||||||
</tr>
|
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
</table>
|
|
||||||
<br clear="all" />
|
<!-- ELSE -->
|
||||||
|
<tr>
|
||||||
|
<td class="row1" colspan="2" align="center"><span class="gen">{L_NO_FEEDBACK}</span></td>
|
||||||
|
</tr>
|
||||||
|
<!-- ENDIF -->
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<br clear="all" />
|
||||||
|
|
||||||
<table width="100%" cellpadding="3" cellspacing="1" border="0" class="tablebg">
|
<table width="100%" cellpadding="3" cellspacing="1" border="0" class="tablebg">
|
||||||
<tr>
|
<tr>
|
||||||
<th colspan="2" height="28" align="center">{L_ADD_FEEDBACK}</th>
|
<th colspan="2" height="28" align="center">{L_ADD_FEEDBACK}</th>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row3" align="center" colspan="2"><span class="genmed">{L_ADD_FEEDBACK_EXPLAIN}</span></td>
|
<td class="row3" align="center" colspan="2"><span class="genmed">{L_ADD_FEEDBACK_EXPLAIN}</span></td>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2" class="row1" align="center"><textarea name="usernote" rows="10" cols="76"></textarea></td>
|
<td colspan="2" class="row1" align="center"><textarea name="usernote" rows="10" cols="76"></textarea></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="cat" colspan="2" align="center"><input class="btnmain" type="submit" name="action[add_feedback]" value="{L_SUBMIT}" /> <input class="btnlite" type="reset" value="{L_RESET}" /></td>
|
<td class="cat" colspan="2" align="center"><input class="btnmain" type="submit" name="action[add_feedback]" value="{L_SUBMIT}" /> <input class="btnlite" type="reset" value="{L_RESET}" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0">
|
<table width="100%" cellspacing="0" cellpadding="0">
|
||||||
<tr>
|
<tr>
|
||||||
<td class="pagination">{PAGE_NUMBER} [ {TOTAL_REPORTS} ]</td>
|
<td class="pagination">{PAGE_NUMBER} [ {TOTAL_REPORTS} ]</td>
|
||||||
<td align="right"><span class="pagination"><!-- IF PAGINATION --><a href="javascript:jumpto();">{L_GOTO_PAGE}</a> <!-- IF PREVIOUS_PAGE --><a href="{PREVIOUS_PAGE}">{L_PREVIOUS}</a> <!-- ENDIF -->{PAGINATION}<!-- IF NEXT_PAGE --> <a href="{NEXT_PAGE}">{L_NEXT}</a><!-- ENDIF --><!-- ENDIF --></span></td>
|
<td align="right"><span class="pagination"><!-- IF PAGINATION --><a href="javascript:jumpto();">{L_GOTO_PAGE}</a> <!-- IF PREVIOUS_PAGE --><a href="{PREVIOUS_PAGE}">{L_PREVIOUS}</a> <!-- ENDIF -->{PAGINATION}<!-- IF NEXT_PAGE --> <a href="{NEXT_PAGE}">{L_NEXT}</a><!-- ENDIF --><!-- ENDIF --></span></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</table>
|
|
||||||
|
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
<br clear="all" /><br />
|
<br clear="all" /><br />
|
||||||
|
|
||||||
<!-- INCLUDE mcp_footer.html -->
|
<!-- INCLUDE mcp_footer.html -->
|
|
@ -1,7 +1,9 @@
|
||||||
<!-- INCLUDE mcp_header.html -->
|
<!-- INCLUDE mcp_header.html -->
|
||||||
|
|
||||||
<!-- IF S_MCP_REPORT -->
|
<!-- IF S_MCP_REPORT -->
|
||||||
<form method="post" name="mcp_report" action="{U_CLOSE_ACTION}"><table width="100%" cellpadding="3" cellspacing="1" border="0" class="tablebg">
|
<form method="post" name="mcp_report" action="{U_CLOSE_ACTION}">
|
||||||
|
|
||||||
|
<table width="100%" cellpadding="3" cellspacing="1" border="0" class="tablebg">
|
||||||
<tr>
|
<tr>
|
||||||
<th colspan="2" height="28" align="center">{L_REPORT_DETAILS}</th>
|
<th colspan="2" height="28" align="center">{L_REPORT_DETAILS}</th>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -18,23 +20,27 @@
|
||||||
<td class="row2"><span class="postdetails">{REPORT_DATE}</span></td>
|
<td class="row2"><span class="postdetails">{REPORT_DATE}</span></td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- IF REPORT_TEXT -->
|
<!-- IF REPORT_TEXT -->
|
||||||
<tr>
|
<tr>
|
||||||
<th colspan="2" height="28" align="center">{L_MORE_INFO}</th>
|
<th colspan="2" height="28" align="center">{L_MORE_INFO}</th>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1" colspan="2"><div class="gen" style="overflow: auto; width: 100%; height: 80pt; border: 1px;">{REPORT_TEXT}</div></td>
|
<td class="row1" colspan="2"><div class="gen" style="overflow: auto; width: 100%; height: 80pt; border: 1px;">{REPORT_TEXT}</div></td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
<tr>
|
<tr>
|
||||||
<td class="cat" align="center" colspan="2"><!-- IF S_POST_REPORTED --><input class="btnmain" type="submit" value="{L_CLOSE_REPORT}" name="action[close]" /><!-- ELSE -->{L_REPORT_CLOSED}<!-- ENDIF --> <input class="btnlite" type="submit" value="{L_DELETE_REPORT}" name="action[delete]" /></td>
|
<td class="cat" align="center" colspan="2"><!-- IF S_POST_REPORTED --><input class="btnmain" type="submit" value="{L_CLOSE_REPORT}" name="action[close]" /><!-- ELSE -->{L_REPORT_CLOSED}<!-- ENDIF --> <input class="btnlite" type="submit" value="{L_DELETE_REPORT}" name="action[delete]" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
<input type="hidden" name="post_id_list[]" value="{POST_ID}" />
|
<input type="hidden" name="post_id_list[]" value="{POST_ID}" />
|
||||||
</table></form>
|
</form>
|
||||||
|
|
||||||
<br clear="all"/>
|
<br clear="all"/>
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
|
|
||||||
<!-- IF S_MCP_QUEUE --><form method="post" name="mcp_approve" action="{U_APPROVE_ACTION}"><!-- ELSE --><form method="post" name="mcp_report" action="{U_CLOSE_ACTION}"><!-- ENDIF --><table width="100%" cellpadding="3" cellspacing="1" border="0" class="tablebg">
|
<!-- IF S_MCP_QUEUE --><form method="post" name="mcp_approve" action="{U_APPROVE_ACTION}"><!-- ELSE --><form method="post" name="mcp_report" action="{U_CLOSE_ACTION}"><!-- ENDIF -->
|
||||||
|
|
||||||
|
<table width="100%" cellpadding="3" cellspacing="1" border="0" class="tablebg">
|
||||||
<tr>
|
<tr>
|
||||||
<th colspan="2" height="28" align="center">{L_POST_DETAILS}</th>
|
<th colspan="2" height="28" align="center">{L_POST_DETAILS}</th>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -72,6 +78,7 @@
|
||||||
<input type="hidden" name="post_id_list[]" value="{POST_ID}" />
|
<input type="hidden" name="post_id_list[]" value="{POST_ID}" />
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
<!-- IF S_MCP_QUEUE -->
|
<!-- IF S_MCP_QUEUE -->
|
||||||
|
|
|
@ -1,41 +1,46 @@
|
||||||
<!-- INCLUDE mcp_header.html -->
|
<!-- INCLUDE mcp_header.html -->
|
||||||
|
|
||||||
<table width="100%" class="tablebg" cellspacing="1" cellpadding="4" border="0"><form name="mcp" id="mcp" method="post" action="{S_MCP_ACTION}">
|
<form name="mcp" id="mcp" method="post" action="{S_MCP_ACTION}">
|
||||||
<tr>
|
|
||||||
<th colspan="6" height="28" nowrap="nowrap">{L_DISPLAY_OPTIONS}</th>
|
<table width="100%" class="tablebg" cellspacing="1" cellpadding="4" border="0">
|
||||||
</tr>
|
<tr>
|
||||||
<tr>
|
<th colspan="6" height="28" nowrap="nowrap">{L_DISPLAY_OPTIONS}</th>
|
||||||
<td colspan="5" class="cat" height="28" align="center"><span class="gensmall">{L_DISPLAY_ITEMS}:</span> {S_SELECT_SORT_DAYS} <span class="gensmall">{L_SORT_BY}</span> {S_SELECT_SORT_KEY} {S_SELECT_SORT_DIR} <span class="gensmall">{L_FORUM}</span> <select name="f">{S_FORUM_OPTIONS}</select> <!-- IF TOPIC_ID --><input type="checkbox" class="radio" name="t" value="{TOPIC_ID}" checked="checked" /> <b>{L_ONLY_TOPIC}</b> <!-- ENDIF --><input class="btnlite" type="submit" name="sort" value="{L_GO}" /></span></td>
|
</tr>
|
||||||
</tr>
|
<tr>
|
||||||
<tr>
|
<td colspan="5" class="cat" height="28" align="center"><span class="gensmall">{L_DISPLAY_ITEMS}:</span> {S_SELECT_SORT_DAYS} <span class="gensmall">{L_SORT_BY}</span> {S_SELECT_SORT_KEY} {S_SELECT_SORT_DIR} <span class="gensmall">{L_FORUM}</span> <select name="f">{S_FORUM_OPTIONS}</select> <!-- IF TOPIC_ID --><input type="checkbox" class="radio" name="t" value="{TOPIC_ID}" checked="checked" /> <b>{L_ONLY_TOPIC}</b> <!-- ENDIF --><input class="btnlite" type="submit" name="sort" value="{L_GO}" /></span></td>
|
||||||
<th height="28"> {L_TOPIC} </th>
|
</tr>
|
||||||
<th> {L_AUTHOR} </th>
|
<tr>
|
||||||
<th> {L_POST_TIME} </th>
|
<th height="28"> {L_TOPIC} </th>
|
||||||
<th width="5%"> {L_SELECT} </th>
|
<th> {L_AUTHOR} </th>
|
||||||
</tr>
|
<th> {L_POST_TIME} </th>
|
||||||
<!-- BEGIN postrow -->
|
<th width="5%"> {L_SELECT} </th>
|
||||||
|
</tr>
|
||||||
|
<!-- BEGIN postrow -->
|
||||||
|
|
||||||
<!-- IF postrow.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
|
<!-- IF postrow.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
|
||||||
<td style="padding: 4px;"><p class="topictitle"><a href="{postrow.U_VIEWTOPIC}">{postrow.TOPIC_TITLE}</a></p>
|
<td style="padding: 4px;"><p class="topictitle"><a href="{postrow.U_VIEWTOPIC}">{postrow.TOPIC_TITLE}</a></p>
|
||||||
<span class="gensmall"><!-- IF postrow.U_VIEWFORUM -->{L_FORUM}: <a href="{postrow.U_VIEWFORUM}">{postrow.FORUM_NAME}</a><!-- ELSE -->{postrow.FORUM_NAME}<!-- ENDIF --></span></td>
|
<span class="gensmall"><!-- IF postrow.U_VIEWFORUM -->{L_FORUM}: <a href="{postrow.U_VIEWFORUM}">{postrow.FORUM_NAME}</a><!-- ELSE -->{postrow.FORUM_NAME}<!-- ENDIF --></span></td>
|
||||||
<td style="padding: 4px;" align="left" valign="top" nowrap="nowrap"><span class="gen"><!-- IF postrow.U_VIEWPROFILE --><a href="{postrow.U_VIEWPROFILE}">{postrow.POSTER}</a><!-- ELSE -->{postrow.POSTER}<!-- ENDIF --></span><br />
|
<td style="padding: 4px;" align="left" valign="top" nowrap="nowrap"><span class="gen"><!-- IF postrow.U_VIEWPROFILE --><a href="{postrow.U_VIEWPROFILE}">{postrow.POSTER}</a><!-- ELSE -->{postrow.POSTER}<!-- ENDIF --></span><br />
|
||||||
<span class="gensmall">[ <a href="{postrow.U_VIEW_DETAILS}">{L_VIEW_DETAILS}</a> ]</span></td>
|
<span class="gensmall">[ <a href="{postrow.U_VIEW_DETAILS}">{L_VIEW_DETAILS}</a> ]</span></td>
|
||||||
<td class="postdetails" style="padding: 4px;" align="left" valign="top" nowrap="nowrap">{postrow.POST_TIME}</td>
|
<td class="postdetails" style="padding: 4px;" align="left" valign="top" nowrap="nowrap">{postrow.POST_TIME}</td>
|
||||||
<td align="center">{postrow.S_CHECKBOX}</td>
|
<td align="center"><input type="checkbox" class="radio" name="post_id_list[]" value="{postrow.POST_ID}" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- BEGINELSE -->
|
<!-- BEGINELSE -->
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1" colspan="6" height="30" align="center" valign="middle"><span class="gen">{L_NO_POSTS}</span></td>
|
<td class="row1" colspan="6" height="30" align="center" valign="middle"><span class="gen">{L_NO_POSTS}</span></td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- END postrow -->
|
<!-- END postrow -->
|
||||||
<tr>
|
<tr>
|
||||||
<td class="cat" colspan="6" height="28" align="center"><input class="btnmain" type="submit" name="action[approve]" value="{L_APPROVE}" /> <input class="btnlite" type="submit" name="action[disapprove]" value="{L_DISAPPROVE}" /></td>
|
<td class="cat" colspan="6" height="28" align="center"><input class="btnmain" type="submit" name="action[approve]" value="{L_APPROVE}" /> <input class="btnlite" type="submit" name="action[disapprove]" value="{L_DISAPPROVE}" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
</form></table>
|
</table>
|
||||||
|
|
||||||
|
</form>
|
||||||
|
|
||||||
<table width="100%" cellspacing="2" cellpadding="2" border="0" align="center">
|
<table width="100%" cellspacing="2" cellpadding="2" border="0" align="center">
|
||||||
<tr>
|
<tr>
|
||||||
<td align="right" valign="top" nowrap="nowrap"><b class="gensmall"><a href="javascript:marklist('mcp', '', true);">{L_MARK_ALL}</a> :: <a href="javascript:marklist('mcp', '', false);">{L_UNMARK_ALL}</a></b></td>
|
<td align="right" valign="top" nowrap="nowrap"><b class="gensmall"><a href="javascript:marklist('mcp', '', true);">{L_MARK_ALL}</a> :: <a href="javascript:marklist('mcp', '', false);">{L_UNMARK_ALL}</a></b></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<!-- INCLUDE mcp_footer.html -->
|
<!-- INCLUDE mcp_footer.html -->
|
|
@ -1,20 +1,23 @@
|
||||||
<!-- INCLUDE mcp_header.html -->
|
<!-- INCLUDE mcp_header.html -->
|
||||||
|
|
||||||
<table width="100%" class="tablebg" cellspacing="1" cellpadding="4" border="0"><form name="mcp" id="mcp" method="post" action="{S_MCP_ACTION}">
|
<form name="mcp" id="mcp" method="post" action="{S_MCP_ACTION}">
|
||||||
<tr>
|
|
||||||
<th colspan="5" height="28" nowrap="nowrap">{L_DISPLAY_OPTIONS}</th>
|
<table width="100%" class="tablebg" cellspacing="1" cellpadding="4" border="0">
|
||||||
</tr>
|
<tr>
|
||||||
<tr>
|
<th colspan="5" height="28" nowrap="nowrap">{L_DISPLAY_OPTIONS}</th>
|
||||||
<td colspan="5" class="cat" height="28" align="center"><span class="gensmall">{L_DISPLAY_POSTS}:</span> {S_SELECT_SORT_DAYS} <span class="gensmall">{L_SORT_BY}</span> {S_SELECT_SORT_KEY} {S_SELECT_SORT_DIR} <span class="gensmall">{L_FORUM}</span> <select name="f">{S_FORUM_OPTIONS}</select> <!-- IF TOPIC_ID --><input type="checkbox" class="radio" name="t" value="{TOPIC_ID}" checked="checked" /> <b>{L_ONLY_TOPIC}</b> <!-- ENDIF --><input class="btnlite" type="submit" name="sort" value="{L_GO}" /></span></td>
|
</tr>
|
||||||
</tr>
|
<tr>
|
||||||
<tr>
|
<td colspan="5" class="cat" height="28" align="center"><span class="gensmall">{L_DISPLAY_POSTS}:</span> {S_SELECT_SORT_DAYS} <span class="gensmall">{L_SORT_BY}</span> {S_SELECT_SORT_KEY} {S_SELECT_SORT_DIR} <span class="gensmall">{L_FORUM}</span> <select name="f">{S_FORUM_OPTIONS}</select> <!-- IF TOPIC_ID --><input type="checkbox" class="radio" name="t" value="{TOPIC_ID}" checked="checked" /> <b>{L_ONLY_TOPIC}</b> <!-- ENDIF --><input class="btnlite" type="submit" name="sort" value="{L_GO}" /></span></td>
|
||||||
<th height="28"> {L_POST} </th>
|
</tr>
|
||||||
<th> {L_AUTHOR} </th>
|
<tr>
|
||||||
<th> {L_REPORTER} </th>
|
<th height="28"> {L_POST} </th>
|
||||||
<th> {L_REPORT_TIME} </th>
|
<th> {L_AUTHOR} </th>
|
||||||
<th width="5%"> {L_SELECT} </th>
|
<th> {L_REPORTER} </th>
|
||||||
</tr>
|
<th> {L_REPORT_TIME} </th>
|
||||||
<!-- BEGIN postrow -->
|
<th width="5%"> {L_SELECT} </th>
|
||||||
|
</tr>
|
||||||
|
<!-- BEGIN postrow -->
|
||||||
|
|
||||||
<!-- IF postrow.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
|
<!-- IF postrow.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
|
||||||
<td style="padding: 4px;"><p class="topictitle"><a href="{postrow.U_VIEWTOPIC}">{postrow.POST_SUBJECT}</a></p>
|
<td style="padding: 4px;"><p class="topictitle"><a href="{postrow.U_VIEWTOPIC}">{postrow.POST_SUBJECT}</a></p>
|
||||||
<span class="gensmall">{L_TOPIC}: <a href="{postrow.U_VIEWTOPIC}">{postrow.TOPIC_TITLE}</a></span><br />
|
<span class="gensmall">{L_TOPIC}: <a href="{postrow.U_VIEWTOPIC}">{postrow.TOPIC_TITLE}</a></span><br />
|
||||||
|
@ -24,28 +27,30 @@
|
||||||
<td style="padding: 4px;" align="left" valign="top" nowrap="nowrap"><span class="gen"><!-- IF postrow.U_VIEW_REPORTER_PROFILE --><a href="{postrow.U_VIEW_REPOTER_PROFILE}">{postrow.REPORTER}</a><!-- ELSE -->{postrow.REPORTER}<!-- ENDIF --></span></td>
|
<td style="padding: 4px;" align="left" valign="top" nowrap="nowrap"><span class="gen"><!-- IF postrow.U_VIEW_REPORTER_PROFILE --><a href="{postrow.U_VIEW_REPOTER_PROFILE}">{postrow.REPORTER}</a><!-- ELSE -->{postrow.REPORTER}<!-- ENDIF --></span></td>
|
||||||
<td style="padding: 4px;" align="left" valign="top" nowrap="nowrap"><span class="gen">{postrow.REPORT_TIME}</span><br />
|
<td style="padding: 4px;" align="left" valign="top" nowrap="nowrap"><span class="gen">{postrow.REPORT_TIME}</span><br />
|
||||||
<span class="gensmall">[ <a href="{postrow.U_VIEW_DETAILS}">{L_VIEW_DETAILS}</a> ]</span></td>
|
<span class="gensmall">[ <a href="{postrow.U_VIEW_DETAILS}">{L_VIEW_DETAILS}</a> ]</span></td>
|
||||||
<td align="center">{postrow.S_CHECKBOX}</td>
|
<td align="center"><input type="checkbox" class="radio" name="post_id_list[]" value="{postrow.POST_ID}" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- BEGINELSE -->
|
<!-- BEGINELSE -->
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1" colspan="5" height="30" align="center" valign="middle"><span class="gen">{L_NO_POSTS}</span></td>
|
<td class="row1" colspan="5" height="30" align="center" valign="middle"><span class="gen">{L_NO_POSTS}</span></td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- END postrow -->
|
<!-- END postrow -->
|
||||||
<tr>
|
<tr>
|
||||||
<td class="cat" colspan="5" height="28" align="center">
|
<td class="cat" colspan="5" height="28" align="center">
|
||||||
<!-- IF S_CLOSED -->
|
<!-- IF S_CLOSED -->
|
||||||
<input class="btnmain" type="submit" value="{L_DELETE_REPORTS}" name="action[delete]" />
|
<input class="btnmain" type="submit" value="{L_DELETE_REPORTS}" name="action[delete]" />
|
||||||
<!-- ELSE -->
|
<!-- ELSE -->
|
||||||
<input class="btnmain" type="submit" name="action[close]" value="{L_CLOSE_REPORTS}" /> <input class="btnlite" type="submit" value="{L_DELETE_REPORTS}" name="action[delete]" />
|
<input class="btnmain" type="submit" name="action[close]" value="{L_CLOSE_REPORTS}" /> <input class="btnlite" type="submit" value="{L_DELETE_REPORTS}" name="action[delete]" />
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</form></table>
|
</table>
|
||||||
|
|
||||||
|
</form>
|
||||||
|
|
||||||
<table width="100%" cellspacing="2" cellpadding="2" border="0" align="center">
|
<table width="100%" cellspacing="2" cellpadding="2" border="0" align="center">
|
||||||
<tr>
|
<tr>
|
||||||
<td align="right" valign="top" nowrap="nowrap"><b class="gensmall"><a href="javascript:marklist('mcp', '', true);">{L_MARK_ALL}</a> :: <a href="javascript:marklist('mcp', '', false);">{L_UNMARK_ALL}</a></b></td>
|
<td align="right" valign="top" nowrap="nowrap"><b class="gensmall"><a href="javascript:marklist('mcp', '', true);">{L_MARK_ALL}</a> :: <a href="javascript:marklist('mcp', '', false);">{L_UNMARK_ALL}</a></b></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<!-- INCLUDE mcp_footer.html -->
|
<!-- INCLUDE mcp_footer.html -->
|
|
@ -1,7 +1,9 @@
|
||||||
<!-- INCLUDE mcp_header.html -->
|
<!-- INCLUDE mcp_header.html -->
|
||||||
|
|
||||||
<form name="mcp" id="mcp" method="post" action="{S_MCP_ACTION}"><table class="tablebg" width="100%" cellspacing="1">
|
<form name="mcp" id="mcp" method="post" action="{S_MCP_ACTION}">
|
||||||
<!-- IF S_CAN_SPLIT -->
|
|
||||||
|
<table class="tablebg" width="100%" cellspacing="1">
|
||||||
|
<!-- IF S_CAN_SPLIT -->
|
||||||
<tr>
|
<tr>
|
||||||
<th colspan="3" nowrap="nowrap">{L_SPLIT_TOPIC}</th>
|
<th colspan="3" nowrap="nowrap">{L_SPLIT_TOPIC}</th>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -16,18 +18,22 @@
|
||||||
<td class="row1" nowrap="nowrap"><span class="gen">{L_SPLIT_FORUM}</span></td>
|
<td class="row1" nowrap="nowrap"><span class="gen">{L_SPLIT_FORUM}</span></td>
|
||||||
<td class="row2" colspan="2">{S_FORUM_SELECT}</td>
|
<td class="row2" colspan="2">{S_FORUM_SELECT}</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<!-- IF S_SHOW_TOPIC_ICONS -->
|
<!-- IF S_SHOW_TOPIC_ICONS -->
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1"><span class="gen">{L_TOPIC_ICON}</span></td>
|
<td class="row1"><span class="gen">{L_TOPIC_ICON}</span></td>
|
||||||
<td class="row2" colspan="2"><table width="100%" cellspacing="0" cellpadding="0" border="0">
|
<td class="row2" colspan="2">
|
||||||
<tr>
|
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
||||||
<td><input type="radio" class="radio" name="icon" value="0"<!-- IF not S_TOPIC_ICON --> checked="checked"<!-- ENDIF --> /><span class="genmed">{L_NONE}</span> <!-- BEGIN topic_icon --><input type="radio" class="radio" name="icon" value="{topic_icon.ICON_ID}"<!-- IF topic_icon.S_CHECKED --> checked="checked"<!-- ENDIF --> /><img src="{topic_icon.ICON_IMG}" width="{topic_icon.ICON_WIDTH}" height="{topic_icon.ICON_HEIGHT}" alt="" title="" hspace="2" vspace="2" /> <!-- END topic_icon --></td>
|
<tr>
|
||||||
</tr>
|
<td><input type="radio" class="radio" name="icon" value="0"<!-- IF not S_TOPIC_ICON --> checked="checked"<!-- ENDIF --> /><span class="genmed">{L_NONE}</span> <!-- BEGIN topic_icon --><input type="radio" class="radio" name="icon" value="{topic_icon.ICON_ID}"<!-- IF topic_icon.S_CHECKED --> checked="checked"<!-- ENDIF --> /><img src="{topic_icon.ICON_IMG}" width="{topic_icon.ICON_WIDTH}" height="{topic_icon.ICON_HEIGHT}" alt="" title="" hspace="2" vspace="2" /> <!-- END topic_icon --></td>
|
||||||
</table></td>
|
</tr>
|
||||||
</tr>
|
</table>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
<!-- IF S_CAN_MERGE -->
|
|
||||||
|
<!-- IF S_CAN_MERGE -->
|
||||||
<tr>
|
<tr>
|
||||||
<th colspan="3" nowrap="nowrap">{L_MERGE_TOPIC}</th>
|
<th colspan="3" nowrap="nowrap">{L_MERGE_TOPIC}</th>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -39,97 +45,96 @@
|
||||||
<td class="row2" colspan="2"><input class="post" type="text" size="6" name="to_topic_id" value="{TO_TOPIC_ID}" /> <a href="{U_SELECT_TOPIC}">{L_SELECT_TOPIC}</a></td>
|
<td class="row2" colspan="2"><input class="post" type="text" size="6" name="to_topic_id" value="{TO_TOPIC_ID}" /> <a href="{U_SELECT_TOPIC}">{L_SELECT_TOPIC}</a></td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- IF TO_TOPIC_INFO -->
|
<!-- IF TO_TOPIC_INFO -->
|
||||||
<tr>
|
|
||||||
<td class="row3" colspan="3" align="center"><b class="gen">{TO_TOPIC_INFO}</b></td>
|
|
||||||
</tr>
|
|
||||||
<!-- ENDIF -->
|
|
||||||
<!-- ENDIF -->
|
|
||||||
<tr>
|
|
||||||
<th colspan="3" nowrap="nowrap">{L_DISPLAY_OPTIONS}</th>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="row1" nowrap="nowrap"><span class="gen">{L_POSTS_PER_PAGE}</span><br /><span class="gensmall">{L_POSTS_PER_PAGE_EXPLAIN}</span</td>
|
|
||||||
<td class="row2" colspan="2"><input class="post" type="text" name="posts_per_page" size="6" value="{POSTS_PER_PAGE}"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="cat" colspan="3" height="28" align="center"><span class="gensmall">{L_DISPLAY_POSTS}:</span> {S_SELECT_SORT_DAYS} <span class="gensmall">{L_SORT_BY}</span> {S_SELECT_SORT_KEY} {S_SELECT_SORT_DIR} <input class="btnlite" type="submit" name="sort" value="{L_GO}" /></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<th height="28" nowrap="nowrap">{L_AUTHOR}</th>
|
|
||||||
<th nowrap="nowrap">{L_MESSAGE}</th>
|
|
||||||
<th nowrap="nowrap">{L_SELECT}</th>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="row3" colspan="3" align="center"><span class="gensmall">{RETURN_TOPIC}</span></td>
|
|
||||||
</tr>
|
|
||||||
<!-- BEGIN postrow -->
|
|
||||||
<!-- IF postrow.S_ROW_COUNT is even -->
|
|
||||||
<tr class="row1">
|
|
||||||
<!-- ELSE -->
|
|
||||||
<tr class="row2">
|
|
||||||
<!-- ENDIF -->
|
|
||||||
|
|
||||||
<td align="center"><b class="postauthor">{postrow.POSTER_NAME}</b></td>
|
|
||||||
<td width="100%" height="28"><table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr valign="top">
|
|
||||||
<td class="gensmall" nowrap="nowrap"> <b>{L_POST_SUBJECT}:</b> </td>
|
|
||||||
<td class="gensmall" width="100%">{postrow.POST_SUBJECT}</td>
|
|
||||||
</tr>
|
|
||||||
</table></td>
|
|
||||||
<td rowspan="2" width="5%" align="center">{postrow.S_CHECKBOX}</td>
|
|
||||||
</tr>
|
|
||||||
<!-- IF postrow.S_ROW_COUNT is even -->
|
|
||||||
<tr class="row1">
|
|
||||||
<!-- ELSE -->
|
|
||||||
<tr class="row2">
|
|
||||||
<!-- ENDIF -->
|
|
||||||
<td valign="bottom">
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr valign="middle">
|
|
||||||
<td height="28" align="center"><span class="gensmall">[ <a href="{postrow.U_POST_DETAILS}">{L_POST_DETAILS}</a> ]</span></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
<td width="100%" valign="top"><table width="100%" cellspacing="0" cellpadding="2" border="0">
|
|
||||||
<tr>
|
|
||||||
<td class="postbody" valign="top">{postrow.MESSAGE}<br /><br /></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td valign="bottom">
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
|
||||||
<tr valign="middle">
|
|
||||||
<td width="100%">
|
|
||||||
<!-- IF postrow.S_POST_UNAPPROVED -->{UNAPPROVED_IMG} <span class="postapprove"><a href="{postrow.U_MCP_APPROVE}">{L_POST_UNAPPROVED}</a></span><!-- ENDIF -->
|
|
||||||
<!-- IF postrow.S_POST_REPORTED -->{REPORTED_IMG}<span class="postreported"><a href="{postrow.U_MCP_REPORT}">{L_POST_REPORTED}</a></span><!-- ENDIF -->
|
|
||||||
</td>
|
|
||||||
<td width="10" nowrap="nowrap">{postrow.MINI_POST_IMG}</td>
|
|
||||||
<td class="gensmall" nowrap="nowrap"><b>{L_POSTED}:</b> {postrow.POST_DATE}</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row3" colspan="3" height="1"><img src="images/spacer.gif" width="1" height="1" alt="" /></td>
|
<td class="row3" colspan="3" align="center"><b class="gen">{TO_TOPIC_INFO}</b></td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- END postrow -->
|
<!-- ENDIF -->
|
||||||
<tr>
|
<!-- ENDIF -->
|
||||||
<td class="cat" colspan="3" height="28" align="center"><select name="action"><option value="" selected="selected">{L_SELECT_ACTION}</option>
|
<tr>
|
||||||
<!-- IF S_CAN_APPROVE --><option value="approve">{L_APPROVE_POSTS}</option><!-- ENDIF -->
|
<th colspan="3" nowrap="nowrap">{L_DISPLAY_OPTIONS}</th>
|
||||||
<!-- IF S_CAN_LOCK --><option value="lock_post">{L_LOCK_POST_POSTS} [ {L_LOCK_POST_EXPLAIN} ]</option><option value="unlock_post">{L_UNLOCK_POST_POSTS}</option><!-- ENDIF -->
|
</tr>
|
||||||
<!-- IF S_CAN_DELETE --><option value="delete_post">{L_DELETE_POSTS}</option><!-- ENDIF -->
|
<tr>
|
||||||
<!-- IF S_CAN_MERGE --><option value="merge_posts"<!-- IF ACTION eq 'merge' --> selected="selected"<!-- ENDIF -->>{L_MERGE_POSTS}</option><!-- ENDIF -->
|
<td class="row1" nowrap="nowrap"><span class="gen">{L_POSTS_PER_PAGE}</span><br /><span class="gensmall">{L_POSTS_PER_PAGE_EXPLAIN}</span</td>
|
||||||
<!-- IF S_CAN_SPLIT --><option value="split_all"<!-- IF ACTION eq 'split' --> selected="selected"<!-- ENDIF -->>{L_SPLIT_POSTS}</option><option value="split_beyond">{L_SPLIT_AFTER}</option><!-- ENDIF -->
|
<td class="row2" colspan="2"><input class="post" type="text" name="posts_per_page" size="6" value="{POSTS_PER_PAGE}"></td>
|
||||||
</select> <input class="btnmain" type="submit" name="mcp_topic_submit" value="{L_SUBMIT}"></form></td>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="cat" colspan="3" height="28" align="center"><span class="gensmall">{L_DISPLAY_POSTS}:</span> {S_SELECT_SORT_DAYS} <span class="gensmall">{L_SORT_BY}</span> {S_SELECT_SORT_KEY} {S_SELECT_SORT_DIR} <input class="btnlite" type="submit" name="sort" value="{L_GO}" /></span></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th height="28" nowrap="nowrap">{L_AUTHOR}</th>
|
||||||
|
<th nowrap="nowrap">{L_MESSAGE}</th>
|
||||||
|
<th nowrap="nowrap">{L_SELECT}</th>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="row3" colspan="3" align="center"><span class="gensmall">{RETURN_TOPIC}</span></td>
|
||||||
|
</tr>
|
||||||
|
<!-- BEGIN postrow -->
|
||||||
|
|
||||||
|
<!-- IF postrow.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
|
||||||
|
|
||||||
|
<td align="center"><b class="postauthor">{postrow.POSTER_NAME}</b></td>
|
||||||
|
<td width="100%" height="28">
|
||||||
|
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
||||||
|
<tr valign="top">
|
||||||
|
<td class="gensmall" nowrap="nowrap"> <b>{L_POST_SUBJECT}:</b> </td>
|
||||||
|
<td class="gensmall" width="100%">{postrow.POST_SUBJECT}</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</td>
|
||||||
|
<td rowspan="2" width="5%" align="center"><input type="checkbox" class="radio" name="post_id_list[]" value="{postrow.POST_ID}"<!-- IF postrow.S_CHECKED --> checked="checked"<!-- ENDIF --> /></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
|
<!-- IF postrow.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
|
||||||
|
|
||||||
|
<td valign="bottom">
|
||||||
|
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
||||||
|
<tr valign="middle">
|
||||||
|
<td height="28" align="center"><span class="gensmall">[ <a href="{postrow.U_POST_DETAILS}">{L_POST_DETAILS}</a> ]</span></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</td>
|
||||||
|
<td width="100%" valign="top">
|
||||||
|
<table width="100%" cellspacing="0" cellpadding="2" border="0">
|
||||||
|
<tr>
|
||||||
|
<td class="postbody" valign="top">{postrow.MESSAGE}<br /><br /></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td valign="bottom">
|
||||||
|
<table width="100%" cellspacing="0" cellpadding="0" border="0">
|
||||||
|
<tr valign="middle">
|
||||||
|
<td width="100%">
|
||||||
|
<!-- IF postrow.S_POST_UNAPPROVED -->{UNAPPROVED_IMG} <span class="postapprove"><a href="{postrow.U_MCP_APPROVE}">{L_POST_UNAPPROVED}</a></span><!-- ENDIF -->
|
||||||
|
<!-- IF postrow.S_POST_REPORTED -->{REPORTED_IMG}<span class="postreported"><a href="{postrow.U_MCP_REPORT}">{L_POST_REPORTED}</a></span><!-- ENDIF -->
|
||||||
|
</td>
|
||||||
|
<td width="10" nowrap="nowrap">{postrow.MINI_POST_IMG}</td>
|
||||||
|
<td class="gensmall" nowrap="nowrap"><b>{L_POSTED}:</b> {postrow.POST_DATE}</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="row3" colspan="3" height="1"><img src="images/spacer.gif" width="1" height="1" alt="" /></td>
|
||||||
|
</tr>
|
||||||
|
<!-- END postrow -->
|
||||||
|
<tr>
|
||||||
|
<td class="cat" colspan="3" height="28" align="center"><select name="action"><option value="" selected="selected">{L_SELECT_ACTION}</option>
|
||||||
|
<!-- IF S_CAN_APPROVE --><option value="approve">{L_APPROVE_POSTS}</option><!-- ENDIF -->
|
||||||
|
<!-- IF S_CAN_LOCK --><option value="lock_post">{L_LOCK_POST_POSTS} [ {L_LOCK_POST_EXPLAIN} ]</option><option value="unlock_post">{L_UNLOCK_POST_POSTS}</option><!-- ENDIF -->
|
||||||
|
<!-- IF S_CAN_DELETE --><option value="delete_post">{L_DELETE_POSTS}</option><!-- ENDIF -->
|
||||||
|
<!-- IF S_CAN_MERGE --><option value="merge_posts"<!-- IF ACTION eq 'merge' --> selected="selected"<!-- ENDIF -->>{L_MERGE_POSTS}</option><!-- ENDIF -->
|
||||||
|
<!-- IF S_CAN_SPLIT --><option value="split_all"<!-- IF ACTION eq 'split' --> selected="selected"<!-- ENDIF -->>{L_SPLIT_POSTS}</option><option value="split_beyond">{L_SPLIT_AFTER}</option><!-- ENDIF -->
|
||||||
|
</select> <input class="btnmain" type="submit" name="mcp_topic_submit" value="{L_SUBMIT}"></form></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
<table width="100%" cellspacing="2" cellpadding="2" border="0" align="center">
|
<table width="100%" cellspacing="2" cellpadding="2" border="0" align="center">
|
||||||
<tr>
|
<tr>
|
||||||
<td align="right" valign="top" nowrap="nowrap"><b class="gensmall"><a href="javascript:marklist('mcp', '', true);">{L_MARK_ALL}</a> :: <a href="javascript:marklist('mcp', '', false);">{L_UNMARK_ALL}</a></b></td>
|
<td align="right" valign="top" nowrap="nowrap"><b class="gensmall"><a href="javascript:marklist('mcp', '', true);">{L_MARK_ALL}</a> :: <a href="javascript:marklist('mcp', '', false);">{L_UNMARK_ALL}</a></b></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<!-- INCLUDE mcp_footer.html -->
|
<!-- INCLUDE mcp_footer.html -->
|
|
@ -1,28 +1,29 @@
|
||||||
<!-- INCLUDE mcp_header.html -->
|
<!-- INCLUDE mcp_header.html -->
|
||||||
|
|
||||||
<table class="tablebg" width="100%" cellspacing="1" cellpadding="2" border="0">
|
|
||||||
<form method="post" name="mcp" action="{S_MCP_ACTION}">
|
<form method="post" name="mcp" action="{S_MCP_ACTION}">
|
||||||
<tr>
|
|
||||||
<th colspan="<!-- IF S_TOPIC_ID -->4<!-- ELSE -->5<!-- ENDIF -->" height="28" nowrap="nowrap">{L_DISPLAY_OPTIONS}</th>
|
<table class="tablebg" width="100%" cellspacing="1" cellpadding="2" border="0">
|
||||||
</tr>
|
<tr>
|
||||||
<tr>
|
<th colspan="<!-- IF S_TOPIC_ID -->4<!-- ELSE -->5<!-- ENDIF -->" height="28" nowrap="nowrap">{L_DISPLAY_OPTIONS}</th>
|
||||||
<td colspan="<!-- IF S_TOPIC_ID -->4<!-- ELSE -->5<!-- ENDIF -->" class="cat" height="28" align="center"><span class="gensmall">{L_DISPLAY_LOG}:</span> {S_SELECT_SORT_DAYS} <span class="gensmall">{L_SORT_BY}</span> {S_SELECT_SORT_KEY} {S_SELECT_SORT_DIR} <input class="btnlite" type="submit" name="sort" value="{L_GO}" /></span></td>
|
</tr>
|
||||||
</tr>
|
<tr>
|
||||||
<tr>
|
<td colspan="<!-- IF S_TOPIC_ID -->4<!-- ELSE -->5<!-- ENDIF -->" class="cat" height="28" align="center"><span class="gensmall">{L_DISPLAY_LOG}:</span> {S_SELECT_SORT_DAYS} <span class="gensmall">{L_SORT_BY}</span> {S_SELECT_SORT_KEY} {S_SELECT_SORT_DIR} <input class="btnlite" type="submit" name="sort" value="{L_GO}" /></span></td>
|
||||||
<th width="15%" height="28" nowrap="nowrap">{L_USERNAME}</th>
|
</tr>
|
||||||
<th width="12%" nowrap="nowrap">{L_IP}</th>
|
<tr>
|
||||||
<th width="18%" nowrap="nowrap">{L_TIME}</th>
|
<th width="15%" height="28" nowrap="nowrap">{L_USERNAME}</th>
|
||||||
<th width="45%" nowrap="nowrap">{L_ACTION}</th>
|
<th width="12%" nowrap="nowrap">{L_IP}</th>
|
||||||
<!-- IF not S_TOPIC_ID -->
|
<th width="18%" nowrap="nowrap">{L_TIME}</th>
|
||||||
|
<th width="45%" nowrap="nowrap">{L_ACTION}</th>
|
||||||
|
<!-- IF not S_TOPIC_ID -->
|
||||||
<th width="8%" nowrap="nowrap"></th>
|
<th width="8%" nowrap="nowrap"></th>
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
</tr>
|
</tr>
|
||||||
<!-- IF S_TOPIC_ID -->
|
<!-- IF S_TOPIC_ID -->
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row3" colspan="5"><span class="gensmall">{L_LOGS_CURRENT_TOPIC} <a href="{U_VIEWTOPIC}"><b>{TOPIC_NAME}</b></a></td>
|
<td class="row3" colspan="5"><span class="gensmall">{L_LOGS_CURRENT_TOPIC} <a href="{U_VIEWTOPIC}"><b>{TOPIC_NAME}</b></a></td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
<!-- BEGIN log -->
|
<!-- BEGIN log -->
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1" nowrap="nowrap"><span class="gen">{log.USERNAME}</span></td>
|
<td class="row1" nowrap="nowrap"><span class="gen">{log.USERNAME}</span></td>
|
||||||
<td class="row1" align="center" nowrap="nowrap"><span class="gen">{log.IP}</span></td>
|
<td class="row1" align="center" nowrap="nowrap"><span class="gen">{log.IP}</span></td>
|
||||||
|
@ -32,19 +33,20 @@
|
||||||
<td class="row1" align="center" nowrap="nowrap"><span class="gensmall"><!-- IF log.U_VIEWTOPIC --><a href="{log.U_VIEWTOPIC}">{L_VIEW_TOPIC}</a><!-- IF log.U_VIEWLOGS --> | <!-- ENDIF --><!-- ENDIF --><!-- IF log.U_VIEWLOGS --><a href="{log.U_VIEWLOGS}">{L_VIEW_TOPIC_LOGS}</a><!-- ENDIF --></span></td>
|
<td class="row1" align="center" nowrap="nowrap"><span class="gensmall"><!-- IF log.U_VIEWTOPIC --><a href="{log.U_VIEWTOPIC}">{L_VIEW_TOPIC}</a><!-- IF log.U_VIEWLOGS --> | <!-- ENDIF --><!-- ENDIF --><!-- IF log.U_VIEWLOGS --><a href="{log.U_VIEWLOGS}">{L_VIEW_TOPIC_LOGS}</a><!-- ENDIF --></span></td>
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
</tr>
|
</tr>
|
||||||
<!-- BEGINELSE -->
|
<!-- BEGINELSE -->
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1" colspan="<!-- IF S_TOPIC_ID -->4<!-- ELSE -->5<!-- ENDIF -->" align="center"><span class="gen">{L_NO_ENTRIES}</span></td>
|
<td class="row1" colspan="<!-- IF S_TOPIC_ID -->4<!-- ELSE -->5<!-- ENDIF -->" align="center"><span class="gen">{L_NO_ENTRIES}</span></td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- END log -->
|
<!-- END log -->
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<table width="100%" cellspacing="2" cellpadding="2" border="0" align="center">
|
<table width="100%" cellspacing="2" cellpadding="2" border="0" align="center">
|
||||||
<tr>
|
<tr>
|
||||||
<td class="nav" align="left" valign="middle">{PAGE_NUMBER}</td>
|
<td class="nav" align="left" valign="middle">{PAGE_NUMBER}</td>
|
||||||
<td align="right" valign="top" nowrap="nowrap"><!-- IF PAGINATION --><b><a href="javascript:jumpto();">{L_GOTO_PAGE}</a> <!-- IF PREVIOUS_PAGE --><a href="{PREVIOUS_PAGE}">{L_PREVIOUS}</a> <!-- ENDIF -->{PAGINATION}<!-- IF NEXT_PAGE --> <a href="{NEXT_PAGE}">{L_NEXT}</a><!-- ENDIF --></b><!-- ENDIF --></td>
|
<td align="right" valign="top" nowrap="nowrap"><!-- IF PAGINATION --><b><a href="javascript:jumpto();">{L_GOTO_PAGE}</a> <!-- IF PREVIOUS_PAGE --><a href="{PREVIOUS_PAGE}">{L_PREVIOUS}</a> <!-- ENDIF -->{PAGINATION}<!-- IF NEXT_PAGE --> <a href="{NEXT_PAGE}">{L_NEXT}</a><!-- ENDIF --></b><!-- ENDIF --></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<!-- INCLUDE mcp_footer.html -->
|
<!-- INCLUDE mcp_footer.html -->
|
|
@ -1,72 +1,74 @@
|
||||||
<!-- INCLUDE mcp_header.html -->
|
<!-- INCLUDE mcp_header.html -->
|
||||||
|
|
||||||
<form method="post" name="mcp" action="{U_POST_ACTION}">
|
<form method="post" name="mcp" action="{U_POST_ACTION}">
|
||||||
<table class="bg" width="75%" cellspacing="1" cellpadding="4" border="0" align="center">
|
|
||||||
<tr>
|
|
||||||
<th colspan="2"align="center">{L_SELECT_USER}</th>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="row1" width="40%"><b class="gen">{L_FIND_USERNAME}: </b><br /><span class="gensmall">[ <a href="{U_FIND_MEMBER}" onclick="window.open('{U_FIND_MEMBER}', '_phpbbsearch', 'HEIGHT=500,resizable=yes,scrollbars=yes,WIDTH=740');return false;">{L_FIND_USERNAME}</a> ]</span></td>
|
|
||||||
<td class="row2"><input type="text" class="post" name="username" maxlength="50" size="20" /></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="cat" colspan="2" align="center"><input type="submit" name="submituser" value="{L_SUBMIT}" class="btnmain" /></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</form>
|
|
||||||
|
|
||||||
<br clear="all" /><br />
|
<table class="bg" width="75%" cellspacing="1" cellpadding="4" border="0" align="center">
|
||||||
|
<tr>
|
||||||
|
<th colspan="2"align="center">{L_SELECT_USER}</th>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="row1" width="40%"><b class="gen">{L_FIND_USERNAME}: </b><br /><span class="gensmall">[ <a href="{U_FIND_MEMBER}" onclick="window.open('{U_FIND_MEMBER}', '_phpbbsearch', 'HEIGHT=500,resizable=yes,scrollbars=yes,WIDTH=740');return false;">{L_FIND_USERNAME}</a> ]</span></td>
|
||||||
|
<td class="row2"><input type="text" class="post" name="username" maxlength="50" size="20" /></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="cat" colspan="2" align="center"><input type="submit" name="submituser" value="{L_SUBMIT}" class="btnmain" /></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
<table class="tablebg" width="100%" cellspacing="1">
|
</form>
|
||||||
|
|
||||||
|
<br clear="all" /><br />
|
||||||
|
|
||||||
|
<table class="tablebg" width="100%" cellspacing="1">
|
||||||
|
<tr>
|
||||||
|
<td class="row3" colspan="5" align="center"><b class="gen">{L_MOST_WARNINGS}</b></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th> {L_USERNAME} </th>
|
||||||
|
<th> {L_WARNINGS} </th>
|
||||||
|
<th> {L_LATEST_WARNING_TIME} </th>
|
||||||
|
<th> </th>
|
||||||
|
</tr>
|
||||||
|
<!-- BEGIN highest -->
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row3" colspan="5" align="center"><b class="gen">{L_MOST_WARNINGS}</b></td>
|
<td class="row1" width="15%" valign="top"><span class="gen"><a href="{highest.U_USER}">{highest.USERNAME}</a></span></td>
|
||||||
|
<td class="row2" width="15%" valign="top"><span class="gen">{highest.WARNINGS}</span></td>
|
||||||
|
<td class="row1" width="15%" valign="top"><span class="gen">{highest.WARNING_TIME}</span></td>
|
||||||
|
<td class="row2" width="15%" valign="top"><span class="gen"><a href="{highest.U_NOTES}">{L_VIEW_NOTES}</a></span></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<!-- BEGINELSE -->
|
||||||
<tr>
|
<tr>
|
||||||
<th> {L_USERNAME} </th>
|
<td class="row1" colspan="5" align="center"><span class="gen">{L_WARNINGS_ZERO_TOTAL}</span></td>
|
||||||
<th> {L_WARNINGS} </th>
|
|
||||||
<th> {L_LATEST_WARNING_TIME} </th>
|
|
||||||
<th> </th>
|
|
||||||
</tr>
|
</tr>
|
||||||
<!-- BEGIN highest -->
|
<!-- END highest -->
|
||||||
<tr>
|
</table>
|
||||||
<td class="row1" width="15%" valign="top"><span class="gen"><a href="{highest.U_USER}">{highest.USERNAME}</a></span></td>
|
|
||||||
<td class="row2" width="15%" valign="top"><span class="gen">{highest.WARNINGS}</span></td>
|
|
||||||
<td class="row1" width="15%" valign="top"><span class="gen">{highest.WARNING_TIME}</span></td>
|
|
||||||
<td class="row2" width="15%" valign="top"><span class="gen"><a href="{highest.U_NOTES}">{L_VIEW_NOTES}</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<!-- BEGINELSE -->
|
|
||||||
<tr>
|
|
||||||
<td class="row1" colspan="5" align="center"><span class="gen">{L_WARNINGS_ZERO_TOTAL}</span></td>
|
|
||||||
</tr>
|
|
||||||
<!-- END highest -->
|
|
||||||
</table>
|
|
||||||
|
|
||||||
<br clear="all" /><br />
|
<br clear="all" /><br />
|
||||||
|
|
||||||
<table class="tablebg" width="100%" cellspacing="1">
|
<table class="tablebg" width="100%" cellspacing="1">
|
||||||
|
<tr>
|
||||||
|
<td class="row3" colspan="5" align="center"><b class="gen">{L_LATEST_WARNINGS}</b></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th> {L_USERNAME} </th>
|
||||||
|
<th> {L_TIME} </th>
|
||||||
|
<th> {L_TOTAL_WARNINGS} </th>
|
||||||
|
<th> </th>
|
||||||
|
</tr>
|
||||||
|
<!-- BEGIN latest -->
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row3" colspan="5" align="center"><b class="gen">{L_LATEST_WARNINGS}</b></td>
|
<td class="row1" width="15%" valign="top"><span class="gen"><a href="{latest.U_USER}">{latest.USERNAME}</a></span></td>
|
||||||
|
<td class="row2" width="15%" valign="top"><span class="gen">{latest.WARNING_TIME}</span></td>
|
||||||
|
<td class="row1" width="15%" valign="top"><span class="gen">{latest.WARNINGS}</span></td>
|
||||||
|
<td class="row2" width="15%" valign="top"><span class="gen"><a href="{latest.U_NOTES}">{L_VIEW_NOTES}</a></span></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<!-- BEGINELSE -->
|
||||||
<tr>
|
<tr>
|
||||||
<th> {L_USERNAME} </th>
|
<td class="row1" colspan="5" align="center"><span class="gen">{L_WARNINGS_ZERO_TOTAL}</span></td>
|
||||||
<th> {L_TIME} </th>
|
|
||||||
<th> {L_TOTAL_WARNINGS} </th>
|
|
||||||
<th> </th>
|
|
||||||
</tr>
|
</tr>
|
||||||
<!-- BEGIN latest -->
|
<!-- END latest -->
|
||||||
<tr>
|
</table>
|
||||||
<td class="row1" width="15%" valign="top"><span class="gen"><a href="{latest.U_USER}">{latest.USERNAME}</a></span></td>
|
|
||||||
<td class="row2" width="15%" valign="top"><span class="gen">{latest.WARNING_TIME}</span></td>
|
|
||||||
<td class="row1" width="15%" valign="top"><span class="gen">{latest.WARNINGS}</span></td>
|
|
||||||
<td class="row2" width="15%" valign="top"><span class="gen"><a href="{latest.U_NOTES}">{L_VIEW_NOTES}</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<!-- BEGINELSE -->
|
|
||||||
<tr>
|
|
||||||
<td class="row1" colspan="5" align="center"><span class="gen">{L_WARNINGS_ZERO_TOTAL}</span></td>
|
|
||||||
</tr>
|
|
||||||
<!-- END latest -->
|
|
||||||
</table>
|
|
||||||
|
|
||||||
<br clear="all" /><br />
|
<br clear="all" /><br />
|
||||||
|
|
||||||
<!-- INCLUDE mcp_footer.html -->
|
<!-- INCLUDE mcp_footer.html -->
|
|
@ -1,43 +1,43 @@
|
||||||
<!-- INCLUDE mcp_header.html -->
|
<!-- INCLUDE mcp_header.html -->
|
||||||
|
|
||||||
<form method="post" name="mcp" action="{U_POST_ACTION}">
|
<form method="post" name="mcp" action="{U_POST_ACTION}">
|
||||||
|
|
||||||
<table class="tablebg" width="100%" cellspacing="1">
|
<table class="tablebg" width="100%" cellspacing="1">
|
||||||
|
<tr>
|
||||||
|
<td class="row3" colspan="5" align="center"><b class="gen">{L_WARNED_USERS}</b></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th> {L_USERNAME} </th>
|
||||||
|
<th> {L_WARNINGS} </th>
|
||||||
|
<th> {L_LATEST_WARNING_TIME} </th>
|
||||||
|
<th> </th>
|
||||||
|
</tr>
|
||||||
|
<!-- BEGIN user -->
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row3" colspan="5" align="center"><b class="gen">{L_WARNED_USERS}</b></td>
|
<td class="row1" width="15%" valign="top"><span class="gen"><a href="{user.U_USER}">{user.USERNAME}</a></span></td>
|
||||||
|
<td class="row2" width="15%" valign="top"><span class="gen">{user.WARNINGS}</span></td>
|
||||||
|
<td class="row1" width="15%" valign="top"><span class="gen">{user.WARNING_TIME}</span></td>
|
||||||
|
<td class="row2" width="15%" valign="top"><span class="gen"><a href="{user.U_NOTES}">{L_VIEW_NOTES}</a></span></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<!-- BEGINELSE -->
|
||||||
<tr>
|
<tr>
|
||||||
<th> {L_USERNAME} </th>
|
<td class="row1" colspan="5" align="center"><span class="gen">{L_WARNINGS_ZERO_TOTAL}</span></td>
|
||||||
<th> {L_WARNINGS} </th>
|
|
||||||
<th> {L_LATEST_WARNING_TIME} </th>
|
|
||||||
<th> </th>
|
|
||||||
</tr>
|
</tr>
|
||||||
<!-- BEGIN user -->
|
<!-- END user -->
|
||||||
<tr>
|
<tr align="center">
|
||||||
<td class="row1" width="15%" valign="top"><span class="gen"><a href="{user.U_USER}">{user.USERNAME}</a></span></td>
|
<td class="row3" colspan="4"><span class="gensmall">{L_DISPLAY_POSTS}:</span> {S_SELECT_SORT_DAYS} <span class="gensmall">{L_SORT_BY}</span> {S_SELECT_SORT_KEY} {S_SELECT_SORT_DIR} <input class="btnlite" type="submit" value="{L_GO}" name="sort" /></td>
|
||||||
<td class="row2" width="15%" valign="top"><span class="gen">{user.WARNINGS}</span></td>
|
</tr>
|
||||||
<td class="row1" width="15%" valign="top"><span class="gen">{user.WARNING_TIME}</span></td>
|
</table>
|
||||||
<td class="row2" width="15%" valign="top"><span class="gen"><a href="{user.U_NOTES}">{L_VIEW_NOTES}</a></span></td>
|
|
||||||
</tr>
|
|
||||||
<!-- BEGINELSE -->
|
|
||||||
<tr>
|
|
||||||
<td class="row1" colspan="5" align="center"><span class="gen">{L_WARNINGS_ZERO_TOTAL}</span></td>
|
|
||||||
</tr>
|
|
||||||
<!-- END user -->
|
|
||||||
<tr align="center">
|
|
||||||
<td class="row3" colspan="4"><span class="gensmall">{L_DISPLAY_POSTS}:</span> {S_SELECT_SORT_DAYS} <span class="gensmall">{L_SORT_BY}</span> {S_SELECT_SORT_KEY} {S_SELECT_SORT_DIR} <input class="btnlite" type="submit" value="{L_GO}" name="sort" /></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0">
|
<table width="100%" cellspacing="0" cellpadding="0">
|
||||||
<tr>
|
<tr>
|
||||||
<td class="pagination">{PAGE_NUMBER} [ {TOTAL_USERS} ]</td>
|
<td class="pagination">{PAGE_NUMBER} [ {TOTAL_USERS} ]</td>
|
||||||
<td align="right"><span class="pagination"><!-- IF PAGINATION --><a href="javascript:jumpto();">{L_GOTO_PAGE}</a> <!-- IF PREVIOUS_PAGE --><a href="{PREVIOUS_PAGE}">{L_PREVIOUS}</a> <!-- ENDIF -->{PAGINATION}<!-- IF NEXT_PAGE --> <a href="{NEXT_PAGE}">{L_NEXT}</a><!-- ENDIF --><!-- ENDIF --></span></td>
|
<td align="right"><span class="pagination"><!-- IF PAGINATION --><a href="javascript:jumpto();">{L_GOTO_PAGE}</a> <!-- IF PREVIOUS_PAGE --><a href="{PREVIOUS_PAGE}">{L_PREVIOUS}</a> <!-- ENDIF -->{PAGINATION}<!-- IF NEXT_PAGE --> <a href="{NEXT_PAGE}">{L_NEXT}</a><!-- ENDIF --><!-- ENDIF --></span></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
<br clear="all" /><br />
|
<br clear="all" /><br />
|
||||||
|
|
||||||
<!-- INCLUDE mcp_footer.html -->
|
<!-- INCLUDE mcp_footer.html -->
|
|
@ -1,55 +1,58 @@
|
||||||
<!-- INCLUDE mcp_header.html -->
|
<!-- INCLUDE mcp_header.html -->
|
||||||
|
|
||||||
<table width="100%" cellpadding="3" cellspacing="1" border="0" class="tablebg">
|
<table width="100%" cellpadding="3" cellspacing="1" border="0" class="tablebg">
|
||||||
<tr>
|
<tr>
|
||||||
<th colspan="2" height="28" align="center">{L_POST}</th>
|
<th colspan="2" height="28" align="center">{L_POST}</th>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1" align="center"><table cellspacing="1" cellpadding="2" border="0">
|
<td class="row1" align="center">
|
||||||
<tr>
|
<table cellspacing="1" cellpadding="2" border="0">
|
||||||
<td class="gen" align="center"><!-- IF USER_COLOR --><b style="color: #{USER_COLOR}"><!-- ELSE --><b><!-- ENDIF -->{USERNAME}</b></td>
|
<tr>
|
||||||
</tr>
|
<td class="gen" align="center"><!-- IF USER_COLOR --><b style="color: #{USER_COLOR}"><!-- ELSE --><b><!-- ENDIF -->{USERNAME}</b></td>
|
||||||
<!-- IF RANK -->
|
</tr>
|
||||||
|
<!-- IF RANK -->
|
||||||
<tr>
|
<tr>
|
||||||
<td class="postdetails" align="center">{RANK}</td>
|
<td class="postdetails" align="center">{RANK}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
<!-- IF RANK_IMG -->
|
<!-- IF RANK_IMG -->
|
||||||
<tr>
|
<tr>
|
||||||
<td align="center">{RANK_IMG}</td>
|
<td align="center">{RANK_IMG}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
<tr>
|
<tr>
|
||||||
<td align="center"><!-- IF AVATAR_IMG -->{AVATAR_IMG}<!-- ELSE --><img src="{T_THEME_PATH}/images/no_avatar.gif" alt="" /><!-- ENDIF --></td>
|
<td align="center"><!-- IF AVATAR_IMG -->{AVATAR_IMG}<!-- ELSE --><img src="{T_THEME_PATH}/images/no_avatar.gif" alt="" /><!-- ENDIF --></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table></td>
|
</table>
|
||||||
<td class="row1">
|
</td>
|
||||||
<span class="gen">{POST}</span>
|
<td class="row1">
|
||||||
</td>
|
<span class="gen">{POST}</span>
|
||||||
</tr>
|
</td>
|
||||||
</table>
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
<br clear="all" /><br />
|
<br clear="all" /><br />
|
||||||
|
|
||||||
<form method="post" name="mcp" action="{U_POST_ACTION}">
|
<form method="post" name="mcp" action="{U_POST_ACTION}">
|
||||||
<table width="100%" cellpadding="3" cellspacing="1" border="0" class="tablebg">
|
|
||||||
<tr>
|
|
||||||
<th height="28" align="center">{L_ADD_WARNING}</th>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="row3" align="center"><span class="genmed">{L_ADD_WARNING_EXPLAIN}</span></td>
|
|
||||||
<tr>
|
|
||||||
<td class="row1" align="center"><textarea name="warning" rows="10" cols="76"></textarea></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="row1" align="center"><input type="checkbox" class="radio" name="notify_user" checked="checked" /><span class="genmed">{L_NOTIFY_USER_WARN}</span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="cat" align="center"><input class="btnmain" type="submit" name="action[add_warning]" value="{L_SUBMIT}" /> <input class="btnlite" type="reset" value="{L_RESET}" /></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</form>
|
|
||||||
|
|
||||||
<br clear="all" /><br />
|
<table width="100%" cellpadding="3" cellspacing="1" border="0" class="tablebg">
|
||||||
|
<tr>
|
||||||
|
<th height="28" align="center">{L_ADD_WARNING}</th>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="row3" align="center"><span class="genmed">{L_ADD_WARNING_EXPLAIN}</span></td>
|
||||||
|
<tr>
|
||||||
|
<td class="row1" align="center"><textarea name="warning" rows="10" cols="76"></textarea></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="row1" align="center"><input type="checkbox" class="radio" name="notify_user" checked="checked" /><span class="genmed">{L_NOTIFY_USER_WARN}</span></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="cat" align="center"><input class="btnmain" type="submit" name="action[add_warning]" value="{L_SUBMIT}" /> <input class="btnlite" type="reset" value="{L_RESET}" /></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</form>
|
||||||
|
|
||||||
|
<br clear="all" /><br />
|
||||||
|
|
||||||
<!-- INCLUDE mcp_footer.html -->
|
<!-- INCLUDE mcp_footer.html -->
|
|
@ -1,66 +1,71 @@
|
||||||
<!-- INCLUDE mcp_header.html -->
|
<!-- INCLUDE mcp_header.html -->
|
||||||
|
|
||||||
<table width="100%" cellpadding="3" cellspacing="1" border="0" class="tablebg">
|
<table width="100%" cellpadding="3" cellspacing="1" border="0" class="tablebg">
|
||||||
<tr>
|
<tr>
|
||||||
<th colspan="2" height="28" align="center">{USERNAME}</th>
|
<th colspan="2" height="28" align="center">{USERNAME}</th>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1" align="center"><table cellspacing="1" cellpadding="2" border="0">
|
<td class="row1" align="center">
|
||||||
<tr>
|
<table cellspacing="1" cellpadding="2" border="0">
|
||||||
<td class="gen" align="center"><!-- IF USER_COLOR --><b style="color: #{USER_COLOR}"><!-- ELSE --><b><!-- ENDIF -->{USERNAME}</b></td>
|
<tr>
|
||||||
</tr>
|
<td class="gen" align="center"><!-- IF USER_COLOR --><b style="color: #{USER_COLOR}"><!-- ELSE --><b><!-- ENDIF -->{USERNAME}</b></td>
|
||||||
<!-- IF RANK -->
|
</tr>
|
||||||
|
<!-- IF RANK -->
|
||||||
<tr>
|
<tr>
|
||||||
<td class="postdetails" align="center">{RANK}</td>
|
<td class="postdetails" align="center">{RANK}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
<!-- IF RANK_IMG -->
|
<!-- IF RANK_IMG -->
|
||||||
<tr>
|
<tr>
|
||||||
<td align="center">{RANK_IMG}</td>
|
<td align="center">{RANK_IMG}</td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
<tr>
|
<tr>
|
||||||
<td align="center"><!-- IF AVATAR_IMG -->{AVATAR_IMG}<!-- ELSE --><img src="{T_THEME_PATH}/images/no_avatar.gif" alt="" /><!-- ENDIF --></td>
|
<td align="center"><!-- IF AVATAR_IMG -->{AVATAR_IMG}<!-- ELSE --><img src="{T_THEME_PATH}/images/no_avatar.gif" alt="" /><!-- ENDIF --></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table></td>
|
</table>
|
||||||
<td class="row1"><table width="100%" cellspacing="1" cellpadding="2" border="0">
|
</td>
|
||||||
<tr>
|
<td class="row1">
|
||||||
<td class="gen" align="right" nowrap="nowrap">{L_JOINED}: </td>
|
<table width="100%" cellspacing="1" cellpadding="2" border="0">
|
||||||
<td width="100%"><b class="gen">{JOINED}</b></td>
|
<tr>
|
||||||
</tr>
|
<td class="gen" align="right" nowrap="nowrap">{L_JOINED}: </td>
|
||||||
<tr>
|
<td width="100%"><b class="gen">{JOINED}</b></td>
|
||||||
<td class="gen" align="right" valign="top" nowrap="nowrap">{L_TOTAL_POSTS}: </td>
|
</tr>
|
||||||
<td><b class="gen">{POSTS}</b></td>
|
<tr>
|
||||||
</tr>
|
<td class="gen" align="right" valign="top" nowrap="nowrap">{L_TOTAL_POSTS}: </td>
|
||||||
<tr>
|
<td><b class="gen">{POSTS}</b></td>
|
||||||
<td class="gen" align="right" valign="top" nowrap="nowrap">{L_WARNINGS}: </td>
|
</tr>
|
||||||
<td><b class="gen">{WARNINGS}</b></td>
|
<tr>
|
||||||
</tr>
|
<td class="gen" align="right" valign="top" nowrap="nowrap">{L_WARNINGS}: </td>
|
||||||
</table></td>
|
<td><b class="gen">{WARNINGS}</b></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
<br clear="all" /><br />
|
<br clear="all" /><br />
|
||||||
|
|
||||||
<form method="post" name="mcp" action="{U_POST_ACTION}">
|
<form method="post" name="mcp" action="{U_POST_ACTION}">
|
||||||
<table width="100%" cellpadding="3" cellspacing="1" border="0" class="tablebg">
|
|
||||||
<tr>
|
|
||||||
<th height="28" align="center">{L_ADD_WARNING}</th>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="row3" align="center"><span class="genmed">{L_ADD_WARNING_EXPLAIN}</span></td>
|
|
||||||
<tr>
|
|
||||||
<td class="row1" align="center"><textarea name="warning" rows="10" cols="76"></textarea></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="row1" align="center"><input type="checkbox" class="radio" name="notify_user" checked="checked" /><span class="genmed">{L_NOTIFY_USER_WARN}</span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="cat" align="center"><input class="btnmain" type="submit" name="action[add_warning]" value="{L_SUBMIT}" /> <input class="btnlite" type="reset" value="{L_RESET}" /></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</form>
|
|
||||||
|
|
||||||
<br clear="all" /><br />
|
<table width="100%" cellpadding="3" cellspacing="1" border="0" class="tablebg">
|
||||||
|
<tr>
|
||||||
|
<th height="28" align="center">{L_ADD_WARNING}</th>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="row3" align="center"><span class="genmed">{L_ADD_WARNING_EXPLAIN}</span></td>
|
||||||
|
<tr>
|
||||||
|
<td class="row1" align="center"><textarea name="warning" rows="10" cols="76"></textarea></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="row1" align="center"><input type="checkbox" class="radio" name="notify_user" checked="checked" /><span class="genmed">{L_NOTIFY_USER_WARN}</span></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="cat" align="center"><input class="btnmain" type="submit" name="action[add_warning]" value="{L_SUBMIT}" /> <input class="btnlite" type="reset" value="{L_RESET}" /></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</form>
|
||||||
|
|
||||||
|
<br clear="all" /><br />
|
||||||
|
|
||||||
<!-- INCLUDE mcp_footer.html -->
|
<!-- INCLUDE mcp_footer.html -->
|
|
@ -1,15 +1,15 @@
|
||||||
<!-- INCLUDE mcp_header.html -->
|
<!-- INCLUDE mcp_header.html -->
|
||||||
|
|
||||||
<table class="tablebg" width="100%" cellspacing="1">
|
<table class="tablebg" width="100%" cellspacing="1">
|
||||||
<tr>
|
<tr>
|
||||||
<th>{L_WHOIS}</th>
|
<th>{L_WHOIS}</th>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row3" align="center"><span class="gensmall">{RETURN_POST}</span></td>
|
<td class="row3" align="center"><span class="gensmall">{RETURN_POST}</span></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1"><pre>{WHOIS}</pre></td>
|
<td class="row1"><pre>{WHOIS}</pre></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<!-- INCLUDE mcp_footer.html -->
|
<!-- INCLUDE mcp_footer.html -->
|
|
@ -19,38 +19,40 @@
|
||||||
</form>
|
</form>
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
|
|
||||||
<!-- IF S_SEARCH_USER and S_FORM_NAME -->
|
<!-- IF S_SEARCH_USER and S_FORM_NAME -->
|
||||||
<form method="post" name="results" action="{S_MODE_ACTION}" onsubmit="insert_marked(this.user);return false">
|
<form method="post" name="results" action="{S_MODE_ACTION}" onsubmit="insert_marked(this.user);return false">
|
||||||
<!-- ELSE -->
|
<!-- ELSE -->
|
||||||
<form method="post" action="{S_MODE_ACTION}">
|
<form method="post" action="{S_MODE_ACTION}">
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
|
|
||||||
<table class="tablebg" width="100%" cellspacing="1">
|
<table class="tablebg" width="100%" cellspacing="1">
|
||||||
<tr>
|
<tr>
|
||||||
<th nowrap="nowrap">#</th>
|
<th nowrap="nowrap">#</th>
|
||||||
<th nowrap="nowrap" width="25%" align="left"><a href="{U_SORT_USERNAME}">{L_USERNAME}</a></th>
|
<th nowrap="nowrap" width="25%" align="left"><a href="{U_SORT_USERNAME}">{L_USERNAME}</a></th>
|
||||||
<th nowrap="nowrap" width="15%"><a href="{U_SORT_JOINED}">{L_JOINED}</a></th>
|
<th nowrap="nowrap" width="15%"><a href="{U_SORT_JOINED}">{L_JOINED}</a></th>
|
||||||
<th nowrap="nowrap" width="10%"><a href="{U_SORT_POSTS}">{L_POSTS}</a></th>
|
<th nowrap="nowrap" width="10%"><a href="{U_SORT_POSTS}">{L_POSTS}</a></th>
|
||||||
<th nowrap="nowrap" width="15%"><a href="{U_SORT_RANK}">{L_RANK}</a></th>
|
<th nowrap="nowrap" width="15%"><a href="{U_SORT_RANK}">{L_RANK}</a></th>
|
||||||
<th nowrap="nowrap" width="11%">{L_SEND_MESSAGE}</th>
|
<th nowrap="nowrap" width="11%">{L_SEND_MESSAGE}</th>
|
||||||
<th nowrap="nowrap" width="11%"><a href="{U_SORT_EMAIL}">{L_EMAIL}</a></th>
|
<th nowrap="nowrap" width="11%"><a href="{U_SORT_EMAIL}">{L_EMAIL}</a></th>
|
||||||
<th nowrap="nowrap" width="11%"><a href="{U_SORT_WEBSITE}">{L_WEBSITE}</a></th>
|
<th nowrap="nowrap" width="11%"><a href="{U_SORT_WEBSITE}">{L_WEBSITE}</a></th>
|
||||||
<!-- IF S_SEARCH_USER and S_FORM_NAME --><th width="2%" nowrap="nowrap">{L_MARK}</th><!-- ENDIF -->
|
<!-- IF S_SEARCH_USER and S_FORM_NAME --><th width="2%" nowrap="nowrap">{L_MARK}</th><!-- ENDIF -->
|
||||||
</tr>
|
</tr>
|
||||||
<!-- BEGIN memberrow -->
|
<!-- BEGIN memberrow -->
|
||||||
<!-- IF S_SHOW_GROUP -->
|
|
||||||
<!-- IF memberrow.S_FIRST_ROW and memberrow.S_GROUP_LEADER -->
|
<!-- IF S_SHOW_GROUP -->
|
||||||
|
<!-- IF memberrow.S_FIRST_ROW and memberrow.S_GROUP_LEADER -->
|
||||||
<tr class="row3">
|
<tr class="row3">
|
||||||
<td colspan="8"><b class="gensmall">{L_GROUP_LEADER}</b></td>
|
<td colspan="8"><b class="gensmall">{L_GROUP_LEADER}</b></td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- ELSEIF not memberrow.S_GROUP_LEADER and not $S_MEMBER_HEADER -->
|
<!-- ELSEIF not memberrow.S_GROUP_LEADER and not $S_MEMBER_HEADER -->
|
||||||
<tr class="row3">
|
<tr class="row3">
|
||||||
<td colspan="8"><b class="gensmall">{L_GROUP_MEMBERS}</b></td>
|
<td colspan="8"><b class="gensmall">{L_GROUP_MEMBERS}</b></td>
|
||||||
</tr>
|
</tr>
|
||||||
<!-- DEFINE $S_MEMBER_HEADER = 1 -->
|
<!-- DEFINE $S_MEMBER_HEADER = 1 -->
|
||||||
<!-- ENDIF -->
|
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
<!-- IF memberrow.S_ROW_COUNT is even --><tr class="row2"><!-- ELSE --> <tr class="row1"><!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
|
|
||||||
|
<!-- IF memberrow.S_ROW_COUNT is even --><tr class="row2"><!-- ELSE --> <tr class="row1"><!-- ENDIF -->
|
||||||
|
|
||||||
<td class="gen" align="center"> {memberrow.ROW_NUMBER} </td>
|
<td class="gen" align="center"> {memberrow.ROW_NUMBER} </td>
|
||||||
<td class="genmed" align="left"><strong><a<!-- IF memberrow.USER_COLOR --> style="color:#{memberrow.USER_COLOR}"<!-- ENDIF --> href="{memberrow.U_VIEWPROFILE}">{memberrow.USERNAME}</a></strong></td>
|
<td class="genmed" align="left"><strong><a<!-- IF memberrow.USER_COLOR --> style="color:#{memberrow.USER_COLOR}"<!-- ENDIF --> href="{memberrow.U_VIEWPROFILE}">{memberrow.USERNAME}</a></strong></td>
|
||||||
|
@ -67,41 +69,41 @@
|
||||||
<!-- IF S_SEARCH_USER and S_FORM_NAME --><td align="center"><input type="checkbox" class="radio" name="user" value="{memberrow.USERNAME}" /></td><!-- ENDIF -->
|
<!-- IF S_SEARCH_USER and S_FORM_NAME --><td align="center"><input type="checkbox" class="radio" name="user" value="{memberrow.USERNAME}" /></td><!-- ENDIF -->
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<!-- BEGINELSE -->
|
<!-- BEGINELSE -->
|
||||||
|
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1" colspan="<!-- IF S_SEARCH_USER and S_FORM_NAME -->9<!-- ELSE -->8<!-- ENDIF -->" height="28" align="center"><span class="gen">{L_NO_MEMBERS}</span></td>
|
<td class="row1" colspan="<!-- IF S_SEARCH_USER and S_FORM_NAME -->9<!-- ELSE -->8<!-- ENDIF -->" height="28" align="center"><span class="gen">{L_NO_MEMBERS}</span></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<!-- END memberrow -->
|
<!-- END memberrow -->
|
||||||
|
|
||||||
<tr>
|
<tr>
|
||||||
<td class="cat" colspan="<!-- IF S_SEARCH_USER and S_FORM_NAME -->9<!-- ELSE -->8<!-- ENDIF -->" align="center"><!-- IF S_SEARCH_USER and S_FORM_NAME --><input class="btnlite" type="submit" value="{L_SELECT_MARKED}" /><!-- ELSE --><span class="gensmall">{L_SELECT_SORT_METHOD}:</span> <select name="sk">{S_MODE_SELECT}</select> <span class="gensmall">{L_ORDER}</span> <select name="sd">{S_ORDER_SELECT}</select> <input type="submit" name="submit" value="{L_SUBMIT}" class="btnlite" /><!-- ENDIF --></td>
|
<td class="cat" colspan="<!-- IF S_SEARCH_USER and S_FORM_NAME -->9<!-- ELSE -->8<!-- ENDIF -->" align="center"><!-- IF S_SEARCH_USER and S_FORM_NAME --><input class="btnlite" type="submit" value="{L_SELECT_MARKED}" /><!-- ELSE --><span class="gensmall">{L_SELECT_SORT_METHOD}:</span> <select name="sk">{S_MODE_SELECT}</select> <span class="gensmall">{L_ORDER}</span> <select name="sd">{S_ORDER_SELECT}</select> <input type="submit" name="submit" value="{L_SUBMIT}" class="btnlite" /><!-- ENDIF --></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
<table width="100%" cellspacing="0" cellpadding="0">
|
<table width="100%" cellspacing="0" cellpadding="0">
|
||||||
<tr>
|
<tr>
|
||||||
<td class="pagination">{PAGE_NUMBER} [ {TOTAL_USERS} ]</td>
|
<td class="pagination">{PAGE_NUMBER} [ {TOTAL_USERS} ]</td>
|
||||||
<td align="right"><!-- IF S_SEARCH_USER and S_FORM_NAME --><b class="nav"><a href="javascript:marklist('results', 'user', true);">{L_MARK_ALL}</a> :: <a href="javascript:marklist('results', 'user', false);">{L_UNMARK_ALL}</a></b><br /><!-- ENDIF --><span class="pagination"><!-- IF PAGINATION --><a href="javascript:jumpto();">{L_GOTO_PAGE}</a> <!-- IF PREVIOUS_PAGE --><a href="{PREVIOUS_PAGE}">{L_PREVIOUS}</a> <!-- ENDIF -->{PAGINATION}<!-- IF NEXT_PAGE --> <a href="{NEXT_PAGE}">{L_NEXT}</a><!-- ENDIF --><!-- ENDIF --></span></td>
|
<td align="right"><!-- IF S_SEARCH_USER and S_FORM_NAME --><b class="nav"><a href="javascript:marklist('results', 'user', true);">{L_MARK_ALL}</a> :: <a href="javascript:marklist('results', 'user', false);">{L_UNMARK_ALL}</a></b><br /><!-- ENDIF --><span class="pagination"><!-- IF PAGINATION --><a href="javascript:jumpto();">{L_GOTO_PAGE}</a> <!-- IF PREVIOUS_PAGE --><a href="{PREVIOUS_PAGE}">{L_PREVIOUS}</a> <!-- ENDIF -->{PAGINATION}<!-- IF NEXT_PAGE --> <a href="{NEXT_PAGE}">{L_NEXT}</a><!-- ENDIF --><!-- ENDIF --></span></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<br clear="all" />
|
<br clear="all" />
|
||||||
|
|
||||||
<table class="tablebg" width="100%" cellspacing="1" cellpadding="0">
|
<table class="tablebg" width="100%" cellspacing="1" cellpadding="0">
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1">
|
<td class="row1">
|
||||||
<p class="breadcrumbs"><a href="{U_INDEX}">{L_INDEX}</a><!-- BEGIN navlinks --> » <a href="{navlinks.U_VIEW_FORUM}">{navlinks.FORUM_NAME}</a><!-- END navlinks --></p>
|
<p class="breadcrumbs"><a href="{U_INDEX}">{L_INDEX}</a><!-- BEGIN navlinks --> » <a href="{navlinks.U_VIEW_FORUM}">{navlinks.FORUM_NAME}</a><!-- END navlinks --></p>
|
||||||
<p class="datetime">{S_TIMEZONE}</p>
|
<p class="datetime">{S_TIMEZONE}</p>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<br clear="all" />
|
<br clear="all" />
|
||||||
|
|
||||||
<div align="right"><!-- INCLUDE jumpbox.html --></div>
|
<div align="right"><!-- INCLUDE jumpbox.html --></div>
|
||||||
|
|
||||||
<!-- INCLUDE overall_footer.html -->
|
<!-- INCLUDE overall_footer.html -->
|
|
@ -3,12 +3,14 @@
|
||||||
<script language="JavaScript" type="text/javascript">
|
<script language="JavaScript" type="text/javascript">
|
||||||
<!--
|
<!--
|
||||||
|
|
||||||
function checkForm(formObj) {
|
function checkForm(formObj)
|
||||||
|
{
|
||||||
return;
|
return;
|
||||||
|
|
||||||
formErrors = false;
|
formErrors = false;
|
||||||
|
|
||||||
if (formObj.message.value.length < 2) {
|
if (formObj.message.value.length < 2)
|
||||||
|
{
|
||||||
formErrors = "{LA_EMPTY_MESSAGE_EMAIL}";
|
formErrors = "{LA_EMPTY_MESSAGE_EMAIL}";
|
||||||
}
|
}
|
||||||
else if ( formObj.subject.value.length < 2)
|
else if ( formObj.subject.value.length < 2)
|
||||||
|
@ -16,7 +18,8 @@ function checkForm(formObj) {
|
||||||
formErrors = "{LA_EMPTY_SUBJECT_EMAIL}";
|
formErrors = "{LA_EMPTY_SUBJECT_EMAIL}";
|
||||||
}
|
}
|
||||||
|
|
||||||
if (formErrors) {
|
if (formErrors)
|
||||||
|
{
|
||||||
alert(formErrors);
|
alert(formErrors);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -24,73 +27,79 @@ function checkForm(formObj) {
|
||||||
//-->
|
//-->
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div id="pagecontent">
|
<div id="pagecontent">
|
||||||
|
|
||||||
<form action="{S_POST_ACTION}" method="post" name="post" onsubmit="return checkForm(this)"><table class="tablebg" width="100%" cellspacing="1">
|
<form action="{S_POST_ACTION}" method="post" name="post" onsubmit="return checkForm(this)">
|
||||||
<tr>
|
|
||||||
<th colspan="2">{L_SEND_EMAIL}</th>
|
<table class="tablebg" width="100%" cellspacing="1">
|
||||||
</tr>
|
<tr>
|
||||||
<!-- IF ERROR_MESSAGE -->
|
<th colspan="2">{L_SEND_EMAIL}</th>
|
||||||
<tr>
|
</tr>
|
||||||
<td class="row3" colspan="2" align="center"><span class="error">{ERROR_MESSAGE}</span></td>
|
<!-- IF ERROR_MESSAGE -->
|
||||||
</tr>
|
|
||||||
<!-- ENDIF -->
|
|
||||||
<!-- IF S_SEND_USER -->
|
|
||||||
<tr>
|
|
||||||
<td class="row1" width="35%"><b class="genmed">{L_RECIPIENT}</b></td>
|
|
||||||
<td class="row2" width="65%"><b class="genmed">{USERNAME}</b></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="row1" width="35%"><b class="genmed">{L_SUBJECT}</b></td>
|
|
||||||
<td class="row2"><input class="post" type="text" name="subject" size="50" maxlength="100" tabindex="2" value="{SUBJECT}" /></td>
|
|
||||||
</tr>
|
|
||||||
<!-- ELSE --->
|
|
||||||
<tr>
|
|
||||||
<td class="row1" width="35%"><b class="genmed">{L_EMAIL_ADDRESS}</b></td>
|
|
||||||
<td class="row2"><input class="post" type="text" name="email" size="50" maxlength="100" value="{EMAIL}" /></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="row1" width="35%"><b class="genmed">{L_REAL_NAME}</b></td>
|
|
||||||
<td class="row2"><input class="post" type="text" name="name" size="50" maxlength="100" value="{NAME}" /></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="row1" width="35%"><b class="genmed">{L_DEST_LANG}</b><br /><span class="gensmall">{L_DEST_LANG_EXPLAIN}</span></td>
|
|
||||||
<td class="row2"><select name="lang">{S_LANG_OPTIONS}</select></td>
|
|
||||||
</tr>
|
|
||||||
<!-- ENDIF -->
|
|
||||||
<tr>
|
|
||||||
<td class="row1" valign="top"><b class="genmed">{L_MESSAGE_BODY}</b><br /><span class="gensmall">{L_EMAIL_BODY_EXPLAIN}</span></td>
|
|
||||||
<td class="row2"><textarea class="post" name="message" rows="15" cols="76" tabindex="3">{MESSAGE}</textarea></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="row1" valign="top"><span class="gen"><b>{L_OPTIONS}</b></span></td>
|
|
||||||
<td class="row2"><table cellspacing="0" cellpadding="1" border="0">
|
|
||||||
<tr>
|
|
||||||
<td><input type="checkbox" class="radio" name="cc_email" value="1" checked="checked" /></td>
|
|
||||||
<td class="gen">{L_CC_EMAIL}</td>
|
|
||||||
</tr>
|
|
||||||
</table></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="cat" colspan="2" height="28" align="center"><input type="submit" tabindex="6" name="submit" class="btnmain" value="{L_SEND_EMAIL}" /></td>
|
|
||||||
</tr>
|
|
||||||
</table></form>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<br clear="all" />
|
|
||||||
|
|
||||||
<table class="tablebg" width="100%" cellspacing="1" cellpadding="0">
|
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1">
|
<td class="row3" colspan="2" align="center"><span class="error">{ERROR_MESSAGE}</span></td>
|
||||||
<p class="breadcrumbs"><a href="{U_INDEX}">{L_INDEX}</a><!-- BEGIN navlinks --> » <a href="{navlinks.U_VIEW_FORUM}">{navlinks.FORUM_NAME}</a><!-- END navlinks --></p>
|
|
||||||
<p class="datetime">{S_TIMEZONE}</p>
|
|
||||||
</td>
|
|
||||||
</tr>
|
</tr>
|
||||||
|
<!-- ENDIF -->
|
||||||
|
<!-- IF S_SEND_USER -->
|
||||||
|
<tr>
|
||||||
|
<td class="row1" width="35%"><b class="genmed">{L_RECIPIENT}</b></td>
|
||||||
|
<td class="row2" width="65%"><b class="genmed">{USERNAME}</b></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="row1" width="35%"><b class="genmed">{L_SUBJECT}</b></td>
|
||||||
|
<td class="row2"><input class="post" type="text" name="subject" size="50" maxlength="100" tabindex="2" value="{SUBJECT}" /></td>
|
||||||
|
</tr>
|
||||||
|
<!-- ELSE --->
|
||||||
|
<tr>
|
||||||
|
<td class="row1" width="35%"><b class="genmed">{L_EMAIL_ADDRESS}</b></td>
|
||||||
|
<td class="row2"><input class="post" type="text" name="email" size="50" maxlength="100" value="{EMAIL}" /></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="row1" width="35%"><b class="genmed">{L_REAL_NAME}</b></td>
|
||||||
|
<td class="row2"><input class="post" type="text" name="name" size="50" maxlength="100" value="{NAME}" /></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="row1" width="35%"><b class="genmed">{L_DEST_LANG}</b><br /><span class="gensmall">{L_DEST_LANG_EXPLAIN}</span></td>
|
||||||
|
<td class="row2"><select name="lang">{S_LANG_OPTIONS}</select></td>
|
||||||
|
</tr>
|
||||||
|
<!-- ENDIF -->
|
||||||
|
<tr>
|
||||||
|
<td class="row1" valign="top"><b class="genmed">{L_MESSAGE_BODY}</b><br /><span class="gensmall">{L_EMAIL_BODY_EXPLAIN}</span></td>
|
||||||
|
<td class="row2"><textarea class="post" name="message" rows="15" cols="76" tabindex="3">{MESSAGE}</textarea></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="row1" valign="top"><span class="gen"><b>{L_OPTIONS}</b></span></td>
|
||||||
|
<td class="row2">
|
||||||
|
<table cellspacing="0" cellpadding="1" border="0">
|
||||||
|
<tr>
|
||||||
|
<td><input type="checkbox" class="radio" name="cc_email" value="1" checked="checked" /></td>
|
||||||
|
<td class="gen">{L_CC_EMAIL}</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="cat" colspan="2" height="28" align="center"><input type="submit" tabindex="6" name="submit" class="btnmain" value="{L_SEND_EMAIL}" /></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
|
</form>
|
||||||
|
|
||||||
<br clear="all" />
|
</div>
|
||||||
|
|
||||||
<div style="float: right;"><!-- INCLUDE jumpbox.html --></div>
|
<br clear="all" />
|
||||||
|
|
||||||
|
<table class="tablebg" width="100%" cellspacing="1" cellpadding="0">
|
||||||
|
<tr>
|
||||||
|
<td class="row1">
|
||||||
|
<p class="breadcrumbs"><a href="{U_INDEX}">{L_INDEX}</a><!-- BEGIN navlinks --> » <a href="{navlinks.U_VIEW_FORUM}">{navlinks.FORUM_NAME}</a><!-- END navlinks --></p>
|
||||||
|
<p class="datetime">{S_TIMEZONE}</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<br clear="all" />
|
||||||
|
|
||||||
|
<div style="float: right;"><!-- INCLUDE jumpbox.html --></div>
|
||||||
|
|
||||||
<!-- INCLUDE overall_footer.html -->
|
<!-- INCLUDE overall_footer.html -->
|
|
@ -1,15 +1,15 @@
|
||||||
|
|
||||||
<table class="tablebg" width="100%" cellspacing="1">
|
<table class="tablebg" width="100%" cellspacing="1">
|
||||||
<tr>
|
<tr>
|
||||||
<th colspan="7">{L_GROUP_INFORMATION}</th>
|
<th colspan="7">{L_GROUP_INFORMATION}</th>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1" width="20%"><b class="genmed">{L_GROUP_NAME}:</b></td>
|
<td class="row1" width="20%"><b class="genmed">{L_GROUP_NAME}:</b></td>
|
||||||
<td class="row2"><b class="gen"<!-- IF GROUP_COLOR --> style="color:#{GROUP_COLOR}"<!-- ENDIF -->>{GROUP_NAME}</b></td>
|
<td class="row2"><b class="gen"<!-- IF GROUP_COLOR --> style="color:#{GROUP_COLOR}"<!-- ENDIF -->>{GROUP_NAME}</b></td>
|
||||||
<td class="row1" width="33%" rowspan="2" align="center"><!-- IF AVATAR_IMG -->{AVATAR_IMG}<br /><!-- ENDIF --><!-- IF RANK_IMG -->{RANK_IMG}<!-- ENDIF --><!-- IF GROUP_RANK --><span class="gensmall">{GROUP_RANK}</span><br /><br /><!-- ENDIF --><!-- IF U_PM --><a href="{U_PM}">{PM_IMG}</a><!-- ENDIF --></td>
|
<td class="row1" width="33%" rowspan="2" align="center"><!-- IF AVATAR_IMG -->{AVATAR_IMG}<br /><!-- ENDIF --><!-- IF RANK_IMG -->{RANK_IMG}<!-- ENDIF --><!-- IF GROUP_RANK --><span class="gensmall">{GROUP_RANK}</span><br /><br /><!-- ENDIF --><!-- IF U_PM --><a href="{U_PM}">{PM_IMG}</a><!-- ENDIF --></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="row1" width="20%"><b class="genmed">{L_GROUP_DESC}:</b></td>
|
<td class="row1" width="20%"><b class="genmed">{L_GROUP_DESC}:</b></td>
|
||||||
<td class="row2"><span class="gen">{GROUP_DESC}</span><p class="forumdesc">{GROUP_TYPE}</p></td>
|
<td class="row2"><span class="gen">{GROUP_DESC}</span><p class="forumdesc">{GROUP_TYPE}</p></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue