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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
|
package VNDB::Handler::Users;
use strict;
use warnings;
use TUWF ':html';
use VNDB::Func;
TUWF::register(
qr{u([1-9]\d*)/posts} => \&posts,
);
sub posts {
my($self, $uid) = @_;
# fetch user info
my $u = $self->dbUserGet(uid => $uid, what => 'hide_list pubskin')->[0];
return $self->resNotFound if !$u->{id};
my $f = $self->formValidate(
{ get => 'p', required => 0, default => 1, template => 'page' }
);
return $self->resNotFound if $f->{_err};
my($posts, $np) = $self->dbPostGet(uid => $uid, hide => 1, what => 'thread', page => $f->{p}, sort => 'date', reverse => 1);
my $title = 'Posts made by '.VNWeb::HTML::user_displayname($u);
$self->htmlHeader(title => $title, noindex => 1, pubskin => $u);
$self->htmlMainTabs(u => $u, 'posts');
div class => 'mainbox';
h1 $title;
if(!@$posts) {
p VNWeb::HTML::user_displayname($u)." hasn't made any posts yet.";
}
end;
$self->htmlBrowse(
items => $posts,
class => 'uposts',
options => $f,
nextpage => $np,
pageurl => "/u$uid/posts",
header => [
[ '' ],
[ '' ],
[ 'Date' ],
[ 'Title' ],
],
row => sub {
my($s, $n, $l) = @_;
Tr;
td class => 'tc1'; a href => "/t$l->{tid}.$l->{num}", 't'.$l->{tid}; end;
td class => 'tc2'; a href => "/t$l->{tid}.$l->{num}", '.'.$l->{num}; end;
td class => 'tc3', fmtdate $l->{date};
td class => 'tc4';
a href => "/t$l->{tid}.$l->{num}", $l->{title};
b class => 'grayedout'; lit bb2html $l->{msg}, 150; end;
end;
end;
},
) if @$posts;
$self->htmlFooter;
}
1;
|