0"; foreach ($data as $key=>$val) { if ($key=='is_virtual') { $q.= " AND ${key}='".((!$val || $val=='')?'f':'t')."'"; } else { $q.= " AND ${key}='".pg_escape_string($val)."'"; } } error_log($q); $r = pg_query($db, $q); if ($r && pg_num_rows($r) && $f=pg_fetch_assoc($r)) { return $f; } return NULL; } public function saveTokens($db, $id, $refresh_token, $access_token) { $db_refresh_token = pg_escape_string(substr($refresh_token,0,36)); $db_access_token = pg_escape_string(substr($access_token,0,36)); $q = "UPDATE members_devices SET refresh_token='${db_refresh_token}', access_token='${db_access_token}', updated=now(), status=1 WHERE id=".((int)$id)." RETURNING *"; error_log($q); $r = pg_query($db, $q); if ($r && pg_num_rows($r) && $f=pg_fetch_assoc($r)) { return $f; } return NULL; } public function getMemberById($db, $member_id) { $q = "SELECT * FROM members WHERE id=".((int)$member_id); $r = pg_query($db, $q); if ($r && pg_num_rows($r) && $f=pg_fetch_assoc($r)) { return $f; } return NULL; } public function verifyAccessToken($db, $member_id, $acces_token) { $db_acces_token = pg_escape_string(substr($acces_token,0,36)); $q = "SELECT * FROM members_devices WHERE member_id=".((int)$member_id)." AND access_token='${db_access_token}' ORDER BY id DESC"; $r = pg_query($db, $q); if ($r && pg_num_rows($r) && $f=pg_fetch_assoc($r)) { return $f; } return NULL; } public function verifyRefreshToken($db, $member_id, $refresh_token) { $db_acces_token = pg_escape_string(substr($refresh_token,0,36)); $q = "SELECT * FROM members_devices WHERE member_id=".((int)$member_id)." AND refresh_token='${db_refresh_token}' ORDER BY id DESC"; $r = pg_query($db, $q); if ($r && pg_num_rows($r) && $f=pg_fetch_assoc($r)) { return $f; } return NULL; } } // vi:ts=2