Exemplo n.º 1
0
def add_file_permissions(permissions_file_key,permissions_user_key, permissions, new_colour = '000000', new_starred = False):
	new_permission = FilePermissions( 	parent = ndb.Key("PermissionsTable", "*notitle*"),
										user_key = permissions_user_key,
										file_key = permissions_file_key,
										read = permissions.read,
										write = permissions.write,
										full_control = permissions.full_control,
									 	colour = new_colour,
									 	starred = new_starred );
	return new_permission.put()
Exemplo n.º 2
0
def get_user_file_permissions(file_key, user_key):
	if (isinstance(user_key,ndb.Key)) and (isinstance(file_key,ndb.Key)):
		query = FilePermissions.query(ndb.AND(FilePermissions.user_key == user_key,
											 FilePermissions.file_key == file_key))
		return query.get()
	else:
		return None
Exemplo n.º 3
0
def revoke_user_file_permissions(file_key, user_key):
	if (isinstance(user_key,ndb.Key)) and (isinstance(file_key,ndb.Key)):
		query = FilePermissions.query(ndb.AND(FilePermissions.user_key == user_key,
											 FilePermissions.file_key == file_key))
		query.get().key.delete()
		return True
	else:
		return False
Exemplo n.º 4
0
def revoke_all_by_user_key(user_key):
	if(isinstance(user_key,ndb.Key)):
		query = FilePermissions.query(FilePermissions.user_key == user_key)
		iterator = query.iter()
		for entry in iterator:
			entry.key.delete()
		return True
	else:
		return False
Exemplo n.º 5
0
def modify_file_permissions_by_keys(file_key, user_key, new_permissions = None, new_starred = None, new_colour = None):
	if (isinstance(user_key,ndb.Key)) and (isinstance(file_key,ndb.Key)):
		query = FilePermissions.query(ndb.AND(FilePermissions.user_key == user_key,
											 FilePermissions.file_key == file_key))

		permissions = query.get()
		if new_permissions is not None:
			permissions.read = new_permissions.read
			permissions.write = new_permissions.write
			permissions.full_control = new_permissions.full_control

		if new_starred is not None:
			permissions.starred = new_starred

		if new_colour is not None:
			permissions.colour = new_colour

		permissions.put()
		return True
	else:
		return False
Exemplo n.º 6
0
def get_user_permissions_list(user_key):
	if(isinstance(user_key,ndb.Key)):
		query = FilePermissions.query(FilePermissions.user_key == user_key)
		return query.iter()
	else:
		return None
Exemplo n.º 7
0
def get_file_permissions_list(file_key):
	if(isinstance(file_key,ndb.Key)):
		query = FilePermissions.query(FilePermissions.file_key == file_key)
		return query.iter()
	else:
		return None