/[webpac]/trunk/back2html.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Annotation of /trunk/back2html.pm

Parent Directory Parent Directory | Revision Log Revision Log


Revision 636 - (hide annotations)
Tue Jan 18 17:07:14 2005 UTC (19 years, 3 months ago) by dpavlin
File size: 1248 byte(s)
Implemented persist_search hidden variable in forms which can specify
(multiple) number of variables which should be persistent after user
specified them in form (useful for language for example). Values are
separated by comma (,). Some cleanup and warning removal.

1 dpavlin 13 #
2     # reformat html inside xml back to html (basically, support for tables)
3     #
4     # filed #-# field ###
5     # ...
6    
7     sub back2html {
8     my $html = shift;
9 dpavlin 636 my $url_params = shift;
10 dpavlin 13
11 dpavlin 80 $html =~ s/</&lt;/g;
12     $html =~ s/>/&gt;/g;
13 dpavlin 13 my $out;
14 dpavlin 79 foreach $line (split(/\s*###\s*/,$html)) {
15     $out .= "<tr><td valign=\"top\">";
16     my @items = split(/\s*#-#\s*/,$line);
17     # convert spaces in left field to non-breaking spaces
18     $items[0] =~ s#\s+#&nbsp;#g;
19     # try to make link on right field
20 dpavlin 636 sub mkurl($) {
21 dpavlin 146 my $url = shift || die "mkurl needs url as argument";
22 dpavlin 66 # chop URLS longer than 60 characters
23 dpavlin 146 my $txturl = substr($1,0,60);
24     $txturl .= "..." if (length($1) > 60);
25     return "<a href=\"$url\">$txturl</a>";
26 dpavlin 66 }
27 dpavlin 146 $items[1] =~ s#(http://[\S]+)#mkurl($1)#gie;
28 dpavlin 13 $out .= join("</td><td>",@items);
29     $out .= "</td></tr>\n";
30     }
31 dpavlin 151 # put <br> back into html
32     $out =~ s,&lt;br/*&gt;,<br/>,gi;
33     # put <a href=xxx>yyyy</a> back into html
34 dpavlin 636 sub mkurl_param($$$$) {
35     my ($a_href,$url,$text,$a_end) = @_;
36     if ($url =~ m#\?#) {
37     $url .= "&".$url_params;
38     } else {
39     $url .= "?".$url_params;
40     }
41     return '<'.$a_href.'"'.$url.'">'.$text.'<'.$a_end.'>';
42     }
43     $out =~ s#&lt;(a\s+href=)['"]*(.+?)['"]*&gt;(.+?)&lt;(/a)&gt;#mkurl_param($1,$2,$3,$4)#gsie;
44 dpavlin 13 return $out;
45     }
46    
47     1;

Properties

Name Value
cvs2svn:cvs-rev 1.11

  ViewVC Help
Powered by ViewVC 1.1.26