summaryrefslogtreecommitdiff
path: root/nzbget
diff options
context:
space:
mode:
authorOthmar Gsenger <otti@wirdorange.org>2012-01-25 18:55:43 +0000
committerOthmar Gsenger <otti@wirdorange.org>2012-01-25 18:55:43 +0000
commitdbb74ceda992bd4d630982de3610c64b84beee47 (patch)
tree5e48e5e3fd9c141eaa6b2d542b3f6b665d3507e9 /nzbget
parentadded fuse support (diff)
added admin functionality
ADD COLUMN admin (BOOL) to TABLE OWNERS
Diffstat (limited to 'nzbget')
-rw-r--r--nzbget/list.pm1
-rw-r--r--nzbget/remove.pm8
2 files changed, 5 insertions, 4 deletions
diff --git a/nzbget/list.pm b/nzbget/list.pm
index fc30069..65d348d 100644
--- a/nzbget/list.pm
+++ b/nzbget/list.pm
@@ -33,6 +33,7 @@ sub handler
foreach my $dl ( @downloads)
{
my $dl_remove;
+ $dl_remove = a({href=>'remove?id='.$dl->download_id},$dl->owner->name) if $user->is_admin();
$dl_remove = a({href=>'remove?id='.$dl->download_id},"löschen") if $dl->owner->owner_id == $user->get_id;
print Tr(td([ (local::db::seen->search(user=>$user->get_id(),download=>$dl->download_id))?'':'x',
a({href=>"$module?category=".$dl->category->category_id},$dl->category->name),a({title=>$dl->description,href=>'read?id='.$dl->download_id},$dl->name),$dl->size.'MB',$dl_remove
diff --git a/nzbget/remove.pm b/nzbget/remove.pm
index 71334bd..4291a2b 100644
--- a/nzbget/remove.pm
+++ b/nzbget/remove.pm
@@ -15,12 +15,12 @@ sub handler
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();
-
+ 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);
- $user->obj->quota_used($user->obj->quota_used - $dl->size);
- $user->obj->update;
+ $owner->quota_used($owner->quota_used - $dl->size);
+ $owner->update;
my @seens = local::db::seen->search(download=>$del_id);
map {$_->delete()} @seens;
$dl->delete();