7 # THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED |
7 # THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED |
8 # WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
8 # WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
9 # WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS |
9 # WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS |
10 # FOR A PARTICULAR PURPOSE. |
10 # FOR A PARTICULAR PURPOSE. |
11 # |
11 # |
12 from pyams_utils.traversing import get_parent |
|
13 |
12 |
14 __docformat__ = 'restructuredtext' |
13 __docformat__ = 'restructuredtext' |
15 |
14 |
16 |
15 |
17 # import standard library |
16 # import standard library |
18 |
17 |
19 # import interfaces |
18 # import interfaces |
20 from pyams_content.component.paragraph.interfaces import IParagraphFactory |
19 from pyams_content.component.paragraph.interfaces import IParagraphFactory |
21 from pyams_content.component.video.interfaces import IExternalVideoParagraph |
20 from pyams_content.component.video.interfaces import IExternalVideoParagraph, EXTERNAL_VIDEO_PARAGRAPH_TYPE |
22 from pyams_content.features.checker.interfaces import IContentChecker, MISSING_VALUE, MISSING_LANG_VALUE |
21 from pyams_content.features.checker.interfaces import IContentChecker, MISSING_VALUE, MISSING_LANG_VALUE |
23 from pyams_i18n.interfaces import II18n, II18nManager, INegotiator |
22 from pyams_i18n.interfaces import II18n, II18nManager, INegotiator |
24 |
23 |
25 # import packages |
24 # import packages |
26 from pyams_content.component.paragraph import BaseParagraph, BaseParagraphFactory |
25 from pyams_content.component.paragraph import BaseParagraph, BaseParagraphFactory |
27 from pyams_content.component.video import ExternalVideo, ExternalVideoContentChecker |
26 from pyams_content.component.video import ExternalVideo, ExternalVideoContentChecker |
28 from pyams_utils.adapter import adapter_config |
27 from pyams_utils.adapter import adapter_config |
29 from pyams_utils.registry import utility_config, get_utility |
28 from pyams_utils.registry import utility_config, get_utility |
30 from pyams_utils.request import check_request |
29 from pyams_utils.request import check_request |
|
30 from pyams_utils.traversing import get_parent |
31 from zope.interface import implementer |
31 from zope.interface import implementer |
32 from zope.schema.fieldproperty import FieldProperty |
32 from zope.schema.fieldproperty import FieldProperty |
33 |
33 |
34 from pyams_content import _ |
34 from pyams_content import _ |
35 |
35 |
42 icon_hint = _("External video") |
42 icon_hint = _("External video") |
43 |
43 |
44 body = FieldProperty(IExternalVideoParagraph['body']) |
44 body = FieldProperty(IExternalVideoParagraph['body']) |
45 |
45 |
46 |
46 |
47 @utility_config(name='External video', provides=IParagraphFactory) |
47 @utility_config(name=EXTERNAL_VIDEO_PARAGRAPH_TYPE, provides=IParagraphFactory) |
48 class ExternalVideoParagraphFactory(BaseParagraphFactory): |
48 class ExternalVideoParagraphFactory(BaseParagraphFactory): |
49 """External video paragraph factory""" |
49 """External video paragraph factory""" |
50 |
50 |
51 name = _("External video") |
51 name = _("External video") |
52 content_type = ExternalVideoParagraph |
52 content_type = ExternalVideoParagraph |