Jump to content

Mejorar el Formulario de Contacto con la LOPD (Solucionado)


moraira

Recommended Posts

Si creo link para que me cargue una página CMS, por ejemplo la politica de privacidad en el formulario de contacto, cual es la sintaxis para pasarle el código de idioma que no doy con ella.

 

</label> <a href="http://www.miweb.com/index.php?id_cms=1&controller=cms&id_lang=$id_lang &content_only=1" class="iframe">....

 

Gracias por vuestro tiempo :)

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

Si creo link para que me cargue una página CMS, por ejemplo la politica de privacidad en el formulario de contacto, cual es la sintaxis para pasarle el código de idioma que no doy con ella.

 

</label> <a href="http://www.miweb.com/index.php?id_cms=1&controller=cms&id_lang=$id_lang &content_only=1" class="iframe">....

 

Gracias por vuestro tiempo :)

 

Antiguamente era asi:

 

{$cookie->id_lang}

 

Aunque ha habido algunos cambios en la 1.5 como se comentan aquii: http://doc.prestasho...+Context+Object

 

Aunque, de todos modos, por que no usas la funcion

 

{$link->getCMSLink(id_del_cms)}

 

dentro del tpl para obtener la url completa ¿?

Link to comment
Share on other sites

Gracias Nadie, efectivamente mucho mejor usar la función correspondiente, no habia caido, estaba pensando en html en lugar de hacerlo en php, echaremos a culpa al viernes

 

gracias gracias problema resuelto

Link to comment
Share on other sites

Gracias Nadie, efectivamente mucho mejor usar la función correspondiente, no habia caido, estaba pensando en html en lugar de hacerlo en php, echaremos a culpa al viernes

 

gracias gracias problema resuelto

 

Un placer ayudarte y servirte!

 

Si das el tema como solucionado, edita el titulo del tema, editando el primer mensaje, pulsando en editar, y después en "Usar editor completo", añadiendo la palabra "Solucionado" al titulo, esto ayudara, a mantener una mayor organización en el foro.

 

Un saludo y recuerda que estaremos en el foro, para guiarte por este mundo oscuro y tenebroso.

Link to comment
Share on other sites

exactamente statictic, basicamente lo que estoy haciendo es ampliar el formulario de contacto para que cumpla la LOPD

 

lo estoy haciendo con una función al principio del contact-form.tpl

 

{literal}[/size]
<script type="text/javascript">
$('document').ready(function() {
	// desactivo boton envio
	$('#formcontacto').submit(function() {
	  if ($("#acepta_lopd_form").is(":checked")) {
		$('#submitMessage').hide()
		return true;  
	  } else  {
		alert ("{/literal}{l s="If you agree to the terms in the Customer Data Privacy message, please click the check box below."}{literal}");
		$('#submitMessage').show()
		return false;
	  }
	});
})
</script>
{/literal}

 

despues vamos a identificar al formulario que la funcion lo llama, es decir que buscamos esto:

 

 <form action="{$request_uri|escape:'htmlall':'UTF-8'}" method="post" class="std" enctype="multipart/form-data">

 

y lo cambiamos por esto (sólo agregamos id="formcontacto" name="formcontacto") :

 

 <form action="{$request_uri|escape:'htmlall':'UTF-8'}" id="formcontacto" name="formcontacto" method="post" class="std" enctype="multipart/form-data">

 

y luego vamos a añadir el check en cuestion, justo entre el cuadro de texto del contacto y el boton, es decir

 

 <p class="textarea">
  <label for="message">{l s='Message'}</label>
<textarea id="message" name="message" rows="15" cols="10">{if isset($message)}{$message|escape:'htmlall':'UTF-8'|stripslashes}{/if}</textarea>
 </p>

JUSTO AQUI

 <p class="submit">
  <input type="submit" name="submitMessage" id="submitMessage" value="{l s='Send'}" class="button_large" onclick="$(this).hide();" />
 </p>

 

 

Ponemos esto

 

<p class="checkbox" id="security_informations">
 <input id="acepta_lopd_form" type="checkbox" value="1" {if isset($smarty.post.acepta_lopd_form) AND $smarty.post.acepta_lopd_form == 1}checked="checked"{/if}  name="acepta_lopd_form">
  <label for="acepta_lopd_form">{l s='I agree to the'} </label> <a href="{$link->getCMSLink(1)}&content_only=1" class="iframe">{l s='Privacy Policy'}</a> {l s='and will adhere to them unconditionally.'}
</p>
<script type="text/javascript">$('a.iframe').fancybox();</script>

 

OJO que mi politica de privacidad es el CMS ID=1, aqui que cada uno ponga el que tenga

 

getCMSLink(1)

 

 

No hay que olvidar las traducciones y un retoque en product-list.css para adecuar el formato, esto depende de cada tema en mi caso basto con esto:

 

#contact .std #security_informations {
 padding:0 20px 20px 183px;
 font-size:12px;
 text-align: justify;
 width:480px;
}

 

Y listo, ya tenemos formulario de contacto adaptado a la LOPD, yo lo he probado en PS 1.5.4.1

 

quedaría así:

 

quedaría así:

LOPD.png

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

Si no pones lo de content_only al enlace del cms, te mostrará la web completa en el popup...

 

Saludos

 

es verdad, olvide agregarselo a la funcion, seria así:

 

href="{$link->getCMSLink(1)}&content_only=1"

 

lo corrijo más arriba

Link to comment
Share on other sites

exactamente statictic, basicamente lo que estoy haciendo es ampliar el formulario de contacto para que cumpla la LOPD

 

lo estoy haciendo con una función al principio del contact-form.tpl

 

{literal}
<script type="text/javascript">
$('document').ready(function() {
	// desactivo boton envio
	$('#formcontacto').submit(function() {
	  if ($("#acepta_lopd_form").is(":checked")) {
		$('#submitMessage').hide()
		return true;  
	  } else  {
		alert ("{/literal}{l s="If you agree to the terms in the Customer Data Privacy message, please click the check box below."}{literal}");
		$('#submitMessage').show()
		return false;
	  }
	});
})
</script>
{/literal}

 

y luego justo entre el cuadro de texto del contacto y el boton, es decir

 

 <p class="textarea">
  <label for="message">{l s='Message'}</label>
<textarea id="message" name="message" rows="15" cols="10">{if isset($message)}{$message|escape:'htmlall':'UTF-8'|stripslashes}{/if}</textarea>
 </p>

JUSTO AQUI

 <p class="submit">
  <input type="submit" name="submitMessage" id="submitMessage" value="{l s='Send'}" class="button_large" onclick="$(this).hide();" />
 </p>

 

 

Ponemos esto

 

<p class="checkbox" id="security_informations">
 <input id="acepta_lopd_form" type="checkbox" value="1" {if isset($smarty.post.acepta_lopd_form) AND $smarty.post.acepta_lopd_form == 1}checked="checked"{/if}  name="acepta_lopd_form">
  <label for="acepta_lopd_form">{l s='I agree to the'} </label> <a href="{$link->getCMSLink(1)}&content_only=1" class="iframe">{l s='Privacy Policy'}</a> {l s='and will adhere to them unconditionally.'}
</p>
<script type="text/javascript">$('a.iframe').fancybox();</script>

 

 

No hay que olvidar las traducciones y un retoque en product-list.css para adecuar el formato, esto depende de cada tema en mi caso basto con esto:

 

#contact .std #security_informations {
 padding:0 20px 20px 183px;
 font-size:12px;
 text-align: justify;
 width:480px;
}

 

Y listo, ya tenemos formulario de contacto adaptado a la LOPD, yo lo he probado en PS 1.5.4.1

 

quedaría así:

LOPD.png

 

No se te olvide publicar el aporte en la sección de aportaciones: http://www.prestashop.com/forums/index.php?/forum/168-modulos-gratis-sobrecargas-y-otras-astucias-que-cambian-la-vida/

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...