15 |
15 |
16 # import standard library |
16 # import standard library |
17 |
17 |
18 # import interfaces |
18 # import interfaces |
19 from pyams_content.component.paragraph.interfaces import IParagraphFactory |
19 from pyams_content.component.paragraph.interfaces import IParagraphFactory |
20 from pyams_content.component.video.interfaces import IExternalVideoParagraph, EXTERNAL_VIDEO_PARAGRAPH_TYPE |
20 from pyams_content.component.video.interfaces import IExternalVideoParagraph, EXTERNAL_VIDEO_PARAGRAPH_TYPE, \ |
|
21 EXTERNAL_VIDEO_PARAGRAPH_RENDERERS |
21 from pyams_content.features.checker.interfaces import IContentChecker, MISSING_VALUE, MISSING_LANG_VALUE |
22 from pyams_content.features.checker.interfaces import IContentChecker, MISSING_VALUE, MISSING_LANG_VALUE |
22 from pyams_i18n.interfaces import II18n, II18nManager, INegotiator |
23 from pyams_i18n.interfaces import II18n, II18nManager, INegotiator |
23 |
24 |
24 # import packages |
25 # import packages |
25 from pyams_content.component.paragraph import BaseParagraph, BaseParagraphFactory |
26 from pyams_content.component.paragraph import BaseParagraph, BaseParagraphFactory |
26 from pyams_content.component.video import ExternalVideo, ExternalVideoContentChecker |
27 from pyams_content.component.video import ExternalVideo, ExternalVideoContentChecker |
|
28 from pyams_content.features.renderer import RenderersVocabulary |
27 from pyams_utils.adapter import adapter_config |
29 from pyams_utils.adapter import adapter_config |
|
30 from pyams_utils.factory import factory_config |
28 from pyams_utils.registry import utility_config, get_utility |
31 from pyams_utils.registry import utility_config, get_utility |
29 from pyams_utils.request import check_request |
32 from pyams_utils.request import check_request |
30 from pyams_utils.traversing import get_parent |
33 from pyams_utils.traversing import get_parent |
|
34 from pyams_utils.vocabulary import vocabulary_config |
31 from zope.interface import implementer |
35 from zope.interface import implementer |
32 from zope.schema.fieldproperty import FieldProperty |
36 from zope.schema.fieldproperty import FieldProperty |
33 |
37 |
34 from pyams_content import _ |
38 from pyams_content import _ |
35 |
39 |
36 |
40 |
37 @implementer(IExternalVideoParagraph) |
41 @implementer(IExternalVideoParagraph) |
|
42 @factory_config(provided=IExternalVideoParagraph) |
38 class ExternalVideoParagraph(ExternalVideo, BaseParagraph): |
43 class ExternalVideoParagraph(ExternalVideo, BaseParagraph): |
39 """External video paragraph""" |
44 """External video paragraph""" |
40 |
45 |
41 icon_class = 'fa-youtube-play' |
46 icon_class = 'fa-youtube-play' |
42 icon_hint = _("External video") |
47 icon_hint = _("External video") |
43 |
48 |
44 body = FieldProperty(IExternalVideoParagraph['body']) |
49 body = FieldProperty(IExternalVideoParagraph['body']) |
|
50 renderer = FieldProperty(IExternalVideoParagraph['renderer']) |
45 |
51 |
46 |
52 |
47 @utility_config(name=EXTERNAL_VIDEO_PARAGRAPH_TYPE, provides=IParagraphFactory) |
53 @utility_config(name=EXTERNAL_VIDEO_PARAGRAPH_TYPE, provides=IParagraphFactory) |
48 class ExternalVideoParagraphFactory(BaseParagraphFactory): |
54 class ExternalVideoParagraphFactory(BaseParagraphFactory): |
49 """External video paragraph factory""" |
55 """External video paragraph factory""" |