Jump to content

Codice Fiscale Obbligatorio


Recommended Posts

Salve a tutti,

sono nuovo di qui e vi saluto calorosamente con il mio primo post.

Volevo dirvi che ho la necessità di un primo aiuto, ossia nel form di registrazione dovrei rendere obbligatorio il campo del codice fiscale. Come fare?

Inoltre come fare per editare la mail di avvenuta registrazione che viene inviata automaticamente al cliente una volta iscrittosi al sito?

Inoltre come fare per eliminare gli ordini che si registrano automaticamente nella scheda ORDINI??

Un ultima domanda: come fare per ricevere sulla mail dell'amministratore la notifica di registrazione dei nuovi utenti e di nuovi ordini inoltrati al sistema da parte dei miei clienti?

Grazie mille a tutti.

Link to comment
Share on other sites

ciao, allora per il codice fiscale prova a fare così:
modifica il file authentication.tpl che si trova dentro la cartella nome_cartella_tuo_prestashop/themes/prestashop più o meno verso la riga 208 trova le righe con scritto:


{l s='CF'}
<input> *



e aggiungi o modifica il valore segnato in verde.

per editare tutte le mail che vengono spedite da prestashop, modifica i file html dentro la cartella nome_cartella_tuo_prestashop/mails/it il file che hai chiesto tu si chiama account.html e se in testo account.txt

gli ordini non possono essere cancellati dal pannello di controllo restano li con stato di cancellati, oppure se vai nel DB mysql li elimini definitivamente dalla riga col nome ps_order.

per quel che concerne ricevere sulla mail dell’amministratore la notifica di registrazione dei nuovi utenti ti allego 3 file che dovrebbero fare al caso tuo sono 3 versioni ma alla fine si differenziano di poco.

invece nuovi ordini inoltrati al sistema da parte dei miei clienti non credo esista ancora qualcosa , almeno io non lo so.

spero di esserti stato utili ciao.

customer registration.zip

Link to comment
Share on other sites

grazie mille ragazzi per aver risolto due dei miei problemi.

:D

sapete invece indicarmi dove correggere la parola "PAPAMENTO" in PAGAMENTO che arriva nella mail una volta che il cliente effettua un ordine?

io ho installato direttamente la versione italiana quindi non saprei proprio dove andare a sbattere la testa :D

grazie ancora

Link to comment
Share on other sites

  • 4 weeks later...

ma sto codice fiscale è proprio obligatorio???

comunque io non ho trovato la stringa che dite voi ma questa:

{l s='CF'}

e se inserisco *

l'asterisco non mi compare alla fine della casella di testo ma a fianco della label CF
e non è rosso.

dove sbaglio?

Link to comment
Share on other sites

Il fatto di aggiungere l' aseteisco non rende il campo obbligatorio

il CF serve semplicemente a rilasciare la fattura ai privati ma se tu volessi rilasciare uno scontrino puoi farlo Severò aveva trattato alcuni post

Appena ho un attimo di tempo modifico il CF e PIVA rendendoli dinamici per nazione

Ciao ;-)

Link to comment
Share on other sites

ho risolto, ecco qua tutta la stringa del codice fiscale


                  
{l s='CF'}
               <input type="text" class="text" name="cf" id="cf" value="{if isset($smarty.post.cf)}{$smarty.post.cf|escape:'htmlall':'UTF-8'}{/if}" />
*


Ho notato che nella nazione è selezionata di default la francia.
come si cambia???

Link to comment
Share on other sites


ma sto codice fiscale è proprio obligatorio???


Dipende, mi spiego meglio se emetti solo fattura è obbligatorio anche per i privati, è comunque necessario averlo anche per le aziende dato che spesso non coincide con la P.IVA e devi metterlo in fattura.

Ciao

Sèvero
Link to comment
Share on other sites

  • 1 month later...

Salve,
io ho provato a modificare come indicato per ottenere il CF obbligatorio, ma appare solo l'asterisco, se non si inserisce il CF comunque si riesce lo stesso a iscriversi, ho modificato in questo modo:


{l s='CF'}
               <input type="text" class="text" name="cf" id="cf" value="{if isset($smarty.post.cf)}{$smarty.post.cf|escape:'htmlall':'UTF-8'}{/if}" /><sup>*


Inoltre se provo a registrarmi lasciando vuoti altri campi nell'elenco non appare li CF... :roll: non capisco...

ho provato a togliere class="required text" e * dalla città e me lo continua a dare obbligatorio: c'è qualche altro punto dove impostare l'obbligatorietà di un campo?

Grazie,
ciao

Link to comment
Share on other sites

Ciao Germanoufo
ahimè, me ne sono reso conto... ho provato anche a guardare dentro la funzione validateControler

/* Checking for required fields */
       foreach ($this->fieldsRequired AS $field)
       if (($value = Tools::getValue($field, $this->{$field})) == false AND (string)$value != '0')
           if (!$this->id OR $field != 'passwd')
               $errors[] = ''.self::displayFieldName($field, get_class($this), $htmlentities).' '.Tools::displayError('is required');



quindi in teoria mettendo la class giusta venisse letto l'html e impostato come campo obbligatorio... ma niente... quindi dove devo mettere mano per modificare l'obbligatorietà di un campo?

Grazie, ciao :)

Link to comment
Share on other sites

Non ho visto ancora nulla

Prestashop stà chiedendo adesso come gestire le tasse e quindi presto si sistemerà il tutto direttamente da prestashop con qualche ritocchino per il caso italia ma è già un grande aiuto

http://www.prestashop.com/forums/viewthread/19724/discussione_generale/prestashop_richiede_finalmente_aiuto_per_migliorare_il_sistema_delle_tasse_dot_/

questo il post

Ciao ;-)

Link to comment
Share on other sites

Ciao Germanoufo
ahimè, me ne sono reso conto... ho provato anche a guardare dentro la funzione validateControler
/* Checking for required fields */
       foreach ($this->fieldsRequired AS $field)
       if (($value = Tools::getValue($field, $this->{$field})) == false AND (string)$value != '0')
           if (!$this->id OR $field != 'passwd')
               $errors[] = ''.self::displayFieldName($field, get_class($this), $htmlentities).' '.Tools::displayError('is required');



quindi in teoria mettendo la class giusta venisse letto l'html e impostato come campo obbligatorio... ma niente... quindi dove devo mettere mano per modificare l'obbligatorietà di un campo?

Grazie, ciao :)



classes/Customer.php

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



Sostituisci con:

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



.tpl:



{l s='CF'}
   <input type="text" class="text" name="cf" id="cf" value="{if isset($smarty.post.cf)}{$smarty.post.cf|escape:'htmlall':'UTF-8'}{/if}" maxlength="16" />
*



;-)

Link to comment
Share on other sites

Grazie per il benvenuto :)

Un utente mi ha fatto notare che la mia soluzione controlla i 16 caratteri massimi ma nn la lunghezza minima. Con questa modifica dovrebbe andar bene ;)

classes/Customer.php
find:

protected     $fieldsValidate = array('secure_key' => 'isMd5', 'lastname' => 'isName', 'firstname' => 'isName', 'email' => 'isEmail', 'passwd' => 'isPasswd',
        'id_gender' => 'isUnsignedId', 'birthday' => 'isBirthDate', 'newsletter' => 'isBool', 'optin' => 'isBool', 'active' => 'isBool', 'piva' => 'isGenericName', 'cf' => 'isGenericName');



replace:

protected     $fieldsValidate = array('secure_key' => 'isMd5', 'lastname' => 'isName', 'firstname' => 'isName', 'email' => 'isEmail', 'passwd' => 'isPasswd',
        'id_gender' => 'isUnsignedId', 'birthday' => 'isBirthDate', 'newsletter' => 'isBool', 'optin' => 'isBool', 'active' => 'isBool', 'piva' => 'isGenericName', 'cf' => 'isCf');



classes/Validate.php
find:

/**
* Check for standard name validity
*
* @param string $name Name to validate
* @return boolean Validity is ok or not
*/
static public function isGenericName($name)
{
   return empty($name) OR preg_match('/^[^<>;=#{}]*$/ui', $name);
}



after add:

/**
* Check for cf validity
*
* @param string $name Name to validate
* @return boolean Validity is ok or not
*/
static public function isCf($name, $size = 16)
{
   return empty($name) OR preg_match('/^[^<>;=#{}]{'.$size.',16}$/ui', $name);
}

Link to comment
Share on other sites

controllo p.iva (acetta solo 11 cifre, se ci sono lettere o meno cifre esce l'errore)

authentication.tpl
find:


{l s='Piva'}
   <input type="text" class="text" name="piva" id="piva" value="{if isset($smarty.post.piva)}{$smarty.post.piva|escape:'htmlall':'UTF-8'}{/if}" />



replace with:


{l s='Piva'}
   <input type="text" class="text" name="piva" id="piva" value="{if isset($smarty.post.piva)}{$smarty.post.piva|escape:'htmlall':'UTF-8'}{/if}" maxlength="11" />



classes/Customer.php
find:

protected     $fieldsValidate = array('secure_key' => 'isMd5', 'lastname' => 'isName', 'firstname' => 'isName', 'email' => 'isEmail', 'passwd' => 'isPasswd',
        'id_gender' => 'isUnsignedId', 'birthday' => 'isBirthDate', 'newsletter' => 'isBool', 'optin' => 'isBool', 'active' => 'isBool', 'piva' => 'isGenericName'



replace with:

protected     $fieldsValidate = array('secure_key' => 'isMd5', 'lastname' => 'isName', 'firstname' => 'isName', 'email' => 'isEmail', 'passwd' => 'isPasswd',
        'id_gender' => 'isUnsignedId', 'birthday' => 'isBirthDate', 'newsletter' => 'isBool', 'optin' => 'isBool', 'active' => 'isBool', 'piva' => 'isPiva'



classes/Validate.php
find:

static public function isGenericName($name)
{
   return empty($name) OR preg_match('/^[^<>;=#{}]*$/ui', $name);
}



after add:

/**
* Check for piva validity
*
* @param string $name Name to validate
* @return boolean Validity is ok or not
*/
static public function isPiva($name, $size = 11)
{
   return preg_match('/^[^a-z<>;=#{}]{'.$size.',11}$/ui', $name);
}



;)

Link to comment
Share on other sites

Sinceramente avevo pensato a fare una modifica che permetesse l' inserimento specifico di controllo caso a caso
ma adesso il team prestashop ha richiesto documentazione per integrare al meglio Piva quindi aspettiamo che poi inseriremo noi il CF e risolviamo la questione ma ormai spero esca nella 1.3 ci vorrà un po

Per il momento usiamo quello che possiamo

Ciao ;-)

Link to comment
Share on other sites

Soprattutto attenzione perché se ti acquista un cliente estero la partita iva sua è diversa,
a partire dal lussemburgo che è 5 caratteri più LU davanti,
fino a 15 caratteri che è la più lunga (nella cee)

Link to comment
Share on other sites

Soprattutto attenzione perché se ti acquista un cliente estero la partita iva sua è diversa,
a partire dal lussemburgo che è 5 caratteri più LU davanti,
fino a 15 caratteri che è la più lunga (nella cee)


quindi:
italia -> 11 numeri
estero -> prefisso di 2 lettere + stringa che varia dai 5 ai 15 caratteri numerici?

se mi confermi questo vi passo la condizione, magari a qualcuno serve ;)
Link to comment
Share on other sites

in classes/Customer.php la modifica è uguale a quella fatta sopra..

     protected     $fieldsValidate = array('secure_key' => 'isMd5', 'lastname' => 'isName', 'firstname' => 'isName', 'email' => 'isEmail', 'passwd' => 'isPasswd',
        'id_gender' => 'isUnsignedId', 'birthday' => 'isBirthDate', 'newsletter' => 'isBool', 'optin' => 'isBool', 'active' => 'isBool', 'piva' => 'isPiva', 'cf' => 'isCf');



classes/Validate.php
find:

/**
* Check for standard name validity
*
* @param string $name Name to validate
* @return boolean Validity is ok or not
*/
static public function isGenericName($name)
{
   return empty($name) OR preg_match('/^[^<>;=#{}]*$/ui', $name);
}



after add:

/**
* Check for piva validity
*
* @param string $name Name to validate
* @return boolean Validity is ok or not
*/
static public function isPiva($name)
{
   if(preg_match('/^[^a-z<>;=#{}]{11}$/ui', $name)){
       return preg_match('/^[^a-z<>;=#{}]{11}$/ui', $name);
   }
   elseif(strlen($name)>6 && strlen($name)<18 && ereg('([a-z]|[A-Z]){2}[0-9]*$',$name) && preg_match('/^[^<>;=#{}]*$/ui', $name)){
       return preg_match('/^[^<>;=#{}]*$/ui', $name);
   }
}



praticamente la prima condizione controlla che nn ci siano simboli strani tra gli 11 caratteri passati.. se fallisce va al secondo if che controlla:

- se la stringa è compresa tra i 7 e i 17 caratteri (5+2 e 15+2)

- se i primi due caratteri sono lettere.. gli altri numeri

- se nn ci sono simboli strani

quindi accetta IT12345678901, 12345678901, LU12345, XY123456789012345, ecc ;)

Link to comment
Share on other sites

Bravo West

così mi piace,
un giorno che uscirà la versione con le pive internazionali e le relative esenzioni d'iva si può collegare per far verificare che la piva sia intracommunitaria e togliere l'iva se reale.

Grazie

Link to comment
Share on other sites

in classes/Customer.php la modifica è uguale a quella fatta sopra..
     protected     $fieldsValidate = array('secure_key' => 'isMd5', 'lastname' => 'isName', 'firstname' => 'isName', 'email' => 'isEmail', 'passwd' => 'isPasswd',
        'id_gender' => 'isUnsignedId', 'birthday' => 'isBirthDate', 'newsletter' => 'isBool', 'optin' => 'isBool', 'active' => 'isBool', 'piva' => 'isPiva', 'cf' => 'isCf');



classes/Validate.php
find:

/**
* Check for standard name validity
*
* @param string $name Name to validate
* @return boolean Validity is ok or not
*/
static public function isGenericName($name)
{
   return empty($name) OR preg_match('/^[^<>;=#{}]*$/ui', $name);
}



after add:

/**
* Check for piva validity
*
* @param string $name Name to validate
* @return boolean Validity is ok or not
*/
static public function isPiva($name)
{
   if(preg_match('/^[^a-z<>;=#{}]{11}$/ui', $name)){
       return preg_match('/^[^a-z<>;=#{}]{11}$/ui', $name);
   }
   elseif(strlen($name)>6 && strlen($name)<18 && ereg('([a-z]|[A-Z]){2}[0-9]*$',$name) && preg_match('/^[^<>;=#{}]*$/ui', $name)){
       return preg_match('/^[^<>;=#{}]*$/ui', $name);
   }
}



praticamente la prima condizione controlla che nn ci siano simboli strani tra gli 11 caratteri passati.. se fallisce va al secondo if che controlla:

- se la stringa è compresa tra i 7 e i 17 caratteri (5+2 e 15+2)

- se i primi due caratteri sono lettere.. gli altri numeri

- se nn ci sono simboli strani

quindi accetta IT12345678901, 12345678901, LU12345, XY123456789012345, ecc ;)



Attento alcune P.IVA Intracomunitare prevedono la presenza di lettere (ES. la Spagna), per avere la panoramica di tutte le casistiche dai un occhio qui che per ogni stato membro ti da le caratteristiche.

Ciao

Sèvero
Link to comment
Share on other sites

urca grazie x la dritta ;)

qua serve un pelo di tempo in +.. se a qualcuno serve e vuole mettersi a farlo posso dargli qualche dritta.. da me la p.iva resta senza controlli :P


Attenzione tu comunque faresti solo un controllo Formale, il quale non assicura che la P.IVA sia valida.

L'unico sistema è verificarne la validità attraverso il link che ti ho dato precedentemente oppure Questo.

Ciao

Sèvero
Link to comment
Share on other sites

  • 1 month later...

Scusa West potresti riassumere bene come far mettere obbligatorio il codice fiscale e la p.iva.

Io ho sostituito la stringa in customer.php però non riesco a capire bene quel .tpl a che file si riferisce per immettere quegli altri parametri.

Scusa ma sono un pò niubbo in tutto ciò e se riscrivi tutto in modo preciso io ed altri come me che siamo inesperti possiamo fare tutto più semplcemente.

Grazie mille!!!!!

FLAVIO

Link to comment
Share on other sites

  • 3 months later...
  • 8 months later...

Inutile postare sotto una lista di risposte datate oltre 1 anno fa considerando che queste risposte saranno valide per la 1.1 o e non per la 1.2 anche se la tipologia non è molto cambiata

Consiglio di aprire se la data ha qualche mese /anno un nuovo post

Ciao ;-)

Link to comment
Share on other sites

puertoppo io in questo periodo sono full del mio lavoro principale e non riesco a seguire completamente il forum

e come me è successa la stessa cosa anche ad altri utenti per questo sul forum trovi poche risposte

appena posso mi rimetto a dare consigli....

Ciao ;-)

Link to comment
Share on other sites

  • 1 year later...

ciao, allora per il codice fiscale prova a fare così:

modifica il file authentication.tpl che si trova dentro la cartella nome_cartella_tuo_prestashop/themes/prestashop più o meno verso la riga 208 trova le righe con scritto:

 

 

{l s='CF'}

<input> *

 

 

e aggiungi o modifica il valore segnato in verde.

per editare tutte le mail che vengono spedite da prestashop, modifica i file html dentro la cartella nome_cartella_tuo_prestashop/mails/it il file che hai chiesto tu si chiama account.html e se in testo account.txt

gli ordini non possono essere cancellati dal pannello di controllo restano li con stato di cancellati, oppure se vai nel DB mysql li elimini definitivamente dalla riga col nome ps_order.

per quel che concerne ricevere sulla mail dell’amministratore la notifica di registrazione dei nuovi utenti ti allego 3 file che dovrebbero fare al caso tuo sono 3 versioni ma alla fine si differenziano di poco.

invece nuovi ordini inoltrati al sistema da parte dei miei clienti non credo esista ancora qualcosa , almeno io non lo so.

spero di esserti stato utili ciao.

 

 

 

Io questa voce non la trovo

{l s='CF'}

<input> *

aiutatemi grazie

Link to comment
Share on other sites

 

 

 

Io questa voce non la trovo

{l s='CF'}

<input> *

aiutatemi grazie

 

 

 

il CF e idendificato come Tax Identification la riga e questa cosa dovrei fare?

</fieldset>

<fieldset class="account_creation dni">

<h3>{l s='Tax identification'}</h3>

 

<p class="required text">

<label for="dni">{l s='Identification number'}</label>

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

<span class="form_info">{l s='DNI / NIF / NIE'}</span>

</p>

</fieldset>

Link to comment
Share on other sites

  • 2 weeks later...

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