blob: 4291a2b48a57a87985f383f35adc5fec2d2fce64 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
package nzbget::remove;
use strict;
use Apache2::Const -compile => qw(OK REDIRECT);
use CGI qw(:standard);
use CGI::Carp 'fatalsToBrowser';
use local::db;
use local::user;
use File::Path;
use config;
sub handler
{
my $user = new local::user(%ENV);
my $del_id = param('id');
my ($dl) = local::db::download->retrieve($del_id) or die 'Error in cancel';
die "Not allowed" if not ($dl->owner->owner_id() eq $user->get_id() or $user->is_admin() );
my $owner = $dl->owner;
my $basedir = $config::config{files_dir} or die 'Missing files_dir in config';
File::Path::rmtree($basedir.'/'.$dl->category->name.'/'.$dl->download_id);
$owner->quota_used($owner->quota_used - $dl->size);
$owner->update;
my @seens = local::db::seen->search(download=>$del_id);
map {$_->delete()} @seens;
$dl->delete();
print CGI::redirect('download_2');
return Apache2::Const::REDIRECT;
}
1;
|