diff options
author | Edmund von der Burg <evdb@mysociety.org> | 2011-02-22 14:48:49 +0000 |
---|---|---|
committer | Edmund von der Burg <evdb@mysociety.org> | 2011-02-22 14:48:49 +0000 |
commit | 6d4dbdb7bfa1af7c1a34c57fe01198e861fb4b4a (patch) | |
tree | 7abf37f3561c3cda205d979bfc2c7df322c667e8 /perllib/FixMyStreet | |
parent | 79240856cba7e507b5500288cbfa1c99263d824b (diff) |
Created app using catalyst.pl
Diffstat (limited to 'perllib/FixMyStreet')
-rw-r--r-- | perllib/FixMyStreet/App.pm | 75 | ||||
-rw-r--r-- | perllib/FixMyStreet/App/Controller/Root.pm | 69 |
2 files changed, 144 insertions, 0 deletions
diff --git a/perllib/FixMyStreet/App.pm b/perllib/FixMyStreet/App.pm new file mode 100644 index 000000000..87c79c3cb --- /dev/null +++ b/perllib/FixMyStreet/App.pm @@ -0,0 +1,75 @@ +package FixMyStreet::App; +use Moose; +use namespace::autoclean; + +use Catalyst::Runtime 5.80; + +# Set flags and add plugins for the application. +# +# Note that ORDERING IS IMPORTANT here as plugins are initialized in order, +# therefore you almost certainly want to keep ConfigLoader at the head of the +# list if you're using it. +# +# -Debug: activates the debug mode for very useful log messages +# ConfigLoader: will load the configuration from a Config::General file in the +# application's home directory +# Static::Simple: will serve static files from the application's root +# directory + +use Catalyst qw/ + -Debug + ConfigLoader + Static::Simple +/; + +extends 'Catalyst'; + +our $VERSION = '0.01'; + +# Configure the application. +# +# Note that settings in fixmystreet_app.conf (or other external +# configuration file that you set up manually) take precedence +# over this when using ConfigLoader. Thus configuration +# details given here can function as a default configuration, +# with an external configuration file acting as an override for +# local deployment. + +__PACKAGE__->config( + name => 'FixMyStreet::App', + # Disable deprecated behavior needed by old applications + disable_component_resolution_regex_fallback => 1, +); + +# Start the application +__PACKAGE__->setup(); + + +=head1 NAME + +FixMyStreet::App - Catalyst based application + +=head1 SYNOPSIS + + script/fixmystreet_app_server.pl + +=head1 DESCRIPTION + +[enter your description here] + +=head1 SEE ALSO + +L<FixMyStreet::App::Controller::Root>, L<Catalyst> + +=head1 AUTHOR + +Edmund von der Burg,,, + +=head1 LICENSE + +This library is free software. You can redistribute it and/or modify +it under the same terms as Perl itself. + +=cut + +1; diff --git a/perllib/FixMyStreet/App/Controller/Root.pm b/perllib/FixMyStreet/App/Controller/Root.pm new file mode 100644 index 000000000..8b34e66ca --- /dev/null +++ b/perllib/FixMyStreet/App/Controller/Root.pm @@ -0,0 +1,69 @@ +package FixMyStreet::App::Controller::Root; +use Moose; +use namespace::autoclean; + +BEGIN { extends 'Catalyst::Controller' } + +# +# Sets the actions in this controller to be registered with no prefix +# so they function identically to actions created in MyApp.pm +# +__PACKAGE__->config(namespace => ''); + +=head1 NAME + +FixMyStreet::App::Controller::Root - Root Controller for FixMyStreet::App + +=head1 DESCRIPTION + +[enter your description here] + +=head1 METHODS + +=head2 index + +The root page (/) + +=cut + +sub index :Path :Args(0) { + my ( $self, $c ) = @_; + + # Hello World + $c->response->body( $c->welcome_message ); +} + +=head2 default + +Standard 404 error page + +=cut + +sub default :Path { + my ( $self, $c ) = @_; + $c->response->body( 'Page not found' ); + $c->response->status(404); +} + +=head2 end + +Attempt to render a view, if needed. + +=cut + +sub end : ActionClass('RenderView') {} + +=head1 AUTHOR + +Edmund von der Burg,,, + +=head1 LICENSE + +This library is free software. You can redistribute it and/or modify +it under the same terms as Perl itself. + +=cut + +__PACKAGE__->meta->make_immutable; + +1; |