summaryrefslogtreecommitdiff
path: root/data/tpl/vnbrowse
diff options
context:
space:
mode:
Diffstat (limited to 'data/tpl/vnbrowse')
-rw-r--r--data/tpl/vnbrowse87
1 files changed, 87 insertions, 0 deletions
diff --git a/data/tpl/vnbrowse b/data/tpl/vnbrowse
new file mode 100644
index 00000000..79dd122e
--- /dev/null
+++ b/data/tpl/vnbrowse
@@ -0,0 +1,87 @@
+<h2>[[: $p{PageTitle} ]]</h2>
+
+[[ if($d{chr} eq 'cat') { ]]-
+<ul id="cat">
+[[ for my $c (qw| e g p t l s |) { ]]-
+ -[[= $c ne 'l' && $c ne 'p' ? '<li>' : '<br />' ]][[: $VNDB::CAT->{$c}[0] ]]-
+ <ul>
+ [[ for (sort keys %{$VNDB::CAT->{$c}[1]}) { ]]-
+ <li class="cat_[[= $c.$_ ]][[= $d{incl} =~ /$c$_/ ? ' inc' : $d{excl} =~ /$c$_/ ? ' exc' : '' ]]">
+ [[: $VNDB::CAT->{$c}[1]{$_} ]]- ([[= $d{cat}{$c.$_} || 0 ]])</li>
+ [[ } ]]
+ </ul>[[= $c ne 't' && $c ne 'g' ? '</li>' : '' ]]-
+[[ } ]]-
+</ul>
+<div id="lfilter">
+ <b>Languages</b> (none selected means all)<br />
+[[ for (sort keys %{$d{lang}}) { next if !$d{lang}{$_}; ]]-
+ <input type="checkbox" name="lang_[[= $_ ]]" id="lang_[[= $_ ]]" value="1" -[[= $d{slang}=~/$_/?'checked="checked"':'' ]]>
+ <label for="lang_[[= $_ ]]">[[: $VNDB::LANG->{$_} ]]- ([[= $d{lang}{$_} ]])</label>
+[[ } ]]-
+</div>
+<br style="clear: left" />
+<input type="button" class="right" id="catsearch" name="catsearch" value="Search!" />
+<br style="clear: left" />
+<br />
+<br />
+
+[[ } elsif($d{chr} ne 'search') { ]]-
+<p class="chr">
+ -[[= $d{chr} ne 'all' ? '<a href="/v/all">all</a>' : 'all' ]]- |
+ [[ for('a'..'z', 0) { ]]-
+ -[[ if($d{chr} eq $_) { ]][[= $_?$_:'#' ]][[ } else { ]]<a href="/v/[[= $_ ]]">[[= $_?$_:'#' ]]</a>[[ } ]]
+ [[ } ]]-
+ <br /><br />
+</p>
+[[ } ]]-
+
+-[[ if($#{$d{vn}} < 0) { ]]
+<p>
+ -[[ if($d{chr} eq 'cat' && !$d{scat}[0][0] && !$d{scat}[0][1]) { ]]
+ Select some categories and hit the "Search" button to get a list of visual novels. Click on a
+ category again to exclude it.<br />
+ Please keep in mind that not all visual novels have the correct categories set, so you
+ may not always find what you are looking for.
+ [[ } else { ]]
+ No results again, life sucks... :'(
+ [[ } ]]-
+</p>
+[[ } else {
+ my %url = (
+ $p{searchquery} ? ( q => $p{searchquery} ) : (),
+ $d{incl} ? ( i => $d{incl} ) : (),
+ $d{excl} ? ( e => $d{excl} ) : (),
+ $d{slang} ? ( l => $d{slang} ) : (),
+ );
+ my %urls = ( %url,
+ $d{order}[0] ne 'title' ? ( s => $d{order}[0] ) : (),
+ $d{order}[1] ne 'a' ? ( o => $d{order}[1] ) : (),
+ );
+ my $url = sprintf '/v/%s', $d{chr};
+ my $urls = $url;
+ $urls .= '?'.join(';', map { $_.'='.$urls{$_} } keys %urls) if keys %urls;
+ $url .= '?'.join(';', map { $_.'='.$url{$_} } keys %url) if keys %url;
+]]
+
+[[= pagebut($urls) ]]
+<table id="tbv">
+ <thead><tr>
+ <td class="tc1">Title [[= sortbut($url, 'title') ]]</td>
+ <td class="tc2">Released [[= sortbut($url, 'released') ]]</td>
+ <td class="tc3">Languages</td>
+ <td class="tc4">Rating [[= sortbut($url, 'votes') ]]</td>
+ </thead></tr>
+ [[ for (@{$d{vn}}) {
+ $_->{c_votes} =~ s#^([0-9]{2}.[0-9]{2})\|([0-9]{4})$#$1 == 0 ? sprintf '- (%d)', $2 : sprintf '%.2f (%d)', $1, $2#e;
+ $_->{c_released} =~ s#^([0-9]{4})([0-9]{2}).+#$1==0?'N/A':$1==9999?'TBA':(($2&&$2>0?($Time::CTime::MoY[$2-1].' '):'').$1)#e;
+ ]]-
+ <tr>
+ <td class="tc1"><a href="/v[[= $_->{id} ]]">[[: $_->{title} ]]</a></td>
+ <td class="tc2">[[: $_->{c_released} ]]</td>
+ <td class="tc3">[[: $_->{c_languages} || 'N/A' ]]</td>
+ <td class="tc4">[[: $_->{c_votes} ]]</td>
+ </tr>
+ [[ } ]]-
+</table>
+[[= pagebut($urls) ]]
+[[ } ]]