if (is_null($uid) && $hash) {
return false;
}
- $res = XDB::query("SELECT *
+ $res = XDB::query("SELECT uid
FROM axletter_ins
WHERE $field={?}", $user);
- if (!$res->numRows()) {
+ if ($res->numRows() != 1) {
return false;
}
XDB::execute("DELETE FROM axletter_ins
static public function subscribe($uid = null)
{
$user = is_null($uid) ? S::v('uid') : $uid;
- XDB::execute("REPLACE INTO axletter_ins (uid,last)
- VALUES ({?}, 0)", $user);
+ XDB::execute('INSERT IGNORE INTO axletter_ins (uid, last)
+ VALUES ({?}, 0)', $user);
}
static public function hasPerms()
if (!$this->_promo_min && !$this->_promo_max && !$this->_subset) {
return '1';
}
+ /* TODO: refines this filter on promotions by using userfilter. */
$where = array();
if ($this->_promo_min) {
- $where[] = "((ni.uid = 0 AND ni.promo >= {$this->_promo_min}) OR (ni.uid != 0 AND u.promo >= {$this->_promo_min}))";
+ $where[] = "((ni.uid = 0 AND ni.promo >= {$this->_promo_min}) OR (ni.uid != 0 AND pd.promo >= 'X{$this->_promo_min}'))";
}
if ($this->_promo_max) {
- $where[] = "((ni.uid = 0 AND ni.promo <= {$this->_promo_max}) OR (ni.uid != 0 AND u.promo <= {$this->_promo_max}))";
+ $where[] = "((ni.uid = 0 AND ni.promo <= {$this->_promo_max}) OR (ni.uid != 0 AND pd.promo <= 'X{$this->_promo_max}'))";
}
if ($this->_subset) {
require_once("emails.inc.php");