Merge branch 'xorg/maint' into xorg/master
[platal.git] / modules / payment / money / bplccyberplus.inc.php
index 225c337..e82fb8f 100644 (file)
@@ -55,7 +55,12 @@ class BPLCCyberPlus
     // }}}
     // {{{ function form()
 
-    function prepareform(&$pay)
+    private static function replaceNonAlpha($string)
+    {
+        return trim(preg_replace('/\s\s+/', ' ', preg_replace('/[^a-zA-Z0-9]/', ' ', $string)));
+    }
+
+    function prepareform($pay, $user)
     {
         global $globals, $platal;
         $log = S::v('log');
@@ -74,9 +79,9 @@ class BPLCCyberPlus
             'vads_return_mode' => 'NONE',
             'vads_url_return' => $pay->url ? $pay->url : $globals->baseurl . '/' . $platal->ns);
         $this->infos['client'] = Array(
-            'vads_cust_email' => S::user()->bestEmail(),
+            'vads_cust_email' => $user->bestEmail(),
             'vads_cust_id' => S::v('uid'),
-            'vads_cust_name' => replace_accent(S::user()->fullName()));
+            'vads_cust_name' => substr(self::replaceNonAlpha(replace_accent($user->shortName())), 0, 127));
         $this->infos['commande'] = Array(
             'vads_amount' => $this->val,
             'vads_currency' => '978', # Euro
@@ -84,7 +89,8 @@ class BPLCCyberPlus
             'vads_trans_date' => $trans_date,
             'vads_trans_id' => $trans_id,
             'vads_order_id' => $fullref,
-            'vads_order_info' => Env::v('comment'));
+            'vads_order_info' => substr(self::replaceNonAlpha(replace_accent(Env::v('comment'))), 0, 255),
+            'vads_order_info2' => Post::i('display'));
         $this->infos['divers'] = Array(
             'vads_version' => 'V2',
             'vads_ctx_mode' => $globals->money->cyperplus_prod,