From d26fa8c1e0886c813de5364ee6570c860c6ce12c Mon Sep 17 00:00:00 2001 From: Othmar Gsenger Date: Thu, 31 Mar 2011 19:05:23 +0000 Subject: hopfully repaired this after backup loss --- nzbget/remove.pm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 nzbget/remove.pm (limited to 'nzbget/remove.pm') diff --git a/nzbget/remove.pm b/nzbget/remove.pm new file mode 100644 index 0000000..71334bd --- /dev/null +++ b/nzbget/remove.pm @@ -0,0 +1,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(); + + my $basedir = $config::config{files_dir} or die 'Missing files_dir in config'; + File::Path::rmtree($basedir.'/'.$dl->category->name.'/'.$dl->download_id); + $user->obj->quota_used($user->obj->quota_used - $dl->size); + $user->obj->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; -- cgit v1.2.3