]>
iEval git - app-fonbot-daemon.git/blob - lib/App/FonBot/Plugin/Config.pm
8bcb682e203b9252378cca9f471fd3f64382f840
1 package App
:: FonBot
:: Plugin
:: Config
;
3 our $VERSION = '0.000_5' ;
9 use parent qw
/Exporter/ ;
11 use Apache2
:: Authen
:: Passphrase
;
12 use Log
:: Log4perl qw
// ;
14 our @EXPORT_OK = qw
/$oftc_enabled $oftc_nick @oftc_channels $oftc_nickserv_password $bitlbee_enabled $bitlbee_nick $bitlbee_server $bitlbee_port $bitlbee_password $dir $user $group @supplementary_groups $httpd_port $email_batch_seconds $email_from $email_subject/ ;
16 ##################################################
18 our ( $oftc_enabled , $oftc_nick , @oftc_channels , $oftc_nickserv_password );
19 our ( $bitlbee_enabled , $bitlbee_nick , $bitlbee_server , $bitlbee_port , $bitlbee_password );
20 our ( $dir , $user , $group , @supplementary_groups );
21 our ( $email_batch_seconds , $email_from , $email_subject );
23 ##################################################
25 my $log = Log
:: Log4perl
-> get_logger ( __PACKAGE__
);
28 $log -> info ( 'reading config file' );
29 unless ( my $ret = do '/etc/fonbotd/config.pl' ) {
30 die "Cannot parse config file: $@" if $ @
;
31 die "Cannot run config file: $!" unless $ret ;
47 App::FonBot::Plugin::Config - FonBot plugin for reading configuration files
51 use App::FonBot::Plugin::Config qw/$oftc_enabled $oftc_nick @oftc_channels $oftc_nickserv_password $bitlbee_enabled $bitlbee_nick $bitlbee_server $bitlbee_port $bitlbee_password $user $group @supplementary_groups $httpd_port/;
52 App::FonBot::Plugin::Config->init;
54 # Variables used in App::FonBot:Plugin::OFTC
55 say "The OFTC plugin is ".($oftc_enabled ? 'enabled' : 'disabled');
56 say "The OFTC NickServ password is $oftc_nickserv_password";
57 say "The OFTC nickname is $oftc_nick";
58 say "The OFTC channels are @oftc_channels";
60 # Variables used in App::FonBot::Plugin::BitlBee
61 say "The BitlBee plugin is ".($bitlbee_enabled ? 'enabled' : 'disabled');
62 say "The BitlBee server runs on port $bitlbee_port of host $bitlbee_server"
63 say "The BitlBee nickname is $bitlbee_nick";
64 say "The BitlBee password is $bitlbee_password";
66 # Variables used in App::FonBot::Plugin::Common
67 say "The storage directory is $dir";
68 say "The user is $user";
69 say "The primary group is $group";
70 say "The supplementary groups are @supplementary_groups";
72 # Variables used in App::FonBot::Plugin::HTTPD
73 say "The HTTPD listens on port $httpd_port"
75 # Variables used in App::FonBot::Plugin::Email
76 say "The email batch delay is $email_batch_seconds";
77 say "The email plugin sends emails from $email_from";
78 say "The email plugin sends emails with subject $email_subject";
82 This FonBot plugin reads a configuration file (hardcoded to F</etc/fonbot/config.pl>) and provides configuration variables to the other plugins. It is a required plugin, since all other plugins depend on it.
84 The configuration variables are described in detail in the plugins that use it.
90 =item C<App::FonBot::Plugin::Config-E<gt>init>
92 (Re-)reads the configuration file, populating the configuration variables. The configuration file is a regular perl script, hardcoded to F</etc/fonbot/config.pl>.
94 =item C<App::FonBot::Plugin::Config-E<gt>fini>
96 Currently a no-op. It is recommended to call this after finishing using this module, since it might do something in a future release.
102 Marius Gavrilescu C<< <marius@ieval.ro> >>
104 =head1 COPYRIGHT AND LICENSE
106 Copyright 2013 Marius Gavrilescu
108 This file is part of fonbotd.
110 fonbotd is free software: you can redistribute it and/or modify
111 it under the terms of the GNU Affero General Public License as published by
112 the Free Software Foundation, either version 3 of the License, or
113 (at your option) any later version.
115 fonbotd is distributed in the hope that it will be useful,
116 but WITHOUT ANY WARRANTY; without even the implied warranty of
117 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
118 GNU Affero General Public License for more details.
120 You should have received a copy of the GNU Affero General Public License
121 along with fonbotd. If not, see <http://www.gnu.org/licenses/>
This page took 0.05117 seconds and 3 git commands to generate.