Cream77 Posted December 18, 2015 Share Posted December 18, 2015 Bonjour a tous je cherche un moyen de reduire les champs, notamment nom et prenom. qui est demandé 2 fois sur prestashop. une fois pour les informations personnelles, creation de compte. l'autre fois pour la creation d'adresse. je voulais savoir s'il etait possible de couplé les 2 champs. je modifie un module de demande de devis <div class="col-sm-6"> <h3 id="new_account_title" class="page-subheading">{l s='New Customer' mod='askforaquote'}</h3> <!-- Error return block --> <div id="opc_account_errors" class="error" style="display:none;"></div> <!-- END Error return block --> <!-- Account --> <input type="hidden" id="is_new_customer" name="is_new_customer" value="0" /> <input type="hidden" id="opc_id_customer" name="opc_id_customer" value="{if isset($guestInformations) && $guestInformations.id_customer}{$guestInformations.id_customer}{else}0{/if}" /> <input type="hidden" id="opc_id_address_delivery" name="opc_id_address_delivery" value="{if isset($guestInformations) && $guestInformations.id_address_delivery}{$guestInformations.id_address_delivery}{else}0{/if}" /> <input type="hidden" id="opc_id_address_invoice" name="opc_id_address_invoice" value="{if isset($guestInformations) && $guestInformations.id_address_delivery}{$guestInformations.id_address_delivery}{else}0{/if}" /> <p class="required text"> <label for="email">{l s='E-mail' mod='askforaquote'} <sup>*</sup></label> <input type="text" class="text form-control" id="email" name="email" value="{if isset($guestInformations) && $guestInformations.email}{$guestInformations.email}{/if}" /> </p> <p class="required password is_customer_param" style="display:none"> <label for="passwd" >{l s='Password' mod='askforaquote'} <sup>*</sup></label> <input type="password" class="text form-control" name="passwd" id="reg_passwd" value="000000" /> <span class="form_info">{l s='(5 characters min.)' mod='askforaquote'}</span> </p> <p class="required text"> <label for="firstname">{l s='First name' mod='askforaquote'} <sup>*</sup></label> <input type="text" class="text form-control" id="customer_firstname" name="customer_firstname" onblur="$('#firstname').val($(this).val());" value="{if isset($guestInformations) && $guestInformations.customer_firstname}{$guestInformations.customer_firstname}{/if}" /> </p> <p class="required text"> <label for="lastname">{l s='Last name' mod='askforaquote'} <sup>*</sup></label> <input type="text" class="text form-control" id="customer_lastname" name="customer_lastname" onblur="$('#lastname').val($(this).val());" value="{if isset($guestInformations) && $guestInformations.customer_lastname}{$guestInformations.customer_lastname}{/if}" /> </p> </div> <div class="col-sm-6"> {foreach from=$dlv_all_fields item=field_name} {if $field_name eq "company"} <p class="text hideSimple"> <label for="company">{l s='Company' mod='askforaquote'}</label> <input type="text" class="text form-control" id="company" name="company" value="{if isset($guestInformations) && $guestInformations.company}{$guestInformations.company}{/if}" /> </p> {elseif $field_name eq "firstname"} <p class="required text hideout" > <label for="firstname">{l s='First name' mod='askforaquote'} <sup>*</sup></label> <input type="text" class="text form-control" id="firstname" name="firstname" value="{if isset($guestInformations) && $guestInformations.firstname}{$guestInformations.firstname}{/if}" /> </p> {elseif $field_name eq "lastname"} <p class="required text hideout"> <label for="lastname">{l s='Last name' mod='askforaquote'} <sup>*</sup></label> <input type="text" class="text form-control" id="lastname" name="lastname" value="{if isset($guestInformations) && $guestInformations.lastname}{$guestInformations.lastname}{/if}" /> </p> {elseif $field_name eq "address1"} <p class="required text hideSimple"> <label for="address1">{l s='Address' mod='askforaquote'} <sup>*</sup></label> <input type="text" class="text form-control" name="address1" id="address1" value="{if isset($guestInformations) && $guestInformations.address1}{$guestInformations.address1}{/if}" /> </p> {elseif $field_name eq "address2"} <p class="text is_customer_param hideSimple"> <label for="address2">{l s='Address (Line 2)' mod='askforaquote'}</label> <input type="text" class="text form-control" name="address2" id="address2" value="" /> </p> {elseif $field_name eq "postcode"} <p class="required postcode text hideSimple"> <label for="postcode">{l s='Zip / Postal code' mod='askforaquote'} <sup>*</sup></label> <input type="text" class="text form-control" name="postcode" id="postcode" value="{if isset($guestInformations) && $guestInformations.postcode}{$guestInformations.postcode}{/if}" onkeyup="$('#postcode').val($('#postcode').val().toUpperCase());" /> </p> {elseif $field_name eq "city" || $field_name eq "city,"} <p class="required text hideSimple"> <label for="city">{l s='City' mod='askforaquote'} <sup>*</sup></label> <input type="text" class="text form-control" name="city" id="city" value="{if isset($guestInformations) && $guestInformations.city}{$guestInformations.city}{/if}" /> </p> {elseif $field_name eq "country" || $field_name eq "Country:name"} <p class="required select hideSimple"> <label for="id_country">{l s='Country' mod='askforaquote'} <sup>*</sup></label> <select name="id_country" id="id_country" class="form-control"> <option value="">-</option> {foreach from=$countries item=v} <option value="{$v.id_country}" {if (isset($guestInformations) AND $guestInformations.id_country == $v.id_country) OR (!isset($guestInformations) && $sl_country == $v.id_country)} selected="selected"{/if}>{$v.name|escape:'htmlall':'UTF-8'}</option> {/foreach} </select> </p> {/if} {/foreach} pour faciliter l'envoi Link to comment Share on other sites More sharing options...
hilflo Posted December 18, 2015 Share Posted December 18, 2015 Une solution serait de mettre les champs pour la livraison en type="hidden" et de remplir simultanément les 2 champs en js avec un truc du genre : $('#customer_firstname').on('change',function(){ $('#firstname').val($(this).val()); }); $('#customer_lastname').on('change',function(){ $('#lasstname').val($(this).val()); }); Link to comment Share on other sites More sharing options...
Cream77 Posted December 21, 2015 Author Share Posted December 21, 2015 Merci pour ta reponse, ca fonctionne pas. Link to comment Share on other sites More sharing options...
hilflo Posted December 21, 2015 Share Posted December 21, 2015 Sinon dans le controller, tu dois pouvoir réutiliser les données envoyées depuis le formulaire et ne récupérer que les premiers nom et prénom. Je n'ai pas le module donc je peux pas te dire réellement comment faire, mais en théorie, c'est possible Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now