+ /**
+ * Load multiple tokens
+ *
+ * @param string $username User name
+ * @param string $type Token type: temp, access, verify
+ *
+ * @return array Array of Token objects
+ */
+ public function loadForUser($username, $type)
+ {
+ $result = $this->db->executeQuery(
+ 'SELECT * FROM `*PREFIX*grauphel_oauth_tokens`'
+ . ' WHERE `token_user` = ? AND `token_type` = ?',
+ array($username, $type)
+ );
+
+ $tokens = array();
+ while ($tokenRow = $result->fetch()) {
+ $tokens[] = $this->fromDb($tokenRow);
+ }
+
+ return $tokens;
+ }
+
+ /**
+ * Update the "last use" field of a token
+ *
+ * @param string $tokenKey Random token string to load
+ *
+ * @return void
+ */
+ public function updateLastUse($tokenKey)
+ {
+ $this->db->executeQuery(
+ 'UPDATE `*PREFIX*grauphel_oauth_tokens`'
+ . ' SET `token_lastuse` = ? WHERE `token_key` = ?',
+ array(
+ date('Y-m-d H:i:s'),
+ $tokenKey,
+ )
+ );
+ }
+