Forum PrestaShop

Il Forum di PrestaShop è lo spazio in cui puoi condividere con la comunità di PrestaShop consigli pratici sull'e-commerce e trovare la risposta a tutte le domande tecniche e funzionali.

Forum PrestaShop

Jump to content

 

Como poner el campo DNI obligatorio en 1.3 ??

5 replies to this topic
#1
Antonio Romero

    PrestaShop Newbie

  • Members
  • Pip
  • 15 posts
Hola, quisiera saber como es posible poner el campo DNI como campo obligatorio cuando se registra un cliente. Ya he visto que hay por ahi diferentes formas de poner este campo pero como la version 1.3 lo trae de serie no se como modificarlo.

Saludos y gracias.

#2
Lauser

    PrestaShop Apprentice

  • Members
  • PipPip
  • 297 posts
En el template que uses en tu web...
authentication.tpl
identity.tpl

en los dos tienes que tener este code.

 



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




siempre que tengas el mod instalado, activado y tal...

#3
Sawe

    PrestaShop Apprentice

  • Members
  • PipPip
  • 48 posts
Hola Lauser,
Estoy intentando poner el dni obligatorio en la version 1.3.1 pero no lo consigo.
He intentado varias cosas pero no sale.
Tengo insertado el codigo en los dos archivos que dices e incluso con el modulo dni activado.
El modulo dni funcionaba en versiones anteriores y dudo que funcione en esta.
¿Existe un modulo dni para esta version acaso?
¿Cómo lo habeis conseguido?
Gracias

#4
carlymx

    PrestaShop Apprentice

  • Members
  • PipPip
  • 130 posts
Hola buenas.

En este Post explico como lo consegui yo.

http://www.prestasho...peticion_de_cif

En mi caso no modifique el archibo "identity.tpl" porque me interesa que el DNI no se pueda cambiar (por otra parte logico a mi parecer).

Espero te sirva.

#5
ebude

    PrestaShop Newbie

  • Members
  • Pip
  • 7 posts
Hola
Yo también ando a vueltas con el DNI obligatorio.
Tengo instalada la versión 1.3.2.3.
El campo para introducir el DNI aparece cuando el cliente selecciona como país España, que es donde tengo configurado como necesario el DNI, y desaparece si seleccionas otro país donde no se exige.
Mi problema es que si el cliente no cumplimenta el campo del DNI le deja registrarse; en cambio, si pone un DNI incorrecto no deja registrarse y sale el aviso de error: DNI incorrecto o ya utilizado. Esto ocurre tanto en el registro inicial como si el cliente quiere modificar sus datos desde su cuenta. Si no tiene cumplimentando el DNI le deja hacer cambios y no se lo exige, en cambio si desea introducir el DNI y éste no es correcto, le sale el aviso de error de que el DNI es incorrecto.
Agradecería que alguien me dijera dónde puede estar el problema, pues parece que debe ser algún error en el código de validación que no detecta como error el campo vacío.
Saludos.

#6
lonas

    PrestaShop Newbie

  • Members
  • Pip
  • 11 posts

From 1288428348:

Hola
Yo también ando a vueltas con el DNI obligatorio.
Tengo instalada la versión 1.3.2.3.
El campo para introducir el DNI aparece cuando el cliente selecciona como país España, que es donde tengo configurado como necesario el DNI, y desaparece si seleccionas otro país donde no se exige.
Mi problema es que si el cliente no cumplimenta el campo del DNI le deja registrarse; en cambio, si pone un DNI incorrecto no deja registrarse y sale el aviso de error: DNI incorrecto o ya utilizado. Esto ocurre tanto en el registro inicial como si el cliente quiere modificar sus datos desde su cuenta. Si no tiene cumplimentando el DNI le deja hacer cambios y no se lo exige, en cambio si desea introducir el DNI y éste no es correcto, le sale el aviso de error de que el DNI es incorrecto.
Agradecería que alguien me dijera dónde puede estar el problema, pues parece que debe ser algún error en el código de validación que no detecta como error el campo vacío.
Saludos.


+1 llevo todo el día liado y conseguirlo lo consigo modificando el archivo Address.php dentro de /classes,
le añado dni aqui:

    protected    $fieldsRequired = array('id_country', 'alias', 'lastname', 'firstname', 'address1', 'postcode', 'city');


quedando así:

    protected    $fieldsRequired = array('id_country', 'alias', 'lastname', 'firstname', 'address1', 'postcode', 'city', 'dni');


y funcionar funciona el problema es que cuando se registra alguien luego lanza un error en pantalla y así llevo todo el día para esta tontería xD

¿alguien tiene alguna idea?