function authenticateWithToken($token) { $options = User::_decodeToken($token); if (!empty($options) && !empty($options['hash']) && !empty($options['id'])) { $User = new User(); $User = $User->find($options['id']); if (!empty($options['expires']) && $options['expires'] < Ak::getTimestamp()) { return false; } if ($options['hash'] == $User->_getTokenHash($options)) { $User->updateAttribute('last_login_at', Ak::getDate()); return $User; } } return false; }