|
|
|
@ -77,7 +77,7 @@ class MobatimeApi: |
|
|
|
|
self.logger.warning(e) # file does not exist... ignored |
|
|
|
|
except (EOFError, pickle.UnpicklingError) as e: |
|
|
|
|
self.logger.warning(e) # file seems to be corrupt... ignoring |
|
|
|
|
request = self._session.get(self.baseurl + "Employee/GetEmployeeList") |
|
|
|
|
request = self._session.get(self.baseurl + "Employee/GetEmployeeList", timeout=2) |
|
|
|
|
if 400 <= request.status_code < 500: |
|
|
|
|
self.logger.debug(f"got error {request.status_code}... trying to log in") |
|
|
|
|
self._login(self._session) |
|
|
|
@ -104,8 +104,9 @@ class MobatimeApi: |
|
|
|
|
} |
|
|
|
|
session.cookies.clear_session_cookies() |
|
|
|
|
session.post(self.baseurl + "Account/LogOn", |
|
|
|
|
data=login_data).raise_for_status() # This always gives 200 ... even with wrong password |
|
|
|
|
session.get(self.baseurl + "Employee/GetEmployeeList").raise_for_status() |
|
|
|
|
data=login_data, |
|
|
|
|
timeout=2).raise_for_status() # This always gives 200 ... even with wrong password |
|
|
|
|
session.get(self.baseurl + "Employee/GetEmployeeList", timeout=2).raise_for_status() |
|
|
|
|
|
|
|
|
|
@staticmethod |
|
|
|
|
def _get_password(): |
|
|
|
@ -162,7 +163,7 @@ class MobatimeApi: |
|
|
|
|
List all employees which are obviously in the same team as you. |
|
|
|
|
:return: list of employees |
|
|
|
|
""" |
|
|
|
|
request = self.session.get(self.baseurl + "Employee/GetEmployees") |
|
|
|
|
request = self.session.get(self.baseurl + "Employee/GetEmployees", timeout=2) |
|
|
|
|
request.raise_for_status() |
|
|
|
|
return request.json() |
|
|
|
|
|
|
|
|
@ -172,7 +173,7 @@ class MobatimeApi: |
|
|
|
|
|
|
|
|
|
:return: all user information as dict |
|
|
|
|
""" |
|
|
|
|
request = self.session.get(self.baseurl + "Employee/GetUserProfileForCurrentUser") |
|
|
|
|
request = self.session.get(self.baseurl + "Employee/GetUserProfileForCurrentUser", timeout=2) |
|
|
|
|
request.raise_for_status() |
|
|
|
|
return request.json() |
|
|
|
|
|
|
|
|
@ -196,7 +197,7 @@ class MobatimeApi: |
|
|
|
|
} |
|
|
|
|
if note: |
|
|
|
|
entry_data["note"] = note |
|
|
|
|
request = self.session.post(self.baseurl + "Entry/SaveEntry", data=entry_data) |
|
|
|
|
request = self.session.post(self.baseurl + "Entry/SaveEntry", data=entry_data, timeout=2) |
|
|
|
|
return request |
|
|
|
|
|
|
|
|
|
def get_entries(self, entries: Union[str, None] = 10, |
|
|
|
@ -230,7 +231,7 @@ class MobatimeApi: |
|
|
|
|
"operator": "lte", |
|
|
|
|
"value": end_date.strftime(DateFormats.SIMPLE_DATETIME.value), |
|
|
|
|
}) |
|
|
|
|
request = self.session.post(self.baseurl + "Entry/GetEntries", json=filters) |
|
|
|
|
request = self.session.post(self.baseurl + "Entry/GetEntries", json=filters, timeout=2) |
|
|
|
|
request.raise_for_status() |
|
|
|
|
return request.json()["data"] |
|
|
|
|
|
|
|
|
@ -247,7 +248,7 @@ class MobatimeApi: |
|
|
|
|
|
|
|
|
|
:return: dict of the info mentioned above |
|
|
|
|
""" |
|
|
|
|
request = self.session.get(self.baseurl + "Tracking/GetTrackingData") |
|
|
|
|
request = self.session.get(self.baseurl + "Tracking/GetTrackingData", timeout=2) |
|
|
|
|
request.raise_for_status() |
|
|
|
|
return request.json() |
|
|
|
|
|
|
|
|
@ -260,7 +261,7 @@ class MobatimeApi: |
|
|
|
|
|
|
|
|
|
:return: list with mentioned infos |
|
|
|
|
""" |
|
|
|
|
request = self.session.get(self.baseurl + "Employee/GetAccountInformation") |
|
|
|
|
request = self.session.get(self.baseurl + "Employee/GetAccountInformation", timeout=2) |
|
|
|
|
request.raise_for_status() |
|
|
|
|
return request.json() |
|
|
|
|
|
|
|
|
|