package HtmlForm;
use strict;
use vars qw(@ISA @EXPORT);

use Exporter;
@ISA = qw(Exporter);
@EXPORT = qw(html_radio_selector
	     html_option_selector
	     html_input_textbox
	     html_notice_text
	     style_prefecture_hash
	     style_prefecture_sorted
	     html_textarea
             html_header_text
	     html_input_hidden
	     get_cityno
	     );

my @cities = ('ÅÔÆ»ÉÜ¸©',                                         #  0
              'ËÌ³¤Æ»', 'ÀÄ¿¹¸©', '´ä¼ê¸©', 'µÜ¾ë¸©', '½©ÅÄ¸©',   #  1 -
              '»³·Á¸©', 'Ê¡Åç¸©', '°ñ¾ë¸©', 'ÆÊÌÚ¸©', '·²ÇÏ¸©',   #  6 -
              'ºë¶Ì¸©', 'ÀéÍÕ¸©', 'ÅìµþÅÔ', '¿ÀÆàÀî¸©', '¿·³ã¸©', # 11 -
              'ÉÙ»³¸©', 'ÀÐÀî¸©', 'Ê¡°æ¸©', '»³Íü¸©', 'Ä¹Ìî¸©',   # 16 -
              '´ôÉì¸©', 'ÀÅ²¬¸©', '°¦ÃÎ¸©', '»°½Å¸©', '¼¢²ì¸©',   # 21 -
              'µþÅÔÉÜ', 'ÂçºåÉÜ', 'Ê¼¸Ë¸©', 'ÆàÎÉ¸©', 'ÏÂ²Î»³¸©', # 26 -
              'Ä»¼è¸©', 'Åçº¬¸©', '²¬»³¸©', '¹­Åç¸©', '»³¸ý¸©',   # 31 -
              'ÆÁÅç¸©', '¹áÀî¸©', '°¦É²¸©', '¹âÃÎ¸©', 'Ê¡²¬¸©',   # 36 -
              'º´²ì¸©', 'Ä¹ºê¸©', '·§ËÜ¸©', 'ÂçÊ¬¸©', 'µÜºê¸©',   # 41 -
              '¼¯»ùÅç¸©', '²­Æì¸©',                               # 46 - 
	      );

sub get_cityno {
    return (scalar(@cities));
}

sub style_prefecture_hash {
    my %hash = ();
    foreach (0.. $#cities) {
	$hash{$_} = $cities[$_]; 
    }
    return (%hash);
}

sub style_prefecture_sorted {
    return (0 .. $#cities);
}

sub html_radio_selector {
    my ($name, $items_hash, $items_sorted, $item_checked) = @_;
    my ($html) = "";
    my @sorted = @{$items_sorted};
    foreach  (0 .. $#sorted) {
	$html .= qq|<input type="radio" name="$name" value="|;
        $html .= $sorted[$_].qq|"|;
	$html .= qq| checked| if ($item_checked eq $_);
	$html .= qq|>$items_hash->{$_}<br>\n|;
    }
    return ($html);
}

sub html_option_selector {
    my ($name, $items_hash, $items_sorted, $item_checked) = @_;
    my ($html) = "";

    $html .= qq|<select name="$name">\n|;
    foreach my $item (@{$items_sorted}) {
	$html .= qq|<option value="$item"|;
	if ($item_checked eq $item) {
	    $html .= qq| selected|;
	}
	$html .= qq|>|.$items_hash->{$item}.qq|</option>\n|;
    }
    $html .= qq|</select>\n|;

    return ($html);
}

sub html_textarea {
    my ($name, $cols, $rows, $value) = @_;
    return qq|<textarea name="$name" cols="$cols" rows="$rows">$value</textarea>\n|;
}

sub html_input_textbox {
    my ($name, $value, $size) = @_;
    my $html = "";
    $html .= qq|<input type="text" name="$name" value="$value"|;
    $html .= qq| size="$size"| if ($size > 0);
    $html .= qq|>\n|;
    return ($html);
}

sub html_input_hidden {
    my ($name, $value, $jvalue) = @_;
    my $html = qq|<input type="hidden" name="$name" value="$value">$jvalue\n|;
    return ($html);
}

sub html_notice_text {
    my ($text) = @_;
    return qq|<span class="notice">$text</span>\n|;
}

sub html_header_text {
    my ($text) = @_;
    return qq|<div class="header">$text</div>\n|;
}

1;
