src/pyams_content/component/gallery/__init__.py
changeset 23 1c0bac23c875
parent 0 7c0001cacf8e
equal deleted inserted replaced
22:c270ea8f041e 23:1c0bac23c875
    16 # import standard library
    16 # import standard library
    17 
    17 
    18 # import interfaces
    18 # import interfaces
    19 from pyams_content.component.gallery.interfaces import IGalleryFileInfo, GALLERY_FILE_INFO_KEY, IGallery, IGalleryFile
    19 from pyams_content.component.gallery.interfaces import IGalleryFileInfo, GALLERY_FILE_INFO_KEY, IGallery, IGalleryFile
    20 from pyams_content.shared.common.interfaces import IWfSharedContent
    20 from pyams_content.shared.common.interfaces import IWfSharedContent
    21 from pyams_file.interfaces import IMediaFile
       
    22 from pyams_form.interfaces.form import IFormContextPermissionChecker
    21 from pyams_form.interfaces.form import IFormContextPermissionChecker
    23 from pyams_i18n.interfaces import II18n
    22 from pyams_i18n.interfaces import II18n
    24 from zope.annotation.interfaces import IAnnotations
    23 from zope.annotation.interfaces import IAnnotations
    25 from zope.lifecycleevent.interfaces import IObjectAddedEvent, IObjectModifiedEvent, IObjectRemovedEvent
    24 from zope.lifecycleevent.interfaces import IObjectAddedEvent, IObjectModifiedEvent, IObjectRemovedEvent
    26 from zope.traversing.interfaces import ITraversable
    25 from zope.traversing.interfaces import ITraversable
   100     def edit_permission(self):
    99     def edit_permission(self):
   101         content = get_parent(self.context, IWfSharedContent)
   100         content = get_parent(self.context, IWfSharedContent)
   102         return IFormContextPermissionChecker(content).edit_permission
   101         return IFormContextPermissionChecker(content).edit_permission
   103 
   102 
   104 
   103 
   105 @subscriber(IObjectAddedEvent, context_selector=IMediaFile)
       
   106 def handle_added_media(event):
       
   107     """Handle added media file"""
       
   108     content = get_parent(event.object, IWfSharedContent)
       
   109     if content is not None:
       
   110         get_current_registry().notify(ObjectModifiedEvent(content))
       
   111 
       
   112 
       
   113 @subscriber(IObjectModifiedEvent, context_selector=IMediaFile)
       
   114 def handle_modified_media(event):
       
   115     """Handle modified media file"""
       
   116     content = get_parent(event.object, IWfSharedContent)
       
   117     if content is not None:
       
   118         get_current_registry().notify(ObjectModifiedEvent(content))
       
   119 
       
   120 
       
   121 @subscriber(IObjectRemovedEvent, context_selector=IMediaFile)
       
   122 def handle_removed_media(event):
       
   123     """Handle removed media file"""
       
   124     content = get_parent(event.object, IWfSharedContent)
       
   125     if content is not None:
       
   126         get_current_registry().notify(ObjectModifiedEvent(content))
       
   127 
       
   128 
       
   129 #
   104 #
   130 # Gallery
   105 # Gallery
   131 #
   106 #
   132 
   107 
   133 @implementer(IGallery)
   108 @implementer(IGallery)