See: OpusVL::AppKit Inheriting this app using AppBuilder will give your application the following: Catalyst::Plugin::Static::Simple Catalyst::Plugin::CustomErrorMessage Catalyst::Plugin::Authentication Catalyst::Plugin::Authorization::Roles Catalyst::Plugin::Session Catalyst::Plugin::Session::Store::FastMmap Catalyst::Plugin::Session::State::Cookie CatalystX::SimpleLogin CatalystX::VirtualComponents OpusVL::AppKit::Plugin::AppKit Controller::Root View::AppKitTT View::Email View::Download View::JSON View::Excel Plugins All the standard ones we use as per their documentation. We have created our own AppKit Plugin, which is used to drive the AppKit specific code . At the moment it is used for ACL rules, Portlets and Navigation... I guess in time it will evolve, but now works ok. Controllers The Root controller is used to drive the GUI, it is pretty simple so could be over written if required (i think?). The Root controller (and any you want to work with the GUI) are based on the L<OpusVL::AppKit::Base::Controller>, this turns a controller into an "AppKit aware" controller and it can tell the AppKit what its name is, what Porlets it has, etc. See L<OpusVL::AppKit::Base::Controller> for more information. Views Currently only the AppKitTT view is used and this is to create the GUI... the view is configured for the GUI, but it could be reused (i think). The other views are available to be utilised in furture development.
This extends CatalystX::AppBuilder so the OpusVL::AppKit can be inherited. Here we set the configuration required for the AppKit to run (inside another app) The supporting files like templates etc. are stored in the modules 'auto' directory see. L<File::ShareDir> This creates a catalyst app with the following Plugins loaded: L<Catalyst::Plugin::Static::Simple> L<Catalyst::Plugin::Unicode> L<Catalyst::Plugin::CustomErrorMessage> L<Catalyst::Plugin::Authentication> L<Catalyst::Plugin::Authorization::Roles> L<Catalyst::Plugin::Session> L<Catalyst::Plugin::Session::Store::FastMmap> L<Catalyst::Plugin::Session::State::Cookie> L<CatalystX::SimpleLogin> L<CatalystX::VirtualComponents> L<OpusVL::AppKit::Plugin::AppKit> This also configures the application in the following way: default_view - Set to 'AppKitTT' custom-error-message - enable customer error msg. static - set static to auto dir OpusVL::AppKit::Plugin::AppKit - used to config ACL rules. View::AppKitTT - set include paths, wrapper, etc. Plugin::Authentication - used to authenicate users. View::Email - use to send any emails
OpusVL::AppKit::Builder - Builder class for OpusVL::AppKit
L<File::ShareDir>, L<CatalystX::AppBuilder>, L<OpusVL::AppKit>, L<Catalyst>
OpusVL - www.opusvl.com
This software is copyright (c) 2010 by OpusVL - www.opusvl.com.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.