use EscapeHTML() from PLP v3.23
[sheet.git] / cc.plp
diff --git a/cc.plp b/cc.plp
index 21626688ce0673c32135297ad68ffa578acce53a..7138c3b39cd815f06eadfae8a5b2b37b24619ba9 100644 (file)
--- a/cc.plp
+++ b/cc.plp
@@ -1,12 +1,5 @@
-<:
-use utf8;
-use strict;
-use warnings;
-use open IO => ':utf8';
-
-our $VERSION = 'v1.0';
-
-$header{content_type} = 'text/html; charset=utf-8';
+<(common.inc.plp)><:
+       our $VERSION = 'v1.0';
 
 :><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
  "http://www.w3.org/TR/html4/loose.dtd">
@@ -15,13 +8,7 @@ $header{content_type} = 'text/html; charset=utf-8';
 <head>
 <meta http-equiv="content-type" content="<:= $header{content_type} :>">
 <title>country code cheat sheet</title>
-<link rel="stylesheet" type="text/css" media="all" href="/base.css"><:
-       my %styles = map {$_ => $_} qw(dark mono red);
-       our $style = exists $get{style} && $styles{$get{style}} || 'light';
-       printf(qq{\n<link rel="%s" type="text/css" media="all" href="%s" title="%s">},
-               $_ eq $style ? 'stylesheet' : 'alternate stylesheet', "/$_.css", $_
-       ) for keys %styles;
-:>
+<:= stylesheet(qw'light dark mono red') :>
 </head>
 
 <body>
@@ -30,19 +17,11 @@ $header{content_type} = 'text/html; charset=utf-8';
 <:
 my $cc = do 'cc.inc.pl';
 
-sub quote {
-       local $_ = shift;
-       s/"/&quot;/g;
-       s/</&lt;/g;
-       s/>/&gt;/g;
-       return $_;
-}
-
 {
        printf '<table class="mcmap">';
        print '<col><colgroup span="26">';
        for my $section (qw{thead}) {
-               print "<$section><tr><th>�";
+               print "<$section><tr><th>�";
                print '<th>', $_ for 'a' .. 'z';
                print "\n";
        }
@@ -69,18 +48,18 @@ sub quote {
                                s/ republic\b//gi;
                                s/ islands?\b//gi;
                                s/\bthe //g;
-                               s/ and / & /g;
+                               s/ and / & /g and s/(?<=.)[a-z ]+//g;
                                s/\bsaint /st /gi;
-                               s/South /S-/g;
-                               s/North /N-/g;
+                               s/South(?:ern)? /S-/g;
+                               s/North(?:ern)? /N-/g;
                                s/New /n./g;
                                s/(\S)(\S+)-/$1-/g;  # strip most chars preceding dash
-                               s/(\S{4}[b-df-hj-np-tv-xz])(\S{2,})/$1./g;  # abbreviate (at consonant)
-                               $_ = quote($_);
+                               s/(\S{4}[b-df-hj-np-tv-xz])((?<!Austr)(?!land)\w{2,})/$1./g;  # abbreviate (at consonant)
+                               $_ = EscapeHTML($_);
                        }
                        $name =~ s/([^,]*), (.*)/$2 $1/;
                        printf "\n".'<td class="%s" title="%s">%s',
-                               $_ ? 'X '.$class : '', quote("$code: $name"), $_;
+                               $_ ? 'X '.$class : '', EscapeHTML("$code: $name"), $_;
                }
                print "\n";
        }
@@ -102,14 +81,26 @@ sub quote {
        <td class="">reserved
        <td class="X Co">user-assigned
        </table>
+
+       <div class="right">
+               <ul class="legend legend-set">
+               <li><strong>show</strong>
+                       <em><:= exists $get{show} ? 'flag images' : 'english names' :></em><:=
+                               !exists $get{show} && ' by default' :>
+               <li>default <strong>style</strong> is
+                       <:= defined $get{style} && 'set to ' :><em><:= $style :></em>
+               </ul>
+       </div>
 </div>
 
 <p class="footer">
-       <a href="/" rel="home">sheet.shiar.nl</a>/charset
-       <a href="git://git.shiar.nl/sheet" rel="vcs-git" title="Git repository"><:= $VERSION :></a>
+       <a href="/" rel="home">sheet.shiar.nl</a>/cc.<a href="/source/cc.plp"
+        rel="code" title="Written in Perl">plp</a>
+       <a href="http://git.shiar.nl/sheet.git/history/HEAD:/cc.plp"
+        rel="vcs-git" title="Git repository"><:= $VERSION :></a>
        created by <a href="http://shiar.nl/" rel="author">Shiar</a> •
-       <a title="Licensed under the GNU Affero General Public License, version 3" rel="copyright"
-          href="http://www.fsf.org/licensing/licenses/agpl-3.0.html">AGPLv3</a>
+       <a href="http://www.fsf.org/licensing/licenses/agpl-3.0.html" rel="copyright"
+        title="Licensed under the GNU Affero General Public License, version 3">AGPLv3</a>
 </p>
 
 </html>