src/pyams_content/component/gallery/zmi/file.py
changeset 363 86d1a240d4dc
parent 316 b50158f7050d
child 365 e956535074d3
--- a/src/pyams_content/component/gallery/zmi/file.py	Wed Feb 07 09:22:03 2018 +0100
+++ b/src/pyams_content/component/gallery/zmi/file.py	Wed Feb 07 11:21:14 2018 +0100
@@ -9,8 +9,6 @@
 # WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
 # FOR A PARTICULAR PURPOSE.
 #
-from pyams_content.shared.common import IWfSharedContent
-from pyams_form.interfaces.form import IFormContextPermissionChecker
 
 __docformat__ = 'restructuredtext'
 
@@ -19,9 +17,10 @@
 
 # import interfaces
 from pyams_content.component.gallery.interfaces import IGallery, IGalleryFile
-from pyams_content.component.gallery.zmi.interfaces import IGalleryImageAddFields, IGalleryImagesView
+from pyams_content.component.gallery.zmi.interfaces import IGalleryMediasAddFields, IGalleryContentsView
 from pyams_content.interfaces import MANAGE_CONTENT_PERMISSION
 from pyams_file.interfaces.archive import IArchiveExtractor
+from pyams_form.interfaces.form import IFormContextPermissionChecker
 from pyams_i18n.interfaces import II18n
 from pyams_skin.interfaces.viewlet import IWidgetTitleViewletManager, IContextActions
 from pyams_skin.layer import IPyAMSLayer
@@ -31,6 +30,7 @@
 
 # import packages
 from pyams_content.component.gallery.file import GalleryFile
+from pyams_content.shared.common import IWfSharedContent
 from pyams_content.shared.common.zmi import WfSharedContentPermissionMixin
 from pyams_file.file import get_magic_content_type
 from pyams_file.zmi.file import FilePropertiesAction
@@ -50,50 +50,50 @@
 from pyams_content import _
 
 
-@viewlet_config(name='add-image.menu', context=IGallery, view=IGalleryImagesView, manager=IWidgetTitleViewletManager)
-class GalleryImageAddMenu(WfSharedContentPermissionMixin, ToolbarAction):
-    """Gallery image add menu"""
+@viewlet_config(name='add-media.menu', context=IGallery, view=IGalleryContentsView, manager=IWidgetTitleViewletManager)
+class GalleryMediaAddMenu(WfSharedContentPermissionMixin, ToolbarAction):
+    """Gallery media add menu"""
 
-    label = _("Add image(s)")
+    label = _("Add media(s)")
 
-    url = 'add-image.html'
+    url = 'add-media.html'
     modal_target = True
     stop_propagation = True
 
 
-@pagelet_config(name='add-image.html', context=IGallery, layer=IPyAMSLayer, permission=MANAGE_CONTENT_PERMISSION)
-class GalleryImageAddForm(AdminDialogAddForm):
-    """Gallery image add form"""
+@pagelet_config(name='add-media.html', context=IGallery, layer=IPyAMSLayer, permission=MANAGE_CONTENT_PERMISSION)
+class GalleryMediaAddForm(AdminDialogAddForm):
+    """Gallery media add form"""
 
-    legend = _("Add image(s)")
+    legend = _("Add media(s)")
     icon_css_class = 'fa -fa-fw fa-picture-o'
 
-    fields = field.Fields(IGalleryImageAddFields)
-    ajax_handler = 'add-image.json'
+    fields = field.Fields(IGalleryMediasAddFields)
+    ajax_handler = 'add-media.json'
 
     def updateWidgets(self, prefix=None):
-        super(GalleryImageAddForm, self).updateWidgets(prefix)
+        super(GalleryMediaAddForm, self).updateWidgets(prefix)
         if 'author_comments' in self.widgets:
             self.widgets['author_comments'].widget_css_class = 'textarea'
 
     def create(self, data):
         medias = []
-        images = data['images_data']
-        if images and (images is not NOT_CHANGED):
+        medias_data = data['medias_data']
+        if medias_data and (medias_data is not NOT_CHANGED):
             filename = None
-            if isinstance(images, (list, tuple)):
-                filename, images = images
-            if hasattr(images, 'seek'):
-                images.seek(0)
+            if isinstance(medias_data, (list, tuple)):
+                filename, medias_data = medias_data
+            if hasattr(medias_data, 'seek'):
+                medias_data.seek(0)
             registry = self.request.registry
-            content_type = get_magic_content_type(images)
+            content_type = get_magic_content_type(medias_data)
             if isinstance(content_type, bytes):
                 content_type = content_type.decode()
-            if hasattr(images, 'seek'):
-                images.seek(0)
+            if hasattr(medias_data, 'seek'):
+                medias_data.seek(0)
             extractor = query_utility(IArchiveExtractor, name=content_type)
             if extractor is not None:
-                extractor.initialize(images)
+                extractor.initialize(medias_data)
                 for content, filename in extractor.get_contents():
                     try:
                         media = GalleryFile()
@@ -106,7 +106,7 @@
             else:
                 try:
                     media = GalleryFile()
-                    media.data = filename, images if filename else images
+                    media.data = filename, medias_data if filename else medias_data
                 except WrongType:
                     pass
                 else:
@@ -119,18 +119,18 @@
         return None
 
 
-@view_config(name='add-image.json', context=IGallery, request_type=IPyAMSLayer,
+@view_config(name='add-media.json', context=IGallery, request_type=IPyAMSLayer,
              permission=MANAGE_CONTENT_PERMISSION, renderer='json', xhr=True)
-class GalleryImageAJAXAddForm(AJAXAddForm, GalleryImageAddForm):
-    """Gallery image add form, JSON renderer"""
+class GalleryMediaAJAXAddForm(AJAXAddForm, GalleryMediaAddForm):
+    """Gallery media add form, JSON renderer"""
 
     def get_ajax_output(self, changes):
         return {'status': 'reload',
-                'location': absolute_url(self.context, self.request, 'get-gallery-images.html'),
-                'target': '#gallery_images_{0}'.format(self.context.__name__)}
+                'location': absolute_url(self.context, self.request, 'get-gallery-medias.html'),
+                'target': '#gallery_medias_{0}'.format(self.context.__name__)}
 
 
-@viewlet_config(name='file.showhide.action', context=IGalleryFile, layer=IPyAMSLayer, view=IGalleryImagesView,
+@viewlet_config(name='file.showhide.action', context=IGalleryFile, layer=IPyAMSLayer, view=IGalleryContentsView,
                 manager=IContextActions, permission=VIEW_SYSTEM_PERMISSION, weight=1)
 class GalleryFileShowHideAction(WfSharedContentPermissionMixin, JsToolbarActionItem):
     """Gallery file show/hide action"""
@@ -146,7 +146,7 @@
     @property
     def label(self):
         if self.request.has_permission(self.edit_permission, context=self.context):
-            return _("Show/hide image")
+            return _("Show/hide media")
         else:
             return ''
 
@@ -159,14 +159,14 @@
 
     hint_gravity = 'nw'
 
-    url = 'PyAMS_content.galleries.switchImageVisibility'
+    url = 'PyAMS_content.galleries.switchMediaVisibility'
 
     def get_url(self):
         if self.request.has_permission(self.edit_permission, context=self.context):
             return self.url
 
 
-@viewlet_config(name='file.properties.action', context=IGalleryFile, layer=IPyAMSLayer, view=IGalleryImagesView,
+@viewlet_config(name='file.properties.action', context=IGalleryFile, layer=IPyAMSLayer, view=IGalleryContentsView,
                 manager=IContextActions, permission=VIEW_SYSTEM_PERMISSION, weight=5)
 class GalleryFilePropertiesAction(FilePropertiesAction):
     """Media properties action"""
@@ -179,7 +179,7 @@
 class GalleryFilePropertiesEditForm(AdminDialogEditForm):
     """Gallery file properties edit form"""
 
-    legend = _("Update image properties")
+    legend = _("Update media properties")
     icon_css_class = 'fa fa-fw fa-picture-o'
     dialog_class = 'modal-large'
 
@@ -223,24 +223,24 @@
                 output.setdefault('events', []).append({
                     'event': 'myams.refresh',
                     'options': {
-                        'handler': 'PyAMS_content.galleries.updateImageTitle',
-                        'image_id': 'image_{0}_{1}'.format(gallery.__name__, self.context.__name__),
+                        'handler': 'PyAMS_content.galleries.updateMediaTitle',
+                        'media_id': 'media_{0}_{1}'.format(gallery.__name__, self.context.__name__),
                         'title': II18n(self.context).query_attribute('title', request=self.request)
                     }
                 })
         return output
 
 
-@viewlet_config(name='gallery-file-remover.action', context=IGalleryFile, layer=IPyAMSLayer, view=IGalleryImagesView,
+@viewlet_config(name='gallery-file-remover.action', context=IGalleryFile, layer=IPyAMSLayer, view=IGalleryContentsView,
                 manager=IContextActions, weight=90)
 class GalleryFileRemoverAction(WfSharedContentPermissionMixin, JsToolbarActionItem):
     """Gallery file remover action"""
 
-    label = _("Remove image...")
+    label = _("Remove media...")
     label_css_class = 'fa fa-fw fa-trash'
     hint_gravity = 'nw'
 
-    url = 'PyAMS_content.galleries.removeFile'
+    url = 'PyAMS_content.galleries.removeMedia'
 
 
 @view_config(name='delete-element.json', context=IGallery, request_type=IPyAMSLayer,
@@ -256,6 +256,6 @@
     if name not in request.context:
         return {'status': 'message',
                 'messagebox': {'status': 'error',
-                               'content': translate(_("Given image name doesn't exist!"))}}
+                               'content': translate(_("Given media name doesn't exist!"))}}
     del request.context[name]
     return {'status': 'success'}