def is_argument_disabled_due_to_disabled_statements(argument): """ Returns true if any involved statement is disabled. :param argument: Argument :return: Boolean """ if argument.conclusion_uid is None: # check conclusion of given arguments conclusion db_argument = DBDiscussionSession.query(Argument).get( argument.argument_uid) conclusion = DBDiscussionSession(Statement).get( db_argument.conclusion_uid) if conclusion.is_disabled: return True # check premisegroup of given arguments conclusion premises = __get_all_premises_of_argument(db_argument) for premise in premises: if premise.statement.is_disabled: return True else: # check conclusion of given argument conclusion = DBDiscussionSession.query(Statement).get( argument.conclusion_uid) if conclusion.is_disabled: return True # check premisegroup of given argument premises = __get_all_premises_of_argument(argument) for premise in premises: if premise.statement.is_disabled: return True return False
def __refresh_headers_and_url(request, db_user_nickname: str, keep_login: bool, url: str) \ -> Tuple[List[Tuple[str, str]], str]: """ Refreshed headers for the request. Returns a sequence of header tuples (e.g. ``[('Set-Cookie', 'foo=abc')]``) on this request's response. :param request: webservers request :param db_user_nickname: Nickname of user :param keep_login: Boolean :param url: String :return: Headers, String """ LOG.debug("Login successful / keep_login: %s", keep_login) # This query needs to happen, as the session supplying db_user as before is closed in a caller of this function. db_user = DBDiscussionSession().query(User).filter_by( nickname=db_user_nickname).first() db_settings = db_user.settings db_settings.should_hold_the_login(keep_login) LOG.debug("Remembering headers for %s", db_user.nickname) headers = remember(request, db_user.nickname) LOG.debug("Update login timestamp") db_user.update_last_login() transaction.commit() ending = ['/?session_expired=true', '/?session_expired=false'] for e in ending: if url.endswith(e): url = url[0:-len(e)] return headers, url