From 0ea68c59a9ea7067fbd85f6a2a6357cabf5f0896 Mon Sep 17 00:00:00 2001 From: Dobrica Pavlinusic Date: Thu, 17 Jun 2010 19:42:08 +0200 Subject: [PATCH] browse code on disk at /code/ --- lib/MojoFacets/Code.pm | 30 ++++++++++++++++++++++++++++++ templates/code/index.html.ep | 15 +++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 lib/MojoFacets/Code.pm create mode 100644 templates/code/index.html.ep diff --git a/lib/MojoFacets/Code.pm b/lib/MojoFacets/Code.pm new file mode 100644 index 0000000..db4ad9f --- /dev/null +++ b/lib/MojoFacets/Code.pm @@ -0,0 +1,30 @@ +package MojoFacets::Code; + +use strict; +use warnings; + +use base 'Mojolicious::Controller'; + +use Data::Dump qw(dump); +use File::Slurp; + +sub index { + my $self = shift; + + my $dir = $self->app->home->rel_dir('public') . '/code'; + + my $snippets; + + foreach my $full_path ( glob("$dir/*.pl") ) { + my $path = $full_path; + $path =~ s/^$dir\/*//; + my ( $column, $description ) = split(/\./,$path,2); + $snippets->{$column}->{$description} = read_file $full_path; + } + + $self->render( + snippets => $snippets, + ); +} + +1; diff --git a/templates/code/index.html.ep b/templates/code/index.html.ep new file mode 100644 index 0000000..7512beb --- /dev/null +++ b/templates/code/index.html.ep @@ -0,0 +1,15 @@ +% layout 'default'; + +

Code snippets

+ +% foreach my $column ( keys %$snippets ) { +

<%= $column %>

+ +% } + +<%= dumper stash('snippets') %> -- 2.20.1