From 7e2a136db5921755a29fa5c9a1751028688c55cd Mon Sep 17 00:00:00 2001 From: A Farzat Date: Thu, 9 Oct 2025 08:59:52 +0300 Subject: Add last_viewed handling --- wsgi/__init__.py | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'wsgi/__init__.py') diff --git a/wsgi/__init__.py b/wsgi/__init__.py index dab7b7e..9a504b0 100644 --- a/wsgi/__init__.py +++ b/wsgi/__init__.py @@ -1,3 +1,4 @@ +from datetime import datetime, UTC from typing import Any, Dict, List from components.database import subscriptions from components.subscriptions.main import Subscription @@ -38,3 +39,26 @@ def add_sub() -> Dict[str, Any]: ) sub.insert() return sub_info_from_dict(sub.asdict()) + +@app.post("/set-time-between-fetches/") +def set_time_between_fetches() -> Dict[str, Any]: + return {} + +@app.post("/set-viewed/") +def set_viewed() -> Dict[str, Any]: + viewed_time_str = request.form.get("viewed_time") + if viewed_time_str: + print(viewed_time_str) + viewed_time = datetime.fromisoformat(viewed_time_str) + else: + viewed_time = datetime.now(tz=UTC) + result = subscriptions.update_one( + {"_id": request.form["_id"]}, + {"$set": {"last_viewed": viewed_time}} + ) + if not result.modified_count: + raise Exception("Subscription %s not found" % request.form["_id"]) + return { + "_id": request.form["_id"], + "last_viewed": viewed_time, + } -- cgit v1.2.3-70-g09d2