When you create an invoice, and enter a customer name, the input fetches the customers in Database.
Which is then using jquery put into a hidden field "Customer_ID" in invoice form.
So in case user decides he wants to create a new customer from the form, he erases the selected customer name from customer field, but the customer_ID is retained in the hidden input field.
This can be fixed by adding the following code in the invoice_form.tpl to remove the old fetched customer ID in the customer_id input field.
Edit:
Since the model actually checks Email field when figuring out whether to add new customer or not, I have updated the code to remove the value from the email input field as well, otherwise there is no point in just removing the value from customer_id.
$("#input-customer").bind("change paste keyup", function() {
$('input[name=\'customer_id\']').val('');
$('input[name=\'email\']').val('');
});
When you create an invoice, and enter a customer name, the input fetches the customers in Database.
Which is then using jquery put into a hidden field "Customer_ID" in invoice form.
So in case user decides he wants to create a new customer from the form, he erases the selected customer name from customer field, but the customer_ID is retained in the hidden input field.
This can be fixed by adding the following code in the invoice_form.tpl to remove the old fetched customer ID in the customer_id input field.
Edit:
Since the model actually checks Email field when figuring out whether to add new customer or not, I have updated the code to remove the value from the email input field as well, otherwise there is no point in just removing the value from customer_id.