22require
'../main.inc.php';
23require_once DOL_DOCUMENT_ROOT.
'/societe/class/societe.class.php';
24require_once DOL_DOCUMENT_ROOT.
'/adherents/class/adherent.class.php';
25require_once DOL_DOCUMENT_ROOT.
'/stripe/class/stripe.class.php';
27require_once DOL_DOCUMENT_ROOT.
'/compta/bank/class/account.class.php';
28require_once DOL_DOCUMENT_ROOT.
'/commande/class/commande.class.php';
29require_once DOL_DOCUMENT_ROOT.
'/compta/facture/class/facture.class.php';
30if (isModEnabled(
'accounting')) {
31 require_once DOL_DOCUMENT_ROOT.
'/accountancy/class/accountingjournal.class.php';
35$langs->loadLangs(array(
'compta',
'salaries',
'bills',
'hrm',
'stripe'));
40 $socid = $user->socid;
45$rowid =
GETPOST(
"rowid",
'alpha');
46$sortfield =
GETPOST(
'sortfield',
'aZ09comma');
47$sortorder =
GETPOST(
'sortorder',
'aZ09comma');
49if (empty($page) || $page == -1) {
52$offset = $limit * $page;
55$optioncss =
GETPOST(
'optioncss',
'alpha');
67$societestatic =
new Societe($db);
72llxHeader(
'', $langs->trans(
"StripeTransactionList"));
75 $service =
'StripeTest';
77 dol_htmloutput_mesg($langs->trans(
'YouAreCurrentlyInSandboxMode',
'Stripe'),
'',
'warning');
79 $service =
'StripeLive';
82$stripeacc = $stripe->getStripeAccount($service);
89 print
'<form method="POST" action="'.$_SERVER[
"PHP_SELF"].
'">';
90 if ($optioncss !=
'') {
91 print
'<input type="hidden" name="optioncss" value="'.$optioncss.
'">';
93 print
'<input type="hidden" name="token" value="'.newToken().
'">';
94 print
'<input type="hidden" name="formfilteraction" id="formfilteraction" value="list">';
95 print
'<input type="hidden" name="action" value="list">';
96 print
'<input type="hidden" name="sortfield" value="'.$sortfield.
'">';
97 print
'<input type="hidden" name="sortorder" value="'.$sortorder.
'">';
98 print
'<input type="hidden" name="page" value="'.$page.
'">';
100 $title = $langs->trans(
"StripeTransactionList");
101 $title .= (!empty($stripeacc) ?
' (Stripe connection with Stripe OAuth Connect account '.$stripeacc.
')' :
' (Stripe connection with keys from Stripe module setup)');
103 print_barre_liste($title, $page, $_SERVER[
"PHP_SELF"], $param, $sortfield, $sortorder,
'', $num, $totalnboflines,
'title_accountancy.png', 0,
'',
'', $limit);
105 print
'<div class="div-table-responsive">';
106 print
'<table class="tagtable liste'.(!empty($moreforfilter) ?
" listwithfilterbefore" :
"").
'">'.
"\n";
108 print
'<tr class="liste_titre">';
110 print_liste_field_titre(
"DatePayment", $_SERVER[
"PHP_SELF"],
"",
"",
"",
'', $sortfield, $sortorder,
'center ');
120 $txn = \Stripe\BalanceTransaction::all(array(
"limit" => $limit), array(
"stripe_account" => $stripeacc));
122 $txn = \Stripe\BalanceTransaction::all(array(
"limit" => $limit));
125 foreach ($txn->data as $txn) {
161 print
'<tr class="oddeven">';
164 if (!empty($stripeacc)) {
165 $connect = $stripeacc.
'/';
169 if (preg_match(
'/po_/i', $txn->source)) {
171 } elseif (preg_match(
'/fee_/i', $txn->source)) {
172 $origin =
"connect/application_fees";
174 $origin =
"payments";
177 $url =
'https://dashboard.stripe.com/'.$connect.
'test/'.$origin.
'/'.$txn->source;
178 if ($servicestatus) {
179 $url =
'https://dashboard.stripe.com/'.$connect.$origin.
'/'.$txn->source;
181 if ($txn->type ==
'stripe_fee' || $txn->type ==
'reserve_transaction') {
182 print
"<td>".$txn->type.
"</td>";
184 print
"<td><a href='".$url.
"' target='_stripe'>".
img_picto($langs->trans(
'ShowInStripe'),
'globe').
" ".$txn->source.
"</a></td>\n";
211 print
'<td class="center">'.dol_print_date($txn->created,
'dayhour').
"</td>\n";
213 print
'<td>'.$txn->type.
'</td>';
215 print
'<td class="right"><span class="amount">'.price(($txn->amount) / 100, 0,
'', 1, - 1, - 1, strtoupper($txn->currency)).
"</span></td>";
216 print
'<td class="right"><span class="amount">'.price(($txn->fee) / 100, 0,
'', 1, - 1, - 1, strtoupper($txn->currency)).
"</span></td>";
218 print
"<td class='right'>";
219 if ($txn->status ==
'available') {
220 print
img_picto($langs->trans($txn->status),
'statut4');
221 } elseif ($txn->status ==
'pending') {
222 print
img_picto($langs->trans($txn->status),
'statut7');
223 } elseif ($txn->status ==
'failed') {
224 print
img_picto($langs->trans($txn->status),
'statut8');
230 print
'<tr><td colspan="6">'.$e->getMessage().
'</td></td>';
if(!defined('NOREQUIRESOC')) if(!defined( 'NOREQUIRETRAN')) if(!defined('NOTOKENRENEWAL')) if(!defined( 'NOREQUIREMENU')) if(!defined('NOREQUIREHTML')) if(!defined( 'NOREQUIREAJAX')) llxHeader()
Empty header.
Class to manage bank accounts.
Class to manage members of a foundation.
Class to manage third parties objects (customers, suppliers, prospects...)
Stripe class @TODO No reason to extends CommonObject.
img_picto($titlealt, $picto, $moreatt='', $pictoisfullpath=0, $srconly=0, $notitle=0, $alt='', $morecss='', $marginleftonlyshort=2)
Show picto whatever it's its name (generic function)
GETPOSTINT($paramname, $method=0)
Return the value of a $_GET or $_POST supervariable, converted into integer.
print_liste_field_titre($name, $file="", $field="", $begin="", $moreparam="", $moreattrib="", $sortfield="", $sortorder="", $prefix="", $tooltip="", $forcenowrapcolumntitle=0)
Show title line of an array.
print_barre_liste($title, $page, $file, $options='', $sortfield='', $sortorder='', $morehtmlcenter='', $num=-1, $totalnboflines='', $picto='generic', $pictoisfullpath=0, $morehtmlright='', $morecss='', $limit=-1, $hideselectlimit=0, $hidenavigation=0, $pagenavastextinput=0, $morehtmlrightbeforearrow='')
Print a title with navigation controls for pagination.
GETPOST($paramname, $check='alphanohtml', $method=0, $filter=null, $options=null, $noreplace=0)
Return value of a param into GET or POST supervariable.
dol_htmloutput_mesg($mesgstring='', $mesgarray=array(), $style='ok', $keepembedded=0)
Print formatted messages to output (Used to show messages on html output).
getDolGlobalString($key, $default='')
Return dolibarr global constant string value.
restrictedArea(User $user, $features, $object=0, $tableandshare='', $feature2='', $dbt_keyfield='fk_soc', $dbt_select='rowid', $isdraft=0, $mode=0)
Check permissions of a user to show a page and an object.