From Redis to Postgres - Part 2 (Better routes)
[gruntmaster-page.git] / lib / Plack / App / Gruntmaster.pm
index 99ce4987c9e24b387f95487464f8752b70d385a6..5b5f6606a25507f9f105faaff4586895ce48e335 100644 (file)
@@ -56,36 +56,30 @@ sub post {
 }
 
 BEGIN{
-       my $word = qr,(\w+),a;
-       my $ct = qr,(?:\/ct/$word)?,a;
+       my $word   = qr,(\w+),a;
+       my $number = qr,(\d+),a;
 
        sub generic {
-               my ($thing, $ct, $fs) = @_;
-               $ct //= '', $fs //= '';
-               my $pkg = ucfirst $thing;
-               get  qr,$ct/$thing/,             => $pkg;
-               get  qr,$ct/$thing/read,         => "${pkg}::Read";
-               get  qr,$ct/$thing/$word$fs,     => "${pkg}::Entry";
-#              post qr,$ct/$thing/$word/create, => "${pkg}::Entry::Create";
-               get  qr,$ct/$thing/$word/read,   => "${pkg}::Entry::Read";
-#              post qr,$ct/$thing/$word/update, => "${pkg}::Entry::Update";
-#              post qr,$ct/$thing/$word/delete, => "${pkg}::Entry::Delete";
+               for my $thing (@_) {
+                       my $pkg = ucfirst $thing;
+                       get  qr,/$thing/,             => $pkg;
+                       get  qr,/$thing/read,         => "${pkg}::Read";
+                       get  qr,/$thing/$word,        => "${pkg}::Entry";
+#                      post qr,/$thing/$word/create, => "${pkg}::Entry::Create";
+                       get  qr,/$thing/$word/read,   => "${pkg}::Entry::Read";
+#                      post qr,/$thing/$word/update, => "${pkg}::Entry::Update";
+#                      post qr,/$thing/$word/delete, => "${pkg}::Entry::Delete";
+               }
        }
 
        get qr,/css/$word\.css, => 'CSS';
        get qr,/js\.js, => 'JS';
 
-       generic 'us';
-       generic ct => '', '/';
-       generic pb => $ct;
-       #generic log => $ct;
+       generic qw/us ct pb log/;
 
-       get qr,$ct/log/(\d+)?, => 'Log';
-       get qr,$ct/log/st, => 'St';
-       get qr,$ct/log/job/$word, => 'Log::Entry';
-       get qr,$ct/log/job/$word/read, => 'Log::Entry::Read';
-       get qr,$ct/log/src/$word\.$word, => 'Src';
-       post qr,$ct/pb/$word/submit, => 'Submit';
+       get qr,/log/st, => 'St';
+       get qr,/log/src/$number\.$word, => 'Src';
+       post qr,/pb/$word/submit, => 'Submit';
 
        post qr,/action/register, => 'Register';
        post qr,/action/passwd, => 'Passwd';
This page took 0.011842 seconds and 4 git commands to generate.