Пример #1
0
def aspireSeater(sid):
    seater = SeaterModel.getSeater(sid)
    if ProjectModel.isProjectAdmin(getCurrentUid(), seater["pid"]):
        SeaterModel.assignUser(getCurrentUid(), sid)
    else:
        SeaterModel.aspireSeater(getCurrentUid(), sid)
    return json.dumps({"result": "success"})
Пример #2
0
def removeSeater(sid):
    seater = SeaterModel.getSeater(sid)
    if seater != None:
        if ProjectModel.isProjectAdmin(getCurrentUid(), seater["pid"]):
            SeaterModel.removeSeater(sid)
            return json.dumps({"result": "success"})
        else:
            return render_template("private-api/forbidden-request.html")
    return render_template("private-api/unknown-request.html")
Пример #3
0
def assignUser(sid, uid):
    seater = SeaterModel.getSeater(sid)

    if seater != None:
        if ProjectModel.isProjectAdmin(getCurrentUid(), seater["pid"]):
            if SeaterModel.isThereSeaterAspiration(uid, sid):
                SeaterModel.assignUser(uid, sid)
                return json.dumps({"result": "success"})
        else:
            return render_template("private-api/forbidden-request.html")

    return render_template("private-api/unknown-request.html")
Пример #4
0
def seaterPage(projectName, sid):
  project = ProjectModel.getProjectByProjectName(projectName)
  seater = SeaterModel.getSeater(sid, getCurrentUid())
  seater["skills"] = SkillModel.getSeaterSkills(sid)
  assignedUser = UserModel.getUser(seater["uid"])
  seater["isProjectAdmin"] = ProjectModel.isProjectAdmin(getCurrentUid(), project["pid"])

  return render_template(
    "seater-page.html",
    currentUser= getCurrentUser(),
    seater = seater,
    assignedUser = assignedUser
  )
Пример #5
0
def dismissUserFromSeater(sid):
    seater = SeaterModel.getSeater(sid)

    if seater != None:
        if ProjectModel.isProjectAdmin(getCurrentUid(),
                                       seater["pid"]) or (seater["uid"]
                                                          == getCurrentUid()):
            SeaterModel.dismissUser(sid)
            SeaterModel.cancelAspirationToTheSeater(seater["uid"], sid)
            return json.dumps({"result": "success"})
        else:
            return render_template("private-api/forbidden-request.html")

    return render_template("private-api/unknown-request.html")
Пример #6
0
def seaterSkills():
    if request.method == "GET":
        #Get seater skills
        sid = request.args.get("sid")

        if sid != None:
            skills = SkillModel.getUserSkills(getCurrentUid)
            return json.dumps(skills, cls=DateTimeEncoder)
        return render_template("private-api/unknown-request.html")

    elif request.method == "POST" and isLoggedIn():
        #Add seater skill
        sid = request.args.get("sid")
        skill = request.args.get("skill")

        pid = SeaterModel.getSeater(sid)["pid"]

        if ProjectModel.isProjectAdmin(getCurrentUid(), pid):
            if skill != None:
                SkillModel.addSeaterSkill(sid, skill)
                return json.dumps({"result": "success"})

    else:
        #Delete a user skill
        skid = request.args.get("skid")

        if skid != None and isLoggedIn():
            skill = SkillModel.getUserSkill(skid)

            if skill["uid"] == getCurrentUid():
                SkillModel.removeUserSkill(skid)
                return json.dumps({"result": "success"})
            else:
                return render_template("private-api/forbidden-request.html")

    return render_template("private-api/unknown-request.html")
Пример #7
0
def seaterAspirationNumber(sid):
    seater = SeaterModel.getSeater(sid)
    if ProjectModel.isProjectAdmin(getCurrentUid(), seater["pid"]):
        number = SeaterModel.getSeaterAspirationNumber(sid)
        return json.dumps({"number": number})
    return render_template("private-api/forbidden-request.html")
Пример #8
0
def seaterAspirations(sid):
    seater = SeaterModel.getSeater(sid)
    if ProjectModel.isProjectAdmin(getCurrentUid(), seater["pid"]):
        aspirations = SeaterModel.getSeaterAspirations(sid)
        return json.dumps(aspirations, cls=DateTimeEncoder)
    return render_template("private-api/forbidden-request.html")
Пример #9
0
def getSeater(sid):
    seater = SeaterModel.getSeater(sid)
    seater["skills"] = SkillModel.getSeaterSkills(sid)
    return json.dumps(seater, cls=DateTimeEncoder)