Jump to content

[ RISOLTO ] Rendere Obbligatorio il checkbox privacy


paman

Recommended Posts

Salve come da topic

Cercando di rendere obbligatorio il checkbox di accetazione delle condizioni della privacy, mi sono reso conto che la cosa non è semplice come pensavo, mi spiego.

1) Metto l' asterisco vicino al checkbox per far capire che tale campo è obbligatorio, quindi aggiungo

*

al tpl così:


file autentication.tpl nella cartella del tema alla riga 233

<input type="checkbox" name="cgv" id="cgv" value="1"  
{if isset($smarty.post.cgv)}checked="checked"{/if} /> *





2) Inserisco il checkbox della privacy chiamato cgv, tra quelli richiesti in fase di registrazione così:

File classes/Customer.php riga 84


protected     $fieldsRequired = array('lastname', 'passwd', 'firstname', 'email', 'cgv');



faccio una prova di registrazione, non flaggo il campo di accettazione della privacy e mi dice


C'e un errore: cgv è obbligatorio - perfetto così doveva essere -


Ma se flaggo il campo e gli dico avanti purtroppo mi restituisce questo errore

Errore sistema (Customer -> cgv is empty)

Qualche idea ?

Grazie ciao

Link to comment
Share on other sites

Mi sembra di aver risolto, anche grazie, alle sempre preziose indicazioni di Germano.

Allora partiamo dall' inizio

1) Mettiamo l' asterisco vicino al checkbox per far capire che tale campo è obbligatorio.

quindi aggiungo * al file

file autentication.tpl nella cartella del tema alla riga 233

che da cosi:

<input type="checkbox" name="cgv" id="cgv" value="1"  {if isset($smarty.post.cgv)}checked="checked"{/if} />



Diventa così:

<input type="checkbox" name="cgv" id="cgv" value="1"  {if isset($smarty.post.cgv)}checked="checked"{/if} /> *



2) Su giusta e sacrosanta indicazione del GRANDE Germano cambiamo la classe - checkbox - con - checkbox required - perchè tale classe prevede che tutto ciò che è contenuto tra e sia di colore rosso quindi perfetto per il nostro asterisco di obbligatorietà.

quindi sempre nel file autentication.tpl nella cartella del tema la riga 232

diventa da cosi:




a così




3) A questo punto rinominiamo il checkbox da cgv a Privacy, questo perchè, l' utente che non flagga il campo privacy si vedrebbe restituito c'e un errore cgv richiesto ed effettivamnte non è che sia il massimo della comprensione, meglio Privacy richiesto.

agiamo sempre sul file autentication.tpl alla riga 233 e 234 che

da cosi:

<input type="checkbox" name="cgv" id="cgv" value="1"  {if isset($smarty.post.cgv)}checked="checked"{/if} /> *
{l s='I agree the terms of privacy.'} {l s='(read)'}



diventa così:

<input type="checkbox" name="Privacy" id="Privacy" value="1"  {if isset($smarty.post.cgv)}checked="checked"{/if} /> *
{l s='I agree the terms of privacy.'} {l s='(read)'}



E qui stava il mio primo errore il file dove dovevo agire non era il Customer.php ma bensi Address.php quindi



4) Inserisco il checkbox della privacy chiamato adesso Privacy, tra quelli richiesti in fase di registrazione così:

File classes/Address.php riga 80


che da così:

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



diventa così:


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



5) sempre nello stesso file - e qui senza l' aiuto di Germano non ne uscivo -

alla riga 84 gli andiamo a dire cosa è Privacy quindi aggiungiamo alla fine - ,'Privacy' => 'isBool' -

il codice passa quindi da cosi:


protected    $fieldsValidate = array('id_customer' => 'isNullOrUnsignedId', 'id_manufacturer' => 'isNullOrUnsignedId',
                                       'id_supplier' => 'isNullOrUnsignedId', 'id_country' => 'isUnsignedId', 'id_state' => 'isNullOrUnsignedId',
                                       'alias' => 'isGenericName', 'company' => 'isGenericName', 'lastname' => 'isName',
                                       'firstname' => 'isName', 'address1' => 'isAddress', 'address2' => 'isAddress',
                                       'postcode' => 'isPostCode', 'city' => 'isCityName', 'other' => 'isMessage',
                                       'phone' => 'isPhoneNumber', 'phone_mobile' => 'isPhoneNumber', 'deleted' => 'isBool');




a così:


protected    $fieldsValidate = array('id_customer' => 'isNullOrUnsignedId', 'id_manufacturer' => 'isNullOrUnsignedId',
                                       'id_supplier' => 'isNullOrUnsignedId', 'id_country' => 'isUnsignedId', 'id_state' => 'isNullOrUnsignedId',
                                       'alias' => 'isGenericName', 'company' => 'isGenericName', 'lastname' => 'isName',
                                       'firstname' => 'isName', 'address1' => 'isAddress', 'address2' => 'isAddress',
                                       'postcode' => 'isPostCode', 'city' => 'isCityName', 'other' => 'isMessage',
                                       'phone' => 'isPhoneNumber', 'phone_mobile' => 'isPhoneNumber', 'deleted' => 'isBool' ,'Privacy' => 'isBool');




E con questa modifica abbiamo finito.

Ho fatto tutte le prove possibli e sembra che funzioni perfettamente, pertanto chi vuole iniziare a provare faccia pure e poi mi faccia sapere.

Testate questa modifica e teneteci aggiornati in caso di problemi

A MI RACCOMANDO FATE SEMPRE UNA COPIA DEI FILE ORIGINALI

Un saluto a tutti ( Nessuno escluso ).

Link to comment
Share on other sites

Grazie del contributo, ma
'cgv' => 'isGenericName'


non dovrebbe essere piuttosto

'cgv' => 'isBool'


?
Cioè: le condizioni si accettano o si rifutano, che altro potrebe essere?



Si forse ha più senso, cambio sopra per non creare confusione.

Ciao e grazie
Link to comment
Share on other sites

grazie paman..non avevo dubbi che al tua esperienza, in fusione con gli altri [spam-filter] di prestashop italia avrebbe portato ai primi frutti. Adesso la testo e vi faccio sapere. Spero si riesca a perfezionare facendo uscire la dicitura comprensibile nel pop up.

Ancora mille grazie paman

Link to comment
Share on other sites

" [spam-filter] " Prestamedia ( dove reperire il suo significato )

Gruppo di utenti del forum con conoscenze di linguaggi di programmazione che contribuiscono per portare avanti prestashop in italia

Ciao ;-)

Scusate lo sfogo liberatorio ma bisognava speigarlo a chi non conosce il significato

Link to comment
Share on other sites

...[spam-filter] prestamedia...[spam-filter] prestashop... il significato è lo stesso ! ...persone capaci di mettere mani all'applicativo per contribuire a portare avanti un progetto o per adattarlo a piacimento. E' una sorta di proprietà commutativa del saperci fare ... in più .. io di questo prestamedia non ne sapevo prioprio nulla.. grazie germanoufo per la dritta ;-)

Link to comment
Share on other sites

Adesso la testo e vi faccio sapere. Spero si riesca a perfezionare facendo uscire la dicitura comprensibile nel pop up.


Grazie testalo e facci sapere, così appena risolto colore e dicitura, integriamo il tutto nel pacchetto di installazione in modo da rendere tale modifica definitiva sulla 1.2 Italiana.

Ciao
Link to comment
Share on other sites

Immaginavo scherzassi. germanoufo...cmq..spero riusciate e modificare la dicitura da cgv a privacy, ed il colore all'asterisco da nero a rosso.

Un parere soggettivo di poco conto ... ma l'asterisco non sarebbe meglio dopo il (Leggi) a destra ... come le altre voci del form ???

ancora grazie paman e germanoufo

Link to comment
Share on other sites


Un parere soggettivo di poco conto ... ma l'asterisco non sarebbe meglio dopo il (Leggi) a destra ... come le altre voci del form???


In effetti prima l' avevo messa li ma poi l' ho spostata vicino al checkbox, perche mi sembrava come se identificasse il (read) come obbligatorio comunque se Vuoi fare una prova per avere un riscontro grafico sposta * alla fine della riga 234 di autentication.tpl nella cartella del tema, almeno a me dava quella impressione, ma è possibile che sia solo una mia impressione, fai una prova e dimmi come ti sembra.

Ciao
Link to comment
Share on other sites

grazie paman... io l'ho inserito alla fine delll linea 235 (sempre in ../themes/authentication.tpl) :


{l s='(read)'} *



risultato:


Ho letto i termini della "Politica sulla Privacy" e li accetto. (Leggi) *

....spero non mi vada in blocco il programma...sono andato a sesto senso per inserirlo :-D

Link to comment
Share on other sites

si..in effetti hai ragione paman, concordo con te.Credo solo che per una logica di form ad occhio renda più l'idea del campo obbligatorio metterlo a destra come gli altri. Messo a sinistra sembra come una postilla. Cmq..con le tue dritte ognuno la può mettere dove più gli piace.

Spero solo che si riesca ad individuare come inserire la parola "privacy" al posto di cgv. quando appare l'errore, se un utente non flagga il box della privacy.

Ancora grazie paman per le dritte di impostazione. Aspetto buone notizie per il perfezionamento di questa cosa ... siete davvero grandi...

Link to comment
Share on other sites

Direi che ci siamo anche per l' asterisco rosso e per la scritta privacy, testo un pò il tutto e salvo imprevisti, per stasera posto tutte le modifiche da fare.

Mi sorgeva però un Dubbio, e qui mi dovete essere di aiuto, perchè,

VISTO che le modifiche che si vanno a fare sui due fiile una riguarda DICIAMO IL CORE, e una invece va fatta sul tema, coloro che poi cambiano il tema a questo punto perdono una parte dell' obbligatorietà della privacy, anzi questo può compromettere il corretto funzionamento di PS.

A questo punto integrarlo in PS 1.2 italiana non mi sembra la soluzione ideale, a meno che non venga messo un file di testo che spiega che cambiando il tema bisogna fare la modifica sul TPL,

oppure non apportare nessuna modifica è mettere all' intermo un file che spiega come modificare i file per rendere obbligatoria l' accettazione della privacy.

Voi che consiglio mi date ?

Come ritenete sia opportuno procedere.

Aspetto con ansia le Vostre possibili soluzioni.

Grazie

Link to comment
Share on other sites

ciao paman... certo che hai sollevato dei dubbi di non poco conto. Possiamo razionalizzarci sopra:
1) il fatto che le modifiche interessino anche il Core ed un file di template, obbliga l'utente ad utilizzare solo quel thema. però...così facendo deve solo scaricare prestashop 1.2 italia ed iniziare a lavorarci sopra per l'importazione dei prodotti.
2) Non apportare nessuna modifica e mettere all'interno un file che spiega come modificare i file per rendere obbligatoria l'accettazione della privacy, aiuterebbe quanti necessitano personalizzare un thema o inserine uno nuovo, a svantaggio dei tanti che non sanno proprio mettere mani e con la soluzione 1 potrebbero iniziare a lavorare senza problema.

Insomma...dipende dalla filosofia per la quale nasce prestashop Italia....cioè...rendere un pacchetto già pronto per l'uso per tutti quanti..esperti e non.

PER ME..come sempre parere di persona poco competente...si potrebbero fare 2 versioni (tanto non credo sia problematico)....:

1) classica..con un file di testo che spiega che cambiando il tema bisogna fare la modifica sul TPL per la privacy (dunque, già bella pronta per l'uso per i meno esperti)

2) un' altra versione con una cartella con un file che spiega come inserire la modifica sulla privacy nel file di template.

--------------------------

Un parere il mio, per il resto, spetta a voi cervelli di prestashop italia fare la cosa più giusta.


ah paman! ... non avevo dubbi che avresti risolto il problema...siete davvero forti

Link to comment
Share on other sites

Ciao Zizu, la soluzione a due versioni mi sembra una ottima idea, vediamo però se qualcun altro ha qualche altra idea, hai visto mai, tanto un ora in più, un ora in meno, non cambia il risultato, e quindi poi decidiamo se fare due versioni, o altro,

Grazie dei tuoi preziosi consigli.

Sto in questo momento iniziando a scrivere le modifiche che vanno fatte, perchè ho finito il mio test, e sembra che tutto funzioni bene, la mia unica paura era quella relativa alla modifica della voce cgv, che essendo utilizzata anche per l' accettazione dei - termini di servizio negli ordini - pensavo potesse creare qualche problema, invece per fortuna nessun problema riscontrato.

Link to comment
Share on other sites

FATTO per non incasinare troppo il topic ho modificato il Post [ # 2 ], con tutte la descrizione e la modifica del codice da apportare per rendere obbligatoria la privacy, adesso c'è bisogno solo che le testiate.

se ho trascritto bene il tutto dovrebbe funzionare a primo colpo.

Saluti

Link to comment
Share on other sites

Non ho parole ... paman, germanoufo ...siete grandissimi ! Modifica apportata e testata; in remoto sembra funzionare .. se non flaggo, come utente in fase di iscrizione, mi appare il messaggio di errore "privacy è obbligatoria"; subito dopo flaggo la politica sulla privacy e mi registra.

Sembra tutto ok ... dal mio punto di vista. Spero che altri la testino e diano informazioni al riguardo.

Per il momento posso solo dire che ... non avevo dubbi paman ... siete proprio GRANDI !

Link to comment
Share on other sites

Spero che altri la testino e diano informazioni al riguardo.


Lo spero anche io. Mi faresti una grande cortesia prova anche tu a fare qualche prova, con gli ordini, giusto per la questione del campo cgv di cui parlavo prima e fammi sapere. ;-P

Grazie

Basta con i complimenti ci fai diventare rossi :red:
Link to comment
Share on other sites

  • 5 months later...

Scusate re "rispolvero" questo vecchio topic...
Mi sono effettivamente accorto che, in fase di registrazione, non è previsto ne la possibilità di visionare il cms privacy, ne di accetarla/rifutarla.
La modifica, è ferma qui, o qualcuno ha editato una relase che direttamente aggiunge queste opzioni?
GRAZIE

Link to comment
Share on other sites

Allora cambiando tema ti potrebbero mancare diverse cose non solo l' accetazione della privacy, quindi ti consiglio di scaricare diff merge serve per fare il confronto delle modifiche tra duo o più file poi confronti i seguenti file tra il tema originale e il tuo tema


\themes\prestashop\autentication.tpl
\themes\prestashop\identity.tpl


copia tutte le modifiche fatte a questi file da Disarci, Germano e Vinoalvino le troverai contraddistinte da un commento iniziale che riporta il nome di chi ha fatto la modifica.

germanoufo - disarci e VV004 per (VinoalVino)

Spero di essere stato chiaro

Ciao

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