]> git.decadent.org.uk Git - maypole.git/blobdiff - lib/Maypole/templates/factory/edit
fixed typo in factory/edit template
[maypole.git] / lib / Maypole / templates / factory / edit
index 6bdad79347cef088c484d66ec30a546387772fb9..3b0aca635d6b0a569f0ed32601a0fedbdca8e072 100644 (file)
@@ -11,17 +11,21 @@ form similar to L<addnew> but with the current values filled in.
 [% PROCESS macros %]
 [% INCLUDE header %]
 [% INCLUDE title %]
-[% IF objects.size %]
+
+[% IF request.action == 'edit' %]
+[% INCLUDE navbar %]
+[% END %]
+
+[% IF object %]
 <div id="title">Edit a [% classmetadata.moniker %]</div>
-[% FOR item = objects; %]
-<form action="[% base %]/[% item.table %]/do_edit/[% item.id %]" method="post">
+<form action="[% base %]/[% object.table %]/do_edit/[% object.id %]" method="post">
 <fieldset>
-<legend>Edit [% item.name %]</legend>
-[% FOR col = classmetadata.columns;
-    NEXT IF col == "id";
+<legend>Edit [% object.name %]</legend>
+   [% FOR col = classmetadata.columns;
+    NEXT IF col == "id" OR col == classmetadata.table _ "_id";
     '<label><span class="field">';
     classmetadata.colnames.$col; ":</span>";
-    item.to_field(col).as_XML;
+    object.to_field(col).as_XML;
     "</label>";
     IF errors.$col; 
        '<span class="error">'; errors.$col;'</span>';
@@ -31,8 +35,36 @@ form similar to L<addnew> but with the current values filled in.
     <input type="hidden" name="__form_id" value="[% request.make_random_id %]">
     </fieldset></form>
     
-    [% END %]
 [% ELSE %]
-[% INCLUDE addnew %]
+
+<div id="addnew">
+<form method="post" action="[% base %]/[% classmetadata.table %]/do_edit/">
+<fieldset>
+<legend>Add a new [% classmetadata.moniker %]</legend>
+    [% FOR col = classmetadata.columns %]
+        [% NEXT IF col == "id" %]
+            <label><span class="field">[% classmetadata.colnames.$col %]</span>
+            [% 
+            SET elem = classmetadata.cgi.$col.clone;
+            IF request.action == 'do_edit';
+                IF elem.tag == "textarea";
+                    elem = elem.push_content(request.param(col));
+                ELSE;
+                    elem.attr("value", request.param(col));
+                END;
+            END;
+            elem.as_XML; %]
+           </label>
+        [% IF errors.$col %]
+           <span class="error">[% errors.$col | html  %]</span>
+        [% END %]
+
+    [% END; %]
+    <input type="submit" name="create" value="create" />
+    <input type="hidden" name="__form_id" value="[% request.make_random_id %]" />
+</fieldset>
+</form>
+</div>
+
 [% END %]
 [% INCLUDE footer %]