2011-03-28 14:21:28 +00:00
< ?
//******************************************************************************//
//--------------- Take unfill request ------------------------------------------//
authorize ();
$RequestID = $_POST [ 'id' ];
if ( ! is_number ( $RequestID )){
error ( 0 );
}
$DB -> query ( " SELECT
r . CategoryID ,
2013-02-19 08:00:30 +00:00
r . UserID ,
r . FillerID ,
2011-03-28 14:21:28 +00:00
r . Title ,
2012-02-05 08:00:20 +00:00
u . Uploaded ,
r . GroupID
2013-02-19 08:00:30 +00:00
FROM requests AS r
2011-03-28 14:21:28 +00:00
LEFT JOIN users_main AS u ON u . ID = FillerID
WHERE r . ID = " . $RequestID );
2012-02-05 08:00:20 +00:00
list ( $CategoryID , $UserID , $FillerID , $Title , $Uploaded , $GroupID ) = $DB -> next_record ();
2011-03-28 14:21:28 +00:00
if ((( $LoggedUser [ 'ID' ] != $UserID && $LoggedUser [ 'ID' ] != $FillerID ) && ! check_perms ( 'site_moderate_requests' )) || $FillerID == 0 ) {
error ( 403 );
}
// Unfill
$DB -> query ( " UPDATE requests SET
TorrentID = 0 ,
FillerID = 0 ,
TimeFilled = '0000-00-00 00:00:00' ,
Visible = 1
WHERE ID = " . $RequestID );
$CategoryName = $Categories [ $CategoryID - 1 ];
if ( $CategoryName == " Music " ) {
$ArtistForm = get_request_artists ( $RequestID );
2012-10-11 08:00:15 +00:00
$ArtistName = Artists :: display_artists ( $ArtistForm , false , true );
2011-03-28 14:21:28 +00:00
$FullName = $ArtistName . $Title ;
} else {
$FullName = $Title ;
}
$RequestVotes = get_votes_array ( $RequestID );
if ( $RequestVotes [ 'TotalBounty' ] > $Uploaded ) {
2011-11-06 08:00:31 +00:00
// If we can't take it all out of upload, zero that out and add whatever is left as download.
$DB -> query ( " UPDATE users_main SET Uploaded = 0 WHERE ID = " . $FillerID );
$DB -> query ( " UPDATE users_main SET Downloaded = Downloaded + " . ( $RequestVotes [ 'TotalBounty' ] - $Uploaded ) . " WHERE ID = " . $FillerID );
2011-03-28 14:21:28 +00:00
} else {
$DB -> query ( " UPDATE users_main SET Uploaded = Uploaded - " . $RequestVotes [ 'TotalBounty' ] . " WHERE ID = " . $FillerID );
}
2013-03-10 08:00:41 +00:00
Misc :: send_pm ( $FillerID , 0 , " A request you filled has been unfilled " , " The request '[url=https:// " . SSL_SITE_URL . " /requests.php?action=view&id= " . $RequestID . " ] " . $FullName . " [/url]' was unfilled by [url=https:// " . SSL_SITE_URL . " /user.php?id= " . $LoggedUser [ 'ID' ] . " ] " . $LoggedUser [ 'Username' ] . " [/url] for the reason: " . $_POST [ 'reason' ]);
2011-03-28 14:21:28 +00:00
$Cache -> delete_value ( 'user_stats_' . $FillerID );
if ( $UserID != $LoggedUser [ 'ID' ]) {
2013-03-10 08:00:41 +00:00
Misc :: send_pm ( $UserID , 0 , " A request you created has been unfilled " , " The request '[url=https:// " . SSL_SITE_URL . " /requests.php?action=view&id= " . $RequestID . " ] " . $FullName . " [/url]' was unfilled by [url=https:// " . SSL_SITE_URL . " /user.php?id= " . $LoggedUser [ 'ID' ] . " ] " . $LoggedUser [ 'Username' ] . " [/url] for the reason: " . $_POST [ 'reason' ]);
2011-03-28 14:21:28 +00:00
}
2012-10-11 08:00:15 +00:00
Misc :: write_log ( " Request $RequestID ( $FullName ), with a " . Format :: get_size ( $RequestVotes [ 'TotalBounty' ]) . " bounty, was unfilled by user " . $LoggedUser [ 'ID' ] . " ( " . $LoggedUser [ 'Username' ] . " ) for the reason: " . $_POST [ 'reason' ]);
2011-03-28 14:21:28 +00:00
$Cache -> delete_value ( 'request_' . $RequestID );
2011-04-29 13:49:03 +00:00
$Cache -> delete_value ( 'request_artists_' . $RequestID );
2012-02-05 08:00:20 +00:00
if ( $GroupID ) {
$Cache -> delete_value ( 'requests_group_' . $GroupID );
}
2011-03-28 14:21:28 +00:00
2012-10-11 08:00:15 +00:00
Requests :: update_sphinx_requests ( $RequestID );
2011-03-28 14:21:28 +00:00
2011-11-12 08:00:15 +00:00
if ( ! empty ( $ArtistForm )) {
foreach ( $ArtistForm as $ArtistType ) {
foreach ( $ArtistType as $Artist ) {
$Cache -> delete_value ( 'artists_requests_' . $Artist [ 'id' ]);
}
}
}
2011-03-28 14:21:28 +00:00
header ( 'Location: requests.php?action=view&id=' . $RequestID );
?>