FEATURE: Allow API requests to specify the DISCOURSE_VISIBLE header

This allows API consumers to automatically update the user's last_seen time. The default behaviour is unchanged.
This commit is contained in:
David Taylor
2019-04-15 17:34:34 +01:00
parent a37181ab30
commit af86cf46dc
2 changed files with 25 additions and 13 deletions

View File

@ -249,10 +249,10 @@ class Auth::DefaultCurrentUserProvider
def should_update_last_seen?
return false if Discourse.pg_readonly_mode?
if @request.xhr?
api = !!(@env[API_KEY_ENV]) || !!(@env[USER_API_KEY_ENV])
if @request.xhr? || api
@env["HTTP_DISCOURSE_VISIBLE".freeze] == "true".freeze
elsif !!(@env[API_KEY_ENV]) || !!(@env[USER_API_KEY_ENV])
false
else
true
end