From 877b446373a042dfb48ab789ee2bfc730a2606bb Mon Sep 17 00:00:00 2001 From: ptibogxiv Date: Mon, 5 Mar 2018 20:01:55 +0100 Subject: [PATCH] NEW add stripe transaction --- htdocs/stripe/transaction.php | 157 ++++++++++++++++++++++++++++++++++ 1 file changed, 157 insertions(+) create mode 100644 htdocs/stripe/transaction.php diff --git a/htdocs/stripe/transaction.php b/htdocs/stripe/transaction.php new file mode 100644 index 00000000000..74258fc4937 --- /dev/null +++ b/htdocs/stripe/transaction.php @@ -0,0 +1,157 @@ + + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +// Put here all includes required by your class file + +require '../main.inc.php'; +require_once DOL_DOCUMENT_ROOT.'/stripe/class/stripe.class.php'; +//require_once DOL_DOCUMENT_ROOT.'/core/lib/stripe.lib.php'; +require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php'; +require_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php'; +require_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; +if (! empty($conf->accounting->enabled)) require_once DOL_DOCUMENT_ROOT . '/accountancy/class/accountingjournal.class.php'; + +$langs->load("compta"); +$langs->load("salaries"); +$langs->load("bills"); +$langs->load("hrm"); +$langs->load("stripe"); + +// Security check +$socid = GETPOST("socid","int"); +if ($user->societe_id) $socid=$user->societe_id; +//$result = restrictedArea($user, 'salaries', '', '', ''); + +if (empty($conf->global->STRIPECONNECT_LIVE)) +{ +$mode=$conf->global->STRIPECONNECT_LIVE; +} +else +{ +$mode=$conf->global->STRIPE_LIVE; +} + +$limit = GETPOST('limit')?GETPOST('limit','int'):$conf->liste_limit; +$rowid = GETPOST("rowid",'alpha'); +$sortfield = GETPOST("sortfield",'alpha'); +$sortorder = GETPOST("sortorder",'alpha'); +$page = GETPOST("page",'int'); +if (empty($page) || $page == -1) { $page = 0; } // If $page is not defined, or '' or -1 +$offset = $conf->liste_limit * $page; +$pageprev = $page - 1; +$pagenext = $page + 1; + +/* +* View +*/ +llxHeader('', $langs->trans("StripeTransactionList")); +$form = new Form($db); +$societestatic = new societe($db); +$acc = new Account($db); +$stripeconnect=new StripeConnexion($db); +if (! empty($conf->stripe->enabled) && (empty($conf->global->STRIPE_LIVE) || empty($conf->global->STRIPECONNECT_LIVE) || GETPOST('forcesandbox','alpha'))) +{ + dol_htmloutput_mesg($langs->trans('YouAreCurrentlyInSandboxMode','Stripe'),'','warning'); +} +if (!$rowid){ + + print '
'; + if ($optioncss != '') print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + + print_barre_liste($langs->trans("StripeTransactionList"),$page,$_SERVER["PHP_SELF"],$param,$sortfield,$sortorder,'',$num, $totalnboflines, 'title_accountancy.png', 0, '', '', $limit); + + print '
'; + print ''."\n"; + + print ''; + print_liste_field_titre("Ref",$_SERVER["PHP_SELF"],"","","","",$sortfield,$sortorder); + print_liste_field_titre("Customer",$_SERVER["PHP_SELF"],"","","","",$sortfield,$sortorder); + print_liste_field_titre("Origin",$_SERVER["PHP_SELF"],"","","","",$sortfield,$sortorder); + print_liste_field_titre("DatePayment",$_SERVER["PHP_SELF"],"","","",'align="center"',$sortfield,$sortorder); + print_liste_field_titre("Status",$_SERVER["PHP_SELF"],"","","",'align="left"'); + print_liste_field_titre("Type",$_SERVER["PHP_SELF"],"","","",'align="left"',$sortfield,$sortorder); + print_liste_field_titre("Paid",$_SERVER["PHP_SELF"],"","","",'align="right"',$sortfield,$sortorder); + print_liste_field_titre("Fee",$_SERVER["PHP_SELF"],"","","",'align="right"',$sortfield,$sortorder); + print "\n"; + + print "\n"; + +$txn=\Stripe\BalanceTransaction::all(array("limit" => $limit), array("stripe_account" => $stripeconnect->GetStripeAccount($conf->entity))); +foreach ($txn->data as $txn) { + print ''; + $societestatic->fetch($charge->metadata->idcustomer); + $societestatic->id=$charge->metadata->idcustomer; + $societestatic->lastname=$obj->lastname; + $societestatic->firstname=$obj->firstname; + $societestatic->admin=$obj->admin; + $societestatic->login=$obj->login; + $societestatic->email=$obj->email; + $societestatic->societe_id=$obj->fk_soc; + + // Ref + print "\n"; + // Employee + print "\n"; + // Origine + print "\n"; + // Date payment + print '\n"; + // Label payment + print "\n"; + // Type + print ''; + // Amount + print ""; + print ""; + print "\n"; + } + print "
".$txn->source."".$societestatic->getNomUrl(1).""; +if ($charge->metadata->source=="order"){ +$object = new Commande($db); +$object->fetch($charge->metadata->idsource); + print "".img_picto('', 'object_order')." ".$object->ref.""; +} elseif ($txn->metadata->source=="invoice"){ +$object = new Facture($db); +$object->fetch($txn->metadata->idsource); + print "".img_picto('', 'object_invoice')." ".$object->ref.""; +} + print "'.dol_print_date($txn->created,'%d/%m/%Y %H:%M').""; +if ($charge->refunded=='1'){ + print $langs->trans("refunded"); +} elseif ($charge->paid=='1'){ + print $langs->trans("".$charge->status.""); +} else { +$label="Message: ".$charge->failure_message."
"; +$label.="Réseau: ".$charge->outcome->network_status."
"; +$label.="Statut: ".$langs->trans("".$charge->outcome->seller_message.""); + print $form->textwithpicto($langs->trans("".$charge->status.""),$label,1); +} + print "
'.$txn->type.'".price(($txn->amount)/100)."".price(($txn->fee)/100)."
"; + print '
'; + print '
'; +}else{ + +} + +llxFooter(); +$db->close();