Move logout code to State

This commit is contained in:
Mads Marquart
2019-06-26 23:02:48 +02:00
parent d0e9a7f693
commit dc12e01fc7
2 changed files with 15 additions and 15 deletions

View File

@@ -332,17 +332,11 @@ class Client(object):
:return: True if the action was successful
:rtype: bool
"""
logout_h = self._state.logout_h
if not logout_h:
h_r = self._post("/bluebar/modern_settings_menu/", {"pmid": "4"})
logout_h = re.search(r'name=\\"h\\" value=\\"(.*?)\\"', h_r.text).group(1)
data = {"ref": "mb", "h": logout_h}
r = self._get("/logout.php", data)
if self._state.logout():
self._state = None
self._uid = None
return r.ok
return True
return False
"""
END LOGIN METHODS

View File

@@ -93,10 +93,6 @@ class State(object):
return None
return str(rtn)
@property
def logout_h(self):
return self._logout_h
def get_params(self):
if self.fb_dtsg is None:
return {}
@@ -143,6 +139,16 @@ class State(object):
"(Failed on url: {})".format(r.url)
)
def logout(self):
logout_h = self._logout_h
if not logout_h:
url = _util.prefix_url("/bluebar/modern_settings_menu/")
h_r = self._session.post(url, data={"pmid": "4"})
logout_h = re.search(r'name=\\"h\\" value=\\"(.*?)\\"', h_r.text).group(1)
url = _util.prefix_url("/logout.php")
return self._session.get(url, params={"ref": "mb", "h": logout_h}).ok
@classmethod
def from_session(cls, session):
r = session.get(_util.prefix_url("/"))