mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-24 16:30:27 +08:00
:bird:👀 and some docs
This commit is contained in:
@@ -148,13 +148,25 @@ class FolderManager( object ):
|
||||
def update( self, trans, folder, name=None, description=None):
|
||||
"""
|
||||
Update the given folder's name or description.
|
||||
|
||||
:param folder: the model object
|
||||
:type folder: LibraryFolder
|
||||
:param name: new name for the library folder
|
||||
:type name: str
|
||||
:param description: new description for the library folder
|
||||
:type description: str
|
||||
|
||||
:returns: the folder
|
||||
:rtype: LibraryFolder
|
||||
|
||||
:raises: ItemAccessibilityException, InsufficientPermissionsException
|
||||
"""
|
||||
changed = False
|
||||
if not trans.user_is_admin():
|
||||
if not self.check_manageable( trans, folder ):
|
||||
raise InsufficientPermissionsException( "You do not have proper permission to update the library folder." )
|
||||
if folder.deleted is True:
|
||||
raise ItemAccessibilityException( "You cannot update deleted library folder. Undelete it first." )
|
||||
raise ItemAccessibilityException( "You cannot update a deleted library folder. Undelete it first." )
|
||||
if name is not None and name != folder.name:
|
||||
folder.name = name
|
||||
changed = True
|
||||
@@ -170,8 +182,8 @@ class FolderManager( object ):
|
||||
"""
|
||||
Mark given folder deleted/undeleted based on the flag.
|
||||
|
||||
:param folder: the model object
|
||||
:type folder: LibraryFolder
|
||||
:param folder: the model object
|
||||
:type folder: LibraryFolder
|
||||
:param undelete: flag whether to delete (when False) or undelete
|
||||
:type undelete: Bool
|
||||
|
||||
|
||||
@@ -277,22 +277,18 @@ class FoldersController( BaseAPIController, UsesLibraryMixin, UsesLibraryMixinIt
|
||||
"""
|
||||
decoded_folder_id = self.folder_manager.cut_and_decode( trans, encoded_folder_id )
|
||||
folder = self.folder_manager.get( trans, decoded_folder_id )
|
||||
|
||||
payload = kwd.get( 'payload', None )
|
||||
if payload:
|
||||
name = payload.get( 'name', None )
|
||||
if not name:
|
||||
raise exceptions.RequestParameterMissingException( "Parameter 'name' of folder is required. You cannot remove it." )
|
||||
if payload.get( 'description', None ) or payload.get( 'description', None ) == '':
|
||||
description = payload.get( 'description', None )
|
||||
raise exceptions.RequestParameterMissingException( "Parameter 'name' of library folder is required. You cannot remove it." )
|
||||
description = payload.get( 'description', None )
|
||||
else:
|
||||
raise exceptions.RequestParameterMissingException( "You did not specify any payload." )
|
||||
updated_folder = self.folder_manager.update( trans, folder, name, description )
|
||||
folder_dict = self.folder_manager.get_folder_dict( trans, updated_folder )
|
||||
return folder_dict
|
||||
|
||||
raise exceptions.NotImplemented( 'Updating folder through this endpoint is not implemented yet.' )
|
||||
|
||||
# TODO move to Role manager
|
||||
def _load_role( self, trans, role_name ):
|
||||
"""
|
||||
|
||||
Reference in New Issue
Block a user