コード例 #1
0
ファイル: weiboTools.py プロジェクト: ETAF90/weiAA
def callback(request):
	client = _create_client()
	access_code = request.GET.get('code')
	#print ("!!!!code = %s" % access_code)
	r = client.request_access_token(access_code)
	access_token = r.access_token
	expires_in = r.expires_in
	weibo_id = r.uid;
	client.set_access_token(access_token, expires_in)
	u = client.users.show.get(uid=weibo_id)
	#print "debug!!!!!!!!! screen_name: %s\n" %u.screen_name
	dao.insert_user(weibo_id,u.screen_name,access_token,expires_in)
	request.session['weibo_id'] = weibo_id
	request.session['access_token'] = access_token
	request.session['expires_in'] =  expires_in
	return True
コード例 #2
0
ファイル: views.py プロジェクト: ETAF90/weiAA
def create_act_form(request):
	if request.session.has_key('weibo_id'):

		weibo_id = request.session['weibo_id']
		current_user = WeiaaUser.objects.get(weibo_id = weibo_id)
		if WONIU_DEBUG:
			print 'create_act_form, weibo_id: %s' % weibo_id
		
		#create new activity: name, date, creator_id
		act_name = 'activity%02d' % (WeiaaActivity.objects.all().count()+1)
		date = request.POST['create_time']
		if WONIU_DEBUG:
			print 'create time: %s' % date
		new_act = WeiaaActivity(name=act_name,date=date, creator_id=WeiaaUser.objects.get(weibo_id=weibo_id))
		new_act.save();
		
		#create new activity plan: aid, creator_id, estimate_per_cost
		new_plan = WeiaaActivityPlan(aid = new_act, creator_id = WeiaaUser.objects.get(weibo_id = weibo_id))
		#new_plan.save();
		#plan item table begin
		#item_time
		#item_address
		#item_content
		#item_estimate_per_cost
		#plan item table end
		flag = True
		for i in range(1,50):
			key = 'item_time_%d' % i
			if request.POST.has_key(key):
				item_time = request.POST['item_time_%d' % i]
				item_address = request.POST['item_address_%d' % i]
				item_content = request.POST['item_content_%d' % i]
				item_estimate_per_cost = request.POST['item_estimate_per_cost_%d' % i]
				#set plan.esitmate_per_cost
				new_plan.estimate_per_cost += float(item_estimate_per_cost)
				new_plan.save();
				#create plan item: start_time, place, content, estimate_per_cost 
				item = WeiaaActivityPlanItem(apid = new_plan, start_time = item_time,place = item_address, content = item_content, estimate_per_cost = item_estimate_per_cost)
				item.save();
				if WONIU_DEBUG:
					#plan item info
					print 'plan item info'
					print 'apiid:%s' % item.apiid
					print 'apid:%s' % item.apid
					print 'start_time:%s' % item.start_time
					print 'place:%s' % item.place
					print 'content:%s' % item.content
					print 'estimate_per_cost %s' % item.estimate_per_cost
		
		if WONIU_DEBUG:
			#activity plan info
			print 'activity plan info'
			print 'apid:%s' % new_plan.apid
			print 'aid:%s' % new_plan.aid
			print 'is_selected:%s' % new_plan.is_selected
			print 'vote:%s' % new_plan.vote
			print 'estimate_per_cost:%s' % new_plan.estimate_per_cost
			print 'real_cost:%s' % new_plan.real_cost
			print 'creator_id:%s' % new_plan.creator_id
			#activity info
			print 'activity info'
			print 'id:%s' % new_act.aid
			print 'name:%s' % new_act.name
			print 'date:%s' % new_act.date
			print 'state:%s' % new_act.state
			print 'creator_id:%s' % new_act.creator_id;
		if WONIU_DEBUG:
			for key in request.POST:
				print 'POST: key=%s,value=%s' % (key,request.POST[key])
		#add current user to the WeiaaActivityMember table
		member = WeiaaActivityMember(aid = new_act,uid = current_user,confirm_state = 1)
		member.save()
		#add the other members
		for i in range(1,100):

			key = 'member_%d' % i			
			if request.POST.has_key(key):
				screen_name = request.POST[key]
				weibo_id = weiboTools.find_weibo_id(request, screen_name)
				if WONIU_DEBUG:
					print 'screen_name:%s' % screen_name
					print 'weibo_id:%s' % weibo_id
				users = WeiaaUser.objects.filter(weibo_id = weibo_id)
				if users.count()==0:
					dao.insert_user(weibo_id,screen_name,'null',0)
					#user = WeiaaUser(name = screen_name, weibo_id = weibo_id,access_token='null',expire_in = 0 )
					#user.save()
				member = WeiaaActivityMember(aid = new_act,uid = WeiaaUser.objects.get(weibo_id = weibo_id))
				member.save()
		return render(request,'weiAA_app/result.html',{'message_title':'您已成功创建一个活动!'})
	else:
		return render(request,'weiAA_app/weiboLogin.html')