diff --git a/htdocs/paypal/ajaxtransaction.php b/htdocs/paypal/ajaxtransaction.php index 1be4862f5f4..fdefc234b09 100644 --- a/htdocs/paypal/ajaxtransaction.php +++ b/htdocs/paypal/ajaxtransaction.php @@ -56,15 +56,32 @@ top_httphead(); dol_syslog(join(',',$_GET)); -if (isset($_GET['action']) && ! empty($_GET['action']) && ( (isset($_GET['nvpStr']) && ! empty($_GET['nvpStr'])) || (isset($_GET['transaction_id']) && ! empty($_GET['transaction_id'])) ) ) +if (isset($_GET['action']) && ! empty($_GET['action']) && ( (isset($_GET['element']) && ! empty($_GET['element'])) || (isset($_GET['transaction_id']) && ! empty($_GET['transaction_id'])) ) ) { - if ($_GET['action'] == 'showdetails') + if ($_GET['action'] == 'create') { - $object = GetTransactionDetails($_GET['transaction_id']); - $soc = new Societe($db); - $ret = $soc->fetchObjectFromImportKey($soc->table_element,$object['PAYERID']); - //echo $ret; + $socid = $soc->fetchObjectFromImportKey($soc->table_element,$object['PAYERID']); + if ($socid < 0) + { + // Create customer and return rowid + } + + // Create element (order or bill) + + foreach ($_SESSION[$_GET['transaction_id']] as $key => $value) + { + echo $key.': '.$value.'
'; + } + + } + else if ($_GET['action'] == 'showdetails') + { + // For optimization + if (! isset($_SESSION[$_GET['transaction_id']])) + { + $_SESSION[$_GET['transaction_id']] = GetTransactionDetails($_GET['transaction_id']); + } $var=true; @@ -74,19 +91,19 @@ if (isset($_GET['action']) && ! empty($_GET['action']) && ( (isset($_GET['nvpStr echo ''; $var=!$var; - echo ''.$langs->trans('LastName').': '.$object['LASTNAME'].''; + echo ''.$langs->trans('LastName').': '.$_SESSION[$_GET['transaction_id']]['LASTNAME'].''; $var=!$var; - echo ''.$langs->trans('FirstName').': '.$object['FIRSTNAME'].''; + echo ''.$langs->trans('FirstName').': '.$_SESSION[$_GET['transaction_id']]['FIRSTNAME'].''; $var=!$var; - echo ''.$langs->trans('Address').': '.$object['SHIPTOSTREET'].''; + echo ''.$langs->trans('Address').': '.$_SESSION[$_GET['transaction_id']]['SHIPTOSTREET'].''; $var=!$var; - echo ''.$langs->trans('Zip').' / '.$langs->trans('Town').': '.$object['SHIPTOZIP'].' '.$object['SHIPTOCITY'].''; + echo ''.$langs->trans('Zip').' / '.$langs->trans('Town').': '.$_SESSION[$_GET['transaction_id']]['SHIPTOZIP'].' '.$_SESSION[$_GET['transaction_id']]['SHIPTOCITY'].''; $var=!$var; - echo ''.$langs->trans('Country').': '.$object['SHIPTOCOUNTRYNAME'].''; + echo ''.$langs->trans('Country').': '.$_SESSION[$_GET['transaction_id']]['SHIPTOCOUNTRYNAME'].''; $var=!$var; - echo ''.$langs->trans('Email').': '.$object['EMAIL'].''; + echo ''.$langs->trans('Email').': '.$_SESSION[$_GET['transaction_id']]['EMAIL'].''; $var=!$var; - echo ''.$langs->trans('Date').': '.dol_print_date(dol_stringtotime($object['ORDERTIME']),'dayhour').''; + echo ''.$langs->trans('Date').': '.dol_print_date(dol_stringtotime($_SESSION[$_GET['transaction_id']]['ORDERTIME']),'dayhour').''; echo ''; @@ -100,14 +117,14 @@ if (isset($_GET['action']) && ! empty($_GET['action']) && ( (isset($_GET['nvpStr echo ''.$langs->trans('Qty').''; echo ''; - while (isset($object["L_NAME".$i])) + while (isset($_SESSION[$_GET['transaction_id']]["L_NAME".$i])) { $var=!$var; echo ''; - echo ''.$object["L_NUMBER".$i].''; - echo ''.$object["L_NAME".$i].''; - echo ''.$object["L_QTY".$i].''; + echo ''.$_SESSION[$_GET['transaction_id']]["L_NUMBER".$i].''; + echo ''.$_SESSION[$_GET['transaction_id']]["L_NAME".$i].''; + echo ''.$_SESSION[$_GET['transaction_id']]["L_QTY".$i].''; echo ''; $i++; @@ -117,7 +134,7 @@ if (isset($_GET['action']) && ! empty($_GET['action']) && ( (isset($_GET['nvpStr /* echo '
'; - foreach ($object as $key => $value) + foreach ($_SESSION[$_GET['transaction_id']] as $key => $value) { echo $key.': '.$value.'
'; } diff --git a/htdocs/paypal/transaction.php b/htdocs/paypal/transaction.php index 0fae39fa04b..e9dcd695955 100644 --- a/htdocs/paypal/transaction.php +++ b/htdocs/paypal/transaction.php @@ -125,7 +125,17 @@ llxHeader(); modal: true, width: 500, buttons: { - Ok: function() { + 'transnoentities('Create'); ?>': function() { + $.get( "/paypal/ajaxtransaction.php", { + action: 'create', + element: 'order', + transaction_id: id_value + }, + function() { + $( "div #paypal-details" ).dialog( "close" ); + }); + }, + 'transnoentities('Cancel'); ?>': function() { $( this ).dialog( "close" ); } }