X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;f=modules%2Fpayment%2Fmoney.inc.php;h=65cdf6a9ff3dc95f814b133475b811c229176c38;hb=2af95f6f349a10ea8814b5d4a95bb571d649357a;hp=ad19d20692849ed500a454603a94b3d7d09c4bdd;hpb=5ddeb07cc787dd1dc3630a31f1528f5cc7c4d9b9;p=platal.git diff --git a/modules/payment/money.inc.php b/modules/payment/money.inc.php index ad19d20..65cdf6a 100644 --- a/modules/payment/money.inc.php +++ b/modules/payment/money.inc.php @@ -1,6 +1,6 @@ money->mpay_def_id : $ref; $res = XDB::query("SELECT id, text, url, flags, mail, montant_min, montant_max, montant_def, asso_id - FROM {$globals->money->mpay_tprefix}paiements WHERE id={?}", $r); + FROM {$globals->money->mpay_tprefix}paiements WHERE id={?}", $r); list($this->id, $this->text, $this->url, $flags, $this->mail, - $this->montant_min, $this->montant_max, $this->montant_def, $this->asso_id) = $res->fetchOneRow(); - + $this->montant_min, $this->montant_max, $this->montant_def, $this->asso_id) = $res->fetchOneRow(); + $this->montant_min = (float)$this->montant_min; $this->montant_max = (float)$this->montant_max; $this->flags = new Flagset($flags); @@ -54,14 +54,14 @@ class Payment // }}} // {{{ function check() - + function check($value) { $v = (float)strtr($value, ',', '.'); if ($this->montant_min > $v) { - return "Montant inférieur au minimum autorisé ({$this->montant_min})."; + return "Montant inférieur au minimum autorisé ({$this->montant_min})."; } elseif ($v > $this->montant_max) { - return "Montant supérieur au maximum autorisé ({$this->montant_max})."; + return "Montant supérieur au maximum autorisé ({$this->montant_max})."; } else { return true; } @@ -87,8 +87,14 @@ class Payment function event() { if ($this->asso_id) { - $res = XDB::query("SELECT eid, a.diminutif FROM groupex.evenements AS e, groupex.asso AS a WHERE e.asso_id = {?} AND a.id = {?}", $this->asso_id, $this->asso_id); - return $res->fetchOneAssoc(); + $res = XDB::query("SELECT e.eid, a.diminutif + FROM groupex.evenements AS e + INNER JOIN groupex.asso AS a ON (e.asso_id = a.id) + LEFT JOIN groupex.evenements_participants AS p ON (p.eid = e.eid AND p.uid = {?}) + WHERE e.paiement_id = {?} AND p.uid IS NULL", S::i('uid'), $this->id); + if ($res->numRows()) { + return $res->fetchOneAssoc(); + } } return null; } @@ -114,12 +120,12 @@ class PayMethod $i = $id==-1 ? $globals->money->mpay_def_meth : $id; $res = XDB::query("SELECT id,text,include FROM {$globals->money->mpay_tprefix}methodes WHERE id={?}", $i); list($this->id, $this->text, $this->inc) = $res->fetchOneRow(); - } + } // }}} } // }}} -// vim:set et sw=4 sts=4 sws=4 foldmethod=marker: +// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8: ?>