package utils::fapg_html; #Author:Fernando A. P. Gomes #Email: fapg@eurotux.com #Package Utils #Version 0.5.3 # Copyright (C) 2001-2002 Fernando Gomes # # 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 use strict; use utils::language; use utils::util; use vars qw(@VERSION @ISA @EXPORT); require Exporter; @ISA = qw(Exporter); @EXPORT = qw(begin_html end_html begin_table end_table begin_tr end_tr begin_td end_td begin_th end_th img br error method begin_p end_p begin_font end_font begin_b end_b begin_ul end_ul li begin_a end_a begin_div end_div tab enter begin_form end_form input begin_center end_center); @VERSION = getfile("version"); my $prog_name = "index.pl"; ############################################################ # Determine the method sub method { my $vars = ""; # # Determinar o método: GET, POST, ... # if ($ENV{REQUEST_METHOD} eq "GET") { $vars = $ENV{QUERY_STRING}; } elsif ($ENV{REQUEST_METHOD} eq "POST") { read(STDIN, $vars, $ENV{CONTENT_LENGTH}) or print "Problema a ler dados"; } else { print "Métodos não suportado"; } return $vars; } # Abre o formato HTML # -name # -bgcolor # -text sub begin_html { my %defaults = ( -title => &title(), -bgcolor => &bgcolor(), -text => &text(), ); my %params = (%defaults, @_); my $TITLE = $params{-title}; my $BGCOLOR = $params{-bgcolor}; my $TEXT = $params{-text}; my $LINK = "#0000FF"; my $ALINK = "#0000FF"; my $VLINK = "#0000FF"; print <<__BEGIN_HTML__; Content-Type: text/html $TITLE __BEGIN_HTML__ } # Fecha o formato HTML sub end_html { &br(); print <<__END_HTML__;
Valid HTML 4.01! Counter © Fernando A. P. Gomes
__END_HTML__ } # OPERACOES SOBRE FORMS # Abre uma form # -name # -action # -method sub begin_form { my %defaults = ( -name => "fapg_form", -action => "", -method => "", ); my %params = (%defaults, @_); my $name = $params{-name}; my $action = $params{-action}; my $method = $params{-method}; my $result = "
"); print "\t$result\n"; } # Fecha uma form sub end_form { print "\t
\n"; } # Faz um input numa form # -name # -type # -value # -size # -src # -alt # -border sub input { my %defaults = ( -name => "fapg_input", -type => "", -value => "", -size => "", -src => "", -alt => "", -border => "", ); my %params = (%defaults, @_); my $name = $params{-name}; my $type = $params{-type}; my $value = $params{-value}; my $size = $params{-size}; my $src = $params{-src}; my $alt = $params{-alt}; my $border = $params{-border}; my $result = ""); print "\t$result\n"; } # OPERACOES SOBRE TABELAS # Abre uma tabela # -style # -align # -border # -cellspacing # -cellpadding # -width # -bgcolor sub begin_table { my %defaults = ( -style => "", -align => "", -border => "", -cellpadding => "", -cellspacing => "", -width => "", -bgcolor => "", ); my %params = (%defaults, @_); my $style = $params{-style}; my $align = $params{-align}; my $border = $params{-border}; my $cellpadding = $params{-cellpadding}; my $cellspacing = $params{-cellspacing}; my $width = $params{-width}; my $bgcolor = $params{-bgcolor}; my $result = ""); print "\t$result\n"; } # Fecha uma tabela sub end_table { print "\t
\n"; } # Abre um tr # -align # -valign # -bgcolor sub begin_tr { my %defaults = ( -align => "", -valign => "", -bgcolor => "", ); my %params = (%defaults, @_); my $align = $params{-align}; my $valign = $params{-valign}; my $bgcolor = $params{-bgcolor}; my $result = ""); print "$result"; } # Fecha um tr sub end_tr { print ""; } # Abre um td # -style # -align # -width # -height # -background # -bgcolor # -valign # -colspan sub begin_td { my %defaults = ( -style => "", -align => "", -width => "", -height => "", -background => "", -bgcolor => "", -valign => "", -colspan => "", ); my %params = (%defaults, @_); my $style = $params{-style}; my $align = $params{-align}; my $width = $params{-width}; my $height = $params{-height}; my $background = $params{-background}; my $bgcolor = $params{-bgcolor}; my $valign = $params{-valign}; my $colspan = $params{-colspan}; my $result = ""); print "$result"; } # Fecha um td sub end_td { print "\n"; } # Abre um th # -align sub begin_th { my %defaults = ( -align => "", ); my %params = (%defaults, @_); my $align = $params{-align}; my $result = ""); print "$result"; } # Fecha um th sub end_th { print "\n"; } # VARIOS # listas # -type sub begin_ul { my %defaults = ( -type => "circle", ); my %params = (%defaults, @_); my $type = $params{-type}; my $result = "\n"; } sub li { print "\t\t
  • "; } # div # -align sub begin_div { my %defaults = ( -align => "", ); my %params = (%defaults, @_); my $align = $params{-align}; my $result = "
    "); print "$result"; } sub end_div { print "
    "; } # Referencias # -href # -onMouseOut # -onMouseOver # -target # -name sub begin_a { my %defaults = ( -href => "", -onMouseOut => "", -onMouseOver => "", -target => "", -name => "", ); my %params = (%defaults, @_); my $href = $params{-href}; my $onMouseOut = $params{-onMouseOut}; my $onMouseOver = $params{-onMouseOver}; my $target = $params{-target}; my $name = $params{-name}; my $result = ""); print "$result"; } sub end_a { print ""; } # fontes # -face # -size # -color sub begin_font { my %defaults = ( -size => "1", -face => "", -color => "", ); my %params = (%defaults, @_); my $face = $params{-face}; my $size = $params{-size}; my $color = $params{-color}; my $result = ""); print "$result"; } sub end_font { print ""; } # imagem # -src # -alt # -width # -height # -name # -border sub img { my %defaults = ( -src => "nsk.png", -alt => "", -height => "", -width => "", -name => "", -border => "", ); my %params = (%defaults, @_); my $src = $params{-src}; my $alt = $params{-alt}; my $width = $params{-width}; my $height = $params{-height}; my $name = $params{-name}; my $border = $params{-border}; my $result = "\"$alt\""); print "$result"; } # Abre um estilo bold sub begin_b { print ""; } # Fecha um estilo bold sub end_b { print ""; } # Abre um paragrafo sub begin_p { print "

    "; } # Fecha um paragrafo sub end_p { print "

    "; } # \n
    # -repeat sub br { my %defaults = ( -repeat => 1, ); my %params = (%defaults, @_); my $repeat = $params{-repeat}; print "\t"; for (my $tmp = 1 ; $tmp <= $repeat ; $tmp++) { print "
    "; } print "\n"; } # Comeca a centrar tudo sub begin_center { print "
    "; } # Acaba a secção de centramento sub end_center { print "
    "; } # Mostra uma mensagem de erro # -size # -color # -error_msg sub error { my %defaults = ( -size => 1, -color => "black", -error_msg => "No Error Message Defined", ); my %params = (%defaults, @_); my $size = $params{-size}; my $color = $params{-color}; my $error_message = $params{-error_msg}; print <<__ERROR_MSG__;
    $error_message
    __ERROR_MSG__ } # POR CODIGO LEGIVEL # da tabs \t # -repeat sub tab { my %defaults = ( -repeat => 1, ); my %params = (%defaults, @_); my $repeat = $params{-repeat}; for (my $tmp = 1 ; $tmp <= $repeat ; $tmp++) { print "\t"; } } # da enters \n # -repeat sub enter { my %defaults = ( -repeat => 1, ); my %params = (%defaults, @_); my $repeat = $params{-repeat}; for (my $tmp = 1 ; $tmp <= $repeat ; $tmp++) { print "\n"; } } 1;