money->mpay_def_id : $ref; $res = XDB::query('SELECT id, text, url, flags, mail, amount_min, amount_max, amount_def, asso_id FROM payments WHERE id = {?}', $r); list($this->id, $this->text, $this->url, $flags, $this->mail, $this->amount_min, $this->amount_max, $this->amount_def, $this->asso_id) = $res->fetchOneRow(); $this->amount_min = (float)$this->amount_min; $this->amount_max = (float)$this->amount_max; $this->flags = new PlFlagSet($flags); } function check($value) { $v = (float)strtr($value, ',', '.'); if ($this->amount_min > $v) { return "Montant inférieur au minimum autorisé ({$this->amount_min})."; } elseif ($v > $this->amount_max) { return "Montant supérieur au maximum autorisé ({$this->amount_max})."; } else { return true; } } function init($val, $meth) { require_once dirname(__FILE__) . '/money/' . $meth->inc; $this->api = new $api($val); } function prepareform(User $user) { return $this->api->prepareform($this, $user); } function event() { if ($this->asso_id) { $res = XDB::query("SELECT e.eid, a.diminutif FROM group_events AS e INNER JOIN groups AS a ON (e.asso_id = a.id) LEFT JOIN group_event_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; } } class PayMethod { public $id; public $text; public $inc; function PayMethod($id = -1) { global $globals; $i = ($id == -1) ? $globals->money->mpay_def_meth : $id; $res = XDB::query('SELECT id, text, include FROM payment_methods WHERE id = {?}', $i); list($this->id, $this->text, $this->inc) = $res->fetchOneRow(); } } // vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8: ?>