X-Git-Url: http://git.shiar.nl/sheet.git/blobdiff_plain/c0b45d8bc967cae8e54c03702e16f52222884867..8c3e7dc6481f4d61eca39c1250699302a329be56:/common.inc.plp diff --git a/common.inc.plp b/common.inc.plp index db5177b..6330329 100644 --- a/common.inc.plp +++ b/common.inc.plp @@ -12,6 +12,7 @@ use HTTP::Date; $PLP::ERROR = sub { my ($text, $html) = @_; print '

Fatal error: '.$html."

\n\n"; + warn $text; }; BEGIN { @@ -26,7 +27,9 @@ our $showkeys = !exists $get{keys} ? undef : $header{content_type} = 'text/html; charset=utf-8'; sub stylesheet { - my %styles = map {$_ => $_} @_; + my ($avail) = @_; + my @avail = ref $avail eq 'ARRAY' ? @{$avail} : $avail or return; + my %styles = map {$_ => $_} @avail; if (defined( my $setstyle = $get{style} )) { $style = $styles{ $setstyle }; @@ -42,12 +45,12 @@ sub stylesheet { } or warn "Unable to create style cookie: $@"; } - $style ||= exists $cookie{style} && $styles{ $cookie{style} } || $_[0]; + $style ||= exists $cookie{style} && $styles{ $cookie{style} } || $avail[0]; - return join "\n", map { sprintf( + return map { sprintf( '', $_ eq $style ? 'stylesheet' : 'alternate stylesheet', "/$_.css?1.9", $_ - ) } @_; + ) } @avail; } sub checkmodified { @@ -98,9 +101,9 @@ sub Html { ref $_ eq 'ARRAY' and $_ = join ' ', @$_ for $meta->{description}; ref $_ eq 'ARRAY' and $_ = join ', ', @$_ for $meta->{keywords}; ref $_ eq 'ARRAY' and $_ = join "\n", @$_ for $meta->{raw}; - ref $_ eq 'ARRAY' and $_ = stylesheet(@$_)."\n" for $meta->{stylesheet}; # other vars + my $Dev = $ENV{HTTP_HOST} =~ /\bdev\./; my ($file) = $ENV{SCRIPT_FILENAME} =~ m{ ([^/]+) \.plp$ }x; # leading output @@ -117,12 +120,12 @@ sub Html { EOT - print $_, "\n" for $meta->{stylesheet} || (); - print $_, "\n" for $meta->{raw} || (); - print qq{\n\n\n}; + say for stylesheet($meta->{stylesheet}); + say for $meta->{raw} || (); + say '' if $Dev; + say qq{\n\n}; - # dev indicator - my $Dev = $ENV{HTTP_HOST} =~ /\bdev\./; + # development version indicator printf '

beta

', join('; ', 'position: fixed', 'right: 1em',