Repos / pytaku / 350bc4a216
commit 350bc4a216b509065f65d983e78b78e4b134b560
Author: Bùi Thành Nhân <hi@imnhan.com>
Date:   Sat Sep 4 11:47:50 2021 +0700

    remove unnecessary mangadex login code
    
    All mangadex APIs are now open to public

diff --git a/src/mangoapi/base_site.py b/src/mangoapi/base_site.py
index b94fb36..8aaf1d6 100644
--- a/src/mangoapi/base_site.py
+++ b/src/mangoapi/base_site.py
@@ -1,4 +1,3 @@
-import functools
 from abc import ABC, abstractmethod
 from urllib.parse import urlparse
 
@@ -24,9 +23,6 @@ def create_session():
 
 class Site(ABC):
     def __init__(self):
-        self.username = None
-        self.password = None
-        self.is_logged_in = False
         self._session = create_session()
 
     @abstractmethod
@@ -94,22 +90,3 @@ def http_get(self, *args, **kwargs):
 
     def http_post(self, *args, **kwargs):
         return self._http_request("post", *args, **kwargs)
-
-
-def requires_login(func):
-    """
-    Decorator designed for use on a Site's instance methods.
-    It ensures cookies are ready before running the method.
-    """
-
-    @functools.wraps(func)
-    def wrapper(self, *args, **kwargs):
-        # TODO: replace is_logged_in flag check with actual "if rejected then try
-        # logging in" logic, just in case login cookies expire.
-        if not self.is_logged_in:
-            assert self.username
-            assert self.password
-            self.login(self.username, self.password)
-        return func(self, *args, **kwargs)
-
-    return wrapper
diff --git a/src/pytaku/conf.py b/src/pytaku/conf.py
index 758bd88..caaa69e 100644
--- a/src/pytaku/conf.py
+++ b/src/pytaku/conf.py
@@ -4,8 +4,6 @@
 
 
 class Config(GoodConf):
-    MANGADEX_USERNAME = Value()
-    MANGADEX_PASSWORD = Value()
     FLASK_SECRET_KEY = Value(initial=lambda: token_urlsafe(50))
 
     MANGA_HOURS_UNTIL_OUTDATED = Value(default=6)
diff --git a/src/pytaku/source_sites.py b/src/pytaku/source_sites.py
index 44ddd38..17c038f 100644
--- a/src/pytaku/source_sites.py
+++ b/src/pytaku/source_sites.py
@@ -3,7 +3,6 @@
 
 from mangoapi import get_site_class
 
-from .conf import config
 from .persistence import KeyvalStore
 
 """
@@ -21,10 +20,7 @@ def _get_site(name):
         site_class = get_site_class(name)
         assert site_class is not None
         site = site_class()
-        if name == "mangadex":
-            site.username = config.MANGADEX_USERNAME
-            site.password = config.MANGADEX_PASSWORD
-        elif name == "mangasee":
+        if name == "mangasee":
             site.keyval_store = KeyvalStore
     return site