mirror of
				https://github.com/zulip/zulip.git
				synced 2025-10-31 03:53:50 +00:00 
			
		
		
		
	middleware: Add client_version attribute to request.
This commit is contained in:
		| @@ -32,6 +32,7 @@ from zerver.lib.request import set_request, unset_request | |||||||
| from zerver.lib.response import json_error, json_response_from_error, json_unauthorized | from zerver.lib.response import json_error, json_response_from_error, json_unauthorized | ||||||
| from zerver.lib.subdomains import get_subdomain | from zerver.lib.subdomains import get_subdomain | ||||||
| from zerver.lib.types import ViewFuncT | from zerver.lib.types import ViewFuncT | ||||||
|  | from zerver.lib.user_agent import parse_user_agent | ||||||
| from zerver.lib.utils import statsd | from zerver.lib.utils import statsd | ||||||
| from zerver.models import Realm, flush_per_request_caches, get_realm | from zerver.models import Realm, flush_per_request_caches, get_realm | ||||||
|  |  | ||||||
| @@ -291,6 +292,9 @@ class LogRequests(MiddlewareMixin): | |||||||
|     # method here too |     # method here too | ||||||
|     def process_user_agent(self, request: HttpRequest) -> None: |     def process_user_agent(self, request: HttpRequest) -> None: | ||||||
|         request.client_name = get_client_name(request) |         request.client_name = get_client_name(request) | ||||||
|  |         request.client_version = None | ||||||
|  |         if request.client_name.startswith("Zulip"): | ||||||
|  |             request.client_version = parse_user_agent(request.META["HTTP_USER_AGENT"])["version"] | ||||||
|  |  | ||||||
|     def process_request(self, request: HttpRequest) -> None: |     def process_request(self, request: HttpRequest) -> None: | ||||||
|         maybe_tracemalloc_listen() |         maybe_tracemalloc_listen() | ||||||
|   | |||||||
| @@ -232,6 +232,7 @@ class AsyncDjangoHandler(tornado.web.RequestHandler, base.BaseHandler): | |||||||
|         request.user = old_request.user |         request.user = old_request.user | ||||||
|         request.client = old_request.client |         request.client = old_request.client | ||||||
|         request.client_name = old_request.client_name |         request.client_name = old_request.client_name | ||||||
|  |         request.client_version = old_request.client_version | ||||||
|  |  | ||||||
|         # The saved_response attribute, if present, causes |         # The saved_response attribute, if present, causes | ||||||
|         # rest_dispatch to return the response immediately before |         # rest_dispatch to return the response immediately before | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user