diff options
author | Yorhel <git@yorhel.nl> | 2019-12-29 10:11:18 +0100 |
---|---|---|
committer | Yorhel <git@yorhel.nl> | 2019-12-29 10:11:20 +0100 |
commit | 40ef00116cc12aef4ce08fc1136e329c58abda4b (patch) | |
tree | 92b73b8786e2aa927f0510cdcb1ad66e86ccd2da | |
parent | f18f6925d52029fd5e55585a627cf07052798dd7 (diff) |
ulist: Display labels on VN browser
Replaces the old "wishlist status" column that I removed earlier. It's
kind of awkward, but at least the functionality still exists now.
-rw-r--r-- | data/style.css | 4 | ||||
-rw-r--r-- | lib/VNDB/DB/VN.pm | 8 | ||||
-rw-r--r-- | lib/VNDB/Util/BrowseHTML.pm | 3 |
3 files changed, 12 insertions, 3 deletions
diff --git a/data/style.css b/data/style.css index 0d7266a0..dd0df17e 100644 --- a/data/style.css +++ b/data/style.css @@ -564,8 +564,8 @@ div.scr_uploader { visibility: hidden; overflow: hidden; width: 1px; height: .vnbrowse .tc3 { padding: 0; } .vnbrowse .tc5 { text-align: right; padding-right: 10px } .vnbrowse .tc6 { width: 80px } -.vnbrowse .tc7 { text-align: right; width: 8px } -.vnbrowse .tc8 { width: 8px } +.vnbrowse .tc7 { text-align: right; width: 8px; white-space: nowrap } +.vnbrowse .tc7 abbr { display: inline-block; width: 20px; } diff --git a/lib/VNDB/DB/VN.pm b/lib/VNDB/DB/VN.pm index afc64282..d099b6ff 100644 --- a/lib/VNDB/DB/VN.pm +++ b/lib/VNDB/DB/VN.pm @@ -255,6 +255,14 @@ sub _enrich { } } + VNWeb::DB::enrich_flatten(vnlist_labels => id => vid => sub { VNWeb::DB::sql(' + SELECT uvl.vid, ul.label + FROM ulist_vns_labels uvl + JOIN ulist_labels ul ON ul.uid = uvl.uid AND ul.id = uvl.lbl + WHERE uvl.uid =', \$self->authInfo->{id}, 'AND uvl.vid IN', $_[0], ' + ORDER BY CASE WHEN ul.id < 10 THEN ul.id ELSE 10 END, ul.label' + )}, $r) if $what =~ /vnlist/ && $self->authInfo->{id}; + return wantarray ? ($r, $np) : $r; } diff --git a/lib/VNDB/Util/BrowseHTML.pm b/lib/VNDB/Util/BrowseHTML.pm index 7846d5c0..1a7e3878 100644 --- a/lib/VNDB/Util/BrowseHTML.pm +++ b/lib/VNDB/Util/BrowseHTML.pm @@ -160,9 +160,10 @@ sub htmlBrowseVN { if($f->{vnlist}) { td class => 'tc7'; lit sprintf '<b class="%s">%d/%d</b>', $l->{userlist_obtained} == $l->{userlist_all} ? 'done' : 'todo', $l->{userlist_obtained}, $l->{userlist_all} if $l->{userlist_all}; + abbr title => join(', ', $l->{vnlist_labels}->@*), scalar $l->{vnlist_labels}->@* if $l->{vnlist_labels} && $l->{vnlist_labels}->@*; + abbr title => 'No labels', ' ' if $l->{vnlist_labels} && !$l->{vnlist_labels}->@*; end 'td'; } - td class => 'tc8', defined($l->{wstat}) ? $WISHLIST_STATUS{$l->{wstat}} : '' if $f->{wish}; td class => 'tc2'; $_ ne 'oth' && cssicon $_, $PLATFORM{$_} for (sort @{$l->{c_platforms}}); |