def __init__(self, id=None): if id != None: details = getKey(f"/submissions/{id}/submission.json") self.id = details["id"] self.user = User.get(details["user"]) self.problem = Problem.get(details["problem"]) self.timestamp = int(details["timestamp"]) self.language = details["language"] self.code = details["code"] self.type = details["type"] self.results = details["results"] self.inputs = details["inputs"] self.outputs = details["outputs"] self.errors = details["errors"] self.answers = details["answers"] self.result = details["result"] else: self.id = None self.user = None self.problem = None self.timestamp = 0 self.language = None self.code = None self.type = None self.results = [] self.inputs = [] self.outputs = [] self.errors = [] self.answers = [] self.result = []
def __init__(self, id=None): if id != None: details = getKey(f"/problems/{id}/problem.json") self.id = details["id"] self.title = details["title"] self.description = details["description"] self.statement = details["statement"] self.input = details["input"] self.output = details["output"] self.constraints = details["constraints"] self.samples = int(details["samples"]) self.tests = int(details["tests"]) self.sampleData = [Datum.get(id, i) for i in range(self.samples)] self.testData = [Datum.get(id, i) for i in range(self.tests)] else: self.id = None self.title = None self.description = None self.statement = None self.input = None self.output = None self.constraints = None self.samples = 0 self.tests = 0 self.sampleData = [] self.testData = []
def __init__(self, id=None): if id != None: details = getKey(f"/problems/{id}/problem.json") self.id = details["id"] self.title = details["title"] self.description = details["description"] self.statement = details["statement"] self.input = details["input"] self.output = details["output"] self.constraints = details["constraints"] self.samples = int(details["samples"]) self.tests = int(details["tests"]) self.sampleData = [Datum.get(id, i) for i in range(self.samples)] self.testData = [Datum.get(id, i) for i in range(self.tests)] else: self.id = None self.title = None self.description = None self.statement = None self.input = None self.output = None self.constraints = None self.samples = 0 self.tests = 0 self.sampleData = [] self.testData = []
def __init__(self, id=None): if id != None: details = getKey(f"/submissions/{id}/submission.json") self.id = details["id"] self.user = User.get(details["user"]) self.problem = Problem.get(details["problem"]) self.timestamp = int(details["timestamp"]) self.language = details["language"] self.code = details["code"] self.type = details["type"] self.results = details["results"] self.inputs = details["inputs"] self.outputs = details["outputs"] self.errors = details["errors"] self.answers = details["answers"] self.result = details["result"] else: self.id = None self.user = None self.problem = None self.timestamp = 0 self.language = None self.code = None self.type = None self.results = [] self.inputs = [] self.outputs = [] self.errors = [] self.answers = [] self.result = []
def __init__(self, id=None): if id != None: details = getKey(f"/contests/{id}/contest.json") self.id = details["id"] self.name = details["name"] self.start = int(details["start"]) self.end = int(details["end"]) self.scoreboardOff = int(details.get("scoreboardOff", self.end)) self.problems = [Problem.get(id) for id in details["problems"]] else: self.id = None self.name = None self.start = None self.end = None self.scoreboardOff = None self.problems = None
def __init__(self, id=None): if id != None: details = getKey(f"/contests/{id}/contest.json") self.id = details["id"] self.name = details["name"] self.start = int(details["start"]) self.end = int(details["end"]) self.scoreboardOff = int(details.get("scoreboardOff", self.end)) self.problems = [Problem.get(id) for id in details["problems"]] else: self.id = None self.name = None self.start = None self.end = None self.scoreboardOff = None self.problems = None
def __init__(self, id=None): if id != None: details = getKey(f"/messages/{id}/message.json") self.id = details["id"] self.fromUser = User.get(details["from"]) self.toUser = User.get(details["to"]) self.isGeneral = bool(details["general"]) self.isAdmin = bool(details["admin"]) # Message sent to admin self.message = details["message"] self.timestamp = float(details["timestamp"]) self.replyTo = details.get("replyTo") else: self.id = None self.fromUser = None self.toUser = None self.isGeneral = False self.isAdmin = False self.message = "" self.timestamp = 0 self.replyTo = None
def __init__(self, id=None): if id != None: details = getKey(f"/contests/{id}/contest.json") self.id = details["id"] self.name = details["name"] self.start = int(details["start"]) self.end = int(details["end"]) self.scoreboardOff = int(details.get("scoreboardOff", self.end)) self.probInfoBlocks = details["probInfoBlocks"] == "True" self.problems = [Problem.get(id) for id in details["problems"]] if str(details["tieBreaker"]).lower() == "true": self.tieBreaker = True else: self.tieBreaker = False else: self.id = None self.name = None self.start = None self.end = None self.scoreboardOff = None self.tieBreaker = False self.probInfoBlocks = True self.problems = None
usrs = [users[id].toJSON() for id in users] setKey("/users.json", usrs) def toJSON(self): return { "id": self.id, "username": self.username, "password": self.password, "type": self.type } def allJSON(): return [users[id].toJSON() for id in users] def delete(self): del users[self.id] del userNames[self.username] self.save() def isAdmin(self) -> bool: return self.type == "admin" def all(): return [users[id] for id in users] usrs = getKey("/users.json") or [] for usr in usrs: user = User(usr["username"], usr["password"], usr["type"], usr["id"]) users[usr["id"]] = user userNames[usr["username"]] = user
setKey("/users.json", usrs) def toJSON(self): return { "id": self.id, "username": self.username, "password": self.password, "type": self.type } def allJSON(): return [users[id].toJSON() for id in users] def delete(self): del users[self.id] del userNames[self.username] self.save() def isAdmin(self) -> bool: return self.type == "admin" def all(): return [users[id] for id in users] usrs = getKey("/users.json") or [] for usr in usrs: user = User(usr["username"], usr["password"], usr["type"], usr["id"]) users[usr["id"]] = user userNames[usr["username"]] = user
def get(id: str, num: int): input = getKey(f"/problems/{id}/input/in{num}.txt") output = getKey(f"/problems/{id}/output/out{num}.txt") return Datum(input, output)
def get(id: str, num: int): input = getKey(f"/problems/{id}/input/in{num}.txt") output = getKey(f"/problems/{id}/output/out{num}.txt") return Datum(input, output)