diff options
| author | fukachan <fukachan> | 2001-11-05 12:26:36 +0000 |
|---|---|---|
| committer | fukachan <fukachan> | 2001-11-05 12:26:36 +0000 |
| commit | a356d6520a8150f19f36cfa8834e78cfe0a74314 (patch) | |
| tree | 5b3bc7d1d4c121382c8ac88d61421648bee3341b | |
| parent | c3c58e843a0f5cb5d064ea02c3ab99b9152bdca9 (diff) | |
| download | fml8-a356d6520a8150f19f36cfa8834e78cfe0a74314.tar.gz fml8-a356d6520a8150f19f36cfa8834e78cfe0a74314.tar.bz2 fml8-a356d6520a8150f19f36cfa8834e78cfe0a74314.zip | |
new utility: fmlhtmlify src_dir dst_dir
| -rwxr-xr-x | INSTALL.sh | 5 | ||||
| -rwxr-xr-x | fml/bin/fmlhtmlify | 16 | ||||
| -rw-r--r-- | fml/lib/FML/Process/HTMLify.pm | 142 | ||||
| -rw-r--r-- | fml/lib/FML/Process/Switch.pm | 8 |
4 files changed, 168 insertions, 3 deletions
@@ -4,7 +4,7 @@ # All rights reserved. This program is free software; you can # redistribute it and/or modify it under the same terms as Perl itself. # -# $FML: INSTALL.sh,v 1.26 2001/06/28 05:03:27 fukachan Exp $ +# $FML: INSTALL.sh,v 1.27 2001/11/03 12:23:16 fukachan Exp $ # # Run this from the top-level fml source directory. @@ -83,7 +83,7 @@ echo update $libexec_dir/$fml_version/ cp -pr fml/libexec/* $libexec_dir/$fml_version/ echo update /usr/local/bin/ -for prog in fmldoc fmlthread fmlconf makefml fmlsch +for prog in fmldoc fmlthread fmlconf makefml fmlsch fmlhtmlify do echo update /usr/local/bin/$prog cp fml/bin/$prog /usr/local/bin/$prog.new @@ -95,6 +95,7 @@ PROGRAMS="$PROGRAMS fmlserv mead fmlconf fmldoc" PROGRAMS="$PROGRAMS fmlthread fmlticket.cgi" PROGRAMS="$PROGRAMS makefml makefml.cgi" PROGRAMS="$PROGRAMS fmlsch fmlsch.cgi" +PROGRAMS="$PROGRAMS fmlhtmlify" if [ ! -f $libexec_dir/loader ];then diff --git a/fml/bin/fmlhtmlify b/fml/bin/fmlhtmlify new file mode 100755 index 00000000..696b79a1 --- /dev/null +++ b/fml/bin/fmlhtmlify @@ -0,0 +1,16 @@ +#!/bin/sh +# +# Copyright (C) 2001 Ken'ichi Fukamachi +# All rights reserved. This program is free software; you can +# redistribute it and/or modify it under the same terms as Perl itself. +# +# $FML: fmlthread,v 1.1 2001/11/03 12:23:14 fukachan Exp $ +# + +default_prefix=/usr/local +libexec_dir=$default_prefix/libexec/fml + +exec $libexec_dir/fmlhtmlify $* + +echo 'not reach here' +exit 0; diff --git a/fml/lib/FML/Process/HTMLify.pm b/fml/lib/FML/Process/HTMLify.pm new file mode 100644 index 00000000..d904ab47 --- /dev/null +++ b/fml/lib/FML/Process/HTMLify.pm @@ -0,0 +1,142 @@ +#!/usr/local/bin/perl -w +#-*- perl -*- +# +# Copyright (C) 2000-2001 Ken'ichi Fukamachi +# All rights reserved. +# +# $FML: HTMLify.pm,v 1.4 2001/11/04 13:41:32 fukachan Exp $ +# + +package FML::Process::HTMLify; + +use vars qw($debug @ISA @EXPORT @EXPORT_OK); +use strict; +use Carp; + +use FML::Process::Kernel; +use FML::Log qw(Log LogWarn LogError); +use FML::Config; + +@ISA = qw(FML::Process::Kernel); + + +=head1 NAME + +FML::Process::HTMLify -- yet another interface to htmlify + +=head1 SYNOPSIS + +See C<Mail::HTML::Lite> module. + +=head1 DESCRIPTION + +This class drives thread tracking system in the top level. + +=head1 METHOD + +=head2 C<new($args)> + +create a C<FML::Process::Kernel> object and return it. + +=head2 C<prepare()> + +dummy. + +=cut + + +sub new +{ + my ($self, $args) = @_; + my $type = ref($self) || $self; + my $curproc = new FML::Process::Kernel $args; + return bless $curproc, $type; +} + + +# Descriptions: dummy to avoid to take data from STDIN +# Arguments: $self $args +# Side Effects: +# Return Value: none +sub prepare +{ + ; +} + + +sub verify_request +{ + ; +} + + +=head2 C<run($args)> + +call the actual thread tracking system. + +=cut + +sub run +{ + my ($curproc, $args) = @_; + my $argv = $curproc->command_line_argv(); + my $src_dir = $argv->[0]; + my $dst_dir = $argv->[1]; + + unless (-d $src_dir) { + croak("no such source directory"); + } + + if (defined $dst_dir) { + unless (-d $dst_dir) { + use File::Utils qw(mkdirhier); + mkdirhier($dst_dir, 0755); + } + + print STDERR "htmlify\t$src_dir =>\n\t\t$dst_dir\n"; + + use Mail::HTML::Lite; + &Mail::HTML::Lite::htmlify_dir($src_dir, { directory => $dst_dir }); + } + else { + croak("no destination directory\n"); + } +} + + +sub help +{ + use File::Basename; + my $name = basename($0); + +print <<"_EOF_"; + +Usage: $name src_dir dst_dir + +_EOF_ +} + + +sub DESTROY {} + + +=head1 AUTHOR + +Ken'ichi Fukamachi + +=head1 COPYRIGHT + +Copyright (C) 2001 Ken'ichi Fukamachi + +All rights reserved. This program is free software; you can +redistribute it and/or modify it under the same terms as Perl itself. + +=head1 HISTORY + +FML::Process::Kernel appeared in fml5 mailing list driver package. +See C<http://www.fml.org/> for more details. + +=cut + + +1; diff --git a/fml/lib/FML/Process/Switch.pm b/fml/lib/FML/Process/Switch.pm index 4b4e5b17..7a03006c 100644 --- a/fml/lib/FML/Process/Switch.pm +++ b/fml/lib/FML/Process/Switch.pm @@ -4,7 +4,7 @@ # All rights reserved. This program is free software; you can # redistribute it and/or modify it under the same terms as Perl itself. # -# $FML: Switch.pm,v 1.25 2001/11/04 06:43:12 fukachan Exp $ +# $FML: Switch.pm,v 1.26 2001/11/04 13:42:05 fukachan Exp $ # package FML::Process::Switch; @@ -363,6 +363,9 @@ sub _module_specific_options elsif ($myname eq 'fmlsch') { return qw(debug! -D=s -F=s -m=s a!); } + elsif ($myname eq 'fmlhtmlify') { + return qw(debug!); + } else { croak "options for $myname are not defined.\n"; } @@ -441,6 +444,9 @@ sub _module_we_use elsif ($name eq 'fmlsch.cgi') { $pkg = 'FML::CGI::Scheduler'; } + elsif ($name eq 'fmlhtmlify') { + $pkg = 'FML::Process::HTMLify'; + } else { return ''; } |
