X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;ds=sidebyside;f=templates%2Ffactory%2Flist;h=dbbedafb786171b659479b92e2987dd270882773;hb=12d8a77a713d5ed4f08414e5f34e96d45f60e2d3;hp=5bd6a10f628edb0d2a39d57a7ebf28829f1786ff;hpb=36b7502bb586953f62f56a2c6edd3b22c184702d;p=maypole.git
diff --git a/templates/factory/list b/templates/factory/list
index 5bd6a10..dbbedaf 100644
--- a/templates/factory/list
+++ b/templates/factory/list
@@ -1,29 +1,62 @@
[% PROCESS macros %]
-
[% INCLUDE header %]
-
-
Listing of all [% classmetadata.plural %]
-
+[% INCLUDE title %]
+[% IF search %]
+ Search results
+[% ELSE %]
+ Listing of all [% classmetadata.plural %]
+[% END %]
[% INCLUDE navbar %]
+
+
+
+ [% FOR col = classmetadata.list_columns.list;
+ NEXT IF col == "id";
+ "";
+ SET additional = "?order=" _ col;
+ SET additional = additional _ "&page=" _ pager.current_page
+ IF pager;
+ SET additional = additional _ "&o2=desc"
+ IF col == request.params.order and request.params.o2 != "desc";
+ SET action = "list";
+ FOR name = classmetadata.columns.list;
+ IF request.query.$name;
+ SET additional =
+ additional _ "&" _ name _ "=" _
+ request.params.$name;
+ SET action = "search";
+ END;
+ END;
+ IF model_obj.find_column(col);
+ link(classmetadata.table, action, additional,
+ classmetadata.colnames.$col);
+ IF col == request.params.order;
+ IF request.params.o2 != "desc";
+ "↓";
+ ELSE;
+ "↑";
+ END;
+ END;
+ ELSE;
+ classmetadata.colnames.$col || col FILTER ucfirst;
+ END;
+ " | ";
+ END %]
+ Actions |
+
+ [% SET count = 0;
+ FOR item = objects;
+ SET count = count + 1;
+ "";
+ display_line(item);
+ "
";
+ END %]
+
-
-
-[% FOR col = classmetadata.columns.list;
- NEXT IF col == "id";
- ""; classmetadata.colnames.$col; " | ";
-END %]
-
-
-[% SET count = 0;
-FOR item = objects;
- SET count = count + 1;
- "";
- display_line(item);
- "
";
-END %]
-
-
-
-[% INCLUDE addnew; %]
+[% INCLUDE pager %]
+[% INCLUDE addnew %]
+[% INCLUDE search_form %]
+
+[% INCLUDE footer %]