def fetchUserBlogs(): if request.method == 'GET': token = request.headers['Authorization'].split(' ')[1] userId = decode_token(token)['id'] cursor = mysql.connection.cursor() cursor.execute('''select * from blogs where user_id=%s''', (userId, )) results = cursor.fetchall() items = [] for item in results: items.append(item) mysql.connection.commit() cursor.close() return json.dumps({'data': items, 'error': False}) elif request.method == 'POST': cursor = mysql.connection.cursor() content = request.json['content'] categoryId = request.json['category_id'] title = request.json['title'] token = request.headers.get('Authorization').split(' ')[1] userId = decode_token(token)['id'] cursor.execute( '''insert into blogs(content, category_id, user_id, title) values(%s, %s, %s, %s)''', (content, categoryId, userId, title)) mysql.connection.commit() cursor.close() return json.dumps({ 'message': 'Blog added successfully', 'error': False })
def manipulateComments(commentId): if request.method == 'PUT': cursor = mysql.connection.cursor() comment = request.json['comment'] token = request.headers['Authorization'].split(' ')[1] userId = decode_token(token)['id'] cursor.execute( '''update comments set comment=%s where id=%s and user_id=%s''', ( comment, commentId, userId, )) mysql.connection.commit() cursor.close() return json.dumps({ 'message': 'Comment Edited Successfully', 'error': False }) elif request.method == 'DELETE': token = request.headers['Authorization'].split(' ')[1] userId = decode_token(token)['id'] cursor = mysql.connection.cursor() cursor.execute('''delete from comments where id=%s and user_id=%s''', ( commentId, userId, )) mysql.connection.commit() cursor.close() return json.dumps({ 'message': 'Comment Deleted Successfully', 'error': False })
def fetchBlog(blogId): if request.method == 'GET': cursor = mysql.connection.cursor() cursor.execute('''select * from blogs where id=%s''', (blogId, )) results = cursor.fetchall() items = [] for item in results: items.append(item) mysql.connection.commit() cursor.close() if items: items = items[0] return json.dumps({'data': items, 'error': False}) else: return json.dumps({'message': 'Invalid Blog ID', 'error': True}) elif request.method == 'PUT': cursor = mysql.connection.cursor() content = request.json['content'] title = request.json['title'] token = request.headers.get('Authorization').split(' ')[1] userId = decode_token(token)['id'] cursor.execute( '''update blogs set content=%s, title=%s where id=%s and user_id=%s''', ( content, title, blogId, userId, )) mysql.connection.commit() cursor.close() return json.dumps({ 'message': 'Blog Edited Successfully', 'error': False }) elif request.method == 'DELETE': token = request.headers.get('Authorization').split(' ')[1] userId = decode_token(token)['id'] cursor = mysql.connection.cursor() cursor.execute('''delete from comments where blog_id=%s''', (blogId, )) cursor.execute('''delete from blogs where id=%s and user_id=%s''', ( blogId, userId, )) mysql.connection.commit() cursor.close() return json.dumps({ 'message': 'Blog Deleted Successfully', 'error': False })
def fetchBlogs(): try: token = request.headers.get('Authorization').split(' ')[1] userId = decode_token(token)['id'] cursor = mysql.connection.cursor() cursor.execute('''select * from blogs where user_id != %s''', (userId, )) blogs = [] for item in cursor.fetchall(): blogs.append(item) cursor.execute('''select * from users where id!=%s''', (userId, )) names = [] for item in cursor.fetchall(): names.append(item) for i, blog in enumerate(blogs): user_name = '' for name in names: if blog['user_id'] == name['id']: user_name = name['name'] break blogs[i]['author'] = user_name mysql.connection.commit() cursor.close() return json.dumps({'data': blogs, 'error': False}) except: return json.dumps({'message': 'Some Error Occured', 'error': True})
def manipulateList(): token = request.headers.get('Authorization').split(' ')[1] userId = decode_token(token)['id'] if request.method == 'GET': cursor = mysql.connection.cursor() cursor.execute( '''select task_list.id as tasklistId, tlname, count(tasks.id) as task_cnt from task_list left join tasks on tasklist_id = task_list.id where user_id=%s group by tasklistId;''', (userId, )) lists = [] for l in cursor.fetchall(): lists.append(l) mysql.connection.commit() cursor.close() return json.dumps({'data': lists, 'error': False}) elif request.method == 'POST': cursor = mysql.connection.cursor() tlname = request.json['tlname'] cursor.execute( '''insert into task_list(tlname, user_id) values(%s, %s)''', ( tlname, userId, )) mysql.connection.commit() cursor.close() return json.dumps({ 'message': 'List Added Successfully', 'error': False })
def manipulateIndList(tasklist_id): token = request.headers.get('Authorization').split(' ')[1] userId = decode_token(token)['id'] if request.method == 'GET': cursor = mysql.connection.cursor() cursor.execute( '''select tasks.id as task_id, taskspec from tasks join task_list on tasklist_id = task_list.id where tasklist_id = %s and user_id=%s''', ( tasklist_id, userId, )) tasks = [] for task in cursor.fetchall(): tasks.append(task) mysql.connection.commit() cursor.close() return json.dumps({'data': tasks, 'error': False}) elif request.method == 'DELETE': cursor = mysql.connection.cursor() cursor.execute('''delete from tasks where tasklist_id=%s''', (tasklist_id, )) cursor.execute('''delete from task_list where id=%s and user_id=%s''', ( tasklist_id, userId, )) mysql.connection.commit() cursor.close() return json.dumps({ 'message': 'TaskList Deleted Successfully', 'error': False })
def fetchAndPostcomments(blogId): if request.method == 'GET': token = request.headers['Authorization'].split(' ')[1] userId = decode_token(token)['id'] cursor = mysql.connection.cursor() cursor.execute('''select * from comments where blog_id=%s''', (blogId, )) results = cursor.fetchall() comments = [] for item in results: if item['user_id'] == userId: item['current'] = True else: item['current'] = False comments.append(item) cursor.execute('''select * from users''') names = [] for item in cursor.fetchall(): names.append(item) for i, comment in enumerate(comments): user_name = '' for name in names: if comment['user_id'] == name['id']: user_name = name['name'] break comments[i]['author'] = user_name mysql.connection.commit() cursor.close() return json.dumps({'data': comments, 'error': False}) elif request.method == 'POST': cursor = mysql.connection.cursor() comment = request.json['comment'] token = request.headers['Authorization'].split(' ')[1] userId = decode_token(token)['id'] cursor.execute( '''insert into comments(comment, blog_id, user_id) values(%s, %s, %s)''', ( comment, blogId, userId, )) mysql.connection.commit() cursor.close() return json.dumps({ 'message': 'Comment Added Successfully', 'error': False })
def fetchDetails(): token = request.headers['Authorization'].split(' ')[1] userId = decode_token(token)['id'] cursor = mysql.connection.cursor() cursor.execute('''select name, email from users where id=%s''', (userId, )) user = [] for a in cursor.fetchall(): user.append(a) user = user[0] mysql.connection.commit() cursor.close() return json.dumps({'data': user, 'error': False})
def getUserDetails(): try: token = request.headers.get('Authorization').split(' ')[1] userId = decode_token(token)['id'] cursor = mysql.connection.cursor() cursor.execute('''select * from users where id = %s''', (userId, )) results = cursor.fetchall() items = [] for item in results: items.append(item) items = items[0] return json.dumps({'data': items, 'error': False}) except jwt.exceptions.InvalidSignatureError: return json.dumps({'message': 'Invalid Token', 'error': True})
def editAndDelete(task_id): token = request.headers['Authorization'].split(' ')[1] userId = decode_token(token)['id'] if request.method == 'PUT': taskspec = request.json['taskspec'] cursor = mysql.connection.cursor() cursor.execute( '''select tasks.id as task_id, user_id from tasks join task_list on tasklist_id=task_list.id where tasks.id=%s''', (task_id, )) taskData = [] for item in cursor.fetchall(): taskData.append(item) taskData = taskData[0] if taskData['user_id'] == userId: cursor.execute('''update tasks set taskspec=%s where id=%s''', ( taskspec, task_id, )) mysql.connection.commit() cursor.close() return json.dumps({ 'message': 'Task Updated Successfully', 'error': False }) else: mysql.connection.commit() cursor.close() return json.dumps({'error': True}) elif request.method == 'DELETE': cursor = mysql.connection.cursor() cursor.execute( '''select tasks.id as task_id, user_id from tasks join task_list on tasklist_id=task_list.id where tasks.id=%s''', (task_id, )) taskData = [] for item in cursor.fetchall(): taskData.append(item) taskData = taskData[0] if taskData['user_id'] == userId: cursor.execute('''delete from tasks where id=%s''', (task_id, )) mysql.connection.commit() cursor.close() return json.dumps({ 'message': 'Task Deleted Successfully', 'error': False }) else: mysql.connection.commit() cursor.close() return json.dumps({'error': True})
def fetchBlogCategory(categoryId): token = request.headers['Authorization'].split(' ')[1] userId = decode_token(token)['id'] cursor = mysql.connection.cursor() cursor.execute( '''select * from blogs where category_id=%s and user_id!=%s''', ( categoryId, userId, )) results = cursor.fetchall() mysql.connection.commit() cursor.close() blogs = [] for item in results: blogs.append(item) return json.dumps({'data': blogs, 'error': False})
def editUserDetails(): try: token = request.headers.get('Authorization').split(' ')[1] userId = decode_token(token)['id'] cursor = mysql.connection.cursor() name = request.json['name'] email = request.json['email'] cursor.execute('''update users set name=%s, email=%s where id=%s''', ( name, email, userId, )) mysql.connection.commit() cursor.close() return json.dumps({ 'message': 'User Details Edited Successfully', 'error': False }) except: return json.dumps({'message': 'Some Error Occured', 'error': True})