no need for a one-choice "Add new location" location dropdown on prospect add, RT...
[freeside.git] / httemplate / edit / elements / edit.html
index bbc7e50..9f37388 100644 (file)
@@ -358,6 +358,7 @@ Example:
 %     #contact
 %     'custnum'     => $f->{'custnum'},
 %     'prospectnum' => $f->{'prospectnum'},
+%
 %   );
 %
 %   $include_common{$_} = $f->{$_} foreach grep exists($f->{$_}),
@@ -370,7 +371,7 @@ Example:
 %     qw( formatted_value ),                               #fixed
 %     qw( country ),                                       #select-country
 %     qw( width height config ),                           #htmlarea
-%     qw( alt_format ),                                    #select-cust_location
+%     qw( is_optional alt_format ),                        #select-cust_location
 %     qw( classnum ),                                   # select-inventory_item
 %     qw( aligned ),                                    # columnstart
 %     qw( debug ),                                      # select-table
@@ -640,6 +641,15 @@ Example:
             return;
           }
 
+%         if ( exists( $f->{'js_spawn_test'} ) ) {
+            // XXX check a passed-in hook here and optionall return
+            if ( <% $f->{'js_spawn_test'} %> ) {
+              // then go ahead and spawn
+            } else {
+              return;
+            }
+%         }
+
           // change the label on the last entry & add a remove button
           var prev_label = document.getElementById('<% $field %>_label' + <%$field%>_fieldnum );
           prev_label.innerHTML = '<INPUT TYPE="button" VALUE="X" TITLE="Remove this <% lc($f->{'m2_label'}) %>" onClick="remove_<% $field %>(' + <%$field%>_fieldnum + ');" STYLE="color:#ff0000;font-weight:bold;padding-left:2px;padding-right:2px" >&nbsp;<% $f->{'m2_label'} || $field %>';
@@ -862,7 +872,9 @@ my $pkey = dbdef->table($table)->primary_key; #? $opt{'primary_key'} ||
 my $fields = $opt{'fields'}
              #|| [ grep { $_ ne $pkey } dbdef->table($table)->columns ];
              || [ grep { $_ ne $pkey } fields($table) ];
-#my @actualfields = map { ref($_) ? $_->{'field'} : $_ } @$fields;
+my @actualfields = map { ref($_) ? $_->{'field'} : $_ } @$fields;
+
+push @actualfields, $pkey;
 
 my $js_form_validate = {};
 
@@ -905,7 +917,7 @@ if ( $opt{'embed'} ) {
     $mode = 'error';
 
     $object = $class->new( {
-      map { $_ => scalar($cgi->param($_)) } fields($table)
+      map { $_ => scalar($cgi->param($_)) } @actualfields
     });
 
     &{$opt{'error_callback'}}( $cgi, $object, $fields, \%opt )