]> sipb.mit.edu Git - ikiwiki.git/blobdiff - IkiWiki/CGI.pm
fixups
[ikiwiki.git] / IkiWiki / CGI.pm
index 6770f6feb7081f4462be9f30d6e0db87195e29a5..4cb45895b964c8872be96104f88ceda78e5efb85 100644 (file)
@@ -416,7 +416,6 @@ sub cgi_editpage ($$) { #{{{
        elsif ($form->submitted eq "Save Page") {
                $form->tmpl_param("page_preview", "");
        }
-       $form->tmpl_param("page_conflict", "");
        
        if ($form->submitted ne "Save Page" || ! $form->validate) {
                if ($form->field("do") eq "create") {
@@ -532,7 +531,7 @@ sub cgi_editpage ($$) { #{{{
 
                if ($form->field("do") ne "create" && ! $exists &&
                    ! defined srcfile($file, 1)) {
-                       $form->tmpl_param("page_gone", 1);
+                       $form->tmpl_param("message", template("editpagegone.tmpl")->output);
                        $form->field(name => "do", value => "create", force => 1);
                        $form->tmpl_param("page_select", 0);
                        $form->field(name => "page", type => 'hidden');
@@ -542,7 +541,7 @@ sub cgi_editpage ($$) { #{{{
                        return;
                }
                elsif ($form->field("do") eq "create" && $exists) {
-                       $form->tmpl_param("creation_conflict", 1);
+                       $form->tmpl_param("message", template("editcreationconflict.tmpl")->output);
                        $form->field(name => "do", value => "edit", force => 1);
                        $form->tmpl_param("page_select", 0);
                        $form->field(name => "page", type => 'hidden');
@@ -575,8 +574,9 @@ sub cgi_editpage ($$) { #{{{
                if ($@) {
                        $form->field(name => "rcsinfo", value => rcs_prepedit($file),
                                force => 1);
-                       $form->tmpl_param("failed_save", 1);
-                       $form->tmpl_param("error_message", $@);
+                       my $mtemplate=template("editfailedsave.tmpl");
+                       $mtemplate->param(error_message => $@);
+                       $form->tmpl_param("message", $mtemplate->output);
                        $form->field("editcontent", value => $content, force => 1);
                        $form->tmpl_param("page_select", 0);
                        $form->field(name => "page", type => 'hidden');
@@ -620,7 +620,7 @@ sub cgi_editpage ($$) { #{{{
                if (defined $conflict) {
                        $form->field(name => "rcsinfo", value => rcs_prepedit($file),
                                force => 1);
-                       $form->tmpl_param("page_conflict", 1);
+                       $form->tmpl_param("message", template("editconflict.tmpl")->output);
                        $form->field("editcontent", value => $conflict, force => 1);
                        $form->field("do", "edit", force => 1);
                        $form->tmpl_param("page_select", 0);
@@ -750,4 +750,14 @@ sub cgi (;$$) { #{{{
        }
 } #}}}
 
+# Does not need tobe called directly; all errors will go through here.
+sub cgierror ($) { #{{{
+       my $message=shift;
+
+       print "Content-type: text/html\n\n";
+       print misctemplate(gettext("Error"),
+               "<p class=\"error\">".gettext("Error").": $message</p>");
+       die $@;
+} #}}}
+
 1