#!/usr/local/bin/perl -n

use HTML::Base;

# utility routines

sub html_break {

	new HTML::Base::Break ;
	HTML::Base::end_object ;
}

sub html_paragraph {

	new HTML::Base::Paragraph ;
	HTML::Base::end_object ;
}

sub BEGIN {

# Start the HTML, create a <BODY> tag

	$body = new HTML::Base::Body;

	new HTML::Base::Title ;

# set the title

	new HTML::Base::Text "Resume of Uri Guttman" ;

	HTML::Base::end_object ;

	$head = new HTML::Base::Head ;

# Create a header

	$header = new HTML::Base::Header 3 ;
	$center = new HTML::Base::Center ;

	new HTML::Base::Text "Resume of";

	&html_break ;
}


# remove leading whitespace and newlines

s/^\s*// ;
chomp ;


if ( $line_num = $. == 1 .. /^$/ ) {

	$center->make_current;

	new HTML::Base::Text $_ ;

	&html_break ;

	if ( $line_num =~ /E/ ) {

		$center->end_object ;
		$header->end_object ;
		$head->end_object ;

		&html_paragraph ;
	}

	next ;
}

if ( /^$/ ) {
	$blank = 1 ;

	if ( $in_list ) {

		$in_list = 0 ;

		HTML::Base::end_object ;
	}

	if ( $in_job ) {


		$job_text =~ /\((.*)\)/ ;

		$job = $1 ;
		$dates = $` ;
		$company = $' ;

		$company =~ s/,([^ ])/, $1/ ;

		new HTML::Base::Header 4 ;
		new HTML::Base::Text $dates ;

		&html_break ;

		new HTML::Base::Text $job ;

		&html_break ;

		new HTML::Base::Text $company ;
		HTML::Base::end_object ;

		$in_job = 0 ;
		$job_text = '' ;
	}

	next ;
}
else {
	$blank = 0 ;
}


if ( /\*/ ) {

	s/^\*\s+// ;

	unless ( $in_list ) {

		new HTML::Base::UnorderedList ;
	}

	$in_list = 1 ;

	new HTML::Base::ListItem ;
	new HTML::Base::Text $_ ;
	HTML::Base::end_object ;

	next ;
}

if ( $in_list ) {

	new HTML::Base::Text $_ ;
}
else {

	unless ( /[a-z]/ ) {

		@words = map { ucfirst lc $_ } split ;

		new HTML::Base::Header 3 ;
		new HTML::Base::Text "@words" ;
		HTML::Base::end_object ;

		&html_paragraph ;
	}
	else {

		if ( /19\d\d/ ) {

			$in_job = 1 ;
		}

		if ( $in_job ) {

			$job_text .= $_ ;
		}
		else {
			new HTML::Base::Header 4 ;
			new HTML::Base::Text $_ ;
			HTML::Base::end_object ;
	
			&html_paragraph ;
		}
	}
}


sub END {

# Output everything

	$body->realize;
}
