#!/usr/bin/perl -w
use strict;
#html_include.pl
#version 1.0
#Copyright 2004 John C. Vernaleo
#Unfortunately, I am not comfortable putting unobscured email addresses
#on the web, but these shouldn't be too hard to figure out.
#
# (my_first_name)@netpurgatory.com
# or
# (my_last_name)@astro.umd.edu
#
# 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 of the License, 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
#
# See readme_html_include.txt for more information and a copy of the GPL
#Get file to be included
my $include="web.inc";
my $startstring="";
my $endstring="";
open INC, "< $include" or die("cannot open $include: $!");
my @inc=;
close INC;
chomp(@inc);
#Get lists of files to include header in
my @html=glob "*.html";
#one file at a time, replace old included part with new one.
my $file;
my $filebackup;
my @data;
my @datanew;
my $i;
my $i_start;
my $i_stop;
foreach $file (@html)
{
$filebackup=$file."~";
open DATA, "< $file" or die("cannot open $file: $!");
@data=;
close DATA;
chomp(@data);
$i=0;
$i_start=0;
$i_stop=0;
foreach(@data)
{
if($data[$i]=~$startstring)
{
$i_start=$i;
}
if($data[$i]=~$endstring)
{
$i_stop=$i;
}
$i++;
}
if($i_stop!=0)
{
rename $file, $filebackup;
open PAGE, ">$file" or die("Cannot create file: $!");
select PAGE;
for($i=0;$i<=$i_start;$i++)
{
print $data[$i],"\n";
}
for($i=0;$i<=$#inc;$i++)
{
print $inc[$i],"\n";
}
for($i=$i_stop;$i<=$#data;$i++)
{
print $data[$i],"\n";
}
close PAGE;
select STDOUT;
print "updated $file \n";
}
}