Code:
<?php
// ++ ============================================================= ++
// SmnLikQuick v2.0.5
// ++ ============================================================= ++
error_reporting(E_ALL & ~E_NOTICE);
@set_time_limit(0);
$phrasegroups = array('style');
$specialtemplates = array('products');
require_once('./global.php');
$vbulletin->input->clean_array_gpc('r', array(
'id' => TYPE_UINT,
'slq_status' => TYPE_UINT,
'slq_order' => TYPE_UINT,
'slq_title' => TYPE_STR,
'slq_message' => TYPE_STR,
));
// #######################################
// #### START MAIN SCRIPT #####################
// #######################################
$do = $_REQUEST['do'];
print_cp_header("SmnLikQuick");
?><script type="text/javascript">
function doSelected(action, id)
{
var val = action.options[action.selectedIndex].value;
if(val == 1)
window.location = 'smnlikquick.php?do=edit_announcement&id=' + id;
if(val == 2)
window.location = 'smnlikquick.php?do=disable_announcement&id=' + id;
if(val == 3)
window.location = 'smnlikquick.php?do=delete_announcement&id=' + id;
if(val == 4)
window.location = 'smnlikquick.php?do=enable_announcement&id=' + id;
}
</script><?php
// ##########################################
// #### ACTIVE ANNOUNCEMENTS ####################
// ##########################################
if (empty($do))
{
$announcements = $db->query("SELECT count(*) FROM `" . TABLE_PREFIX . "smnlikquick`");
$announcement = (mysql_result($announcements, 0, 0));
{
if ($announcement > 0)
{
print_table_start();
print_table_header($vbphrase['smnlikquick_manage_announcements'], 5);
print_cells_row(array($vbphrase['smnlikquick_title'], $vbphrase['smnlikquick_order'], $vbphrase['smnlikquick_message'], $vbphrase['smnlikquick_controls']), 1, -1);
$announcements = $db->query_read("SELECT * FROM `" . TABLE_PREFIX . "smnlikquick` WHERE `status`='1' ORDER BY `dis_order`");
while ($announcement = $vbulletin->db->fetch_array($announcements))
{
$cell[0] = $announcement['title'];
$cell[1] = $announcement['dis_order'];
$cell[2] = $announcement['message'];
$cell[3] = "
<select class=\"bginput\" onChange=\"doSelected(this, ".$announcement["id"].")\">
<option selected>".$vbphrase['smnlikquick_options']."</option>
<option>----------</option>
<option value=\"1\">".$vbphrase['edit']."</option>
<option value=\"2\">".$vbphrase['disable']."</option>
<option value=\"3\">".$vbphrase['delete']."</option>
</select>";
print_cells_row($cell);
}
echo "<tr valign=\"top\" align=\"center\"><td class=\"thead\" align=\"center\" colspan=\"6\">
<input type=\"submit\" class=\"button\" tabindex=\"1\" value=\" Manage Inactive Announcements \" onclick=\"self.location='smnlikquick.php?do=inactive_announcements'\" />
</td></tr>";
print_table_footer();
}
}
// #### ADD NEW ANNOUNCEMENT ####################
// ======================================================================
print_form_header('smnlikquick', 'add_announcement', true);
print_table_header($vbphrase['smnlikquick_create_announcement'], 5);
print_input_row($vbphrase['smnlikquick_title'], "slq_title", $vbulletin->GPC['slq_title'], 30, 50);
print_textarea_row($vbphrase['smnlikquick_message'], "slq_message", $vbulletin->GPC['slq_message'], 10, 52);
print_input_row($vbphrase['smnlikquick_message_order'], "slq_order", $vbulletin->GPC['slq_order'], 30, 50);
print_yes_no_row($vbphrase['smnlikquick_message_status'], 'slq_status', $vbulletin->GPC['slq_status']);
print_submit_row();
print_table_footer(5, '', '', 0);
}
// #### ADDED NEW ANNOUNCEMENT ##################
// ======================================================================
if ($_REQUEST['do'] == 'add_announcement')
{
$title = $_REQUEST['slq_title'];
$status = $_REQUEST['slq_status'];
$order = $_REQUEST['slq_order'];
$message = $_REQUEST['slq_message'];
$db->query_write("INSERT INTO `" . TABLE_PREFIX . "smnlikquick`
(`title`, `status`, `dis_order`, `message`)
VALUES ('" . $db->escape_string($vbulletin->GPC['slq_title']) . "',
'" . $db->escape_string($vbulletin->GPC['slq_status']) . "',
'" . $db->escape_string($vbulletin->GPC['slq_order']) . "',
'" . $db->escape_string($vbulletin->GPC['slq_message']) . "'
)
");
print_cp_message($vbphrase['smnlikquick_announcement_saved_success'], 'smnlikquick.php', 2);
}
// ##########################################
// #### INACTIVE ANNOUNCEMENTS ###################
// ##########################################
if ($_REQUEST['do'] == 'inactive_announcements')
{
$announcements = mysql_query("SELECT count(*) FROM `" . TABLE_PREFIX . "smnlikquick`");
$announcement = (mysql_result($announcements, 0, 0));
{
if ($announcement > 0)
{
print_table_start();
print_table_header($vbphrase['smnlikquick_manage_announcements'], 5);
print_cells_row(array($vbphrase['smnlikquick_title'], $vbphrase['smnlikquick_order'], $vbphrase['smnlikquick_message'], $vbphrase['smnlikquick_controls']), 1, -1);
$announcements = $db->query_read("SELECT * FROM `" . TABLE_PREFIX . "smnlikquick` WHERE `status`='0' ORDER BY `dis_order`");
while ($announcement = $vbulletin->db->fetch_array($announcements))
{
$cell[0] = $announcement['title'];
$cell[1] = $announcement['dis_order'];
$cell[2] = $announcement['message'];
$cell[3] = "
<select class=\"bginput\" onChange=\"doSelected(this, ".$announcement["id"].")\">
<option selected>".$vbphrase['smnlikquick_options']."</option>
<option>----------</option>
<option value=\"1\">".$vbphrase['edit']."</option>
<option value=\"4\">".$vbphrase['enable']."</option>
<option value=\"3\">".$vbphrase['delete']."</option>
</select>";
print_cells_row($cell);
}
echo "<tr valign=\"top\" align=\"center\"><td class=\"thead\" align=\"center\" colspan=\"6\">
<input type=\"submit\" class=\"button\" tabindex=\"1\" value=\" Manage Active Announcements \" onclick=\"self.location='smnlikquick.php'\" />
</td></tr>";
print_table_footer();
}
}
}
// #### EDIT ANNOUNCEMENT #######################
// ======================================================================
if ($_REQUEST['do'] == 'edit_announcement')
{
$id = isset($_REQUEST['id']) ? intval($_REQUEST['id']) : -1;
$id = intval($id);
$announcements = $db->query_read("SELECT * FROM `" . TABLE_PREFIX . "smnlikquick` WHERE `id`='$id'");
$announcement = $db->fetch_array($announcements);
print_form_header('smnlikquick', 'edited_announcement', true);
print_table_header($vbphrase['smnlikquick_create_announcement'], 5);
echo '<input type="hidden" name="id" value="'.$id.'" />';
print_input_row($vbphrase['smnlikquick_title'], "slq_title", $announcement['title'], 30, 50);
print_textarea_row($vbphrase['smnlikquick_message'], "slq_message", $announcement['message'], 10, 52);
print_input_row($vbphrase['smnlikquick_message_order'], "slq_order", $announcement['dis_order'], 30, 50);
print_yes_no_row($vbphrase['smnlikquick_message_status'], 'slq_status', $announcement['status']);
print_submit_row();
print_table_footer(5, '', '', 0);
}
// #### EDITED ANNOUNCEMENT #####################
// ======================================================================
if ($_REQUEST['do'] == 'edited_announcement')
{
$id = $_REQUEST['id'];
$title = $_REQUEST['slq_title'];
$status = $_REQUEST['slq_status'];
$order = $_REQUEST['slq_order'];
$message = $_REQUEST['slq_message'];
$db->query_write("UPDATE `" . TABLE_PREFIX . "smnlikquick` SET
title='" . $db->escape_string($vbulletin->GPC['slq_title']) . "',
status='" . $db->escape_string($vbulletin->GPC['slq_status']) . "',
dis_order='" . $db->escape_string($vbulletin->GPC['slq_order']) . "',
message='" . $db->escape_string($vbulletin->GPC['slq_message']) . "'
WHERE id='" . $db->escape_string($vbulletin->GPC['id']) . "'
");
print_cp_message($vbphrase['smnlikquick_announcement_updated_success'], 'smnlikquick.php', 2);
}
// #### DELETE ANNOUNCEMENT #####################
// ======================================================================
if ($_REQUEST['do'] == 'delete_announcement')
{
$id = isset($_REQUEST['id']) ? intval($_REQUEST['id']) : -1;
$id = intval($id);
$announcements = $db->query_read("SELECT * FROM `" . TABLE_PREFIX . "smnlikquick` WHERE `id`='$id'");
$announcement = $db->fetch_array($announcements);
print_table_start();
echo "<form action=\"smnlikquick.php?do=delete_announcement_final&id=" . $announcement['id'] . "\" method=\"post\" name=\"cpform\" id=\"cpform\">";
print_table_header($vbphrase['confirm_deletion']);
echo "<tr valign=\"top\" align=\"center\"><td class=\"alt1\" align=\"left\">
<p align=\"justify\">Are you <strong>sure</strong> you want to delete the announcement titled <strong>" . $announcement['title'] . "</strong>.</p>
<p align=\"justify\">This action can not be undone.</p>
</td></tr>
<tr valign=\"top\" align=\"center\"><td class=\"thead\" align=\"center\">
<input type=\"submit\" class=\"button\" tabindex=\"1\" value=\" Yes \" accesskey=\"s\" />
<input type=\"button\" class=\"button\" value=\" No \" tabindex=\"1\" onclick=\"history.back(1);\" />
</td></tr>";
print_table_footer();
}
// #### DELETE ANNOUNCEMENT CONFIRM ###############
// ======================================================================
if ($_REQUEST['do'] == 'delete_announcement_final')
{
$id = isset($_REQUEST['id']) ? intval($_REQUEST['id']) : -1;
$db->query_write("DELETE FROM `" . TABLE_PREFIX . "smnlikquick` WHERE `id`='" . $db->escape_string($vbulletin->GPC['id']) . "'");
print_cp_message($vbphrase['smnlikquick_announcement_deleted_success'], 'smnlikquick.php', 2);
}
// #### DISABLE ANNOUNCEMENT ####################
// ======================================================================
if ($_REQUEST['do'] == 'disable_announcement')
{
$id = isset($_REQUEST['id']) ? intval($_REQUEST['id']) : -1;
$db->query_write("UPDATE `" . TABLE_PREFIX . "smnlikquick` SET `status`='0' WHERE id='" . $db->escape_string($vbulletin->GPC['id']) . "'");
print_cp_message($vbphrase['smnlikquick_announcement_updated_success'], 'smnlikquick.php', 2);
}
// #### ENABLE ANNOUNCEMENT #####################
// ======================================================================
if ($_REQUEST['do'] == 'enable_announcement')
{
$id = isset($_REQUEST['id']) ? intval($_REQUEST['id']) : -1;
$db->query_write("UPDATE `" . TABLE_PREFIX . "smnlikquick` SET `status`='1' WHERE id='" . $db->escape_string($vbulletin->GPC['id']) . "'");
print_cp_message($vbphrase['smnlikquick_announcement_updated_success'], 'smnlikquick.php', 2);
}
print_cp_footer();
?>
Can you suggest me again the replacement of that red line for allow my forum to work with this great hack?