diff --git a/src/app/models/project.py b/src/app/models/project.py index bf4bd86..b97ae63 100644 --- a/src/app/models/project.py +++ b/src/app/models/project.py @@ -9,9 +9,17 @@ def get_categories(): db.connect() cursor = db.cursor() query = ("SELECT * FROM project_category") - cursor.execute(query) - categories = cursor.fetchall() - cursor.close() + try: + cursor.execute(query) + categories = cursor.fetchall() + except mysql.connector.Error as err: + print("Failed executing query: {}".format(err)) + categories = [] + cursor.fetchall() + exit(1) + finally: + cursor.close() + db.close() return categories def set_project(categoryid, userid, project_title, project_description, project_status): @@ -35,11 +43,19 @@ def set_project(categoryid, userid, project_title, project_description, project_ query = ("INSERT INTO projects VALUES (NULL, \"" + categoryid + "\", \"" + userid + "\", \"" + project_title + "\", \"" + project_description + "\", \"" + project_status + "\")") - cursor.execute(query) - db.commit() - cursor.close() - users_projects = get_projects_by_owner(userid) - projectid = users_projects[-1][0] + try: + cursor.execute(query) + db.commit() + users_projects = get_projects_by_owner(userid) + projectid = users_projects[-1][0] + except mysql.connector.Error as err: + print("Failed executing query: {}".format(err)) + projectid = None + cursor.fetchall() + exit(1) + finally: + cursor.close() + db.close() return projectid def get_project_by_id(projectid): @@ -53,9 +69,17 @@ def get_project_by_id(projectid): db.connect() cursor = db.cursor() query = ("SELECT * FROM projects WHERE projectid = \"" + projectid + "\"") - cursor.execute(query) - project = cursor.fetchall() - cursor.close() + try: + cursor.execute(query) + project = cursor.fetchall() + except mysql.connector.Error as err: + print("Failed executing query: {}".format(err)) + project = [] + cursor.fetchall() + exit(1) + finally: + cursor.close() + db.close() return project[0] def update_project_status(projectid, status): @@ -70,9 +94,16 @@ def update_project_status(projectid, status): cursor = db.cursor() query = ("UPDATE projects SET project_status = \"" + status + "\" WHERE projectid = \"" + projectid + "\"") - cursor.execute(query) - db.commit() - cursor.close() + try: + cursor.execute(query) + db.commit() + except mysql.connector.Error as err: + print("Failed executing query: {}".format(err)) + cursor.fetchall() + exit(1) + finally: + cursor.close() + db.close() def get_user_permissions(userid, projectid): """ @@ -88,9 +119,16 @@ def get_user_permissions(userid, projectid): query = ("SELECT read_permission, write_permission, modify_permission \ FROM projects_users WHERE projectid = \"" + projectid + "\" AND userid = \"" + userid + "\"") - cursor.execute(query) - permissions = cursor.fetchall() - cursor.close() + try: + cursor.execute(query) + permissions = cursor.fetchall() + except mysql.connector.Error as err: + print("Failed executing query: {}".format(err)) + cursor.fetchall() + exit(1) + finally: + cursor.close() + db.close() if len(permissions): return permissions[0] return [0,0,0] @@ -109,9 +147,17 @@ def get_projects_by_status_and_category(categoryid, project_status): cursor = db.cursor() query = ("SELECT * FROM projects WHERE project_status = \"" + project_status + "\" AND categoryid = \"" + categoryid + "\"") - cursor.execute(query) - projects = cursor.fetchall() - cursor.close() + try: + cursor.execute(query) + projects = cursor.fetchall() + except mysql.connector.Error as err: + print("Failed executing query: {}".format(err)) + projects = [] + cursor.fetchall() + exit(1) + finally: + cursor.close() + db.close() return projects def get_projects_by_owner(userid): @@ -124,8 +170,17 @@ def get_projects_by_owner(userid): db.connect() cursor = db.cursor() query = ("SELECT * FROM projects WHERE userid = \"" + userid + "\"") - cursor.execute(query) - projects = cursor.fetchall() + try: + cursor.execute(query) + projects = cursor.fetchall() + except mysql.connector.Error as err: + print("Failed executing query: {}".format(err)) + projects = [] + cursor.fetchall() + exit(1) + finally: + cursor.close() + db.close() return projects def get_projects_by_status_and_owner(userid, project_status): @@ -142,8 +197,17 @@ def get_projects_by_status_and_owner(userid, project_status): cursor = db.cursor() query = ("SELECT * FROM projects WHERE project_status = \"" + project_status + "\" AND userid = \"" + userid + "\"") - cursor.execute(query) - projects = cursor.fetchall() + try: + cursor.execute(query) + projects = cursor.fetchall() + except mysql.connector.Error as err: + print("Failed executing query: {}".format(err)) + projects = [] + cursor.fetchall() + exit(1) + finally: + cursor.close() + db.close() return projects def get_projects_by_participant_and_status(userid, project_status): @@ -162,8 +226,17 @@ def get_projects_by_participant_and_status(userid, project_status): project_status + "\" AND projects_users.userid = \"" + userid + "\" AND projects_users.projectid = projects.projectid") db.connect() - cursor.execute(query) - projects = cursor.fetchall() + try: + cursor.execute(query) + projects = cursor.fetchall() + except mysql.connector.Error as err: + print("Failed executing query: {}".format(err)) + projects = [] + cursor.fetchall() + exit(1) + finally: + cursor.close() + db.close() return projects def set_task(projectid, task_title, task_description, budget): @@ -184,18 +257,32 @@ def set_task(projectid, task_title, task_description, budget): query = ("INSERT INTO tasks (projectid, title, task_description, budget, task_status) VALUES (\"" + projectid + "\", \"" + task_title + "\", \"" + task_description + "\", \"" + budget + "\", \"waiting for delivery\")") - cursor.execute(query) - db.commit() - cursor.close - + try: + cursor.execute(query) + db.commit() + except mysql.connector.Error as err: + print("Failed executing query: {}".format(err)) + cursor.fetchall() + exit(1) + finally: + cursor.close() + db.close() + def update_task_status(taskid, status): db.connect() cursor = db.cursor() query = ("UPDATE tasks SET task_status = \"" + status + "\" WHERE taskid = \"" + taskid + "\"") - cursor.execute(query) - db.commit() - cursor.close() + try: + cursor.execute(query) + db.commit() + except: + print("Failed executing query: {}".format(err)) + cursor.fetchall() + exit(1) + finally: + cursor.close() + db.close() def get_tasks_by_project_id(projectid): """ @@ -208,9 +295,17 @@ def get_tasks_by_project_id(projectid): db.connect() cursor = db.cursor() query = ("SELECT * FROM tasks WHERE projectid = \"" + projectid + "\"") - cursor.execute(query) - tasks = cursor.fetchall() - cursor.close + try: + cursor.execute(query) + tasks = cursor.fetchall() + except mysql.connector.Error as err: + print("Failed executing query: {}".format(err)) + tasks = [] + cursor.fetchall() + exit(1) + finally: + cursor.close() + db.close() return tasks def set_task_file(taskid, filename): @@ -226,9 +321,16 @@ def set_task_file(taskid, filename): cursor = db.cursor() query = ("INSERT INTO task_files (taskid, filename) VALUES (\"" + taskid + "\", \"" + filename + "\")") - cursor.execute(query) - db.commit() - cursor.close() + try: + cursor.execute(query) + db.commit() + except mysql.connector.Error as err: + print("Failed executing query: {}".format(err)) + cursor.fetchall() + exit(1) + finally: + cursor.close() + db.close() def get_task_files(taskid): """ @@ -240,9 +342,17 @@ def get_task_files(taskid): db.connect() cursor = db.cursor() query = ("SELECT filename FROM task_files WHERE taskid = \"" + str(taskid) + "\"") - cursor.execute(query) - filenames = cursor.fetchall() - cursor.close + try: + cursor.execute(query) + filenames = cursor.fetchall() + except mysql.connector.Error as err: + print("Failed executing query: {}".format(err)) + filenames = [] + cursor.fetchall() + exit(1) + finally: + cursor.close() + db.close() return filenames def set_projects_user(projectid, userid, read_permission="TRUE", @@ -264,6 +374,13 @@ def set_projects_user(projectid, userid, read_permission="TRUE", query = ("INSERT INTO projects_users VALUES (\"" + projectid + "\", \"" + userid + "\", " + read_permission + ", " + write_permission + ", " + modify_permission + ")") - cursor.execute(query) - db.commit() - cursor.close() + try: + cursor.execute(query) + db.commit() + except mysql.connector.Error as err: + print("Failed executing query: {}".format(err)) + cursor.fetchall() + exit(1) + finally: + cursor.close() + db.close() diff --git a/src/app/models/register.py b/src/app/models/register.py index 289810b..0a36b7b 100644 --- a/src/app/models/register.py +++ b/src/app/models/register.py @@ -31,6 +31,13 @@ def set_user(username, password, full_name, company, email, password + "\", \"" + full_name + "\" , \"" + company + "\", \"" + email + "\", \"" + street_address + "\", \"" + city + "\", \"" + state + "\", \"" + postal_code + "\", \"" + country + "\")") - cursor.execute(query) - db.commit() - cursor.close() + try: + cursor.execute(query) + db.commit() + except mysql.connector.Error as err: + print("Failed executing query: {}".format(err)) + cursor.fetchall() + exit(1) + finally: + cursor.close() + db.close() diff --git a/src/app/models/user.py b/src/app/models/user.py index 8156a4a..ac3e916 100644 --- a/src/app/models/user.py +++ b/src/app/models/user.py @@ -8,9 +8,17 @@ def get_users(): db.connect() cursor = db.cursor() query = ("SELECT userid, username from users") - cursor.execute(query) - users = cursor.fetchall() - cursor.close() + try: + cursor.execute(query) + users = cursor.fetchall() + except mysql.connector.Error as err: + print("Failed executing query: {}".format(err)) + users = [] + cursor.fetchall() + exit(1) + finally: + cursor.close() + db.close() return users def get_user_id_by_name(username): @@ -22,12 +30,20 @@ def get_user_id_by_name(username): db.connect() cursor = db.cursor() query = ("SELECT userid from users WHERE username =\"" + username + "\"") - cursor.execute(query) + + userid = None try: - userid = cursor.fetchall()[0][0] - except: - userid = None - cursor.close() + cursor.execute(query) + users = cursor.fetchall() + if(len(users)): + userid = users[0][0] + except mysql.connector.Error as err: + print("Failed executing query: {}".format(err)) + cursor.fetchall() + exit(1) + finally: + cursor.close() + db.close() return userid def get_user_name_by_id(userid): @@ -39,11 +55,19 @@ def get_user_name_by_id(userid): db.connect() cursor = db.cursor() query = ("SELECT username from users WHERE userid =\"" + userid + "\"") - cursor.execute(query) + username = None try: - username = cursor.fetchall()[0][0] - except: - username = None + cursor.execute(query) + users = cursor.fetchall() + if len(users): + username = users[0][0] + except mysql.connector.Error as err: + print("Failed executing query: {}".format(err)) + cursor.fetchall() + exit(1) + finally: + cursor.close() + db.close() cursor.close() return username @@ -61,10 +85,17 @@ def match_user(username, password): cursor = db.cursor() query = ("SELECT userid, username from users where username = \"" + username + "\" and password = \"" + password + "\"") - cursor.execute(query) + user = None try: - user = cursor.fetchall()[0] - except: - user = None - cursor.close() + cursor.execute(query) + users = cursor.fetchall() + if len(users): + user = users[0] + except mysql.connector.Error as err: + print("Failed executing query: {}".format(err)) + cursor.fetchall() + exit(1) + finally: + cursor.close() + db.close() return user