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.html19
1 files changed, 17 insertions, 2 deletions
diff --git a/httemplate/edit/process/elements/process.html b/httemplate/edit/process/elements/process.html
index 83ff6f728..59ad35ee4 100644
--- a/httemplate/edit/process/elements/process.html
+++ b/httemplate/edit/process/elements/process.html
@@ -2,10 +2,21 @@
# options example...
#
+ ###
+ ##req
+ ##
# 'table' =>
+ #
# #? 'primary_key' => #required when the dbdef doesn't know...???
# #? 'fields' => []
+ #
+ ###
+ ##opt
+ ###
# 'viewall_dir' => '', #'search' or 'browse', defaults to 'search'
+ # 'process_m2m' => { 'link_table' => 'link_table_name',
+ # 'target_table' => 'target_table_name',
+ # }.
my(%opt) = @_;
@@ -31,12 +42,16 @@
if ( $pkeyvalue ) {
$error = $new->replace($old);
} else {
- warn $new;
$error = $new->insert;
- warn $error;
$pkeyvalue = $new->getfield($pkey);
}
+ if ( !$error && $opt{'process_m2m'} ) {
+ $error = $new->process_m2m( %{ $opt{'process_m2m'} },
+ 'params' => scalar($cgi->Vars),
+ );
+ }
+
if ( $error ) {
$cgi->param('error', $error);
print $cgi->redirect(popurl(2). "$table.html?". $cgi->query_string );