Exemplo n.º 1
0
	def test_e_permissions_get_user_element_permissions(self):
		user_key = ndb.Key("uk","guep")
		element_key = ndb.Key("ek","guep")
		ps.add_element_permissions(user_key,element_key,True)

		obj = ps.get_user_element_permissions(user_key,element_key)

		self.assertEqual(obj.user_key, user_key)
		self.assertEqual(obj.element_key, element_key)
		self.assertEqual(obj.access, True)
Exemplo n.º 2
0
def __check_app_access(redir = False):
	authed_user = auth.get_current_user()
	if authed_user is None:
		return __unauthed_response(redir)
	else:
		elem = ps.get_element_key_by_ref('canLogIn')
		if elem is not None:
			user_key = ps.get_user_key_by_id(authed_user.user_id())
			if user_key is not None:
				perm = ps.get_user_element_permissions(user_key, elem)
				if perm is not None:
					if perm.access:
						return None
		return __not_signed_up_response(redir)
Exemplo n.º 3
0
def signup_handler(request):
	authed_user = auth.get_current_user()
	if authed_user is None:
		return __unauthed_response()

	user_key = ps.get_user_key_by_id(authed_user.user_id())
	if user_key is None:
		user_key = ps.add_user(authed_user)

	response_part = {
		'success'		: False
	}

	try:
		file_req = json.loads(request.raw_post_data)
	except ValueError:
		response_part.update({'error' : 'Invalid request payload.'})
		return HttpResponse(json.dumps(response_part), content_type="application/json")
		
	if 'action' not in file_req:
		response_part.update({'error' : 'Incomplete request.'})
		return HttpResponse(json.dumps(response_part), content_type="application/json")

	elem_key = ps.get_element_key_by_ref('canLogIn')
	if elem_key is None:
		elem_key = ps.add_element('canLogIn')

	user_elem = ps.get_user_element_permissions(user_key, elem_key)
	if user_elem is not None:
		response_part.update({'error' : 'Already signed up.'})
		return HttpResponse(json.dumps(response_part), content_type="application/json")
	else:
		ps.add_element_permissions(user_key, elem_key, True)

		response_part.update({'success' : True})
		return HttpResponse(json.dumps(response_part), content_type="application/json")
Exemplo n.º 4
0
	def test_e_permissions_revoke_user_element_permissions(self):
		user_key = ndb.Key("uk","ruep")
		element_key = ndb.Key("ek","ruep")
		ps.add_element_permissions(user_key,element_key,True)
		ps.revoke_user_element_permissions(user_key,element_key)
		self.assertIsNone(ps.get_user_element_permissions(user_key,element_key))