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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
|
#!/usr/bin/perl
package nzbget::list;
use strict;
use Apache2::Const -compile => qw(OK REDIRECT);
use CGI qw(:standard);
use utf8;
use local::nzbget;
use local::db;
use local::user;
use local::menu;
sub handler
{
my $user = new local::user(%ENV);
print header;
my $menu=new local::menu(%ENV);
print $menu->start_html('my downloads');
my $module = $ENV{REQUEST_URI};
$module =~ s'.*/'';
$module =~ s'\?.*'';
my $only_me = $module eq 'download_2' ? 1:0;
print table({class=>'nohigh'},Tr(td({align=>'right'},['benutzter Speicherplatz '. $user->obj->quota_used().' / '.$user->obj->quoata().' MB']))) if ($only_me);
print CGI::start_table();
print Tr(th([qw/Neu # Kategorie Name Größe Löschen /]));
# SELECT COUNT(user),download FROM seen GROUP BY download
my %dl_counts;
for my $dl_count ( local::db::seen->search_count_download())
{
$dl_counts{$dl_count->{download}}=$dl_count->{dlcount};
}
my @downloads = local::db::download->search(
$only_me ? (owner=>$user->get_id()) : () ,
param('category') ? (category => param('category')) : (),
completed=>1,{ order_by => 'time DESC'});
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',$dl_counts{$dl->download_id},
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
]));
}
;
print CGI::end_table();
print $menu->end_html();
return Apache2::Const::OK;
}
1;
|