mirror of
https://github.com/WhatCD/Gazelle.git
synced 2024-12-13 10:56:26 +00:00
62 lines
2.3 KiB
PHP
62 lines
2.3 KiB
PHP
<?
|
|
//******************************************************************************//
|
|
//--------------- Take mass PM -------------------------------------------------//
|
|
// This pages handles the backend of the 'Send Mass PM' function. It checks //
|
|
// the data, and if it all validates, it sends a PM to everyone who snatched //
|
|
// the torrent. //
|
|
//******************************************************************************//
|
|
|
|
authorize();
|
|
|
|
enforce_login();
|
|
|
|
require(SERVER_ROOT.'/classes/validate.class.php');
|
|
$Validate = new VALIDATE;
|
|
|
|
$TorrentID = (int)$_POST['torrentid'];
|
|
$GroupID = (int)$_POST['groupid'];
|
|
$Subject = $_POST['subject'];
|
|
$Message = $_POST['message'];
|
|
|
|
//******************************************************************************//
|
|
//--------------- Validate data in edit form -----------------------------------//
|
|
|
|
// FIXME: Still need a better perm name
|
|
if (!check_perms('site_moderate_requests')) {
|
|
error(403);
|
|
}
|
|
|
|
$Validate->SetFields('torrentid', '1', 'number', 'Invalid torrent ID.', array('maxlength' => 1000000000, 'minlength' => 1)); // we shouldn't have torrent IDs higher than a billion
|
|
$Validate->SetFields('groupid', '1', 'number', 'Invalid group ID.', array('maxlength' => 1000000000, 'minlength' => 1)); // we shouldn't have group IDs higher than a billion either
|
|
$Validate->SetFields('subject', '0', 'string', 'Invalid subject.', array('maxlength' => 1000, 'minlength' => 1));
|
|
$Validate->SetFields('message', '0', 'string', 'Invalid message.', array('maxlength' => 10000, 'minlength' => 1));
|
|
$Err = $Validate->ValidateForm($_POST); // Validate the form
|
|
|
|
if ($Err) {
|
|
error($Err);
|
|
header('Location: '.$_SERVER['HTTP_REFERER']);
|
|
die();
|
|
}
|
|
|
|
//******************************************************************************//
|
|
//--------------- Send PMs to users --------------------------------------------//
|
|
|
|
$DB->query("
|
|
SELECT uid
|
|
FROM xbt_snatched
|
|
WHERE fid = $TorrentID");
|
|
|
|
if ($DB->has_results()) {
|
|
// Save this because send_pm uses $DB to run its own query... Oops...
|
|
$Snatchers = $DB->to_array();
|
|
foreach ($Snatchers as $UserID) {
|
|
Misc::send_pm($UserID[0], 0, $Subject, $Message);
|
|
}
|
|
}
|
|
|
|
Misc::write_log($LoggedUser['Username']." sent mass notice to snatchers of torrent $TorrentID in group $GroupID");
|
|
|
|
header("Location: torrents.php?id=$GroupID");
|
|
|
|
?>
|