X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;f=modules%2Fpayment.php;h=737d9c2e36dc0185767b6f03eb8af8f5ef18b3c6;hb=b97ecb9d9d15e48fb8320c780acf271e06f7777d;hp=3685e784ba7f8a39ded111826e14d180e444d73a;hpb=a690a74c8389295c62278665e1acf27107673c28;p=platal.git diff --git a/modules/payment.php b/modules/payment.php index 3685e78..737d9c2 100644 --- a/modules/payment.php +++ b/modules/payment.php @@ -22,12 +22,14 @@ /* sort en affichant une erreur */ function cb_erreur($text) { global $globals; + echo "Error.\n"; $mymail = new PlMailer(); $mymail->addTo($globals->money->email); $mymail->setFrom("webmaster@" . $globals->mail->domain); $mymail->setSubject("erreur lors d'un télépaiement (CyberPaiement)"); $mymail->setTxtBody("\n\n".var_export($_REQUEST,true)); $mymail->send(); + echo "Notification sent.\n"; exit; } @@ -54,7 +56,7 @@ function luhn($nombre) { $s = strrev($nombre); $sum = 0; for ($i = 0; $i < strlen($s); $i++) { - $dgt = $s{$i}; + $dgt = $s{$i}; $sum += ($i % 2) ? (2*$dgt) % 9 : $dgt; } return $sum % 10; @@ -159,8 +161,6 @@ class PaymentModule extends PLModule $page->assign('meth', $meth); $page->assign('pay', $pay); $page->assign('evtlink', $pay->event()); - - $page->assign('prefix', $globals->money->mpay_tprefix); } function handler_cyber_return(&$page, $uid = null) @@ -226,7 +226,7 @@ class PaymentModule extends PLModule if ($eid = $res->fetchOneCell()) { require_once dirname(__FILE__) . '/xnetevents/xnetevents.inc.php'; $evt = get_event_detail($eid); - subscribe_lists_event(0, $uid, $evt, $montant, true); + subscribe_lists_event($uid, $evt, 1, $montant, true); } /* on genere le mail de confirmation */ @@ -268,8 +268,8 @@ class PaymentModule extends PLModule /* on vérifie la signature */ $vads_params = array(); foreach($_REQUEST as $key => $value) - if(substr($key,0,5) == "vads_") - $vads_params[$key] = $value; + if(substr($key,0,5) == "vads_") + $vads_params[$key] = $value; ksort($vads_params); $signature = sha1(join('+',$vads_params).'+'.$globals->money->cyperplus_key); //if($signature != Env::v('signature')) { @@ -287,7 +287,7 @@ class PaymentModule extends PLModule cb_erreur("référence de commande invalide"); } - echo ($ref = $matches[1]); + $ref = $matches[1]; $res = XDB::query("SELECT mail, text, confirmation FROM payments WHERE id={?}", $ref); @@ -305,12 +305,13 @@ class PaymentModule extends PLModule if (Env::v('vads_result') != "00") { cb_erreur("erreur lors du paiement : ?? (".Env::v('vads_result').")"); } - + /* on fait l'insertion en base de donnees */ XDB::execute("INSERT INTO payment_transactions (id, uid, ref, fullref, amount, pkey, comment) VALUES ({?}, {?}, {?}, {?}, {?}, {?}, {?})", Env::v('vads_trans_date'), $user->id(), $ref, Env::v('vads_order_id'), $montant, "", Env::v('vads_order_info')); - + echo "Paiement stored.\n"; + // We check if it is an Xnet payment and then update the related ML. $res = XDB::query('SELECT eid FROM group_events @@ -318,7 +319,7 @@ class PaymentModule extends PLModule if ($eid = $res->fetchOneCell()) { require_once dirname(__FILE__) . '/xnetevents/xnetevents.inc.php'; $evt = get_event_detail($eid); - subscribe_lists_event(0, $uid, $evt, $montant, true); + subscribe_lists_event($user->id(), $evt, 1, $montant, true); } /* on genere le mail de confirmation */ @@ -344,12 +345,13 @@ class PaymentModule extends PLModule $msg = 'utilisateur : ' . $user->login() . ' (' . $user->id() . ')' . "\n" . 'mail : ' . $user->forlifeEmail() . "\n\n" . "paiement : $conf_title ($conf_mail)\n". - "reference : $champ200\n". + "reference : " . Env::v('vads_order_id') . "\n". "montant : $montant\n\n". "dump de REQUEST:\n". var_export($_REQUEST,true); $mymail->setTxtBody($msg); $mymail->send(); + echo "Notifications sent.\n"; exit; } @@ -412,7 +414,7 @@ class PaymentModule extends PLModule if ($eid = $res->fetchOneCell()) { require_once dirname(__FILE__) . '/xnetevents/xnetevents.inc.php'; $evt = get_event_detail($eid); - subscribe_lists_event(0, $uid, $evt, $montant, true); + subscribe_lists_event($user->id(), $evt, 1, $montant, true); } /* on genere le mail de confirmation */ @@ -487,17 +489,17 @@ class PaymentModule extends PLModule foreach($tit as $foo) { $pid = $foo['id']; if (may_update()) { - $res = XDB::query('SELECT t.uid, timestamp AS `date`, t.comment, montant + $res = XDB::query('SELECT t.uid, timestamp AS `date`, t.comment, amount FROM payment_transactions AS t WHERE t.ref = {?}', $pid); $trans[$pid] = User::getBulkUsersWithUIDs($res->fetchAllAssoc(), 'uid', 'user'); $sum = 0; foreach ($trans[$pid] as $i => $t) { - $sum += strtr(substr($t['montant'], 0, strpos($t['montant'], 'EUR')), ',', '.'); - $trans[$pid][$i]['montant'] = str_replace('EUR', '€', $t['montant']); + $sum += strtr(substr($t['amount'], 0, strpos($t['amount'], 'EUR')), ',', '.'); + $trans[$pid][$i]['amount'] = str_replace('EUR', '€', $t['amount']); } $trans[$pid][] = array('nom' => 'somme totale', - 'montant' => strtr($sum, '.', ',').' €'); + 'amount' => strtr($sum, '.', ',').' €'); } $res = XDB::iterRow("SELECT e.eid, e.short_name, e.intitule, ep.nb, ei.montant, ep.paid FROM group_events AS e @@ -518,7 +520,7 @@ class PaymentModule extends PLModule $event[$pid]['paid'] = $paid; } } - $res = XDB::query("SELECT montant + $res = XDB::query("SELECT amount FROM payment_transactions AS t WHERE ref = {?} AND uid = {?}", $pid, S::v('uid')); $montants = $res->fetchColumn();