handle the referral url that has ?slref=code part

This commit is contained in:
Son 2021-10-25 15:02:02 +02:00
parent 83c5eded80
commit 0fbd351bed
3 changed files with 16 additions and 0 deletions

View File

@ -53,4 +53,12 @@ def get_referral() -> Optional[Referral]:
ref_code = request.cookies.get(_REFERRAL_COOKIE)
referral = Referral.get_by(code=ref_code)
if not referral:
if "slref" in session:
ref_code = session["slref"]
referral = Referral.get_by(code=ref_code)
if referral:
LOG.d("referral found %s", referral)
return referral

View File

@ -2269,6 +2269,9 @@ class Referral(Base, ModelMixin):
def link(self):
return f"{LANDING_PAGE_URL}?slref={self.code}"
def __repr__(self):
return f"<Referral {self.code}>"
class SentAlert(Base, ModelMixin):
"""keep track of alerts sent to user.

View File

@ -481,6 +481,11 @@ def set_index_page(app):
):
g.start_time = time.time()
# to handle the referral url that has ?slref=code part
ref_code = request.args.get("slref")
if ref_code:
session["slref"] = ref_code
@app.after_request
def after_request(res):
# not logging /static call