+ common_log(LOG_INFO,
+ sprintf(
+ "Creating new access token for application %s, profile %s.",
+ $app->id,
+ $tokenAssoc->profile_id
+ )
+ );
+
+ // make a brand new access token
+ $at = new Token();
+
+ $at->consumer_key = $consumer->key;
+ $at->tok = common_good_rand(16);
+ $at->secret = common_good_rand(16);
+ $at->type = 1; // access
+ $at->verifier = $verifier;
+ $at->verified_callback = $rt->verified_callback; // 1.0a
+ $at->created = common_sql_now();
+
+ if (!$at->insert()) {
+ $e = $at->_lastError;
+ common_debug('access token "' . $at->tok . '" not inserted: "' . $e->message . '"', __FILE__);
+ return null;
+ } else {
+ common_debug('access token "' . $at->tok . '" inserted', __FILE__);
+ // burn the old one
+ $orig_rt = clone($rt);
+ $rt->state = 2; // used
+ if (!$rt->update($orig_rt)) {
+ return null;
+ }
+ common_debug('request token "' . $rt->tok . '" updated', __FILE__);
+ }