]> git.decadent.org.uk Git - maypole.git/blobdiff - templates/factory/edit
Maypole::Application supports Maypole::HTTPD (which needs a patch).
[maypole.git] / templates / factory / edit
index 11a25393c11a6644951fb483e7cbf162c93d7100..6bdad79347cef088c484d66ec30a546387772fb9 100644 (file)
@@ -1,21 +1,38 @@
-[% PROCESS list_macros %]
-[% INCLUDE header %]
+[%#
 
-[% FOR item = objects; %]
-<h2> Edit [% item.name %]</h2>
+=head1 edit
+
+This is the edit page. It edits the passed-in object, by displaying a
+form similar to L<addnew> but with the current values filled in.
 
-<FORM ACTION="[% base %]/[% classmetadata.moniker %]/do_edit/[% item.id %]" METHOD="post">
-[%
-     FOR col = classmetadata.columns;
-        NEXT IF col == "id";
-        "<P>";
-        "<B>"; classmetadata.colnames.$col; "</B>";
-        ": ";
-            item.to_field(col).as_HTML;
-        "</P>";
-        IF errors.$col; 
-            "<FONT COLOR=\"#ff0000\">"; errors.$col; "</FONT>";
-        END;
+=cut
+
+#%]
+[% PROCESS macros %]
+[% INCLUDE header %]
+[% INCLUDE title %]
+[% IF objects.size %]
+<div id="title">Edit a [% classmetadata.moniker %]</div>
+[% FOR item = objects; %]
+<form action="[% base %]/[% item.table %]/do_edit/[% item.id %]" method="post">
+<fieldset>
+<legend>Edit [% item.name %]</legend>
+[% FOR col = classmetadata.columns;
+    NEXT IF col == "id";
+    '<label><span class="field">';
+    classmetadata.colnames.$col; ":</span>";
+    item.to_field(col).as_XML;
+    "</label>";
+    IF errors.$col; 
+       '<span class="error">'; errors.$col;'</span>';
     END;
-     '<INPUT TYPE="submit" NAME="edit" VALUE="edit">';
-END %]
+    END %]
+    <input type="submit" name="edit" value="edit"/>
+    <input type="hidden" name="__form_id" value="[% request.make_random_id %]">
+    </fieldset></form>
+    
+    [% END %]
+[% ELSE %]
+[% INCLUDE addnew %]
+[% END %]
+[% INCLUDE footer %]