diff options
author | Yorhel <git@yorhel.nl> | 2021-01-19 13:12:17 +0100 |
---|---|---|
committer | Yorhel <git@yorhel.nl> | 2021-01-20 09:06:12 +0100 |
commit | 9d1727c77d4b00d2a861c2c31f93d3aebff2f2d9 (patch) | |
tree | 61d77e79edb2590c06cca80c8d029d8630a5aabc /util | |
parent | b35af5ba52f3bceb603e8c7dda10d4abb84c6bd9 (diff) |
v2rw: Rewrite done, time to clean up old v2 code
Yay!
There are no more request handlers in the VNDB::* namespace and no more
Javascript in data/js/. This cleans up a lot of old legacy code that
wasn't fun to maintain.
Diffstat (limited to 'util')
-rwxr-xr-x | util/jsgen.pl | 62 | ||||
l--------- | util/sql | 1 | ||||
-rwxr-xr-x | util/vndb.pl | 29 |
3 files changed, 12 insertions, 80 deletions
diff --git a/util/jsgen.pl b/util/jsgen.pl deleted file mode 100755 index a4023ff8..00000000 --- a/util/jsgen.pl +++ /dev/null @@ -1,62 +0,0 @@ -#!/usr/bin/perl - -use strict; -use warnings; -use Encode 'encode_utf8'; -use Cwd 'abs_path'; -use JSON::XS; - -my $ROOT; -BEGIN { ($ROOT = abs_path $0) =~ s{/util/jsgen\.pl$}{}; } - -use lib "$ROOT/lib"; -use VNDB::Config; -use VNDB::Types; - - -sub vars { - my %vars = ( - rlist_status => [ map [ $_, $RLIST_STATUS{$_} ], keys %RLIST_STATUS ], - cookie_prefix => config->{tuwf}{cookie_prefix}, - age_ratings => [ map [ $_, $AGE_RATING{$_}{txt}], keys %AGE_RATING ], - languages => [ map [ $_, $LANGUAGE{$_} ], sort { $LANGUAGE{$a} cmp $LANGUAGE{$b} } keys %LANGUAGE ], - platforms => [ map [ $_, $PLATFORM{$_} ], keys %PLATFORM ], - char_roles => [ map [ $_, $CHAR_ROLE{$_}{txt} ], keys %CHAR_ROLE ], - media => [ map [ $_, $MEDIUM{$_}{txt}, $MEDIUM{$_}{qty} ], keys %MEDIUM ], - release_types => [ map [ $_, $RELEASE_TYPE{$_} ], keys %RELEASE_TYPE ], - animated => [ map [ $_, $ANIMATED{$_}{txt} ], keys %ANIMATED ], - voiced => [ map [ $_, $VOICED{$_}{txt} ], keys %VOICED ], - vn_lengths => [ map [ $_, $VN_LENGTH{$_}{txt} ], keys %VN_LENGTH ], - blood_types => [ map [ $_, $BLOOD_TYPE{$_} ], keys %BLOOD_TYPE ], - genders => [ map [ $_, $GENDER{$_} ], keys %GENDER ], - credit_type => [ map [ $_, $CREDIT_TYPE{$_} ], keys %CREDIT_TYPE ], - cup_size => [ grep $_, keys %CUP_SIZE ], - ); - JSON::XS->new->encode(\%vars); -} - - -# Reads main.js and any included files. -sub readjs { - my $f = shift || 'main.js'; - open my $JS, '<:utf8', "$ROOT/data/js/$f" or die $!; - local $/ = undef; - local $_ = <$JS>; - close $JS; - s{^//include (.+)$}{'(function(){'.readjs($1).'})();'}meg; - $_; -} - - -sub save { - my($f, $body) = @_; - open my $F, '>', "$f~" or die $!; - print $F encode_utf8($body); - close $F; - rename "$f~", $f or die $!; -} - - -my $js = readjs; -$js =~ s{/\*VARS\*/}{vars()}eg; -save "$ROOT/static/g/vndb.js", $js; diff --git a/util/sql b/util/sql deleted file mode 120000 index 44657b95..00000000 --- a/util/sql +++ /dev/null @@ -1 +0,0 @@ -../sql
\ No newline at end of file diff --git a/util/vndb.pl b/util/vndb.pl index 29ef026b..f7c94044 100755 --- a/util/vndb.pl +++ b/util/vndb.pl @@ -91,27 +91,22 @@ sub TUWF::Object::resDenied { # Intercept TUWF::any() and TUWF::register() to figure out which module is processing the request. if(config->{trace_log}) { - my sub wrap { - my $f = shift; - sub { - my $i = 0; - my $loc = ['',0]; - while(my($pack, undef, $line) = caller($i++)) { - if($pack !~ '^(?:main|TUWF|VNWeb::Elm)') { - $loc = [$pack,$line]; - last; - } + no warnings 'redefine'; + my $f = \&TUWF::any; + *TUWF::any = sub { + my($meth, $path, $sub) = @_; + my $i = 0; + my $loc = ['',0]; + while(my($pack, undef, $line) = caller($i++)) { + if($pack !~ '^(?:main|TUWF|VNWeb::Elm)') { + $loc = [$pack,$line]; + last; } - my sub subwrap { my $sub = shift; sub { tuwf->req->{trace_loc} = $loc; $sub->(@_) } } - $f->(map ref($_) eq 'CODE' ? subwrap($_) : $_, @_) } - } - no warnings 'redefine'; - my $x = \&TUWF::register; *TUWF::register = wrap($x); - my $y = \&TUWF::any; *TUWF::any = wrap($y); + $f->($meth, $path, sub { tuwf->req->{trace_loc} = $loc; $sub->(@_) }); + }; } -TUWF::load_recursive('VNDB::Util', 'VNDB::DB', 'VNDB::Handler'); TUWF::set import_modules => 0; TUWF::load_recursive('VNWeb'); |