--- a/src/pyams_media/zmi/video.py Thu Sep 20 13:42:05 2018 +0200
+++ b/src/pyams_media/zmi/video.py Thu Sep 20 13:47:23 2018 +0200
@@ -12,36 +12,31 @@
__docformat__ = 'restructuredtext'
-
-# import standard library
from datetime import datetime
from decimal import Decimal
-# import interfaces
-from pyams_file.interfaces import IVideo, IThumbnails, IMediaWidget
-from pyams_form.interfaces.form import IWidgetsPrefixViewletsManager, IFormHelp
-from pyams_skin.interfaces.viewlet import IContextActions
-from pyams_utils.interfaces import MANAGE_PERMISSION, VIEW_PERMISSION
-from pyams_zmi.layer import IAdminLayer
+from z3c.form import field, button
from z3c.form.interfaces import HIDDEN_MODE
+from zope.interface import Interface, alsoProvides
-# import packages
-from pyams_form.form import AJAXAddForm
+from pyams_file.interfaces import IVideo, IThumbnails, IMediaWidget
+from pyams_form.form import AJAXAddForm, ajax_config
from pyams_form.help import FormHelp
+from pyams_form.interfaces.form import IWidgetsPrefixViewletsManager, IFormHelp
from pyams_form.schema import CloseButton
+from pyams_media import _
from pyams_pagelet.pagelet import pagelet_config
+from pyams_skin.interfaces.viewlet import IContextActions
from pyams_skin.layer import IPyAMSLayer
from pyams_skin.viewlet.toolbar import ToolbarActionItem
from pyams_template.template import template_config
from pyams_utils.adapter import adapter_config
+from pyams_utils.interfaces import MANAGE_PERMISSION, VIEW_PERMISSION
+from pyams_utils.interfaces.data import IObjectData
from pyams_utils.schema import DottedDecimalField
from pyams_viewlet.viewlet import viewlet_config, Viewlet
from pyams_zmi.form import AdminDialogAddForm, AdminDialogDisplayForm
-from pyramid.view import view_config
-from z3c.form import field, button
-from zope.interface import Interface
-
-from pyams_media import _
+from pyams_zmi.layer import IAdminLayer
#
@@ -101,6 +96,8 @@
@pagelet_config(name='video-thumbnail.html', context=IVideo, layer=IPyAMSLayer, permission=MANAGE_PERMISSION)
+@ajax_config(name='video-thumbnail.json', context=IVideo, layer=IPyAMSLayer, permission=MANAGE_PERMISSION,
+ base=AJAXAddForm)
class VideoThumbnailEditForm(AdminDialogAddForm):
"""Video thumbnail selection form"""
@@ -125,6 +122,10 @@
super(VideoThumbnailEditForm, self).updateActions()
if 'select' in self.actions:
self.actions['select'].addClass('btn-primary')
+ self.object_data = {
+ 'ams-form-data-init-callback': 'PyAMS_media.pausePlayer'
+ }
+ alsoProvides(self, IObjectData)
def createAndAdd(self, data):
data = data.get(self, data)
@@ -137,12 +138,6 @@
thumbnailer.clear_thumbnails()
return thumbnailer.get_thumbnail('{0[0]}x{0[1]}'.format(size), 'png', time)
-
-@view_config(name='video-thumbnail.json', context=IVideo, request_type=IPyAMSLayer,
- permission=MANAGE_PERMISSION, renderer='json', xhr=True)
-class VideoThumbnailAJAXEditForm(AJAXAddForm, VideoThumbnailEditForm):
- """Video thumbnail selection form, JSON renderer"""
-
def get_ajax_output(self, changes):
translate = self.request.localizer.translate
if changes: