X-Git-Url: https://git.p6c8.net/devedit.git/blobdiff_plain/863abbbee47daf6df718856079cb50833e3552c2..refs/heads/master:/modules/Output.pm?ds=inline diff --git a/modules/Output.pm b/modules/Output.pm index ba41e38..1a3d7fc 100644 --- a/modules/Output.pm +++ b/modules/Output.pm @@ -5,19 +5,27 @@ package Output; # # HTML generating routines # -# Author: Patrick Canterino -# Last modified: 2004-02-23 +# Author: Patrick Canterino +# Last modified: 2011-02-11 +# +# Copyright (C) 1999-2000 Roland Bluethgen, Frank Schoenmann +# Copyright (C) 2003-2011 Patrick Canterino +# All Rights Reserved. +# +# This file can be distributed and/or modified under the terms of +# of the Artistic License 2.0 (see also the LICENSE file found at +# the top level of the Dev-Editor distribution). # use strict; use vars qw(@EXPORT); -use CGI qw(header); -use Tool; +use CGI qw(header + escape); -use HTML::Entities; use Template; +use Tool; ### Export ### @@ -25,8 +33,7 @@ use base qw(Exporter); @EXPORT = qw(error_template error - abort - error_in_use); + abort); my $tpl_error; @@ -47,7 +54,8 @@ sub error_template($) # Format an error message # # Params: 1. Error message -# 2. Virtual path to which a link should be displayed (optional) +# 2. Display a link to this path at the bottom of the page (optional) +# Please use the unencoded form of the string! # 3. Hash reference: Template variables (optional) # # Return: Formatted message (Scalar Reference) @@ -59,13 +67,14 @@ sub error($;$$) my $tpl = new Template; $tpl->read_file($tpl_error); - $tpl->fillin("ERROR",$message); - $tpl->fillin("DIR",$path); - $tpl->fillin("SCRIPT",encode_entities($ENV{'SCRIPT_NAME'})); + $tpl->fillin('ERROR',$message); + $tpl->fillin('BACK',encode_html($path)); + $tpl->fillin('BACK_URL',escape($path)); + $tpl->fillin('SCRIPT',encode_html($ENV{'SCRIPT_NAME'})); - $tpl->parse_if_block("dir",defined $path); + $tpl->parse_if_block('dir',defined $path); - if(ref($vars) eq "HASH") + if(ref($vars) eq 'HASH') { while(my ($key,$value) = each(%$vars)) { @@ -73,7 +82,7 @@ sub error($;$$) } } - my $output = header(-type => "text/html"); + my $output = header(-type => 'text/html'); $output .= $tpl->get_template; return \$output; @@ -85,31 +94,16 @@ sub error($;$$) # ^^^^^ # # Params: 1. Error message -# 2. Hash reference: Template variables (optional) +# 2. Display a link to this path at the bottom of the page (optional) +# 3. Hash reference: Template variables (optional) -sub abort($;$) +sub abort($;$$) { - my $output = error(shift,undef,shift); + my $output = error(shift,shift,shift); print $$output; exit; } -# error_in_use() -# -# Create a message, which shows, that a -# file is currently in use -# -# Params: File, which is in use -# -# Return: Formatted message (Scalar Reference) - -sub error_in_use($) -{ - my $file = shift; - - return error("The file '".encode_entities($file)."' is currently edited by someone else.",upper_path($file)); -} - # it's true, baby ;-) 1;