From ef3cb4dd7c8a74ff91580367587084c4d1c509ea Mon Sep 17 00:00:00 2001 From: Igor Chubin Date: Wed, 3 Oct 2018 19:40:48 +0200 Subject: [PATCH] added parse_accept_language() --- bin/srv.py | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/bin/srv.py b/bin/srv.py index 8bfae5a..4f30cca 100644 --- a/bin/srv.py +++ b/bin/srv.py @@ -265,6 +265,24 @@ def location_canonical_name( location ): return location_alias[location.lower()] return location +def parse_accept_language(acceptLanguage): + languages = acceptLanguage.split(",") + locale_q_pairs = [] + + for language in languages: + try: + if language.split(";")[0] == language: + # no q => q = 1 + locale_q_pairs.append((language.strip(), "1")) + else: + locale = language.split(";")[0].strip() + q = language.split(";")[1].split("=")[1] + locale_q_pairs.append((locale, q)) + except: + pass + + return locale_q_pairs + def find_supported_language(accepted_languages): for p in accepted_languages: lang = p[0]