summaryrefslogtreecommitdiffstats
path: root/news_wizard/Inn.pm
diff options
context:
space:
mode:
Diffstat (limited to 'news_wizard/Inn.pm')
-rwxr-xr-xnews_wizard/Inn.pm160
1 files changed, 0 insertions, 160 deletions
diff --git a/news_wizard/Inn.pm b/news_wizard/Inn.pm
deleted file mode 100755
index 0cd3e06f..00000000
--- a/news_wizard/Inn.pm
+++ /dev/null
@@ -1,160 +0,0 @@
-#!/usr/bin/perl
-
-# Drakwizard
-
-# Copyright (C) 2003 Mandrakesoft
-#
-# Author: Florent Villard <warly@mandrakesoft.com>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-#
-# 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. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-
-package MDK::Wizard::Inn;
-use strict;
-
-use common;
-require MDK::Wizard::Wizcommon;
-use MDK::Wizard::Varspaceval;
-
-my $wiz = new MDK::Wizard::Wizcommon;
-
-my $o = {
- name => N("News Wizard"),
- var => {
- news_server => '',
- news_freq => ''
- },
- needed_rpm => [ 'inn' ],
- defaultimage => "$ENV{__WIZ_HOME__}news_wizard/images/news.png"
- };
-
-$o->{pages} = {
- welcome => {
- name => N("Welcome to the News Wizard") . "\n\n" . N("This wizard will help you configuring the Internet News services for your network."),
- no_back => 1,
- next => 'ask_news_server'
- },
- ask_news_server => {
- name => N("News server") . "\n\n" . N("The news server name is the name of the host providing the Internet news to your network; the name is usually provided by your provider.") . "\n\n" . N("Internet host names must be in the form \"host.domain.domaintype\"; for example, if your provider is \"provider.com\", the Internet news server is usually \"news.provider.com\"."),
- pre => sub {
- $o->{var}{news_server} ||= get_server();
- },
- data => [
- { label => N("News server name:"), val => \$o->{var}{news_server} },
- ],
- post => sub { $o->{var}{news_server} || 'error_in_news_server' },
- next => 'ask_news_freq'
- },
- ask_news_freq => {
- name => N("Polling period") . "\n\n" . N("Your server will regularly poll the News server to obtain the latest Internet News; the polling period sets the interval between two consecutive attempts.") . "\n\n" . N("Depending on the kind of Internet connection you have, an appropriate polling period can change between 6 and 24 hours."),
- pre => sub {
- $o->{var}{news_freq} ||= 24;
- },
- data => [
- { label => N("Polling period (hours):"), val => \$o->{var}{news_freq} },
- ],
- post => \&check_valid_hours,
- next => 'summary'
- },
- warning => {
- name => N("Warning."),
- ignore => 1,
- next => 'summary'
- },
- error_in_news_server => {
- name => N("Error.") . "\n\n" . N("The news server name is not correct"),
- ignore => 1,
- next => 'ask_news_server'
- },
- error_in_polling_time => {
- name => N("Error.") . "\n\n" . N("The polling period is not correct"),
- ignore => 1,
- next => 'ask_news_freq'
- },
- summary => {
- name => N("Configuring the Internet News") . "\n\n" . N("The wizard collected the following parameters needed to configure your Internet News service:") . "\n\n" . N("To accept these values, and configure your server, click the next button or use the back button to correct them."),
- data => [
- { label => N("News server:"), val_ref => \$o->{var}{news_server} },
- { label => N("Polling interval:"), val_ref => \$o->{var}{news_freq} },
- ],
- post => \&do_it,
- next => 'end'
- },
- end => {
- name => N("Congratulations") . "\n\n" . N("The wizard successfully configured your Internet News service of your server."),
- end => 1,
- next => 0
- },
-};
-
-sub new {
- my ($class) = @_;
- bless $o, $class;
-}
-
-sub check_valid_hours {
- $o->{var}{news_freq} =~ /^\d+$/ or return 'error_in_polling_time'
-}
-
-sub normalize_freq {
- my ($freq) = @_;
-
- if ($freq =~ /(\d*)/) {
- $freq = $1;
- }
- if ($freq <= 0) {
- $freq = 0;
- }
- if ($freq >= 24) {
- $freq = 24;
- }
- $freq;
-}
-
-sub get_server {
- my %mdk = MDK::Wizard::Varspaceval->get("/etc/leafnode/config");
- $mdk{server}
-}
-
-sub normalize_server {
- my ($server) = @_;
- $server
-}
-
-sub do_it {
- $::testing and return;
- $o->{var}{news_freq} and my $freq = normalize_freq($o->{var}{news_freq}) or
- die "freq not defined: $!";
- $o->{var}{news_server} and my $server = normalize_server($o->{var}{news_server}) or
- die "server not defined: $!";
- my $file = "/etc/leafnode/config";
- -d "/etc/leafnode" or mkdir "/etc/leafnode";
- output($file, map {
- s|__server__|$server|g;
- $_;
- } cat_("__WIZ_HOME__/news_wizard/scripts/config.default"));
- $file = "/var/spool/cron/news";
- my $file_c = "/etc/leafnode/crontab";
- if (-f $file) {
- MDK::Common::cp_af($file, $file_c);
- MDK::Common::cp_af($file, $file . ".orig");
- }
- output($file_c, map {
- s|__freq__|$freq|g;
- $_;
- } cat_("__WIZ_HOME__/news_wizard/scripts/news.cron"));
- system("crontab -u news /etc/leafnode/crontab");
-}
-
-1;