summaryrefslogtreecommitdiff
path: root/httemplate/edit/process/elements
diff options
context:
space:
mode:
Diffstat (limited to 'httemplate/edit/process/elements')
-rw-r--r--httemplate/edit/process/elements/process.html9
1 files changed, 9 insertions, 0 deletions
diff --git a/httemplate/edit/process/elements/process.html b/httemplate/edit/process/elements/process.html
index 4b1d2c840..5d40bba50 100644
--- a/httemplate/edit/process/elements/process.html
+++ b/httemplate/edit/process/elements/process.html
@@ -24,6 +24,8 @@
% # 'edit_ext' => 'html', #defaults to 'html', you might want 'cgi' while the
% # #naming is still inconsistent
% #
+% # 'copy_on_empty' => [ old_field_name, another_old_field, ... ],
+% #
% # 'process_m2m' => { 'link_table' => 'link_table_name',
% # 'target_table' => 'target_table_name',
% # },
@@ -55,6 +57,13 @@
% } @$fields
% } );
%
+% if ($old && scalar($opt{'copy_on_empty'})) {
+% foreach my $field (@{$opt{'copy_on_empty'}}) {
+% $new->set($field, $old->get($field))
+% unless scalar($cgi->param($field));
+% }
+% }
+%
% my $error;
% if ( $pkeyvalue ) {
% $error = $new->replace($old);