From 0dc4f7db101f586cb118479d63883e3f023d1285 Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Sun, 22 May 2011 08:35:48 +0000 Subject: [PATCH] Works on paypal module --- htdocs/langs/en_US/paypal.lang | 25 +++++---- htdocs/langs/fr_FR/paypal.lang | 25 +++++---- htdocs/paypal/ajaxtransaction.php | 92 +++++++++++++++++-------------- 3 files changed, 81 insertions(+), 61 deletions(-) diff --git a/htdocs/langs/en_US/paypal.lang b/htdocs/langs/en_US/paypal.lang index 4bad6039b1f..39b8f13b1a6 100644 --- a/htdocs/langs/en_US/paypal.lang +++ b/htdocs/langs/en_US/paypal.lang @@ -18,18 +18,23 @@ PAYPAL_CSS_URL=Optionnal Url of CSS style sheet on payment page ThisIsTransactionId=This is id of transaction: %s PaypalTransactionDesc=This options allows you to import Paypal payments in Dolibarr as orders, invoices, etc ... PaypalEnableThisTool=Enable this functionnality +Unverified=Unverified +Unconfirmed=Unconfirmed +GrossAmount=Gross amount +FeeAmount=Fee amount +NetAmount=Net amount +CustomerDetails=Customer details # Paypal transaction fields -PAYERID= -PAYERSTATUS= -ADDRESSSTATUS= -TRANSACTIONID= -TRANSACTIONTYPE= -PAYMENTTYPE= -AMT= -FEEAMT= -TAXAMT= -PAYMENTSTATUS= +PAYERID=Payer ID +PAYERSTATUS=Payer status +ADDRESSSTATUS=Address status +TRANSACTIONID=Transaction ID +TRANSACTIONTYPE=Transaction type +PAYMENTTYPE=Payment type +PAYMENTSTATUS=Payment status +SHIPAMOUNT=Ship amount + PENDINGREASON= REASONCODE= SHIPPINGMETHOD= diff --git a/htdocs/langs/fr_FR/paypal.lang b/htdocs/langs/fr_FR/paypal.lang index 509ed3f2780..0a3dea1ddee 100644 --- a/htdocs/langs/fr_FR/paypal.lang +++ b/htdocs/langs/fr_FR/paypal.lang @@ -18,18 +18,23 @@ PAYPAL_CSS_URL=Url optionnelle de la feuille de style CSS de la page de paiement ThisIsTransactionId=Voici l'identifiant de la transaction: %s PaypalTransactionDesc=Ces options permettent d'importer des paiements Paypal dans Dolibarr en tant que commandes, factures, etc... PaypalEnableThisTool=Activer ces fonctionnalités +Unverified=Non vérifié +Unconfirmed=Non confirmée +GrossAmount=Montant brut +FeeAmount=Frais Paypal +NetAmount=Montant net +CustomerDetails=Détail du client # Paypal transaction fields -PAYERID= -PAYERSTATUS= -ADDRESSSTATUS= -TRANSACTIONID= -TRANSACTIONTYPE= -PAYMENTTYPE= -AMT= -FEEAMT= -TAXAMT= -PAYMENTSTATUS= +PAYERID=ID du payeur +PAYERSTATUS=Statut du payeur +ADDRESSSTATUS=Statut de l'adresse +TRANSACTIONID=ID de transaction +TRANSACTIONTYPE=Type de transaction +PAYMENTTYPE=Type de paiement +PAYMENTSTATUS=Statut du paiement +SHIPAMOUNT=Frais de port + PENDINGREASON= REASONCODE= SHIPPINGMETHOD= diff --git a/htdocs/paypal/ajaxtransaction.php b/htdocs/paypal/ajaxtransaction.php index 51e2e07833a..1899a5929e0 100644 --- a/htdocs/paypal/ajaxtransaction.php +++ b/htdocs/paypal/ajaxtransaction.php @@ -63,7 +63,7 @@ if (isset($_GET['action']) && ! empty($_GET['action']) && isset($_GET['transacti if ($_GET['action'] == 'add') { $soc = new Societe($db); - + // Create customer if not exists $ret = $soc->fetchObjectFromRefExt($soc->table_element,$_SESSION[$_GET['transaction_id']]['PAYERID']); if ($ret < 0) @@ -77,7 +77,7 @@ if (isset($_GET['action']) && ! empty($_GET['action']) && isset($_GET['transacti } require_once(DOL_DOCUMENT_ROOT ."/includes/modules/societe/".$module.".php"); $modCodeClient = new $module; - + // Create customer and return rowid $soc->ref_ext = $_SESSION[$_GET['transaction_id']]['PAYERID']; $soc->name = empty($conf->global->MAIN_FIRSTNAME_NAME_POSITION)?trim($_SESSION[$_GET['transaction_id']]['FIRSTNAME'].' '.$_SESSION[$_GET['transaction_id']]['LASTNAME']):trim($_SESSION[$_GET['transaction_id']]['LASTNAME'].' '.$_SESSION[$_GET['transaction_id']]['FIRSTNAME']); @@ -92,7 +92,7 @@ if (isset($_GET['action']) && ! empty($_GET['action']) && isset($_GET['transacti $soc->tva_assuj = 1; $soc->client = 1; $soc->particulier = 1; - + $db->begin(); $result = $soc->create($user); if ($result >= 0) @@ -100,7 +100,7 @@ if (isset($_GET['action']) && ! empty($_GET['action']) && isset($_GET['transacti if ($soc->particulier) { $contact=new Contact($db); - + $contact->civilite_id = $soc->civilite_id; $contact->name=$soc->nom_particulier; $contact->firstname=$soc->prenom; @@ -114,11 +114,11 @@ if (isset($_GET['action']) && ! empty($_GET['action']) && isset($_GET['transacti $contact->status=1; $contact->email=$soc->email; $contact->priv=0; - + $result=$contact->create($user); } } - + if ($result >= 0) { $db->commit(); @@ -131,12 +131,12 @@ if (isset($_GET['action']) && ! empty($_GET['action']) && isset($_GET['transacti echo $langs->trans($soc->error); } } - + // Add element (order, bill, etc.) if ($soc->id > 0 && isset($_GET['element']) && ! empty($_GET['element'])) { $error=0; - + // Parse element/subelement (ex: project_task) $element = $subelement = $_GET['element']; if (preg_match('/^([^_]+)_([^_]+)/i',$_GET['element'],$regs)) @@ -151,31 +151,30 @@ if (isset($_GET['action']) && ! empty($_GET['action']) && isset($_GET['transacti $classname = ucfirst($subelement); $object = new $classname($db); - + $object->socid=$soc->id; $object->fetch_thirdparty(); - + $db->begin(); - + $object->date = dol_now(); $object->ref_ext = $_SESSION[$_GET['transaction_id']]['SHIPTOCITY']; - + $object_id = $object->create($user); if ($object_id > 0) { $i=0; - + // Add element lines while (isset($_SESSION[$_GET['transaction_id']]["L_NAME".$i])) { $product = new Product($db); - $ret = $product->fetch('',$_SESSION[$_GET['transaction_id']]["L_NUMBER".$i]); if ($ret > 0) { $product_type=($product->product_type?$product->product_type:0); - + $result = $object->addline( $object_id, $product->description, @@ -194,17 +193,17 @@ if (isset($_GET['action']) && ! empty($_GET['action']) && isset($_GET['transacti '', $product_type ); - + if ($result < 0) { $error++; break; } } - + $i++; } - + // Insert default contacts /* if ($contact->id > 0) @@ -218,7 +217,7 @@ if (isset($_GET['action']) && ! empty($_GET['action']) && isset($_GET['transacti { $error++; } - + if ($object_id > 0 && ! $error) { $db->commit(); @@ -231,71 +230,82 @@ if (isset($_GET['action']) && ! empty($_GET['action']) && isset($_GET['transacti // Return element id echo $object->getNomUrl(0,0,1); - - /* +/* foreach ($_SESSION[$_GET['transaction_id']] as $key => $value) { echo $key.': '.$value.'
'; } - */ - +*/ } else if ($_GET['action'] == 'showdetails') { + $langs->load('paypal'); + // For paypal request optimization if (! isset($_SESSION[$_GET['transaction_id']]) ) $_SESSION[$_GET['transaction_id']] = GetTransactionDetails($_GET['transaction_id']); - + $var=true; - + echo ''; echo ''; echo ''; echo ''; - + $var=!$var; - echo ''; + echo ''; $var=!$var; - echo ''; + echo ''; $var=!$var; - echo ''; + echo ''; $var=!$var; - echo ''; + echo ''; $var=!$var; - echo ''; + echo ''; $var=!$var; - echo ''; + echo ''; $var=!$var; - echo ''; - + echo ''; + + $var=!$var; + echo ''; + $var=!$var; + echo ''; + + $shipamount=($_SESSION[$_GET['transaction_id']]['SHIPPINGAMT']?$_SESSION[$_GET['transaction_id']]['SHIPPINGAMT']:$_SESSION[$_GET['transaction_id']]['SHIPAMOUNT']); + $var=!$var; + echo ''; + echo '
'.$langs->trans('ThirdParty').'
'.$langs->trans('LastName').': '.$_SESSION[$_GET['transaction_id']]['LASTNAME'].'
'.$langs->trans('LastName').''.$_SESSION[$_GET['transaction_id']]['LASTNAME'].'
'.$langs->trans('FirstName').': '.$_SESSION[$_GET['transaction_id']]['FIRSTNAME'].'
'.$langs->trans('FirstName').''.$_SESSION[$_GET['transaction_id']]['FIRSTNAME'].'
'.$langs->trans('Address').': '.$_SESSION[$_GET['transaction_id']]['SHIPTOSTREET'].'
'.$langs->trans('Address').''.$_SESSION[$_GET['transaction_id']]['SHIPTOSTREET'].'
'.$langs->trans('Zip').' / '.$langs->trans('Town').': '.$_SESSION[$_GET['transaction_id']]['SHIPTOZIP'].' '.$_SESSION[$_GET['transaction_id']]['SHIPTOCITY'].'
'.$langs->trans('Zip').' / '.$langs->trans('Town').''.$_SESSION[$_GET['transaction_id']]['SHIPTOZIP'].' '.$_SESSION[$_GET['transaction_id']]['SHIPTOCITY'].'
'.$langs->trans('Country').': '.$_SESSION[$_GET['transaction_id']]['SHIPTOCOUNTRYNAME'].'
'.$langs->trans('Country').''.$_SESSION[$_GET['transaction_id']]['SHIPTOCOUNTRYNAME'].'
'.$langs->trans('Email').': '.$_SESSION[$_GET['transaction_id']]['EMAIL'].'
'.$langs->trans('Email').''.$_SESSION[$_GET['transaction_id']]['EMAIL'].'
'.$langs->trans('Date').': '.dol_print_date(dol_stringtotime($_SESSION[$_GET['transaction_id']]['ORDERTIME']),'dayhour').'
'.$langs->trans('Date').''.dol_print_date(dol_stringtotime($_SESSION[$_GET['transaction_id']]['ORDERTIME']),'dayhour').'
'.$langs->trans('PAYERSTATUS').''.$langs->trans(ucfirst($_SESSION[$_GET['transaction_id']]['PAYERSTATUS'])).'
'.$langs->trans('ADDRESSSTATUS').''.$langs->trans(ucfirst($_SESSION[$_GET['transaction_id']]['ADDRESSSTATUS'])).'
'.$langs->trans('SHIPAMOUNT').''.price($shipamount).' '.$_SESSION[$_GET['transaction_id']]['CURRENCYCODE'].'
'; - + $i=0; - + echo ''; - + echo ''; echo ''; echo ''; echo ''; echo ''; - + while (isset($_SESSION[$_GET['transaction_id']]["L_NAME".$i])) { $var=!$var; - + echo ''; echo ''; echo ''; echo ''; echo ''; - + $i++; } - + echo '
'.$langs->trans('Ref').''.$langs->trans('Label').''.$langs->trans('Qty').'
'.$_SESSION[$_GET['transaction_id']]["L_NUMBER".$i].''.$_SESSION[$_GET['transaction_id']]["L_NAME".$i].''.$_SESSION[$_GET['transaction_id']]["L_QTY".$i].'
'; + /* echo '
'; + foreach ($_SESSION[$_GET['transaction_id']] as $key => $value) { echo $key.': '.$value.'
';