use strict;
use warnings;
{
package Database;
use strict;
use warnings;
sub new {die;}
sub select_username_from_db_where_mailaddr_equal {
my ($class, $mailaddr) = @_;
if($mailaddr eq 'admin@hoge.com'){
return "Watasi wa kanrinin";
} else {
die ("ERROR");
}
}
}
{
package HtmlWriter;
use strict;
use warnings;
sub new {
my ($class, ) = @_;
my $self = {
buffer => '',
};
return bless $self, $class
}
sub title {
my ($self, $title) = @_;
$self->{buffer} .= "<html>\n"."<head>\n<title>".$title."</title>\n</head>\n";
$self->{buffer} .= "<body>\n"."<h3>".$title."</h3>\n";
}
sub paragraph {
my ($self, $msg) = @_;
$self->{buffer} .= "<p>".$msg."</p>\n";
}
sub link {
my ($self, $href, $caption) = @_;
$self->paragraph("<a href='".$href."'>".$caption."</a>");
}
sub fin {
my ($self, ) = @_;
$self->{buffer} .= "</body>\n</html>\n";
}
}
{
package PageMaker;
use strict;
use warnings;
sub new {die;}
sub makeWelcomePage {
my ($class, $mailaddr, $filename) = @_;
my $username =
Database->select_username_from_db_where_mailaddr_equal($mailaddr);
my $writer = HtmlWriter->new();
$writer->title('Welcome to '.$username.'\'s page!!');
$writer->paragraph('wainging for your mail!!');
$writer->link($mailaddr, 'My Mail Addr');
$writer->fin();
print $writer->{buffer};
}
}
PageMaker->makeWelcomePage('admin@hoge.com', 'welcome.html');