diff options
Diffstat (limited to 'lib/VNWeb/User/List.pm')
-rw-r--r-- | lib/VNWeb/User/List.pm | 37 |
1 files changed, 22 insertions, 15 deletions
diff --git a/lib/VNWeb/User/List.pm b/lib/VNWeb/User/List.pm index c3694ddc..72da203d 100644 --- a/lib/VNWeb/User/List.pm +++ b/lib/VNWeb/User/List.pm @@ -14,28 +14,33 @@ sub listing_ { thead_ sub { tr_ sub { td_ class => 'tc1', sub { txt_ 'Username'; sortable_ 'username', $opt, \&url }; td_ class => 'tc2', sub { txt_ 'Registered'; sortable_ 'registered', $opt, \&url }; - td_ class => 'tc3', sub { txt_ 'Votes'; sortable_ 'votes', $opt, \&url }; - td_ class => 'tc4', sub { txt_ 'Edits'; sortable_ 'changes', $opt, \&url }; - td_ class => 'tc5', sub { txt_ 'Tags'; sortable_ 'tags', $opt, \&url }; + td_ class => 'tc3', sub { txt_ 'VNs'; sortable_ 'vns', $opt, \&url }; + td_ class => 'tc4', sub { txt_ 'Votes'; sortable_ 'votes', $opt, \&url }; + td_ class => 'tc5', sub { txt_ 'Wishlist'; sortable_ 'wish', $opt, \&url }; + td_ class => 'tc6', sub { txt_ 'Edits'; sortable_ 'changes', $opt, \&url }; + td_ class => 'tc7', sub { txt_ 'Tags'; sortable_ 'tags', $opt, \&url }; } }; tr_ sub { my $l = $_; td_ class => 'tc1', sub { user_ $l }; td_ class => 'tc2', fmtdate $l->{registered}; - td_ mkclass(tc3 => 1, linethrough => $l->{hide_list} && auth->permUsermod), sub { - if($l->{hide_list} && !auth->permUsermod) { - txt_ '-'; - } elsif(!$l->{c_votes}) { - txt_ '0'; - } else { - a_ href => "/u$l->{user_id}/votes", $l->{c_votes}; - } + td_ class => 'tc3', sub { + txt_ '0' if !$l->{c_vns}; + a_ href => "/u$l->{user_id}/ulist?vnlist=1", $l->{c_vns} if $l->{c_vns}; }; td_ class => 'tc4', sub { + txt_ '0' if !$l->{c_votes}; + a_ href => "/u$l->{user_id}/ulist?votes=1", $l->{c_votes} if $l->{c_votes}; + }; + td_ class => 'tc5', sub { + txt_ '0' if !$l->{c_wish}; + a_ href => "/u$l->{user_id}/ulist?wishlist=1", $l->{c_wish} if $l->{c_wish}; + }; + td_ class => 'tc6', sub { txt_ '-' if !$l->{c_changes}; a_ href => "/u$l->{user_id}/hist", $l->{c_changes} if $l->{c_changes}; }; - td_ class => 'tc5', sub { + td_ class => 'tc7', sub { txt_ '-' if !$l->{c_tags}; a_ href => "/g/links?u=$l->{user_id}", $l->{c_tags} if $l->{c_tags}; }; @@ -51,7 +56,7 @@ TUWF::get qr{/u/(?<char>[0a-z]|all)}, sub { my $opt = eval { tuwf->validate(get => p => { upage => 1 }, - s => { required => 0, default => 'registered', enum => [qw[username registered votes changes tags]] }, + s => { required => 0, default => 'registered', enum => [qw[username registered vns votes wish changes tags]] }, o => { required => 0, default => 'd', enum => [qw[a d]] }, q => { required => 0, default => '' }, )->data } || return tuwf->resNotFound; @@ -65,13 +70,15 @@ TUWF::get qr{/u/(?<char>[0a-z]|all)}, sub { ); my $list = tuwf->dbPagei({ results => 50, page => $opt->{p} }, - 'SELECT', sql_user(), ',', sql_totime('registered'), 'as registered, c_votes, c_changes, c_tags, hide_list + 'SELECT', sql_user(), ',', sql_totime('registered'), 'as registered, c_vns, c_votes, c_wish, c_changes, c_tags FROM users u WHERE', sql_and('id > 0', @where), 'ORDER BY', { username => 'username', registered => 'id', - votes => auth->permUsermod ? 'c_votes' : 'hide_list, c_votes', + vns => 'c_vns', + votes => 'c_votes', + wish => 'c_wish', changes => 'c_changes', tags => 'c_tags' }->{$opt->{s}}, $opt->{o} eq 'd' ? 'DESC' : 'ASC' |