]> git.decadent.org.uk Git - maypole.git/blob - lib/Maypole/templates/factory/edit
updated MANIFEST
[maypole.git] / lib / Maypole / templates / factory / edit
1 [%#
2
3 =head1 edit
4
5 This is the edit page. It edits the passed-in object, by displaying a
6 form similar to L<addnew> but with the current values filled in.
7
8 =cut
9
10 #%]
11 [% PROCESS macros %]
12 [% INCLUDE header %]
13 [% INCLUDE title %]
14
15 [% IF request.action == 'edit' %]
16 [% INCLUDE navbar %]
17 [% END %]
18
19 [% IF objects.size %]
20 <div id="title">Edit a [% classmetadata.moniker %]</div>
21 [% FOR item = objects; %]
22 <form action="[% base %]/[% item.table %]/do_edit/[% item.id %]" method="post">
23 <fieldset>
24 <legend>Edit [% item.name %]</legend>
25 [% FOR col = classmetadata.columns;
26     NEXT IF col == "id" OR col == classmetadata.table _ "_id";
27     '<label><span class="field">';
28     classmetadata.colnames.$col; ":</span>";
29     item.to_field(col).as_XML;
30     "</label>";
31     IF errors.$col; 
32        '<span class="error">'; errors.$col;'</span>';
33     END;
34     END %]
35     <input type="submit" name="edit" value="edit"/>
36     <input type="hidden" name="__form_id" value="[% request.make_random_id %]">
37     </fieldset></form>
38     
39     [% END %]
40 [% ELSE %]
41
42 <div id="addnew">
43 <form method="post" action="[% base %]/[% classmetadata.table %]/do_edit/">
44 <fieldset>
45 <legend>Add a new [% classmetadata.moniker %]</legend>
46     [% FOR col = classmetadata.columns %]
47         [% NEXT IF col == "id" %]
48             <label><span class="field">[% classmetadata.colnames.$col %]</span>
49             [% 
50             SET elem = classmetadata.cgi.$col.clone;
51             IF request.action == 'do_edit';
52                 IF elem.tag == "textarea";
53                     elem = elem.push_content(request.param(col));
54                 ELSE;
55                     elem.attr("value", request.param(col));
56                 END;
57             END;
58             elem.as_XML; %]
59             </label>
60         [% IF errors.$col %]
61            <span class="error">[% errors.$col | html  %]</span>
62         [% END %]
63
64     [% END; %]
65     <input type="submit" name="create" value="create" />
66     <input type="hidden" name="__form_id" value="[% request.make_random_id %]" />
67 </fieldset>
68 </form>
69 </div>
70
71 [% END %]
72 [% INCLUDE footer %]