Jump to content

Adres zonder huisnummer


wvgils

Recommended Posts

Beste Allemaal,

 

Wij hebben een probleempje/uitdaging. Bij ongeveer 1 van de 20 bestelling wordt bij het invullen van het adres geen huisnummer toegevoegd.

 

Hebben jullie ditzelfde problemen en hebben jullie ook een oplossing gevonden? Kan je net als bij het postcode veld aangeven dat hier minimaal één letter en één cijfer in zitten?

 

Groet,

Wouter

Link to comment
Share on other sites

Om tijdens de registratie en het opgeven van het adres het huisnummer verplicht te maken + weergeven in het beheergedeelte:

 

verander in classes/address.php

 

'address2' => array('type' => self::TYPE_STRING, 'validate' => 'isAddress', 'size' => 128),

 

door:

'address2' => array('type' => self::TYPE_STRING, 'validate' => 'isAddress', 'required' => true, 'size' => 128),

 

 

 

verander in themes/default/address.tpl

 

{if $field_name eq 'address2'}

<p class="required text">

<label for="address2">{l s='Address (Line 2)'} </label>

<input type="text" id="address2" name="address2" value="{if isset($smarty.post.address2)}{$smarty.post.address2}{else}{if isset($address->address2)}{$address->address2}{/if}{/if}" />

</p>

{/if}

 

door:

 

{if $field_name eq 'address2'}

<p class="required text">

<label for="address2">{l s='Address (Line 2)'} <sup>*</sup></label>

<input type="text" id="address2" name="address2" value="{if isset($smarty.post.address2)}{$smarty.post.address2}{else}{if isset($address->address2)}{$address->address2}{/if}{/if}" />

</p>

{/if}

 

verander in themes/default/authentication.tpl

 

 

{elseif $field_name eq "address1"}

<p class="required text">

<label for="address1">{l s='Address'} <sup>*</sup></label>

<input type="text" class="text" name="address1" id="address1" value="{if isset($smarty.post.address1)}{$smarty.post.address1}{/if}" />

<span class="inline-infos">{l s='Street address, P.O. box, company name, c/o'}</span>

</p>

{elseif $field_name eq "address2"}

<p class="text">

<label for="address2">{l s='Address (Line 2)'}</label>

<input type="text" class="text" name="address2" id="address2" value="{if isset($smarty.post.address2)}{$smarty.post.address2}{/if}" />

<span class="inline-infos">{l s='Apartment, suite, unit, building, floor, etc.'}</span>

</p>

 

door:

{elseif $field_name eq "address1"}

<p class="required text">

<label for="address1">{l s='Address'} <sup>*</sup></label>

<input type="text" class="text" name="address1" id="address1" value="{if isset($smarty.post.address1)}{$smarty.post.address1}{/if}" />

<!-- <span class="inline-infos">{l s='Street address, P.O. box, company name, c/o'}</span> -->

</p>

{elseif $field_name eq "address2"}

<p class="required text">

<label for="address2">{l s='Address (Line 2)'} <sup>*</sup></label>

<input type="text" class="text" name="address2" id="address2" value="{if isset($smarty.post.address2)}{$smarty.post.address2}{/if}" />

<!-- <span class="inline-infos">{l s='Apartment, suite, unit, building, floor, etc.'}</span> -->

</p>

 

 

verander in controllers/admin/AdminAdressesController.php

 

$this->fields_list = array(

'id_address' => array('title' => $this->l('ID'), 'align' => 'center', 'width' => 25),

'firstname' => array('title' => $this->l('First name'), 'width' => 120, 'filter_key' => 'a!firstname'),

'lastname' => array('title' => $this->l('Last name'), 'width' => 140, 'filter_key' => 'a!lastname'),

'address1' => array('title' => $this->l('Address')),

'postcode' => array('title' => $this->l('Postal Code/Zip Code'), 'align' => 'right', 'width' => 80),

'city' => array('title' => $this->l('City'), 'width' => 150),

'country' => array('title' => $this->l('Country'), 'width' => 100, 'type' => 'select', 'list' => $this->countries_array, 'filter_key' => 'cl!id_country'));

 

door:

$this->fields_list = array(

'id_address' => array('title' => $this->l('ID'), 'align' => 'center', 'width' => 25),

'firstname' => array('title' => $this->l('First name'), 'width' => 120, 'filter_key' => 'a!firstname'),

'lastname' => array('title' => $this->l('Last name'), 'width' => 140, 'filter_key' => 'a!lastname'),

'address1' => array('title' => $this->l('Address')),

'address2' => array('title' => $this->l('Address (Line 2)'), 'width' => 50),

'postcode' => array('title' => $this->l('Postal Code/Zip Code'), 'align' => 'right', 'width' => 80),

'city' => array('title' => $this->l('City'), 'width' => 150),

'country' => array('title' => $this->l('Country'), 'width' => 100, 'type' => 'select', 'list' => $this->countries_array, 'filter_key' => 'cl!id_country'));

 

 

else if ($addr_field_item == 'address2')

{

$temp_fields[] = array(

'type' => 'text',

'label' => $this->l('Address').' (2)',

'name' => 'address2',

'size' => 33,

'required' => false,

);

}

 

door:

else if ($addr_field_item == 'address2')

{

$temp_fields[] = array(

'type' => 'text',

'label' => $this->l('Address (Line 2)'),

'name' => 'address2',

'size' => 33,

'required' => true,

);

}

 

 

 

in de winkel vertalingen:

winkel vertalingen -> address en authentication

adres veranderen in: straat 

adres (lijn 2) veranderen in: nummer / bus

 

winkelachterkant vertalingen -> adminaddress

Address 1 veranderen in: Straat

Address (Line 2) veranderen in: Nummer / Bus

 

veldnaam vertalingen -> address

adres 1 veranderen in: straat 

adres 2 veranderen in: nummer / bus
  • Like 1
Link to comment
Share on other sites

  • 1 month later...

Dit werkt perfect, dank je wel.

Maar er nog een ding wat niet goed staat, in de BO staat bij Klanten separator_breadcrumb.png Adressen separator_breadcrumb.png Voeg nieuw toe

Daar staan namelijk Straat (2)  Hoe kan ik dat veranderen in huisnummer.

Ben al aan het zoeken geweest maar kan niks vinden.

Link to comment
Share on other sites

  • 2 weeks later...
  • 1 year later...

 

Om tijdens de registratie en het opgeven van het adres het huisnummer verplicht te maken + weergeven in het beheergedeelte:

 
verander in classes/address.php
 
'address2' => array('type' => self::TYPE_STRING, 'validate' => 'isAddress', 'size' => 128),
 
door:
'address2' => array('type' => self::TYPE_STRING, 'validate' => 'isAddress', 'required' => true, 'size' => 128),
 
 
 
verander in themes/default/address.tpl
 
{if $field_name eq 'address2'}
<p class="required text">
<label for="address2">{l s='Address (Line 2)'} </label>
<input type="text" id="address2" name="address2" value="{if isset($smarty.post.address2)}{$smarty.post.address2}{else}{if isset($address->address2)}{$address->address2}{/if}{/if}" />
</p>
{/if}
 
door:
 
{if $field_name eq 'address2'}
<p class="required text">
<label for="address2">{l s='Address (Line 2)'} <sup>*</sup></label>
<input type="text" id="address2" name="address2" value="{if isset($smarty.post.address2)}{$smarty.post.address2}{else}{if isset($address->address2)}{$address->address2}{/if}{/if}" />
</p>
{/if}
 
verander in themes/default/authentication.tpl
 
 
{elseif $field_name eq "address1"}
<p class="required text">
<label for="address1">{l s='Address'} <sup>*</sup></label>
<input type="text" class="text" name="address1" id="address1" value="{if isset($smarty.post.address1)}{$smarty.post.address1}{/if}" />
<span class="inline-infos">{l s='Street address, P.O. box, company name, c/o'}</span>
</p>
{elseif $field_name eq "address2"}
<p class="text">
<label for="address2">{l s='Address (Line 2)'}</label>
<input type="text" class="text" name="address2" id="address2" value="{if isset($smarty.post.address2)}{$smarty.post.address2}{/if}" />
<span class="inline-infos">{l s='Apartment, suite, unit, building, floor, etc.'}</span>
</p>
 
door:
{elseif $field_name eq "address1"}
<p class="required text">
<label for="address1">{l s='Address'} <sup>*</sup></label>
<input type="text" class="text" name="address1" id="address1" value="{if isset($smarty.post.address1)}{$smarty.post.address1}{/if}" />
<!-- <span class="inline-infos">{l s='Street address, P.O. box, company name, c/o'}</span> -->
</p>
{elseif $field_name eq "address2"}
<p class="required text">
<label for="address2">{l s='Address (Line 2)'} <sup>*</sup></label>
<input type="text" class="text" name="address2" id="address2" value="{if isset($smarty.post.address2)}{$smarty.post.address2}{/if}" />
<!-- <span class="inline-infos">{l s='Apartment, suite, unit, building, floor, etc.'}</span> -->
</p>
 
 
verander in controllers/admin/AdminAdressesController.php
 
$this->fields_list = array(
'id_address' => array('title' => $this->l('ID'), 'align' => 'center', 'width' => 25),
'firstname' => array('title' => $this->l('First name'), 'width' => 120, 'filter_key' => 'a!firstname'),
'lastname' => array('title' => $this->l('Last name'), 'width' => 140, 'filter_key' => 'a!lastname'),
'address1' => array('title' => $this->l('Address')),
'postcode' => array('title' => $this->l('Postal Code/Zip Code'), 'align' => 'right', 'width' => 80),
'city' => array('title' => $this->l('City'), 'width' => 150),
'country' => array('title' => $this->l('Country'), 'width' => 100, 'type' => 'select', 'list' => $this->countries_array, 'filter_key' => 'cl!id_country'));
 
door:
$this->fields_list = array(
'id_address' => array('title' => $this->l('ID'), 'align' => 'center', 'width' => 25),
'firstname' => array('title' => $this->l('First name'), 'width' => 120, 'filter_key' => 'a!firstname'),
'lastname' => array('title' => $this->l('Last name'), 'width' => 140, 'filter_key' => 'a!lastname'),
'address1' => array('title' => $this->l('Address')),
'address2' => array('title' => $this->l('Address (Line 2)'), 'width' => 50),
'postcode' => array('title' => $this->l('Postal Code/Zip Code'), 'align' => 'right', 'width' => 80),
'city' => array('title' => $this->l('City'), 'width' => 150),
'country' => array('title' => $this->l('Country'), 'width' => 100, 'type' => 'select', 'list' => $this->countries_array, 'filter_key' => 'cl!id_country'));
 
 
else if ($addr_field_item == 'address2')
{
$temp_fields[] = array(
'type' => 'text',
'label' => $this->l('Address').' (2)',
'name' => 'address2',
'size' => 33,
'required' => false,
);
}
 
door:
else if ($addr_field_item == 'address2')
{
$temp_fields[] = array(
'type' => 'text',
'label' => $this->l('Address (Line 2)'),
'name' => 'address2',
'size' => 33,
'required' => true,
);
}
 
 
 
in de winkel vertalingen:
winkel vertalingen -> address en authentication
adres veranderen in: straat 
adres (lijn 2) veranderen in: nummer / bus
 
winkelachterkant vertalingen -> adminaddress
Address 1 veranderen in: Straat
Address (Line 2) veranderen in: Nummer / Bus
 
veldnaam vertalingen -> address
adres 1 veranderen in: straat 
adres 2 veranderen in: nummer / bus

 

 

 

Ik heb geprobeerd deze bovenstaande veranderingen in Prestashop versie 1.6.0.14

 

in te bouwen. Blijkbaar niet goed gedaan, want ik krijg het niet goed werkend, er zitten wel wat verschillen in de code.

 

Is er iemand die de veranderingen kan  herschrijven naar versie 1.6.0.14

 

Alvast bedankt.

 

 

 

 

 

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...