Esempio n. 1
0
 def find_by_email(cls, email):
     db = Database()
     result = db.execute(
         "SELECT name, username, mode, email, password, avatar FROM user WHERE email=%s",
         (email, )).fetchone()
     if result:
         return cls(*result)
     else:
         return None
Esempio n. 2
0
 def find_by_username(cls, username):
     db = Database()
     result = db.execute(
         "SELECT name, username, email, avatar FROM user WHERE username=%s",
         (username, )).fetchone()
     if result:
         return cls(*result)
     else:
         return None
Esempio n. 3
0
    def update_user(self, **kwargs):
        username = self.__username
        name = kwargs.get("name")
        email = kwargs.get("email")

        db = Database()
        db.execute("UPDATE user SET name=%s, email=%s WHERE username=%s",
                   (name, email, username))
        db.commit()
Esempio n. 4
0
 def get(self):
     inpt = self.parser.parse_args()
     try:
         org = Org.find_by_id(inpt["id_org"])
         db = Database()
         result = db.execute(
             "SELECT id, username, start, finish, notes FROM timeline WHERE id_organization=%s AND id_inventory=%s",
             (inpt["id_org"], inpt["id_inv"]))
         data = list()
         for i in result:
             user = UserModels.find_by_username(i[1])
             row = {
                 "id_task": i[0],
                 "username": i[1],
                 "name": user.name,
                 "color": org.get_color_from_username(i[1]),
                 "start": i[2],
                 "finish": i[3],
                 "note": i[4]
             }
             data.append(row)
         return {"tasks": data}, 202
     except:
         return {"message": "Something wrong in server."}, 500
Esempio n. 5
0
    def post(self):
        try:
            inpt = self.parser.parse_args()

            if (inpt["start"] > inpt["finish"]):
                return {
                    "message": "finish time must be greater than start time"
                }, 403

            # Kasih Exception kalau tasknya gaboleh nabrak antar satu sama yang lain

            username = get_jwt_identity()
            db = Database()
            db.execute(
                "INSERT INTO timeline (id_organization, id_inventory, username, start, finish, notes) VALUES (%s, %s, %s, %s, %s, %s)",
                (inpt["id_org"], inpt["id_inv"], username, inpt["start"],
                 inpt["finish"], inpt["note"]))
            db.commit()
            return {"message": "task has been created."}, 202
        except:
            return {"message": "something wrong in server"}, 500
Esempio n. 6
0
 def delete_avatar_field(self):
     db = Database()
     db.execute("UPDATE user SET avatar = NULL WHERE username=%s",
                (self.__username, ))
     db.commit()
Esempio n. 7
0
 def update_avatar_field(self, link_avatar):
     db = Database()
     db.execute("UPDATE user SET avatar=%s WHERE username=%s",
                (link_avatar, self.__username))
     db.commit()
Esempio n. 8
0
 def create_user(self):
     db = Database()
     db.execute(
         "INSERT INTO user (name, username, mode, email, password) VALUES (%s, %s, %s, %s, %s)",
         (self.name, self.username, 0, self.email, self.password))
     db.commit()
Esempio n. 9
0
 def create_user(self):
     db = Database()
     db.execute(
         "INSERT INTO user (name, username, mode, email, avatar) VALUES (%s, %s, %s, %s, %s)",
         (self.name, self.username, self.mode, self.email, self.avatar))
     db.commit()
Esempio n. 10
0
 def delete(self):
     inpt = self.parser_del.parse_args()
     db = Database()
     db.execute("DELETE FROM timeline WHERE id=%s", (inpt["id_task"], ))
     db.commit()
     return {"message": "task has been deleted"}, 202