Jump to content

DNI OBLIGATORIO


MICROEDET

Recommended Posts

Tengo activado la necesidad de Numero de Identificación Fiscal , para el alta de nuevos usuario, y lo tengo traducido, por DNI - CIF - NIE, para que cada persona ponga lo necesario, pero me sale siempre como opcional, y quiero que sea obligatorio, he tocado clientes- clientes y clientes - direcciones para poner los campos obligatorios y sigue apareciendo como optional,  como puedo poner este campo como obligatorio,

 

  Gracias

 

 

Link to comment
Share on other sites

4 hours ago, MICROEDET said:

Hola burrots utilizo plantilla transformer

busca el archivo tpl dentro de tu theme templates/_partials/form-fields.tpl

busca esta parte

{block name='form_field_item_other'}

.................

{/block}

 

y sustituye por esta

{block name='form_field_item_other'}
	<input
		class="form-control"
		name="{$field.name}"
		type="{$field.type}"
		value="{$field.value}"
		{if isset($field.availableValues.placeholder)}placeholder="{$field.availableValues.placeholder}"{/if}
		{if $field.maxLength}maxlength="{$field.maxLength}"{/if}
		{if $field.required}required{/if}
	>
	{if isset($field.availableValues.comment)}
		<span class="form-control-comment">
			{$field.availableValues.comment}
		</span>
	{/if}
{/block}

Prueba y comentas

Suerte

Link to comment
Share on other sites

Muchas gracias Burrots, te comento ese codigo yo lo tengo ya incluido en form-fields-list.tpl , tambien tengo form-fields.tps y form-fields-1.tpl

en form-fields-1.tpl

{if $field.type == 'hidden'}
  {block name='form_field_item_hidden'}
  <input type="hidden" name="{$field.name}" value="{$field.value}">
  {/block}
{else}

  <div class="form-group form-group-small {if !empty($field.errors)}has-error{/if}">
    {if $field.type !== 'checkbox'}
    <label class="{if $field.required} required{/if}">
        {$field.label nofilter}
        {block name='form_field_comment'}
          {if (!$field.required && !in_array($field.type, ['radio-buttons', 'checkbox']))}
           {l s='(Optional)' d='Shop.Forms.Labels'}
          {/if}
        {/block}
    </label>
    {/if}
    <div class="{if ($field.type === 'radio-buttons')} form-control-valign{/if}">

    {include file='_partials/form-fields-list.tpl'}

    </div>
    
    
  </div>
 
{/if}

 

en form-fields.tpl


{if $field.type == 'hidden'}
  {block name='form_field_item_hidden'}
  <input type="hidden" name="{$field.name}" value="{$field.value}">
  {/block}
{else}

  <div class="form-group row {if !empty($field.errors)}has-error{/if}">
    <label class="col-md-3 form-control-label{if $field.required} required{/if}">
      {if $field.type !== 'checkbox'}
        {$field.label}
      {/if}
    </label>
    <div class="col-md-6{if ($field.type === 'radio-buttons')} form-control-valign{/if}">

    {include file='_partials/form-fields-list.tpl'}

    </div>

    <div class="col-md-3 form-control-comment">
      {block name='form_field_comment'}
        {if (!$field.required && !in_array($field.type, ['radio-buttons', 'checkbox']))}
         {l s='Optional' d='Shop.Forms.Labels'}
        {/if}
      {/block}
    </div>
  </div>
 
{/if}

 

 

 

Link to comment
Share on other sites

En el país veo que ya lo tienes puesto como obligatorio, esto es un pequeño bug que tiene el ps 1.7, creo que en la última ya está arreglado pero no lo se seguro, tienes que ir a /classes/form/CustomerAddressFormatter.php y buscar por la línea 100 esto:

foreach ($fields as $field) {
            $formField = new FormField();
            $formField->setName($field);

            $fieldParts = explode(':', $field, 2);

            if (count($fieldParts) === 1) {

				......

dentro tienes que añadir esto:

if ($field === 'dni' && $this->country->need_identification_number) {
                    $formField->setRequired(true);
                }

Tiene que quedar así:

foreach ($fields as $field) {
            $formField = new FormField();
            $formField->setName($field);

            $fieldParts = explode(':', $field, 2);

            if (count($fieldParts) === 1) {
				if ($field === 'dni' && $this->country->need_identification_number) {
                    $formField->setRequired(true);
                }
				......

 

Edited by DavidPortfolio (see edit history)
Link to comment
Share on other sites

vale creo q te pasa esto pk utilzas dni en vez d vat_number en las opciones dl pais

puedes probar a poner vat_number (en Adress) q es como esta por defecto?

en traducciones luego ya cambias el fornt si es necesario

prueba y dices

suerte

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...