summaryrefslogtreecommitdiffstats
path: root/template/en
diff options
context:
space:
mode:
Diffstat (limited to 'template/en')
-rw-r--r--template/en/default/admin/milestones/list.html.tmpl25
-rw-r--r--template/en/default/admin/table.html.tmpl70
-rw-r--r--template/en/default/filterexceptions.pl3
3 files changed, 80 insertions, 18 deletions
diff --git a/template/en/default/admin/milestones/list.html.tmpl b/template/en/default/admin/milestones/list.html.tmpl
index 160dcd6da..d36b61a3d 100644
--- a/template/en/default/admin/milestones/list.html.tmpl
+++ b/template/en/default/admin/milestones/list.html.tmpl
@@ -54,24 +54,37 @@
name => "sortkey"
heading => "Sortkey"
},
+ {
+ name => "action"
+ heading => "Action"
+ content => "Delete"
+ contentlink => delete_contentlink
+ }
]
%]
-[% columns.push({
- heading => "Action"
- content => "Delete"
- contentlink => delete_contentlink
- }) %]
+[%# We want to override the usual 'Delete' link for the default
+ milestone %]
+[% overrides.action = [ {
+ match_value => "$default_milestone"
+ match_field => 'name'
+ override_content => 1
+ content => "(Default milestone)"
+ override_contentlink => 1
+ contentlink => undef
+ } ]
+%]
[% PROCESS admin/table.html.tmpl
columns = columns
data = milestones
+ overrides = overrides
%]
<p>
[% PROCESS admin/milestones/footer.html.tmpl
no_edit_other_milestones_link = 1
- %]
+%]
[% PROCESS global/footer.html.tmpl %]
diff --git a/template/en/default/admin/table.html.tmpl b/template/en/default/admin/table.html.tmpl
index ff554429a..76ed601d6 100644
--- a/template/en/default/admin/table.html.tmpl
+++ b/template/en/default/admin/table.html.tmpl
@@ -50,6 +50,21 @@
# Each hash contains data for a single row of data. The
# keys are column names from columns subhashes name field.
#
+ # overrides:
+ # Provides a method for overriding individual table cells. This is
+ # a hash, whose key is the column name, so the column must be
+ # named for one of it's cells to be overwritten. The hash value is
+ # an array. Each item in this array is a hash specifying
+ # row-matching criteria, and any overridden values. The
+ # row-matching criteria consist of keys:
+ # match_field: The name of the row value we want to match
+ # match_value: The value to match against
+ # Each column value mentioned in the 'columns' documentation above
+ # can be overwritten (apart from name and heading). To override a
+ # table-cell value 'xxx', specify a new 'xxx' value, and specify a
+ # 'override_xxx' value as well. See
+ # admin/milestones/list.html.tmpl for example
+ #
#%]
[% PROCESS "global/field-descs.none.tmpl" %]
@@ -70,12 +85,47 @@
[%################### TABLE CONTENT ######################%]
[% FOREACH row = data %]
+
<tr>
[% FOREACH c = columns %]
- <td [% IF c.align %] align="[% c.align FILTER html %]" [% END %]>
-
- [% IF c.contentlink %]
- [% link_uri = c.contentlink %]
+
+ [%# Copy to local variables, as we may update these %]
+ [% contentlink = c.contentlink
+ content = c.content
+ content_use_field = c.content_use_field
+ align = c.align
+ allow_html_content = c.allow_html_content
+ yesno_field = c.yesno_field
+ %]
+
+ [%# Are there any specific overrides for this column? %]
+ [% FOREACH override = overrides.${c.name} %]
+
+ [%# Is the override for this row? %]
+ [% IF override.match_value == row.${override.match_field} %]
+
+ [% contentlink = override.contentlink
+ IF override.override_contentlink %]
+ [% content = override.content
+ IF override.override_content %]
+ [% content_use_field = override.content_use_field
+ IF override.override_content_use_field %]
+ [% align = override.align
+ IF override.override_align %]
+ [% allow_html_content = override.allow_html_content
+ IF override.override_allow_html_content %]
+ [% yesno_field = override.yesno_field
+ IF override.override_yesno_field %]
+
+ [% LAST %]
+
+ [% END %]
+ [% END %]
+
+ <td [% IF align %] align="[% align FILTER html %]" [% END %]>
+
+ [% IF contentlink %]
+ [% link_uri = contentlink %]
[% WHILE link_uri.search('%%(.+?)%%')%]
[% FOREACH m = link_uri.match('%%(.+?)%%') %]
[% IF row.$m %]
@@ -89,20 +139,20 @@
<a href="[% link_uri %]">
[% END %]
- [% IF c.content_use_field %]
+ [% IF content_use_field %]
[% colname = row.${c.name} %]
[% field_descs.${colname} FILTER html %]
- [% ELSIF c.content %]
- [% c.content %]
+ [% ELSIF content %]
+ [% content FILTER none %]
[% ELSE %]
- [% IF c.yesno_field %]
+ [% IF yesno_field %]
[% IF row.${c.name} %]
Yes
[% ELSE %]
No
[% END %]
[% ELSE %]
- [% IF c.allow_html_content %]
+ [% IF allow_html_content %]
[% row.${c.name} FILTER none %]
[% ELSE %]
[% row.${c.name} FILTER html %]
@@ -110,7 +160,7 @@
[% END %]
[% END %]
- [% IF c.contentlink %]
+ [% IF contentlink %]
</a>
[% END %]
diff --git a/template/en/default/filterexceptions.pl b/template/en/default/filterexceptions.pl
index 89a54bc3d..8ec9a3f3f 100644
--- a/template/en/default/filterexceptions.pl
+++ b/template/en/default/filterexceptions.pl
@@ -493,8 +493,7 @@
],
'admin/table.html.tmpl' => [
- 'link_uri',
- 'c.content'
+ 'link_uri'
],
'admin/classifications/del.html.tmpl' => [