Muster
view release on metacpan or search on metacpan
lib/Muster/MetaDb.pm view on Meta::CPAN
package Muster::MetaDb;
$Muster::MetaDb::VERSION = '0.9501';
#ABSTRACT: Muster::MetaDb - keeping meta-data about pages
=head1 NAME
Muster::MetaDb - keeping meta-data about pages
=head1 VERSION
version 0.9501
=head1 SYNOPSIS
use Muster::MetaDb;;
=head1 DESCRIPTION
Content Management System
keeping meta-data about pages.
=cut
use Mojo::Base -base;
use Carp;
use DBI;
use Search::Query;
use Sort::Naturally;
use Text::NeatTemplate;
use YAML::Any;
use POSIX qw(ceil);
use Mojo::URL;
=head1 METHODS
=head2 init
Set the defaults for the object if they are not defined already.
=cut
sub init {
my $self = shift;
$self->{primary_fields} = [qw(title bald_name hairy_name date filetype is_binary pagesrcname extension filename parent_page grandparent_page)];
if (!defined $self->{metadb_db})
{
# give a default name
$self->{metadb_db} = 'muster.db3';
}
if (!defined $self->{route_prefix})
{
$self->{route_prefix} = '/'; # for absolute links
}
return $self;
} # init
=head2 update_one_page
Update the meta information for one page
$self->update_one_page($page, %meta);
=cut
sub update_one_page {
my $self = shift;
my $pagename = shift;
my %args = @_;
if (!$self->_connect())
{
return undef;
}
$self->_add_page_data($pagename, %args);
} # update_one_page
=head2 update_some_pages
Update the meta information for more than one page
$self->update_some_pages($page=>{...},$page2=>{}...);
=cut
( run in 0.678 second using v1.01-cache-2.11-cpan-56fb94df46f )