Beispiel #1
0
def details(con, details_id, related):
	post = post_query(con, details_id)
	if post is None:
		raise Exception("no post with id = " + details_id)

	if "user" in related:
		post["user"] = user.details(con, post["user"])
	if "forum" in related:
		post["forum"] = forum.details(con, post["forum"], [])
	if "thread" in related:
		post["thread"] = thread.details(con, post["thread"], [])

	return post
Beispiel #2
0
def posts_list(con, entity, params, identifier, related=[]):
	query = "SELECT date, dislikes, forum, id, isApproved, isDeleted, isEdited, isHighlighted, isSpam, likes, message, " \
	        "parent, points, thread, user FROM post WHERE " + entity + " = " + '\'' + str(''.join(identifier)) + '\''

	parameters = tuple()
	if "since" in params:
		query += " AND date >= %s"
		parameters += tuple(params["since"])

	query += " ORDER BY date " + ''.join(params["order"])

	if "limit" in params:
		query += " LIMIT " + ''.join(params["limit"])

	parameters += tuple('')
	post_ids = dbConnector.select_query(con, query, parameters)

	post_list = []
	for post in post_ids:
		pf = {
			'date': str(post[0]),
			'dislikes': post[1],
			'forum': post[2],
			'id': post[3],
			'isApproved': bool(post[4]),
			'isDeleted': bool(post[5]),
			'isEdited': bool(post[6]),
			'isHighlighted': bool(post[7]),
			'isSpam': bool(post[8]),
			'likes': post[9],
			'message': post[10],
			'parent': post[11],
			'points': post[12],
			'thread': post[13],
			'user': post[14],
		}
		if "user" in related:
			pf["user"] = user.details(con, pf["user"])
		if "forum" in related:
			pf["forum"] = forum.details(con, short_name=pf["forum"], related=[])
		if "thread" in related:
			pf["thread"] = thread.details(con, id=pf["thread"], related=[])
		post_list.append(pf)
	return post_list
Beispiel #3
0
def details_thread():
	con = dbConnector.connect()
	params = helpers.json_from_get(request)
	required_data = ["thread"]
	related = helpers.related_exists(params)

	if 'thread' in related:
		con.close()
		return json.dumps({
			"code": 3,
			"response": "error"})
	try:
		helpers.check_params(params, required_data)
		response = thread.details(con, params["thread"], related)
	except Exception as e:
		con.close()
		return json.dumps({
			"code": 1,
			"response": (e.message)})
	con.close()
	return json.dumps({
		"code": 0,
		"response": response})