Beispiel #1
0
    def get(self, pk):
        # TODO(@harrydrippin) Signin Check
        library = get_or_404(Library, pk)
        user_list = list()
        for user in library.users:
            if not user.speakerinfo:
                user_list.append(user)

        if len(user_list) >= 2:
            return {"result": 1, "cause": "이미 정원이 꽉 찼습니다."}
        user_id = SigninManager.get_user_id()
        user = get_or_404(User, user_id)

        # TODO(@harrydrippin): Check if ref exist above this situation
        user.library_id = library._id

        try:
            db.session.merge(user)
            db.session.commit()
        except IntegrityError as e:
            print(str(e))
            db.session.rollback()
            abort_with_integrityerror(e)
        except Exception as e:
            print(str(e))
            db.session.rollback()
            raise e

        return {"result": 0}
Beispiel #2
0
    def get(self, pk):
        if not CredentialManager.get_is_admin():
            raise UnauthorizedError("Unauthorized.")

        user = get_or_404(User, pk)

        return user
Beispiel #3
0
    def get(self, pk):
        if not CredentialManager.get_is_admin():
            raise UnauthorizedError("Unauthorized.")

        speakerinfo = get_or_404(SpeakerInfo, pk)

        return speakerinfo
Beispiel #4
0
    def delete(self, pk):
        if not CredentialManager.get_is_admin():
            raise UnauthorizedError("Unauthorized.")

        speakerinfo = get_or_404(SpeakerInfo, pk)
        SpeakerInfoRepo.delete(speakerinfo)

        return '', 204
Beispiel #5
0
    def put(self, pk):
        args = speakerinfo_reqparser.parse_args()

        speakerinfo = get_or_404(SpeakerInfo, pk)

        speakerinfo = SpeakerInfoRepo.update(speakerinfo, args)

        return speakerinfo
    def get(self, pk):
        library = get_or_404(Library, pk)

        resp_fields = library_fields
        # if CredentialManager.get_is_admin():
        #     resp_fields = {**library_fields, **library_protected_fields}

        return marshal(library, resp_fields)
    def delete(self, pk):
        library = get_or_404(Library, pk)

        try:
            db.session.delete(library)
            db.session.commit()
        except Exception as e:
            print(str(e))
            db.session.rollback()
            raise e

        return '', 204
Beispiel #8
0
    def get(self, pk):
        # TODO(@harrydrippin) Signin Check
        library = get_or_404(Library, pk)
        user_list = library.users

        args = matchspeaker_reqparser.parse_args()
        session_t = list()
        for user in user_list:
            # TODO(@harrydrippin): Verify that below if line works
            if user.speakerinfo:
                speaker_info = user.speakerinfo
                session_t.append(speaker_info.session_time)

        if session_t.count(args["time"] + ":00") != 0:
            return {"result": 1, "cause": "이미 할당된 세션입니다. 다른 세션을 선택해주세요."}

        user_id = SigninManager.get_user_id()
        user = get_or_404(User, user_id)
        user.library_id = library._id

        speakerinfo = SpeakerInfo()
        speakerinfo.user_id = user._id
        speakerinfo.session_time = args["time"] + ":00"

        try:
            db.session.merge(user)
            db.session.add(speakerinfo)
            db.session.commit()
        except IntegrityError as e:
            print(str(e))
            db.session.rollback()
            abort_with_integrityerror(e)
        except Exception as e:
            print(str(e))
            db.session.rollback()
            raise e

        return {"result": 0}
Beispiel #9
0
    def delete(self, pk):
        if not CredentialManager.get_is_admin():
            raise UnauthorizedError("Unauthorized.")

        user = get_or_404(User, pk)

        try:
            db.session.delete(user)
            db.session.commit()
        except Exception as e:
            print(str(e))
            db.session.rollback()
            raise e

        return '', 204
    def get(self, pk):
        if not CredentialManager.get_is_admin():
            raise UnauthorizedError("Unauthorized.")

        speaker = get_or_404(SpeakerInfo, pk)

        speaker.admin_approved = 1

        try:
            db.session.merge(speaker)
            db.session.commit()
        except IntegrityError as e:
            print(str(e))
            db.session.rollback()
            abort_with_integrityerror(e)
        except Exception as e:
            print(str(e))
            db.session.rollback()
            raise e

        return {"result": 0}
Beispiel #11
0
    def put(self, pk):
        args = user_reqparser.parse_args()
        user = get_or_404(User, pk)

        for key, value in args.items():
            if value is None:
                continue

            setattr(user, key, value)

        try:
            db.session.merge(user)
            db.session.commit()
        except IntegrityError as e:
            print(str(e))
            db.session.rollback()
            abort_with_integrityerror(e)
        except Exception as e:
            print(str(e))
            db.session.rollback()
            raise e

        return user