Pagina 1 di 1
[?] PWA e codice fiscale
Inviato: 18/06/2005, 13:56
da RobertoN
Ciao, come faccio ad inserire il campo "codice fiscale" nella form della contrib PWA e fare in modo anche che mi si memorizzi ovviamente nel mio modulo "ordini" in admin?
Inoltre, vorrei sapere xche' lo sfondo delle varie parti della form della PWA, non prende i colori di default del file stylesheet.css e come devo fare x cambiarlo. grazie
Inviato: 19/06/2005, 13:42
da RobertoN
Nessuno mi consiglia?
Inviato: 21/06/2005, 19:56
da RobertoN
Ehm... help, please
Inviato: 21/06/2005, 20:53
da lobotomia
contrib PWA o PIVA?
Inviato: 21/06/2005, 21:10
da RobertoN
Allora ho installato la PWA e ed anche la PIVACF...
Vorrei fare in modo che nella form della PWA, che il cliente utilizza, compaia la voce del codice fiscale e partita iva e che poi venga memorizzato in qualche modo in admin...
Grazie.
Inviato: 24/06/2005, 21:03
da RobertoN
Inviato: 24/06/2005, 23:09
da Bass
Non ho presente com'e' strutturata la PWA, il consiglio che ti posso dare e' quello di andare a vedere come viene inserita la P.IVA nel file create_account.php e provare a replicarlo.
'iao
Sergio
Inviato: 24/06/2005, 23:57
da RobertoN
Grazie...
Ho gia' provato, ma il file "order_info" di pwa e' completamente diverso da "create_account" e non riesco a trovare i riferimenti giusti
Ciao
Inviato: 25/06/2005, 15:09
da RobertoN
Ok, risolto.
In realtà era il file Order_info_check che si trova in includes\modules che andava modificato...
ora ho solo un problemino ancora da risolvere: come fare per inserire nell'email il codice fiscale o la partita iva sia per chi si registra normalmente che per chi usa la form di pwa?
Grazie
Inviato: 28/06/2005, 11:03
da RobertoN
Ciao a tutti.
Per quanto riguarda gli utenti "Loggati" ho risolto trovando la soluzione qui sul forum... purtroppo pero' con la PWA, il codice fiscale continua a non venir visualizzato nell'email di conferma ordine...
Di seguito metto il codice del file "Order_Info_Check.php" che e' quello che per la PWA fa le veci di "create_account.php"
Codice: Seleziona tutto
<?php
/*
$Id: Order_Info_Check.php,v 0.52 2002/09/21 hpdl Exp $
by Cheng
OSCommerce v2.2 CVS (09/17/02)
Modified versions of create_account.php and related
files. Allowing 'purchase without account'.
osCommerce, Open Source E-Commerce Solutions
http://www.oscommerce.com
Copyright (c) 2002 osCommerce
Released under the GNU General Public License
*/
//PIVACF start
if (ACCOUNT_PIVA == 'true') $piva = tep_db_prepare_input($HTTP_POST_VARS['piva']);
if (ACCOUNT_CF == 'true') $cf = tep_db_prepare_input($HTTP_POST_VARS['cf']);
//PIVACF end
require(DIR_WS_CLASSES . 'order.php');
$order = new order;
?>
<table border="0" width="100%" cellspacing="0" cellpadding="1">
<tr>
<td class="formAreaTitle"><?php echo CATEGORY_PERSONAL; ?></td>
</tr>
<tr>
<td class="main"><table border="0" width="100%" cellspacing="0" cellpadding="1" class="formArea">
<tr class="infoBoxContents">
<td class="main"><table border="0" cellspacing="0" cellpadding="1">
<?php
if (ACCOUNT_GENDER == 'true') {
$male = ($account['customers_gender'] == 'm') ? true : false;
$female = ($account['customers_gender'] == 'f') ? true : false;
?>
<tr class="infoBoxContents">
<td class="main"> <?php echo ENTRY_GENDER; ?></td>
<td class="main">
<?php
if ($is_read_only) {
echo ($account['customers_gender'] == 'm') ? MALE : FEMALE;
} elseif ($error) {
if ($entry_gender_error) {
echo tep_draw_radio_field('gender', 'm', $male) . ' ' . MALE . ' ' . tep_draw_radio_field('gender', 'f', $female) . '  ' . FEMALE . ' ' . ENTRY_GENDER_ERROR;
} else {
echo ($gender == 'm') ? MALE : FEMALE;
echo tep_draw_hidden_field('gender');
}
} else {
echo tep_draw_radio_field('gender', 'm', $male) . ' ' . MALE . ' ' . tep_draw_radio_field('gender', 'f', $female) . ' ' . FEMALE . ' ' . ENTRY_GENDER_TEXT;
}
?></td>
</tr>
<?php
}
?>
<tr class="infoBoxContents">
<td class="main"> <?php echo ENTRY_FIRST_NAME; ?></td>
<td class="main">
<?php
if ($is_read_only) {
echo $account['customers_firstname'];
} elseif ($error) {
if ($entry_firstname_error) {
echo tep_draw_input_field('firstname') . ' ' . ENTRY_FIRST_NAME_ERROR;
} else {
echo $firstname . tep_draw_hidden_field('firstname');
}
} else {
echo tep_draw_input_field('firstname', $account['customers_firstname']) . ' ' . ENTRY_FIRST_NAME_TEXT;
}
?></td>
</tr>
<tr class="infoBoxContents">
<td class="main"> <?php echo ENTRY_LAST_NAME; ?></td>
<td class="main">
<?php
if ($is_read_only) {
echo $account['customers_lastname'];
} elseif ($error) {
if ($entry_lastname_error) {
echo tep_draw_input_field('lastname') . ' ' . ENTRY_LAST_NAME_ERROR;
} else {
echo $lastname . tep_draw_hidden_field('lastname');
}
} else {
echo tep_draw_input_field('lastname', $account['customers_lastname']) . ' ' . ENTRY_LAST_NAME_TEXT;
}
?></td>
</tr>
<?php
if (ACCOUNT_DOB == 'true') {
?>
<tr class="infoBoxContents">
<td class="main"> <?php echo ENTRY_DATE_OF_BIRTH; ?></td>
<td class="main">
<?php
if ($is_read_only) {
echo tep_date_short($account['customers_dob']);
} elseif ($error) {
if ($entry_date_of_birth_error) {
echo tep_draw_input_field('dob') . ' ' . ENTRY_DATE_OF_BIRTH_ERROR;
} else {
echo $dob . tep_draw_hidden_field('dob');
}
} else {
echo tep_draw_input_field('dob', tep_date_short($account['customers_dob'])) . ' ' . ENTRY_DATE_OF_BIRTH_TEXT;
}
?></td>
</tr>
<?php
}
?>
<tr class="infoBoxContents">
<td class="main"> <?php echo ENTRY_EMAIL_ADDRESS; ?></td>
<td class="main">
<?php
if ($is_read_only) {
echo $account['customers_email_address'];
} elseif ($error) {
if ($entry_email_address_error) {
echo tep_draw_input_field('email_address') . ' ' . ENTRY_EMAIL_ADDRESS_ERROR;
} elseif ($entry_email_address_check_error) {
echo tep_draw_input_field('email_address') . ' ' . ENTRY_EMAIL_ADDRESS_CHECK_ERROR;
} elseif ($entry_email_address_exists) {
echo tep_draw_input_field('email_address') . ' ' . ENTRY_EMAIL_ADDRESS_ERROR_EXISTS;
} else {
echo $email_address . tep_draw_hidden_field('email_address');
}
} else {
echo tep_draw_input_field('email_address', $account['customers_email_address']) . ' ' . ENTRY_EMAIL_ADDRESS_TEXT;
}
?></td>
<tr>
<td class="main"> <?php echo ENTRY_CF; ?></td>
<td class="main"> <?php echo tep_draw_input_field('cf') . ' ' . ((tep_not_null(ENTRY_CF_TEXT) && (ACCOUNT_CF_REQ == 'true'))? '<span class="inputRequirement">' . ENTRY_CF_TEXT . '</span>': ''); ?></td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
<?php
if (ACCOUNT_COMPANY == 'true') {
?>
<tr>
<td class="formAreaTitle"><br><?php echo CATEGORY_COMPANY; ?></td>
</tr>
<tr class="infoBoxContents">
<td class="main"><table border="0" width="100%" cellspacing="0" cellpadding="1" class="formArea">
<tr class="infoBoxContents">
<td class="main"><table border="0" cellspacing="0" cellpadding="1">
<td class="main"><?php echo ENTRY_COMPANY; ?></td>
<tr class="infoBoxContents">
<td><table border="0" cellspacing="0" cellpadding="2"></td>
<?php
if ($is_read_only) {
echo $account['entry_company'];
} elseif ($error) {
if ($entry_company_error) {
echo tep_draw_input_field('company') . ' ' . ENTRY_COMPANY_ERROR;
} else {
echo $company . tep_draw_hidden_field('company');
}
} else {
echo tep_draw_input_field('company', $account['entry_company']) . ' ' . ENTRY_COMPANY_TEXT;
}
?><tr class="infoBoxContents">
<td class="main"><?php echo ENTRY_PIVA; ?></td><tr>
<td class="main"><?php echo tep_draw_input_field('piva') . ' ' . ((tep_not_null(ENTRY_PIVA_TEXT) && (ACCOUNT_PIVA_REQ == 'true')) ? '<span class="inputRequirement">' . ENTRY_PIVA_TEXT . '</span>': '') ?></td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
<?php
}
?>
<tr>
<td class="formAreaTitle"><br><?php echo CATEGORY_ADDRESS; ?></td>
</tr>
<tr class="infoBoxContents">
<td class="main"><table border="0" width="100%" cellspacing="0" cellpadding="1" class="formArea">
<tr class="infoBoxContents">
<td class="main"><table border="0" cellspacing="0" cellpadding="1">
<tr class="infoBoxContents">
<td class="main"> <?php echo ENTRY_STREET_ADDRESS; ?></td>
<td class="main">
<?php
if ($is_read_only) {
echo $account['entry_street_address'];
} elseif ($error) {
if ($entry_street_address_error) {
echo tep_draw_input_field('street_address') . ' ' . ENTRY_STREET_ADDRESS_ERROR;
} else {
echo $street_address . tep_draw_hidden_field('street_address');
}
} else {
echo tep_draw_input_field('street_address', $account['entry_street_address']) . ' ' . ENTRY_STREET_ADDRESS_TEXT;
}
?></td>
</tr>
<?php
if (ACCOUNT_SUBURB == 'true') {
?>
<tr class="infoBoxContents">
<td class="main"> <?php echo ENTRY_SUBURB; ?></td>
<td class="main">
<?php
if ($is_read_only) {
echo $account['entry_suburb'];
} elseif ($error) {
if ($entry_suburb_error) {
echo tep_draw_input_field('suburb') . ' ' . ENTRY_SUBURB_ERROR;
} else {
echo $suburb . tep_draw_hidden_field('suburb');
}
} else {
echo tep_draw_input_field('suburb', $account['entry_suburb']) . ' ' . ENTRY_SUBURB_TEXT;
}
?></td>
</tr>
<?php
}
?>
<tr class="infoBoxContents">
<td class="main"> <?php echo ENTRY_CITY; ?></td>
<td class="main">
<?php
if ($is_read_only) {
echo $account['entry_city'];
} elseif ($error) {
if ($entry_city_error) {
echo tep_draw_input_field('city') . ' ' . ENTRY_CITY_ERROR;
} else {
echo $city . tep_draw_hidden_field('city');
}
} else {
echo tep_draw_input_field('city', $account['entry_city']) . ' ' . ENTRY_CITY_TEXT;
}
?></td>
</tr>
<?php
if (ACCOUNT_STATE == 'true') {
?>
<tr class="infoBoxContents">
<td class="main"> <?php echo ENTRY_STATE; ?></td>
<td class="main">
<?php
$state = tep_get_zone_name($country, $zone_id, $state);
if ($is_read_only) {
echo tep_get_zone_name($account['entry_country_id'], $account['entry_zone_id'], $account['entry_state']);
} elseif ($error) {
if ($entry_state_error) {
if ($entry_state_has_zones) {
$zones_array = array();
$zones_query = tep_db_query("select zone_name from " . TABLE_ZONES . " where zone_country_id = '" . tep_db_input($country) . "' order by zone_name");
while ($zones_values = tep_db_fetch_array($zones_query)) {
$zones_array[] = array('id' => $zones_values['zone_name'], 'text' => $zones_values['zone_name']);
}
echo tep_draw_pull_down_menu('state', $zones_array) . ' ' . ENTRY_STATE_ERROR;
} else {
echo tep_draw_input_field('state') . ' ' . ENTRY_STATE_ERROR;
}
} else {
echo $state . tep_draw_hidden_field('zone_id') . tep_draw_hidden_field('state');
}
} else {
echo tep_draw_input_field('state', tep_get_zone_name($account['entry_country_id'], $account['entry_zone_id'], $account['entry_state'])) . ' ' . ENTRY_STATE_TEXT;
}
?></td>
</tr>
<?php
}
?>
<tr class="infoBoxContents">
<td class="main"> <?php echo ENTRY_POST_CODE; ?></td>
<td class="main">
<?php
if ($is_read_only) {
echo $account['entry_postcode'];
} elseif ($error) {
if ($entry_post_code_error) {
echo tep_draw_input_field('postcode') . ' ' . ENTRY_POST_CODE_ERROR;
} else {
echo $postcode . tep_draw_hidden_field('postcode');
}
} else {
echo tep_draw_input_field('postcode', $account['entry_postcode']) . ' ' . ENTRY_POST_CODE_TEXT;
}
?></td>
</tr>
<tr class="infoBoxContents">
<td class="main"> <?php echo ENTRY_COUNTRY; ?></td>
<td class="main">
<?php
if ($is_read_only) {
echo tep_get_country_name($account['entry_country_id']);
} elseif ($error) {
if ($entry_country_error) {
echo tep_get_country_list('country') . ' ' . ENTRY_COUNTRY_ERROR;
} else {
echo tep_get_country_name($country) . tep_draw_hidden_field('country');
}
} else {
echo tep_get_country_list('country', $account['entry_country_id']) . ' ' . ENTRY_COUNTRY_TEXT;
}
?></td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
<tr>
<td class="formAreaTitle"><br><?php echo CATEGORY_CONTACT; ?></td>
</tr>
<tr class="infoBoxContents">
<td class="main"><table border="0" width="100%" cellspacing="0" cellpadding="1" class="formArea">
<tr class="infoBoxContents">
<td class="main"><table border="0" cellspacing="0" cellpadding="1">
<tr class="infoBoxContents">
<td class="main"> <?php echo ENTRY_TELEPHONE_NUMBER; ?></td>
<td class="main">
<?php
if ($is_read_only) {
echo $account['customers_telephone'];
} elseif ($error) {
if ($entry_telephone_error) {
echo tep_draw_input_field('telephone') . ' ' . ENTRY_TELEPHONE_NUMBER_ERROR;
} else {
echo $telephone . tep_draw_hidden_field('telephone');
}
} else {
echo tep_draw_input_field('telephone', $account['customers_telephone']) . ' ' . ENTRY_TELEPHONE_NUMBER_TEXT;
}
?></td>
</tr>
<tr class="infoBoxContents">
<td class="main"> <?php echo ENTRY_FAX_NUMBER; ?></td>
<td class="main">
<?php
if ($is_read_only) {
echo $account['customers_fax'];
} elseif ($processed) {
echo $fax . tep_draw_hidden_field('fax');
} else {
echo tep_draw_input_field('fax', $account['customers_fax']) . ' ' . ENTRY_FAX_NUMBER_TEXT;
}
?></td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
<tr>
<td class="formAreaTitle"><br><?php //echo CATEGORY_OPTIONS; ?></td>
</tr>
<tr class="infoBoxContents">
<td class="main"><table border="0" width="100%" cellspacing="0" cellpadding="1" class="formArea">
<tr class="infoBoxContents">
<td class="main"><table border="0" cellspacing="0" cellpadding="1">
<?php
//PIVACF start
if ($language == 'italian'){
if (ACCOUNT_PIVA == 'true'){
if (($piva == "") && (ACCOUNT_PIVA_REQ == 'true')) {
$error = true;
$messageStack->add('order_info', ENTRY_PIVA_ERROR);
} else if ((strlen($piva) != 11) && ($piva != "")) {
$error = true;
$messageStack->add('order_info', ENTRY_PIVA_ERROR);
} else if (strlen($piva) == 11) {
if( ! ereg("^[0-9]+$", $piva) ) {
$error = true;
$messageStack->add('order_info', ENTRY_PIVA_ERROR);
} else {
$s = 0;
for( $i = 0; $i <= 9; $i += 2 ) $s += ord($piva[$i]) - ord('0');
for( $i = 1; $i <= 9; $i += 2 ) {
$c = 2*( ord($piva[$i]) - ord('0') );
if( $c > 9 ) $c = $c - 9;
$s += $c;
}
if( ( 10 - $s%10 )%10 != ord($piva[10]) - ord('0') ) {
$error = true;
$messageStack->add('order_info', ENTRY_PIVA_ERROR);
}
}
}
}
if (ACCOUNT_CF == 'true') {
if (($cf == "") && (ACCOUNT_CF_REQ == 'true')) {
$error = true;
$messageStack->add('order_info', ENTRY_CF_ERROR);
} else if ((strlen($cf) != 16) && ($cf != "")) {
$error = true;
$messageStack->add('order_info', ENTRY_CF_ERROR);
} else if (strlen($cf) == 16) {
$cf = strtoupper($cf);
if( ! ereg("^[A-Z0-9]+$", $cf) ){
$error = true;
$messageStack->add('order_info', ENTRY_CF_ERROR);
} else {
$s = 0;
for( $i = 1; $i <= 13; $i += 2 ){
$c = $cf[$i];
if( '0' <= $c && $c <= '9' )
$s += ord($c) - ord('0');
else
$s += ord($c) - ord('A');
}
for( $i = 0; $i <= 14; $i += 2 ){
$c = $cf[$i];
switch( $c ){
case '0': $s += 1; break;
case '1': $s += 0; break;
case '2': $s += 5; break;
case '3': $s += 7; break;
case '4': $s += 9; break;
case '5': $s += 13; break;
case '6': $s += 15; break;
case '7': $s += 17; break;
case '8': $s += 19; break;
case '9': $s += 21; break;
case 'A': $s += 1; break;
case 'B': $s += 0; break;
case 'C': $s += 5; break;
case 'D': $s += 7; break;
case 'E': $s += 9; break;
case 'F': $s += 13; break;
case 'G': $s += 15; break;
case 'H': $s += 17; break;
case 'I': $s += 19; break;
case 'J': $s += 21; break;
case 'K': $s += 2; break;
case 'L': $s += 4; break;
case 'M': $s += 18; break;
case 'N': $s += 20; break;
case 'O': $s += 11; break;
case 'P': $s += 3; break;
case 'Q': $s += 6; break;
case 'R': $s += 8; break;
case 'S': $s += 12; break;
case 'T': $s += 14; break;
case 'U': $s += 16; break;
case 'V': $s += 10; break;
case 'W': $s += 22; break;
case 'X': $s += 25; break;
case 'Y': $s += 24; break;
case 'Z': $s += 23; break;
}
}
if( chr($s%26 + ord('A')) != $cf[15] ){
$error = true;
$messageStack->add('order_info', ENTRY_CF_ERROR);
}
}
}
}
//changes for non italian state
} elseif ($languagae != 'italian') {
if (ACCOUNT_PIVA == 'true') {
if (($piva == "") && (ACCOUNT_PIVA_REQ == 'true')) {
$error = true;
$messageStack->add('order_info', ENTRY_PIVA_ERROR);
}
}
}
//PIVACF end
?>
</table></td>
</tr>
</table></td>
</tr>
<?php
if (!$is_read_only) {
?>
<!--tr>
<td class="formAreaTitle"><br><?php echo CATEGORY_PASSWORD; ?></td>
</tr>
<tr class="infoBoxContents">
<td class="main"><table border="0" width="100%" cellspacing="0" cellpadding="1" class="formArea">
<tr class="infoBoxContents">
<td class="main"><table border="0" cellspacing="0" cellpadding="1">
<tr class="infoBoxContents">
<td class="main"> <?php echo ENTRY_PASSWORD; ?></td>
<td class="main">
<?php
if ($error) {
if ($entry_password_error) {
echo tep_draw_password_field('password') . ' ' . ENTRY_PASSWORD_ERROR;
} else {
echo PASSWORD_HIDDEN . tep_draw_hidden_field('password') . tep_draw_hidden_field('confirmation');
}
} else {
echo tep_draw_password_field('password') . ' ' . ENTRY_PASSWORD_TEXT;
}
?></td>
</tr>
<?php
if ( (!$error) || ($entry_password_error) ) {
?>
<tr class="infoBoxContents">
<td class="main"> <?php echo ENTRY_PASSWORD_CONFIRMATION; ?></td>
<td class="main">
<?php
echo tep_draw_password_field('confirmation') . ' ' . ENTRY_PASSWORD_CONFIRMATION_TEXT;
?></td>
</tr>
<?php
}
?>
</table></td>
</tr>
</table></td>
</tr//-->
<?php
}
?>
</table>
Grazie.
Inviato: 11/08/2005, 8:59
da RobertoN
Ancora non ho risolto... c'e' qualche anima pia che puo' aiutarmi? Non e' proprio granche' professionale, chiedere continuamente ai clienti che usano la pwa, di mandarmi una mail con il codice fiscale... fino ad ora, solo un utente ha utilizzato pwa per fare gli acquisti... pero' vorrei che tuttto funzionasse alla perfezione.. grazie
Inviato: 12/08/2005, 2:41
da marcus
RobertoN ha scritto:Ancora non ho risolto... c'e' qualche anima pia che puo' aiutarmi? Non e' proprio granche' professionale, chiedere continuamente ai clienti che usano la pwa, di mandarmi una mail con il codice fiscale... fino ad ora, solo un utente ha utilizzato pwa per fare gli acquisti... pero' vorrei che tuttto funzionasse alla perfezione.. grazie
A giorni dovrò integrare la PWA con PIVA e CF per un mio cliente.
Non ho ben capito se hai risolto in parte o comunque cosa devi risolvere, in ogni caso puoi contattarmi in PM o per email (
marcus_marzullus@email.it).
Marcus
Inviato: 12/08/2005, 9:14
da RobertoN
I problemi inizialmente erano:
1) Non riuscivo ad inserire i campi cf e piva nella PWA -RISOLTO-
2) Non riuscivo a cambiare i colori dello sfondo delle varie sezioni della form della PWA -RISOLTO-
3) Quando il cliente si registrava sia con la procedura STANDARD che con PWA, nell'email di conferma ordine non compariva ne PIVA ne CF, Problema risolto per la procedura STANDARD, ma non per la PWA.
Credo che bisogni inserire giusto qualche riga di "IF...THEN" in checkout_process.php... ma non so in che modo...
Ciao e grazie.
Inviato: 28/12/2006, 18:49
da loris_ripa
Sto cercando di far funzionare la contribution CF & PIva sugli acquisti effettuati senza creazione account ma niente...
Se acquisto senza account non viene registrato il CF (o PIVA) e non compare nel dettaglio ordine.
Per il resto funziona tutto senza problemi.
Ciao
Re: [?] PWA e codice fiscale
Inviato: 04/03/2010, 0:34
da lupinvv
Stesso problema anche io ed è da giorni che non riesco a capire come risolvere.
Qualcuno sa come fare?