This commit is contained in:
anon 2025-08-21 00:18:45 +02:00
parent e1bf0fe5b4
commit 32f898c951
2 changed files with 8 additions and 6 deletions

View File

@ -70,12 +70,13 @@ sub serve_template {
} }
my %routes = ( my %routes = (
'/' => sub { serve_template("index.tt", @_) }, '/' => sub { serve_template("index.tt", @_) },
'/~([a-zA-Z0-9_.]+)' => sub { serve_template("index_user.tt", @_) }, '/~([\w+.])' => sub { serve_template("index_user.tt", @_) },
'/~([a-zA-Z0-9_.]+)/([a-zA-Z0-9_.]+)' => sub { serve_template("repository.tt", @_) }, '/~([\w+.])/([\w+.]+)' => sub { serve_template("repository.tt", @_) },
); );
my %route_regex_cache = map { $_ => qr{^$_$} } keys %routes;
my $public = 'git/public'; my $public = 'repos/';
my $dbfile = 'gorillanest.sqlite3'; my $dbfile = 'gorillanest.sqlite3';
my %data = ( my %data = (
found => 0, found => 0,
@ -91,9 +92,10 @@ sub master {
my $uri = $ENV{'REQUEST_URI'} || '/'; my $uri = $ENV{'REQUEST_URI'} || '/';
for my $pattern (keys %routes) { for my $pattern (keys %routes) {
if ($uri =~ m{^$pattern$}) { if ($uri =~ $route_regex_cache{$pattern}) {
my $handler = $routes{$pattern}; my $handler = $routes{$pattern};
$handler->($uri, $1, $2, $3); $handler->($uri, $1, $2, $3);
return;
} }
} }

View File

@ -6,7 +6,7 @@ use warnings;
use Syntax::Keyword::Try; use Syntax::Keyword::Try;
use FCGI; use FCGI;
require "gorillanest.pl.cgi"; BEGIN { require 'gorillanest.pl.cgi'; }
our $request = FCGI::Request(); our $request = FCGI::Request();