summaryrefslogtreecommitdiff
path: root/lib/VNDB
diff options
context:
space:
mode:
authorYorhel <git@yorhel.nl>2012-01-25 13:59:43 +0100
committerYorhel <git@yorhel.nl>2012-01-25 13:59:43 +0100
commit6f33c4786786978ee785bc3e5020cef5f66254ef (patch)
tree6f6de09886a4baeacbae9e5e8982e4415b881dc7 /lib/VNDB
parent616ddb08bf4f10560229bee326eb89ce1bef7488 (diff)
Do most of the table striping in CSS
Using CSS3 selectors. This is a more elegant approach, and since browser support for CSS3 selectors isn't as crap as it used to be I can finally make use of them.
Diffstat (limited to 'lib/VNDB')
-rw-r--r--lib/VNDB/Handler/Affiliates.pm2
-rw-r--r--lib/VNDB/Handler/Chars.pm41
-rw-r--r--lib/VNDB/Handler/Discussions.pm8
-rw-r--r--lib/VNDB/Handler/Releases.pm43
-rw-r--r--lib/VNDB/Handler/Tags.pm6
-rw-r--r--lib/VNDB/Handler/Traits.pm2
-rw-r--r--lib/VNDB/Handler/ULists.pm8
-rw-r--r--lib/VNDB/Handler/Users.pm23
-rw-r--r--lib/VNDB/Handler/VNEdit.pm2
-rw-r--r--lib/VNDB/Handler/VNPage.pm47
-rw-r--r--lib/VNDB/Util/BrowseHTML.pm6
-rw-r--r--lib/VNDB/Util/CommonHTML.pm23
12 files changed, 104 insertions, 107 deletions
diff --git a/lib/VNDB/Handler/Affiliates.pm b/lib/VNDB/Handler/Affiliates.pm
index 0482e597..c353ad49 100644
--- a/lib/VNDB/Handler/Affiliates.pm
+++ b/lib/VNDB/Handler/Affiliates.pm
@@ -65,7 +65,7 @@ sub list {
],
row => sub {
my($s, $n, $l) = @_;
- Tr $n % 2 ? (class => 'odd') : ();
+ Tr;
td class => 'tc1'; a href => "/r$l->{rid}", shorten $l->{title}, 50; end;
td class => 'tc2', $l->{version} || '<default>';
td class => 'tc3', $l->{hidden} ? 'YES' : 'no';
diff --git a/lib/VNDB/Handler/Chars.pm b/lib/VNDB/Handler/Chars.pm
index c707a453..4612af53 100644
--- a/lib/VNDB/Handler/Chars.pm
+++ b/lib/VNDB/Handler/Chars.pm
@@ -115,29 +115,31 @@ sub charTable {
end 'div';
# info table
- table;
- Tr;
- td colspan => 2;
- if($link) {
- a href => "/c$r->{id}", style => 'margin-right: 10px; font-weight: bold', $r->{name};
- } else {
- b style => 'margin-right: 10px', $r->{name};
- }
- b class => 'grayedout', style => 'margin-right: 10px', $r->{original} if $r->{original};
- cssicon "gen $r->{gender}", mt "_gender_$r->{gender}" if $r->{gender} ne 'unknown';
- span mt "_bloodt_$r->{bloodt}" if $r->{bloodt} ne 'unknown';
+ table class => 'stripe';
+ thead;
+ Tr;
+ td colspan => 2;
+ if($link) {
+ a href => "/c$r->{id}", style => 'margin-right: 10px; font-weight: bold', $r->{name};
+ } else {
+ b style => 'margin-right: 10px', $r->{name};
+ }
+ b class => 'grayedout', style => 'margin-right: 10px', $r->{original} if $r->{original};
+ cssicon "gen $r->{gender}", mt "_gender_$r->{gender}" if $r->{gender} ne 'unknown';
+ span mt "_bloodt_$r->{bloodt}" if $r->{bloodt} ne 'unknown';
+ end;
end;
end;
- my $i = 0;
+
if($r->{alias}) {
$r->{alias} =~ s/\n/, /g;
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td class => 'key', mt '_charp_alias';
td $r->{alias};
end;
}
if($r->{height} || $r->{s_bust} || $r->{s_waist} || $r->{s_hip}) {
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td class => 'key', mt '_charp_meas';
td join ', ',
$r->{height} ? mt('_charp_meas_h', $r->{height}) : (),
@@ -146,7 +148,7 @@ sub charTable {
end;
}
if($r->{b_month} && $r->{b_day}) {
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td class => 'key', mt '_charp_bday';
td mt '_charp_bday_fmt', $r->{b_day}, mt "_month_$r->{b_month}";
end;
@@ -154,6 +156,7 @@ sub charTable {
# traits
# TODO: handle 'sexual' traits
+ # TODO: fix striping of the table with hidden trait groups (due to spoilers)
my %groups;
my @groups;
for (@{$r->{traits}}) {
@@ -164,7 +167,7 @@ sub charTable {
for my $g (@groups) {
my $minspoil = 5;
$minspoil = $minspoil > $_->{spoil} ? $_->{spoil} : $minspoil for(@{$groups{$g}});
- Tr class => charspoil($minspoil).(++$i % 2 ? ' odd' : '');
+ Tr class => charspoil($minspoil);
td class => 'key'; a href => '/i'.($groups{$g}[0]{group}||$groups{$g}[0]{tid}), $groups{$g}[0]{groupname} || $groups{$g}[0]{name}; end;
td;
for (0..$#{$groups{$g}}) {
@@ -187,7 +190,7 @@ sub charTable {
if(@{$r->{vns}} && (!$vn || $vn && (@{$r->{vns}} > 1 || $r->{vns}[0]{rid}))) {
my %vns;
push @{$vns{$_->{vid}}}, $_ for(sort { !defined($a->{rid})?1:!defined($b->{rid})?-1:$a->{rtitle} cmp $b->{rtitle} } @{$r->{vns}});
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td class => 'key', mt $vn ? '_charp_releases' : '_charp_vns';
td;
my $first = 0;
@@ -228,7 +231,7 @@ sub charTable {
# description
if($r->{desc}) {
- Tr;
+ Tr class => 'nostripe';
td class => 'chardesc', colspan => 2;
h2 mt '_charp_description';
p;
@@ -512,7 +515,7 @@ sub charBrowseTable {
header => [ [ '' ], [ '' ] ],
row => sub {
my($s, $n, $l) = @_;
- Tr $n % 2 ? (class => 'odd') : ();
+ Tr;
td class => 'tc1';
cssicon "gen $l->{gender}", mt "_gender_$l->{gender}" if $l->{gender} ne 'unknown';
end;
diff --git a/lib/VNDB/Handler/Discussions.pm b/lib/VNDB/Handler/Discussions.pm
index f2b0d4a5..477e6bfa 100644
--- a/lib/VNDB/Handler/Discussions.pm
+++ b/lib/VNDB/Handler/Discussions.pm
@@ -50,12 +50,10 @@ sub thread {
$self->htmlBrowseNavigate("/t$tid/", $page, [ $t->{count}, 25 ], 't', 1);
div class => 'mainbox thread';
- table;
+ table class => 'stripe';
for my $i (0..$#$p) {
local $_ = $p->[$i];
- my $class = $i % 2 ? 'odd ' : '';
- $class .= 'deleted' if $_->{hidden};
- Tr class => $class;
+ Tr $_->{deleted} ? (class => 'deleted') : ();
td class => 'tc1';
a href => "/t$tid.$_->{num}", name => $_->{num}, "#$_->{num}";
if(!$_->{hidden}) {
@@ -380,7 +378,7 @@ sub _threadlist {
],
row => sub {
my($self, $n, $o) = @_;
- Tr $n % 2 ? ( class => 'odd' ) : ();
+ Tr;
td class => 'tc1';
a $o->{locked} ? ( class => 'locked' ) : (), href => "/t$o->{id}", shorten $o->{title}, 50;
b class => 'boards';
diff --git a/lib/VNDB/Handler/Releases.pm b/lib/VNDB/Handler/Releases.pm
index 0291ba0a..ff434ab6 100644
--- a/lib/VNDB/Handler/Releases.pm
+++ b/lib/VNDB/Handler/Releases.pm
@@ -89,10 +89,9 @@ sub page {
sub _infotable {
my($self, $r) = @_;
- table;
- my $i = 0;
+ table class => 'stripe';
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td class => 'key', mt '_relinfo_vnrel';
td;
for (@{$r->{vn}}) {
@@ -102,19 +101,19 @@ sub _infotable {
end;
end;
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_relinfo_title';
td $r->{title};
end;
if($r->{original}) {
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_relinfo_original';
td $r->{original};
end;
}
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_relinfo_type';
td;
cssicon "rt$r->{type}", mt "_rtype_$r->{type}";
@@ -122,7 +121,7 @@ sub _infotable {
end;
end;
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_relinfo_lang';
td;
for (@{$r->{languages}}) {
@@ -133,13 +132,13 @@ sub _infotable {
end;
end;
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_relinfo_publication';
td mt $r->{patch} ? '_relinfo_pub_patch' : '_relinfo_pub_nopatch', $r->{freeware}?0:1, $r->{doujin}?0:1;
end;
if(@{$r->{platforms}}) {
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_relinfo_platform', scalar @{$r->{platforms}};
td;
for(@{$r->{platforms}}) {
@@ -152,7 +151,7 @@ sub _infotable {
}
if(@{$r->{media}}) {
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_relinfo_media', scalar @{$r->{media}};
td join ', ', map
$self->{media}{$_->{medium}} ? $_->{qty}.' '.mt("_med_$_->{medium}", $_->{qty}) : mt("_med_$_->{medium}",1),
@@ -162,21 +161,21 @@ sub _infotable {
if($r->{resolution}) {
my $res = $self->{resolutions}[$r->{resolution}][0];
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_relinfo_resolution';
td $res =~ /^_/ ? mt $res : $res;
end;
}
if($r->{voiced}) {
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_relinfo_voiced';
td mt '_voiced_'.$r->{voiced};
end;
}
if($r->{ani_story} || $r->{ani_ero}) {
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_relinfo_ani';
td join ', ',
$r->{ani_story} ? mt('_relinfo_ani_story', mt '_animated_'.$r->{ani_story}):(),
@@ -184,7 +183,7 @@ sub _infotable {
end;
}
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_relinfo_released';
td;
lit $self->{l10n}->datestr($r->{released});
@@ -192,7 +191,7 @@ sub _infotable {
end;
if($r->{minage} >= 0) {
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_relinfo_minage';
td minage $r->{minage};
end;
@@ -201,7 +200,7 @@ sub _infotable {
for my $t (qw|developer publisher|) {
my @prod = grep $_->{$t}, @{$r->{producers}};
if(@prod) {
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt "_relinfo_$t", scalar @prod;
td;
for (@prod) {
@@ -214,21 +213,21 @@ sub _infotable {
}
if($r->{gtin}) {
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td gtintype $r->{gtin};
td $r->{gtin};
end;
}
if($r->{catalog}) {
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_relinfo_catalog';
td $r->{catalog};
end;
}
if($r->{website}) {
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_relinfo_links';
td;
a href => $r->{website}, rel => 'nofollow', mt '_relinfo_website';
@@ -238,7 +237,7 @@ sub _infotable {
if($self->authInfo->{id}) {
my $rl = $self->dbRListGet(uid => $self->authInfo->{id}, rid => $r->{id})->[0];
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_relinfo_user';
td;
Select id => 'listsel', name => $self->authGetCode("/r$r->{id}/list");
@@ -465,7 +464,7 @@ sub _form {
[ hidden => short => 'vn' ],
[ static => nolabel => 1, content => sub {
h2 mt('_redit_form_vn_sel');
- table; tbody id => 'vn_tbl'; end; end;
+ table class => 'stripe'; tbody id => 'vn_tbl'; end; end;
h2 mt('_redit_form_vn_add');
div;
input id => 'vn_input', type => 'text', class => 'text';
@@ -528,7 +527,7 @@ sub browse {
],
row => sub {
my($s, $n, $l) = @_;
- Tr $n % 2 ? (class => 'odd') : ();
+ Tr;
td class => 'tc1';
lit $self->{l10n}->datestr($l->{released});
end;
diff --git a/lib/VNDB/Handler/Tags.pm b/lib/VNDB/Handler/Tags.pm
index 39388a30..1b67fadc 100644
--- a/lib/VNDB/Handler/Tags.pm
+++ b/lib/VNDB/Handler/Tags.pm
@@ -327,7 +327,7 @@ sub taglist {
],
row => sub {
my($s, $n, $l) = @_;
- Tr $n % 2 ? (class => 'odd') : ();
+ Tr;
td class => 'tc1', $self->{l10n}->age($l->{added});
td class => 'tc3';
a href => "/g$l->{id}", $l->{name};
@@ -433,7 +433,7 @@ sub taglinks {
],
row => sub {
my($s, $n, $l) = @_;
- Tr $n % 2 ? (class => 'odd') : ();
+ Tr;
td class => 'tc1';
lit $self->{l10n}->date($l->{date});
end;
@@ -537,7 +537,7 @@ sub vntagmod {
$self->htmlForm({ action => "/v$vid/tagmod", nosubmit => 1 }, tagmod => [ mt('_tagv_frm_title'),
[ hidden => short => 'taglinks', value => '' ],
[ static => nolabel => 1, content => sub {
- table class => 'tgl';
+ table class => 'tgl stripe';
thead;
Tr;
td '';
diff --git a/lib/VNDB/Handler/Traits.pm b/lib/VNDB/Handler/Traits.pm
index 0a21011c..f33d23ca 100644
--- a/lib/VNDB/Handler/Traits.pm
+++ b/lib/VNDB/Handler/Traits.pm
@@ -302,7 +302,7 @@ sub traitlist {
],
row => sub {
my($s, $n, $l) = @_;
- Tr $n % 2 ? (class => 'odd') : ();
+ Tr;
td class => 'tc1', $self->{l10n}->age($l->{added});
td class => 'tc3';
if($l->{group}) {
diff --git a/lib/VNDB/Handler/ULists.pm b/lib/VNDB/Handler/ULists.pm
index 6e28a61a..94e3a3fe 100644
--- a/lib/VNDB/Handler/ULists.pm
+++ b/lib/VNDB/Handler/ULists.pm
@@ -186,7 +186,7 @@ sub votelist {
],
row => sub {
my($s, $n, $l) = @_;
- Tr $n % 2 ? (class => 'odd') : ();
+ Tr;
td class => 'tc1';
input type => 'checkbox', name => 'vid', value => $l->{vid} if $own;
txt ' '.$self->{l10n}->date($l->{date});
@@ -291,7 +291,7 @@ sub wishlist {
],
row => sub {
my($s, $n, $i) = @_;
- Tr $n % 2 == 0 ? (class => 'odd') : ();
+ Tr;
td class => 'tc1';
input type => 'checkbox', name => 'sel', value => $i->{vid}
if $own;
@@ -440,7 +440,7 @@ sub _vnlist_browse {
],
row => sub {
my($s, $n, $i) = @_;
- Tr $n % 2 == 0 ? (class => 'odd') : ();
+ Tr class => 'nostripe'.($n%2 ? ' odd' : '');
td class => 'tc1'; input type => 'checkbox', name => 'vid', value => $i->{vid} if $own; end;
if(@{$i->{rels}}) {
td class => 'tc2 collapse_but', id => "vid$i->{vid}"; lit '&#9656;'; end;
@@ -464,7 +464,7 @@ sub _vnlist_browse {
end 'tr';
for (@{$i->{rels}}) {
- Tr class => "collapse relhid collapse_vid$i->{vid}".($n%2 ? '':' odd');
+ Tr class => "nostripe collapse relhid collapse_vid$i->{vid}".($n%2 ? ' odd':'');
td class => 'tc1', '';
td class => 'tc2';
input type => 'checkbox', name => 'rid', value => $_->{rid} if $own;
diff --git a/lib/VNDB/Handler/Users.pm b/lib/VNDB/Handler/Users.pm
index cc42f4d0..f8aa0e9d 100644
--- a/lib/VNDB/Handler/Users.pm
+++ b/lib/VNDB/Handler/Users.pm
@@ -40,10 +40,9 @@ sub userpage {
div class => 'mainbox userpage';
h1 $title;
- table;
- my $i = 0;
+ table class => 'stripe';
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td class => 'key', mt '_userpage_username';
td;
txt ucfirst($u->{username}).' (';
@@ -52,12 +51,12 @@ sub userpage {
end;
end;
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_userpage_registered';
td $self->{l10n}->date($u->{registered});
end;
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_userpage_edits';
td;
if($u->{c_changes}) {
@@ -68,7 +67,7 @@ sub userpage {
end;
end;
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_userpage_votes';
td;
if($u->{hide_list}) {
@@ -86,7 +85,7 @@ sub userpage {
end;
end;
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_userpage_tags';
td;
if(!$u->{c_tags}) {
@@ -99,13 +98,13 @@ sub userpage {
end;
end;
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_userpage_list';
td $u->{hide_list} ? mt('_userpage_hidden') :
mt('_userpage_list_item', $u->{releasecount}, $u->{vncount});
end;
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_userpage_forum';
td;
lit mt '_userpage_forum_item',$u->{postcount}, $u->{threadcount};
@@ -458,7 +457,7 @@ sub posts {
],
row => sub {
my($s, $n, $l) = @_;
- Tr $n % 2 ? (class => 'odd') : ();
+ 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', $self->{l10n}->date($l->{date});
@@ -566,7 +565,7 @@ sub list {
],
row => sub {
my($s, $n, $l) = @_;
- Tr $n % 2 ? (class => 'odd') : ();
+ Tr;
td class => 'tc1';
a href => '/u'.$l->{id}, $l->{username};
end;
@@ -666,7 +665,7 @@ sub notifies {
],
row => sub {
my($s, $n, $l) = @_;
- Tr class => join ' ', $n%2?'odd':'', $l->{read}?'':'unread';
+ Tr class => $l->{read}?():(class => 'unread');
td class => 'tc1';
input type => 'checkbox', name => 'notifysel', value => "$l->{id}";
end;
diff --git a/lib/VNDB/Handler/VNEdit.pm b/lib/VNDB/Handler/VNEdit.pm
index 73ef7a47..da318e6e 100644
--- a/lib/VNDB/Handler/VNEdit.pm
+++ b/lib/VNDB/Handler/VNEdit.pm
@@ -294,7 +294,7 @@ sub _form {
lit mt '_vnedit_scrmsg';
end;
br;
- table;
+ table class => 'stripe';
tbody id => 'scr_table', '';
end;
Select id => 'scr_rel', class => $self->{url_static};
diff --git a/lib/VNDB/Handler/VNPage.pm b/lib/VNDB/Handler/VNPage.pm
index f71baf30..06e23c16 100644
--- a/lib/VNDB/Handler/VNPage.pm
+++ b/lib/VNDB/Handler/VNPage.pm
@@ -95,27 +95,26 @@ sub page {
end 'div'; # /vnimg
# general info
- table;
- my $i = 0;
- Tr ++$i % 2 ? (class => 'odd') : ();
+ table class => 'stripe';
+ Tr;
td class => 'key', mt '_vnpage_vntitle';
td $v->{title};
end;
if($v->{original}) {
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_vnpage_original';
td $v->{original};
end;
}
if($v->{alias}) {
$v->{alias} =~ s/\n/, /g;
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_vnpage_alias';
td $v->{alias};
end;
}
if($v->{length}) {
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_vnpage_length';
td mt '_vnlength_'.$v->{length}, 1;
end;
@@ -126,7 +125,7 @@ sub page {
$v->{l_renai} ? [ 'renai', 'http://renai.us/game/%s.shtml', $v->{l_renai} ] : (),
);
if(@links) {
- Tr ++$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_vnpage_links';
td;
for(@links) {
@@ -137,13 +136,13 @@ sub page {
end;
}
- _producers($self, \$i, $r);
- _relations($self, \$i, $v) if @{$v->{relations}};
- _anime($self, \$i, $v) if @{$v->{anime}};
- _useroptions($self, \$i, $v) if $self->authInfo->{id};
- _affiliate_links($self, \$i, $r);
+ _producers($self, $r);
+ _relations($self, $v) if @{$v->{relations}};
+ _anime($self, $v) if @{$v->{anime}};
+ _useroptions($self, $v) if $self->authInfo->{id};
+ _affiliate_links($self, $r);
- Tr;
+ Tr class => 'nostripe';
td class => 'vndesc', colspan => 2;
h2 mt '_vnpage_description';
p;
@@ -266,7 +265,7 @@ sub _revision {
sub _producers {
- my($self, $i, $r) = @_;
+ my($self, $r) = @_;
my %lang;
my @lang = grep !$lang{$_}++, map @{$_->{languages}}, @$r;
@@ -274,7 +273,7 @@ sub _producers {
if(grep $_->{developer}, map @{$_->{producers}}, @$r) {
my %dev = map $_->{developer} ? ($_->{id} => $_) : (), map @{$_->{producers}}, @$r;
my @dev = values %dev;
- Tr ++$$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt "_vnpage_developer";
td;
for (@dev) {
@@ -286,7 +285,7 @@ sub _producers {
}
if(grep $_->{publisher}, map @{$_->{producers}}, @$r) {
- Tr ++$$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt "_vnpage_publisher";
td;
for my $l (@lang) {
@@ -307,14 +306,14 @@ sub _producers {
sub _relations {
- my($self, $i, $v) = @_;
+ my($self, $v) = @_;
my %rel;
push @{$rel{$_->{relation}}}, $_
for (sort { $a->{title} cmp $b->{title} } @{$v->{relations}});
- Tr ++$$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_vnpage_relations';
td class => 'relations';
dl;
@@ -335,9 +334,9 @@ sub _relations {
sub _anime {
- my($self, $i, $v) = @_;
+ my($self, $v) = @_;
- Tr ++$$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_vnpage_anime';
td class => 'anime';
for (sort { ($a->{year}||9999) <=> ($b->{year}||9999) } @{$v->{anime}}) {
@@ -370,13 +369,13 @@ sub _anime {
sub _useroptions {
- my($self, $i, $v) = @_;
+ my($self, $v) = @_;
my $vote = $self->dbVoteGet(uid => $self->authInfo->{id}, vid => $v->{id})->[0];
my $list = $self->dbVNListGet(uid => $self->authInfo->{id}, vid => $v->{id})->[0];
my $wish = $self->dbWishListGet(uid => $self->authInfo->{id}, vid => $v->{id})->[0];
- Tr ++$$i % 2 ? (class => 'odd') : ();
+ Tr;
td mt '_vnpage_uopt';
td;
if($vote || !$wish) {
@@ -415,7 +414,7 @@ sub _useroptions {
sub _affiliate_links {
- my($self, $i, $r) = @_;
+ my($self, $r) = @_;
return if !keys @$r;
my %r = map +($_->{id}, $_), @$r;
my $links = $self->dbAffiliateGet(rids => [ keys %r ], hidden => 0);
@@ -424,7 +423,7 @@ sub _affiliate_links {
$links = [ sort { $b->{priority}||$self->{affiliates}[$b->{affiliate}]{default_prio} <=> $a->{priority}||$self->{affiliates}[$a->{affiliate}]{default_prio} } @$links ];
my $en = VNDB::L10N->get_handle('en');
- Tr id => 'buynow', ++$$i % 2 ? (class => 'odd') : ();
+ Tr id => 'buynow';
td 'Available at';
td;
for my $link (@$links) {
diff --git a/lib/VNDB/Util/BrowseHTML.pm b/lib/VNDB/Util/BrowseHTML.pm
index 993f8746..88396cf5 100644
--- a/lib/VNDB/Util/BrowseHTML.pm
+++ b/lib/VNDB/Util/BrowseHTML.pm
@@ -38,7 +38,7 @@ sub htmlBrowse {
$self->htmlBrowseNavigate($opt{pageurl}, $opt{options}{p}, $opt{nextpage}, 't');
div class => 'mainbox browse'.($opt{class} ? ' '.$opt{class} : '');
- table;
+ table class => 'stripe';
# header
thead;
@@ -139,7 +139,7 @@ sub htmlBrowseHist {
my($s, $n, $i) = @_;
my $revurl = "/$i->{type}$i->{iid}.$i->{rev}";
- Tr $n % 2 ? ( class => 'odd' ) : ();
+ Tr;
td class => 'tc1_1';
a href => $revurl, "$i->{type}$i->{iid}";
end;
@@ -180,7 +180,7 @@ sub htmlBrowseVN {
],
row => sub {
my($s, $n, $l) = @_;
- Tr $n % 2 ? (class => 'odd') : ();
+ Tr;
if($tagscore) {
td class => 'tc_s';
tagscore $l->{tagscore}, 0;
diff --git a/lib/VNDB/Util/CommonHTML.pm b/lib/VNDB/Util/CommonHTML.pm
index 8f908b19..3d43a338 100644
--- a/lib/VNDB/Util/CommonHTML.pm
+++ b/lib/VNDB/Util/CommonHTML.pm
@@ -195,7 +195,7 @@ sub htmlRevision {
# otherwise, compare the two revisions
else {
- table;
+ table class => 'stripe';
thead;
Tr;
td; lit '&nbsp;'; end;
@@ -211,8 +211,7 @@ sub htmlRevision {
end;
end;
end;
- my $i = 1;
- revdiff(\$i, $type, $old, $new, @$_) for (
+ revdiff($type, $old, $new, @$_) for (
[ ihid => serialize => sub { mt $_[0] ? '_revision_yes' : '_revision_no' } ],
[ ilock => serialize => sub { mt $_[0] ? '_revision_yes' : '_revision_no' } ],
@fields
@@ -233,7 +232,7 @@ sub revheader { # type, obj
}
sub revdiff {
- my($i, $type, $old, $new, $short, %o) = @_;
+ my($type, $old, $new, $short, %o) = @_;
$o{serialize} ||= $o{htmlize};
$o{diff} = 1 if $o{split};
@@ -268,7 +267,7 @@ sub revdiff {
$ser1 = mt '_revision_empty' if !$ser1 && $ser1 ne '0';
$ser2 = mt '_revision_empty' if !$ser2 && $ser2 ne '0';
- Tr $$i++ % 2 ? (class => 'odd') : ();
+ Tr;
td mt $short eq 'ihid' || $short eq 'ilock' ? "_revfield_$short" : "_revfield_${type}_$short";
td class => 'tcval'; lit $ser1; end;
td class => 'tcval'; lit $ser2; end;
@@ -372,7 +371,7 @@ sub htmlVoteStats {
hide_ign => $type eq 'v',
);
if(@$recent) {
- table class => 'recentvotes';
+ table class => 'recentvotes stripe';
thead; Tr;
td colspan => 3;
txt mt '_votestats_recent';
@@ -383,17 +382,17 @@ sub htmlVoteStats {
end;
end;
end; end;
- for (0..$#$recent) {
- Tr $_ % 2 == 0 ? (class => 'odd') : ();
+ for (@$recent) {
+ Tr;
td;
if($type eq 'u') {
- a href => "/v$recent->[$_]{vid}", title => $recent->[$_]{original}||$recent->[$_]{title}, shorten $recent->[$_]{title}, 40;
+ a href => "/v$_->{vid}", title => $_->{original}||$_->{title}, shorten $_->{title}, 40;
} else {
- a href => "/u$recent->[$_]{uid}", $recent->[$_]{username};
+ a href => "/u$_->{uid}", $_->{username};
}
end;
- td fmtvote $recent->[$_]{vote};
- td $self->{l10n}->date($recent->[$_]{date});
+ td fmtvote $_->{vote};
+ td $self->{l10n}->date($_->{date});
end;
}
end 'table';