Problem With Saving Contact Name And Phone Number In Order

I am using cs-cart 4.1.2, and is really annoyed by the bug that it doesn’t record contact name and phone number in the orders properly, this should be a very basic functionality!



There are two variations of the problem:


  1. In my profile field settings, I set the following three fields in Contact Information section as required during Checkout:

    First Name, Last Name, Phone Number;

    and I allowed guest checkout;



    When users use the Guest Checkout function, whatever they entered in the Contact Information is actually lost, and the first name, last name, and phone number in the Billing Address section is saved in the order.



    This is wrong, if it allows user to enter contact information during Guest Checkout, these should not be lost!



    (In this scenario there’s no problem with registered users)


  2. I changed the profile field settings to not require and not show the First Name, Last Name, and Phone Number during Checkout, in this case I have another problem:



    For registered users, name and phone number in Contact Information section is not stored in the order (in cscart_orders table), they are copied from Billing/Shipping Address section instead. Now when I print Contact Information on the order invoice, they are not correct.





    They way it should work is that Contact Information, Billing information and Shipping Information should be properly stored in the cscart_orders table as they are, without messing and copying around!