Example #1
0
def showhomepage(request, **kargs):
	if kargs:
		if kargs.get('page'):
			page = int(kargs['page'])
		else:
			page = 1
		if kargs.get('names'):
			try:
				upages = accounts.models.User.objects.get(username=kargs['names'])
				upages = upages.id
			except accounts.models.User.DoesNotExist:
				upages = []
		else:
			upages = []
	else:
		page = 1
		upages = []
	first = (page-1)*10
	allnum = Thread.objects().count()
	page_count,tail = divmod(allnum,10)
	if tail is not 0:
		page_count+1
	if upages:
		post = Thread.objects(user_id=upages,thread_id=ObjectId(keyThread)).all()[first:10*page]
	else:
		post = Thread.objects(thread_id=ObjectId(keyThread)).all()[first:10*page]
	user = accounts.models._is_user(request)
	return render(request, 'home.html', locals())
Example #2
0
	def create_thread(self, author, subject, message, readperm=1, attaches=[], tags=None):
		subject = escape(subject)
		xss = XssParser()
		xss.feed(message)
		message = xss.result
		at_users = xss.at_users
		print at_users
		hasAttach = (len(attaches)>0)
		post = Post(author=author, authorip=author.loginip, \
			subject=subject, message=message, position=0, hasattach=hasAttach, \
			readperm=readperm)
		thread = Thread(author=author, subject=subject, abstract="abstract", \
			hasattach=hasAttach, tags=tags)
		try :
			thread.save()
			post.thread = thread
			post.save()
		except Exception, e:
			raise PostException(cause=e)
Example #3
0
def delthread(request):
	if request.method =='POST' and _is_user:
		thid = request.POST['id']
		try:
			post = Thread.objects(id=thid)
		except Thread.DoesNotExist:
			return HttpResponse(u'failed')
		post.delete()
		return HttpResponse(u'succeed')
	else:
		return HttpResponse(u'failed')
Example #4
0
def editthread(request):
	if request.method =='POST' and _is_user:
		thid = request.POST['id']
		try:
			post = Thread.objects(id=thid)
		except Thread.DoesNotExist:
			return HttpResponse(u'failed')
		post.title = request.POST['title']
		post.content = request.POST['content']
		post.lastdate = datetime.now()
		post.update()
		return HttpResponse(u'succeed')
	else:
		return HttpResponse(u'failed')
Example #5
0
def writethread(request):
	if request.method =='POST' and _is_user:
		title = request.POST['title']
		post = Thread.objects(title=title)
		# try:
		# 	post = Thread.objects(title=title)
		# except Thread.DoesNotExist:
		# 	return HttpResponse(u'failed')
		# if post:
		# 	return HttpResponse(u'failed')
		postobj = Thread(title=title)
		postobj.user_id = ObjectId(request.POST['user_id'])
		# if request.POST['thread_id']:
		postobj.thread_id = ObjectId(request.POST['thread_id'])
		postobj.content = request.POST['content']
		postobj.save()
		repost = dumps({'title':postobj.title,'id':str(postobj.id)}, ensure_ascii=False, indent=2)
		return HttpResponse(repost)
	else:
		return HttpResponse(u'failed')
Example #6
0
def showthread(request,tmid):
	user = accounts.models._is_user(request)
	try:
		post = Thread.objects.get(id=ObjectId(tmid),thread_id=ObjectId(keyThread))
	except Thread.DoesNotExist:
		return HttpResponse('404')
	post.content = markdown(post.content)
	try:
		commit = Thread.objects(thread_id=post.id)
	except Thread.DoesNotExist:
		commit = []
	if commit:
		for i in range(len(commit)):
			com_user = accounts.models.User.objects.get(id=commit[i].user_id)
			commit[i].append(com_user.username)
			commit[i].email = com_user.emailadd
	if post.user_id == user.id:
		author = user
		author_self = True
	else:
		author = accounts.models.User.objects.get(id=post.user_id)
		author_self = False
	return render(request, 'thread.html', locals())
Example #7
0
	def insert_thread(cls):
		author = MotssUser.objects.all()[1]
		thread = Thread(author=author, subject='test insert thread')
		thread.save()
		return thread