NAME
Blosxom::Plugin - Base class for Blosxom plugins
SYNOPSIS
package my_plugin;
use strict;
use warnings;
use parent 'Blosxom::Plugin';
__PACKAGE__->load_components( 'DataSection' );
sub start {
my $class = shift;
my $template = $class->data_section->{'my_plugin.html'};
}
1;
__DATA__
@@ my_plugin.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>My Plugin</title>
</head>
<body>
<h1>Hello, world</h1>
</body>
</html>
DESCRIPTION
Base class for Blosxom plugins. Inspired by Blosxom 3 which was abandoned to be released.
BACKGROUND
Blosxom globalizes a lot of variables. This module assigns them to appropriate namespaces like 'Request', 'Response' or 'Config'. In addition, it's intended that Blosxom::Plugin::* namespace will abstract routines from Blosxom plugins.
METHODS
- $class->load_components( @comps )
-
Loads the given components into the current module. If a module begins with a
+
character, it is taken to be a fully qualified class name, otherwiseBlosxom::Plugin
is prepended to it. - $class->add_method( $method => $coderef )
-
This method takes a method name and a subroutine reference, and adds the method to the class. Available while loading components.
DEPENDENCIES
Blosxom 2.0.0 or higher.
SEE ALSO
ACKNOWLEDGEMENT
Blosxom was originally written by Rael Dohnfest. The Blosxom Development Team succeeded to the maintenance.
BUGS AND LIMITATIONS
This module is beta state. API may change without notice.
AUTHOR
Ryo Anazawa <anazawa@cpan.org>
LICENSE AND COPYRIGHT
Copyright (c) 2012 Ryo Anzawa. All rights reserved.
This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See perlartistic.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.