summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorivan <ivan>2010-04-07 08:15:57 +0000
committerivan <ivan>2010-04-07 08:15:57 +0000
commitb6e36782e425e116b976523e18825f9d6e4d18cb (patch)
tree9c1f688aa5724218a9443ca7b59a3750c41a1413
parent2792f36ce487935aa1ad1a0dc252c6bbc9552154 (diff)
in employee edit, fix form getting submitted before customer search can complete. throws "status connecting to" error and custnum does not get filled in, RT#8014
-rw-r--r--httemplate/edit/access_user.html13
-rw-r--r--httemplate/edit/elements/edit.html17
-rw-r--r--httemplate/elements/search-cust_main.html6
3 files changed, 34 insertions, 2 deletions
diff --git a/httemplate/edit/access_user.html b/httemplate/edit/access_user.html
index 1f52b4789..cbced75b1 100644
--- a/httemplate/edit/access_user.html
+++ b/httemplate/edit/access_user.html
@@ -42,6 +42,8 @@
'</TR></TD></TABLE>'
;
},
+ 'onsubmit' => 'check_user_custnum_search',
+ 'html_foot' => $check_user_custnum_search,
)
%>
<%init>
@@ -49,4 +51,15 @@
die "access denied"
unless $FS::CurrentUser::CurrentUser->access_right('Configuration');
+my $check_user_custnum_search = <<END;
+ <SCRIPT TYPE="text/javascript">
+ function check_user_custnum_search(what) {
+ while ( user_custnum_search_active ) {
+ // javascript needs ambien
+ }
+ return true;
+ }
+ </SCRIPT>
+END
+
</%init>
diff --git a/httemplate/edit/elements/edit.html b/httemplate/edit/elements/edit.html
index 1a1023cbd..ea9580df2 100644
--- a/httemplate/edit/elements/edit.html
+++ b/httemplate/edit/elements/edit.html
@@ -127,6 +127,9 @@ Example:
"html_string";
},
+ #javascript function name, will be called with form name as arg
+ 'onsubmit' => 'check_form_data',
+
#at the very bottom (well, as low as you can go from here)
'html_foot' => '',
@@ -199,7 +202,11 @@ Example:
% my $url = $opt{'post_url'} || popurl(1)."process/$table.html";
-<FORM ACTION="<% $url %>" METHOD=POST NAME="edit_topform">
+<FORM NAME = "edit_topform"
+ METHOD = POST
+ ACTION = "<% $url %>"
+ <% $opt{onsubmit} ? 'onSubmit="return '.$opt{onsubmit}.'(this)"' : '' %>
+>
<INPUT TYPE="hidden" NAME="svcdb" VALUE="<% $table %>">
<INPUT TYPE="hidden" NAME="<% $pkey %>" VALUE="<% $clone ? '' : $object->$pkey() %>">
@@ -691,7 +698,13 @@ Example:
<BR>
-<INPUT TYPE="submit" ID="submit" VALUE="<% ( !$clone && $object->$pkey() ) ? "Apply changes" : "Add ". ( $opt{'name'} || $opt{'name_singular'} ) %>">
+<INPUT TYPE = "submit"
+ ID = "submit"
+ VALUE = "<% ( !$clone && $object->$pkey() )
+ ? "Apply changes"
+ : "Add ". ( $opt{'name'} || $opt{'name_singular'} )
+ %>"
+>
</FORM>
diff --git a/httemplate/elements/search-cust_main.html b/httemplate/elements/search-cust_main.html
index 23c4369e8..317922d3c 100644
--- a/httemplate/elements/search-cust_main.html
+++ b/httemplate/elements/search-cust_main.html
@@ -56,6 +56,8 @@ Example:
}
+ var <% $field %>_search_active = false;
+
function smart_<% $field %>_search(what) {
var customer = what.value;
@@ -128,8 +130,12 @@ Example:
}
+ <% $field %>_search_active = false;
+
}
+ <% $field %>_search_active = true;
+
smart_search( customer, <% $field %>_search_update );