10 # FOR A PARTICULAR PURPOSE. |
10 # FOR A PARTICULAR PURPOSE. |
11 # |
11 # |
12 |
12 |
13 __docformat__ = 'restructuredtext' |
13 __docformat__ = 'restructuredtext' |
14 |
14 |
|
15 from heapq import merge |
|
16 from itertools import chain, zip_longest |
|
17 from random import shuffle |
15 |
18 |
16 # import standard library |
19 from zope.componentvocabulary.vocabulary import UtilityTerm, UtilityVocabulary |
17 from heapq import merge |
|
18 from random import shuffle |
|
19 from itertools import chain, zip_longest |
|
20 |
|
21 # import interfaces |
|
22 from pyams_content.shared.view.interfaces import VIEWS_MERGERS_VOCABULARY, IViewsMerger, CREATION_DATE_ORDER, \ |
|
23 UPDATE_DATE_ORDER, PUBLICATION_DATE_ORDER, FIRSTPUBLICATION_DATE_ORDER |
|
24 from pyams_workflow.interfaces import IWorkflowPublicationInfo |
|
25 from zope.dublincore.interfaces import IZopeDublinCore |
20 from zope.dublincore.interfaces import IZopeDublinCore |
26 |
21 |
27 # import packages |
22 from pyams_content.shared.view.interfaces import CREATION_DATE_ORDER, FIRSTPUBLICATION_DATE_ORDER, IViewsMerger, \ |
|
23 PUBLICATION_DATE_ORDER, UPDATE_DATE_ORDER, VIEWS_MERGERS_VOCABULARY |
28 from pyams_utils.registry import utility_config |
24 from pyams_utils.registry import utility_config |
29 from pyams_utils.request import check_request |
25 from pyams_utils.request import check_request |
30 from pyams_utils.vocabulary import vocabulary_config |
26 from pyams_utils.vocabulary import vocabulary_config |
31 from zope.componentvocabulary.vocabulary import UtilityVocabulary, UtilityTerm |
27 from pyams_workflow.interfaces import IWorkflowPublicationInfo |
32 |
28 |
33 from pyams_content import _ |
29 from pyams_content import _ |
34 |
30 |
35 |
31 |
36 @vocabulary_config(name=VIEWS_MERGERS_VOCABULARY) |
32 @vocabulary_config(name=VIEWS_MERGERS_VOCABULARY) |