+icons
authorshort <>
Tue, 14 Oct 2003 12:58:50 +0000 (12:58 +0000)
committershort <>
Tue, 14 Oct 2003 12:58:50 +0000 (12:58 +0000)
Web.pm

diff --git a/Web.pm b/Web.pm
index a6be6aa..6a2189e 100644 (file)
--- a/Web.pm
+++ b/Web.pm
@@ -27,7 +27,7 @@ use Exporter;
 sub Wrequire ($);
 sub Wuse ($@);
 our $W;
-our @EXPORT=qw(&Wrequire &Wuse &a_href &a_href_cz &vskip &img $W &top_dir &top_dir_disk);
+our @EXPORT=qw(&Wrequire &Wuse &a_href &a_href_cz &vskip &img &centerimg $W &top_dir &top_dir_disk);
 our @ISA=qw(Exporter);
 
 BEGIN
@@ -453,6 +453,7 @@ my($file_base)=@_;
        # Known image extension?
        if ($file_base=~m#$img_variants_re#o) {
                return $file_base if !wantarray();
+               return ($file_base,$file_base) if $file_base!~m#^/#;
                return (top_dir($file_base),top_dir_disk().$file_base);
                }
 
@@ -487,16 +488,31 @@ my($file_base)=@_;
        return ($file_base_uri.".".$ext,$file_base_disk.".".$ext);
 }
 
-sub img ($$;$)
+sub img ($$;%)
 {
-my($file_base,$alt,$attrs)=@_;
+my($file_base,$alt,%attr)=@_;
 
        my($file_uri,$file_disk)=img_src $file_base;
        my($width,$height)=Image::Size::imgsize($file_disk);
        $alt=~s/<[^>]*>//g;
        $alt=CGI::escapeHTML($alt);
-       return "<img src=\"$file_uri\" alt=\"$alt\" title=\"$alt\" ".img_size($width,$height)
-                       .(!$attrs ? "" : " ".$attrs)." />";
+       my $content="<img src=\"$file_uri\" alt=\"$alt\" title=\"$alt\" ".img_size($width,$height)
+                       .(!$attr{"attr"} ? "" : " ".$attr{"attr"})." />";
+       return a_href img_src($attr{"a_href_img"}),$content if $attr{"a_href_img"};
+       return a_href $attr{"a_href"},$content if $attr{"a_href"};
+       return $content;
+}
+
+sub centerimg
+{
+       my $r.="";
+       $r.='<table border="0" width="100%"><tr>'."\n";
+       @_=( [@_] ) if !ref $_[0];
+       for (@_) {
+               $r.="\t".'<td align="center">'.&{\&img}(@$_).'</td>'."\n";
+               }
+       $r.='</tr></table>'."\n";
+       return $r;
 }
 
 sub readfile ($$)