src/pyams_content/component/gallery/zmi/paragraph.py
changeset 363 86d1a240d4dc
parent 362 8fc21a7ef206
child 395 2a39b333a585
equal deleted inserted replaced
362:8fc21a7ef206 363:86d1a240d4dc
    17 
    17 
    18 from datetime import datetime
    18 from datetime import datetime
    19 
    19 
    20 # import interfaces
    20 # import interfaces
    21 from pyams_content.component.gallery.interfaces import IGalleryParagraph, IBaseGallery, IGalleryRenderer
    21 from pyams_content.component.gallery.interfaces import IGalleryParagraph, IBaseGallery, IGalleryRenderer
    22 from pyams_content.component.gallery.zmi.interfaces import IGalleryImagesView
    22 from pyams_content.component.gallery.zmi.interfaces import IGalleryContentsView
    23 from pyams_content.component.paragraph.interfaces import IParagraphContainerTarget, IParagraphContainer, \
    23 from pyams_content.component.paragraph.interfaces import IParagraphContainerTarget, IParagraphContainer, \
    24     IParagraphSummary
    24     IParagraphSummary
    25 from pyams_content.component.paragraph.zmi.interfaces import IParagraphInnerEditor, IParagraphContainerView
    25 from pyams_content.component.paragraph.zmi.interfaces import IParagraphInnerEditor, IParagraphContainerView
    26 from pyams_content.interfaces import MANAGE_CONTENT_PERMISSION
    26 from pyams_content.interfaces import MANAGE_CONTENT_PERMISSION
    27 from pyams_form.interfaces.form import IInnerForm, IEditFormButtons, IInnerSubForm
    27 from pyams_form.interfaces.form import IInnerForm, IEditFormButtons, IInnerSubForm
    53 @viewlet_config(name='add-gallery.menu', context=IParagraphContainerTarget, view=IParagraphContainerView,
    53 @viewlet_config(name='add-gallery.menu', context=IParagraphContainerTarget, view=IParagraphContainerView,
    54                 layer=IPyAMSLayer, manager=IToolbarAddingMenu, weight=65)
    54                 layer=IPyAMSLayer, manager=IToolbarAddingMenu, weight=65)
    55 class GalleryAddMenu(BaseParagraphAddMenu):
    55 class GalleryAddMenu(BaseParagraphAddMenu):
    56     """Gallery add menu"""
    56     """Gallery add menu"""
    57 
    57 
    58     label = _("Add images gallery...")
    58     label = _("Add medias gallery...")
    59     label_css_class = 'fa fa-fw fa-picture-o'
    59     label_css_class = 'fa fa-fw fa-picture-o'
    60     url = 'add-gallery.html'
    60     url = 'add-gallery.html'
    61     paragraph_type = 'Gallery'
    61     paragraph_type = 'Gallery'
    62 
    62 
    63 
    63 
   148 
   148 
   149 #
   149 #
   150 # Gallery contents view
   150 # Gallery contents view
   151 #
   151 #
   152 
   152 
   153 @adapter_config(name='gallery-images', context=(IGalleryParagraph, IPyAMSLayer, GalleryInnerEditForm),
   153 @adapter_config(name='gallery-medias', context=(IGalleryParagraph, IPyAMSLayer, GalleryInnerEditForm),
   154                 provides=IInnerSubForm)
   154                 provides=IInnerSubForm)
   155 @template_config(template='templates/gallery-images.pt', layer=IPyAMSLayer)
   155 @template_config(template='templates/gallery-medias.pt', layer=IPyAMSLayer)
   156 @implementer(IGalleryImagesView)
   156 @implementer(IGalleryContentsView)
   157 class GalleryContentsView(WfSharedContentPermissionMixin, InnerAdminDisplayForm):
   157 class GalleryContentsView(WfSharedContentPermissionMixin, InnerAdminDisplayForm):
   158     """Gallery contents edit form"""
   158     """Gallery contents edit form"""
   159 
   159 
   160     fields = field.Fields(Interface)
   160     fields = field.Fields(Interface)
   161     weight = 10
   161     weight = 10
   162 
   162 
   163     def get_title(self, image):
   163     def get_title(self, media):
   164         return II18n(image).query_attribute('title', request=self.request)
   164         return II18n(media).query_attribute('title', request=self.request)
   165 
   165 
   166     def get_thumbnail_target(self, media):
   166     def get_thumbnail_target(self, media):
   167         registry = self.request.registry
   167         registry = self.request.registry
   168         view = registry.queryMultiAdapter((media, self.request), IView, name='preview.html')
   168         view = registry.queryMultiAdapter((media, self.request), IView, name='preview.html')
   169         if view is not None:
   169         if view is not None:
   170             return absolute_url(media, self.request, 'preview.html')
   170             return absolute_url(media, self.request, 'preview.html')
   171 
   171 
   172 
   172 
   173 @viewlet_config(name='add-image.menu', context=IGalleryParagraph, view=GalleryContentsView,
   173 @viewlet_config(name='add-media.menu', context=IGalleryParagraph, view=GalleryContentsView,
   174                 manager=IWidgetTitleViewletManager)
   174                 manager=IWidgetTitleViewletManager)
   175 class GalleryImageAddMenu(WfSharedContentPermissionMixin, ToolbarAction):
   175 class GalleryMediaAddMenu(WfSharedContentPermissionMixin, ToolbarAction):
   176     """Gallery image add menu"""
   176     """Gallery media add menu"""
   177 
   177 
   178     label = _("Add image(s)")
   178     label = _("Add media(s)")
   179 
   179 
   180     url = 'add-image.html'
   180     url = 'add-media.html'
   181     modal_target = True
   181     modal_target = True
   182     stop_propagation = True
   182     stop_propagation = True
   183 
   183 
   184 
   184 
   185 #
   185 #