Пример #1
0
class IExample(IResource):

    metadata("categories")

    index_field("boolean_field", type="boolean")
    boolean_field = schema.Bool(required=False)

    index_field("categories", field_mapping=CATEGORIES_MAPPING)
    categories = schema.List(title="categories",
                             default=[],
                             value_type=schema.JSONField(title="term",
                                                         schema=TERM_SCHEMA))

    textline_field = schema.TextLine(title="kk",
                                     widget="testing",
                                     required=False)
    text_field = schema.Text(required=False)
    dict_value = schema.Dict(key_type=schema.TextLine(),
                             value_type=schema.TextLine(),
                             required=False)
    datetime = schema.Datetime(required=False)
    jsonfield_value = schema.JSONField(schema={"type": "array"},
                                       required=False)
    write_permission(write_protected="example.MyPermission")
    write_protected = schema.TextLine(title="Write protected field",
                                      required=False)

    default_factory_test = schema.Text(defaultFactory=lambda: "foobar")

    context_default_factory_test = schema.Text(
        defaultFactory=ContextDefaultFactory())
Пример #2
0
class ICMSBehavior(Interface):

    index_field("is_folderish", store=True, type="boolean")
    is_folderish = schema.Bool(title="Is a folderish object", readonly=True)

    index_field("hidden_navigation", store=True, type="boolean")
    fieldset("hidden_navigation", "settings")
    hidden_navigation = schema.Bool(title="Should be hidden on navigation",
                                    required=False,
                                    default=False)

    index_field("language", store=True, type="keyword")
    fieldset("language", "categorization")
    language = schema.Choice(title="Language",
                             required=False,
                             source="languages")

    index_field("content_layout", store=True, type="keyword")
    fieldset("content_layout", "settings")
    content_layout = schema.Choice(title="Content Layout",
                                   required=False,
                                   source="content_layouts",
                                   default="default")

    fieldset("allow_discussion", "settings")
    allow_discussion = schema.Bool(title="Allow discussion",
                                   required=False,
                                   default=False)

    # not absolute positioning, just a relative positioning
    # based on ordered numbers. It won't be numbers like 1,2,3,4,5,etc
    index_field("position_in_parent", type="int")
    position_in_parent = schema.Int(title="Position in parent",
                                    default=-1,
                                    required=False)

    index_field("review_state", store=True, type="keyword")
    review_state = schema.Choice(readonly=True,
                                 title="Workflow review state",
                                 required=False,
                                 source="worklow_states")

    history = schema.List(
        title="History list",
        readonly=True,
        required=False,
        value_type=schema.JSONField(title="History element",
                                    schema=HISTORY_SCHEMA),
    )

    comments = schema.Dict(
        title="Comments list field",
        required=False,
        key_type=schema.TextLine(title="CommentID"),
        value_type=schema.JSONField(title="Comment", schema=DISCUSSION_SCHEMA),
    )
Пример #3
0
class IExample(IResource):

    metadata('categories')

    index_field('boolean_field', type='boolean')
    boolean_field = schema.Bool(required=False)

    index_field('categories', field_mapping=CATEGORIES_MAPPING)
    categories = schema.List(title='categories',
                             default=[],
                             value_type=schema.JSONField(title='term',
                                                         schema=TERM_SCHEMA))

    textline_field = schema.TextLine(title='kk',
                                     widget='testing',
                                     required=False)
    text_field = schema.Text(required=False)
    dict_value = schema.Dict(key_type=schema.TextLine(),
                             value_type=schema.TextLine(),
                             required=False)
    datetime = schema.Datetime(required=False)

    write_permission(write_protected='example.MyPermission')
    write_protected = schema.TextLine(
        title='Write protected field',
        required=False,
    )

    default_factory_test = schema.Text(defaultFactory=lambda: 'foobar')

    context_default_factory_test = schema.Text(
        defaultFactory=ContextDefaultFactory())
Пример #4
0
class ICMSBehavior(Interface):

    index_field('hidden_navigation', type='boolean')
    fieldset('hidden_navigation', 'settings')
    hidden_navigation = schema.Bool(title='Should be hidden on navigation',
                                    required=False,
                                    default=False)

    index_field('language', type='keyword')
    fieldset('language', 'categorization')
    language = schema.Choice(title='Language',
                             required=False,
                             source='languages')

    index_field('content_layout', type='keyword')
    fieldset('content_layout', 'settings')
    content_layout = schema.Choice(title='Content Layout',
                                   required=False,
                                   source='content_layouts',
                                   default='default')

    index_field('position_in_parent', type='int')
    position = schema.Int(title='Position in parent', required=False)

    index_field('review_state', type='keyword')
    review_state = schema.Choice(readonly=True,
                                 title='Workflow review state',
                                 required=False,
                                 source='worklow_states')

    history = schema.List(title='History list',
                          readonly=True,
                          required=False,
                          value_type=schema.JSONField(title='History element',
                                                      schema=HISTORY_SCHEMA))
Пример #5
0
class ILayoutComponents(Interface):

    components = schema.JSONField(
        title="Layout enabled components by type",
        required=False,
        schema=LAYOUT_TYPE_COMPONENTS,
        defaultFactory=dict,
    )
Пример #6
0
class IReactPageLayout(Interface):

    fieldset_field("layout", "default")
    layout = schema.JSONField(
        title="Layout field",
        required=False,
        schema=REACT_PAGE_LAYOUT
    )
Пример #7
0
class IGutenberg(Interface):

    fieldset_field("gutenberg", "default")
    gutenberg = schema.List(
        title="Gutenberg list object",
        required=False,
        default=[],
        value_type=schema.JSONField(title="Element Gutenberg", schema=GUTENBERG_SCHEMA),
    )
Пример #8
0
class IMenu(Interface):

    definition = schema.JSONField(title="Menu definition",
                                  required=False,
                                  schema=MENU_LAYOUT,
                                  defaultFactory=list)

    logo = schema.Text(title="Logo",
                       required=False,
                       defaultFactory=get_default_logo)
Пример #9
0
class IFieldType(Interface):
    title = schema.Text()
    description = schema.Text()
    type = schema.Choice(
        values=["date", "integer", "text", "float", "keyword", "boolean"],
        required=True)
    required = schema.Bool(default=False)
    meta = schema.JSONField(title="Additional information on field",
                            required=False,
                            schema={
                                "type": "object",
                                "properties": {}
                            })
Пример #10
0
class IExample(IResource):

    metadata('categories')

    index('categories', type='nested')
    categories = schema.List(title='categories',
                             default=[],
                             value_type=schema.JSONField(title='term',
                                                         schema=TERM_SCHEMA))

    textline_field = schema.TextLine()
    text_field = schema.Text()
    dict_value = schema.Dict(key_type=schema.TextLine(),
                             value_type=schema.TextLine())
    datetime = schema.Datetime()
Пример #11
0
class IWorkflowBehavior(Interface):

    index_field("review_state", store=True, type="keyword")
    review_state = schema.Choice(
        readonly=True,
        title="Workflow review state",
        required=False,
        defaultFactory=DefaultReviewState(),
        source="worklow_states",
    )

    history = schema.List(
        title="History list",
        readonly=True,
        required=False,
        defaultFactory=list,
        value_type=schema.JSONField(title="History element", schema=HISTORY_SCHEMA),
    )
Пример #12
0
class IExample(IResource):

    metadata('categories')

    index_field('categories', type='nested')
    categories = schema.List(title='categories',
                             default=[],
                             value_type=schema.JSONField(title='term',
                                                         schema=TERM_SCHEMA))

    textline_field = schema.TextLine(title='kk',
                                     widget='testing',
                                     required=False)
    text_field = schema.Text(required=False)
    dict_value = schema.Dict(key_type=schema.TextLine(),
                             value_type=schema.TextLine(),
                             required=False)
    datetime = schema.Datetime(required=False)
Пример #13
0
class IFieldType(Interface):
    title = schema.Text(required=False)
    description = schema.Text(required=False)
    type = schema.Choice(
        values=['date', 'integer', 'text', 'float', 'keyword', 'boolean']
    )
    required = schema.Bool(
        default=False,
        required=False
    )
    meta = schema.JSONField(
        title="Additional information on field",
        required=False,
        schema=json.dumps({
            'type': 'object',
            'properties': {}
        })
    )
Пример #14
0
class IContentRuleSettings(Interface):
    rules = schema.JSONField()
Пример #15
0
class IAction(Interface):
    action_type = schema.TextLine()
    configuration = schema.JSONField()
Пример #16
0
class IContent(IItem):
    view = schema.Text()
    data = schema.JSONField()