Esempio n. 1
0
class ISyndicationSettings(Interface):

    max_items = schema.Int(
        title="Maximum items",
        description="Maximum number of items that will be syndicated.",
        default=15,
    )

    sort_on = schema.Choice(
        title="Sort on",
        default="creation_date",
        source=AppSettingSource(
            "syndication.sort_on",
            missing=[
                ["creation_date", "Publication Date"],
                ["effective_date", "Publication Date"],
                ["modification_date", "Modification Date"],
            ],
        ),
    )

    sort_reverse = schema.Bool(title="Reverse sort",
                               description="Order items in reverse order",
                               default=True)

    categories = schema.List(
        title="Categories",
        description="(not used with all feed types)",
        value_type=schema.TextLine(),
        default=[],
        required=False,
        missing_value=[],
    )
Esempio n. 2
0
class IUser(IFolder, IPrincipal):

    username = schema.TextLine(title=_("Username"), required=False)

    index_field("email", index_name="user_email", type="keyword")
    email = schema.TextLine(title=_("Email"), required=False)

    index_field("name", index_name="user_name", type="textkeyword")
    name = schema.TextLine(title=_("Name"), required=False)

    read_permission(password="******")
    password = schema.TextLine(title=_("Password"), required=False)

    write_permission(user_groups="guillotina.ManageUsers")
    user_groups = schema.List(title=_("Groups"), value_type=schema.TextLine(), required=False)

    write_permission(user_roles="guillotina.ManageUsers")
    index_field("user_roles", type="textkeyword")
    user_roles = schema.List(title=_("Roles"), value_type=schema.TextLine(), required=False)

    write_permission(user_permissions="guillotina.ManageUsers")
    user_permissions = schema.List(
        title=_("Permissions"), value_type=schema.TextLine(), required=False, default=[]
    )

    write_permission(disabled="guillotina.ManageUsers")
    disabled = schema.Bool(title=_("Disabled"), default=False)

    properties = schema.Dict(required=False, default={})
Esempio n. 3
0
class ISegmentEffort(IItem):

    metadata("id_strava")
    index_field("id_strava", type="text")
    id_strava = schema.TextLine(title="Strava id")

    metadata("name")
    index_field("name", type="text")
    name = schema.TextLine(title="Name")

    metadata("activity")
    index_field("activity", type="text")
    activity = schema.TextLine(title="Activity")

    metadata("segment")
    index_field("segment", type="text")
    segment = schema.TextLine(title="Segment")

    metadata("elapsed_time")
    index_field("elapsed_time", type="int")
    elapsed_time = schema.Int(title="Elapsed time")

    metadata("moving_time")
    index_field("moving_time", type="int")
    moving_time = schema.Int(title="Moving time")

    metadata("start_date")
    index_field("start_date", type="date")
    start_date = schema.Datetime(title="Start date")

    metadata("start_date_local")
    index_field("start_date_local", type="date")
    start_date_local = schema.Datetime(title="Start date local")

    metadata("distance")
    index_field("distance", type="float")
    distance = schema.Float(title="Distance")

    start_index = schema.Float(title="Start index")
    end_index = schema.Float(title="End index")

    metadata("average_cadence")
    index_field("average_cadence", type="float")
    average_cadence = schema.Float(title="Average cadence")

    metadata("average_heartrate")
    index_field("average_heartrate", type="float")
    average_heartrate = schema.Float(title="Average heartrate")

    metadata("max_heartrate")
    index_field("max_heartrate", type="int")
    max_heartrate = schema.Int(title="Max heartrate")

    metadata("device_watts")
    index_field("device_watts", type="boolean")
    device_watts = schema.Bool(title="Device watts")

    metadata("average_watts")
    index_field("average_watts", type="float")
    average_watts = schema.Float(title="Average watts")
Esempio n. 4
0
def test_all(dummy_request):
    mapping = [
        (schema.Object(schema=IResource),
         serialize_schema_field.DefaultSchemaFieldSerializer),
        (schema.Text(),
         serialize_schema_field.DefaultTextSchemaFieldSerializer),
        (schema.TextLine(),
         serialize_schema_field.DefaultTextLineSchemaFieldSerializer),
        (schema.Float(),
         serialize_schema_field.DefaultFloatSchemaFieldSerializer),
        (schema.Int(), serialize_schema_field.DefaultIntSchemaFieldSerializer),
        (schema.Bool(),
         serialize_schema_field.DefaultBoolSchemaFieldSerializer),
        (schema.List(),
         serialize_schema_field.DefaultCollectionSchemaFieldSerializer),
        (schema.Choice(values=('one', 'two')),
         serialize_schema_field.DefaultChoiceSchemaFieldSerializer),
        (schema.Object(schema=IResource),
         serialize_schema_field.DefaultObjectSchemaFieldSerializer),
        (schema.Date(),
         serialize_schema_field.DefaultDateSchemaFieldSerializer),
        (schema.Time(),
         serialize_schema_field.DefaultTimeSchemaFieldSerializer),
        (schema.Dict(),
         serialize_schema_field.DefaultDictSchemaFieldSerializer),
        (schema.Datetime(),
         serialize_schema_field.DefaultDateTimeSchemaFieldSerializer),
    ]
    container = Container()
    for field, klass in mapping:
        adapter = get_multi_adapter((field, container, dummy_request),
                                    interface=ISchemaFieldSerializeToJson)
        assert isinstance(adapter, klass)
Esempio n. 5
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())
Esempio n. 6
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)

    comments = schema.Dict(
        title="Comments list field",
        required=False,
        key_type=schema.TextLine(title="CommentID"),
        value_type=schema.JSONField(title="Comment", schema=DISCUSSION_SCHEMA),
    )
Esempio n. 7
0
class IDynamicType(Interface):
    '''
    Used to dynamicly bind data to validate
    new values against
    '''
    date = schema.Datetime(required=False)
    text = schema.Text(required=False)
    integer = schema.Int(required=False)
    float = schema.Float(required=False)
    boolean = schema.Bool(required=False)
    keyword = schema.Text(required=False)
Esempio n. 8
0
class IFollowing(Interface):

    index_field("favorites", type="keyword", store=True)

    read_permission(favorites="guillotina.")
    write_permission(favorites="guillotina.NoBody")
    favorites = schema.List(title=u"favorites",
                            default=[],
                            value_type=schema.TextLine(title="follower"))

    favorite = schema.Bool(title=u"Current user has it favorited",
                           default=False)
Esempio n. 9
0
class IFollowing(Interface):

    index_field('favorites', type='keyword', store=True)

    read_permission(favorites='guillotina.')
    write_permission(favorites='guillotina.NoBody')
    favorites = schema.List(title=u'favorites',
                            default=[],
                            value_type=schema.TextLine(title='follower'))

    favorite = schema.Bool(title=u'Current user has it favorited',
                           default=False)
Esempio n. 10
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": {}
                            })
Esempio n. 11
0
class IDynamicType(Interface):
    """
    Used to dynamicly bind data to validate
    new values against
    """

    date = schema.Datetime(required=False)
    text = schema.Text(required=False)
    integer = schema.Int(required=False)
    float = schema.Float(required=False)
    boolean = schema.Bool(required=False)
    keyword = schema.UnionField(
        schema.List(required=False, value_type=schema.Text()), schema.Text(required=False), required=False
    )
Esempio n. 12
0
class IUser(IFolder, IPrincipal):

    username = schema.TextLine(
        title=_('Username'),
        required=False)

    email = schema.TextLine(
        title=_('Email'),
        required=False)

    name = schema.TextLine(
        title=_('Name'),
        required=False)

    read_permission(password='******')
    password = schema.TextLine(
        title=_('Password'),
        required=False)

    user_groups = schema.List(
        title=_('Groups'),
        value_type=schema.TextLine(),
        required=False
    )

    user_roles = schema.List(
        title=_('Roles'),
        value_type=schema.TextLine(),
        required=False
    )

    user_permissions = schema.List(
        title=_('Permissions'),
        value_type=schema.TextLine(),
        required=False,
        default=[]
    )

    disabled = schema.Bool(
        title=_('Disabled'),
        default=False
    )

    properties = schema.Dict(
        required=False,
        default={}
    )
Esempio n. 13
0
class ILap(IItem):
    id_strava = schema.TextLine(title="Strava id")
    name = schema.TextLine(title="Name")
    elapsed_time = schema.Int(title="Elapsed time")
    moving_time = schema.Int(title="Moving time")
    start_date = schema.Datetime(title="Start date")
    start_date_local = schema.Datetime(title="Start date local")
    distance = schema.Float(title="Distance")

    start_index = schema.Float(title="Start index")
    end_index = schema.Float(title="End index")
    total_elevation_gain = schema.Int(title="Total elevation gain")
    average_speed = schema.Float(title="Averge speed")
    max_speed = schema.Float(title="Max speed")
    average_cadence = schema.Float(title="Average cadence")
    average_watts = schema.Float(title="Average watts")
    device_watts = schema.Bool(title="Device watts")
Esempio n. 14
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': {}
        })
    )
Esempio n. 15
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()
    )
Esempio n. 16
0
class ITestingRegistryUpdated(Interface):  # pylint: disable=E0239
    enabled = schema.Bool(
        title="Example attribute")
    test = schema.Bool(
        title="Example attribute")
Esempio n. 17
0
class ITestingRegistry(Interface):
    enabled = schema.Bool(
        title="Example attribute")
Esempio n. 18
0
class IActivity(IFolder):

    metadata("id_strava")
    index_field("id_strava", type="text")
    id_strava = schema.TextLine(title="Strava id")

    metadata("name")
    index_field("name", type="text")
    name = schema.TextLine(title="Name")

    metadata("distance")
    index_field("distance", type="float")
    distance = schema.Int(title="Distance")

    metadata("moving_time")
    index_field("moving_time", type="int")
    moving_time = schema.Int(title="Moving time")

    elapsed_time = schema.Int(title="Elapsed time")

    metadata("total_elevation_gain")
    index_field("total_elevation_gain", type="int")
    total_elevation_gain = schema.Int(title="Total elevation gain")

    metadata("type_activity")
    index_field("type_activity", type="text")
    type_activity = schema.TextLine(title="Type")  # Pass to vocabulary

    metadata("start_date")
    index_field("start_date", type="date")
    start_date = schema.Datetime(title="Start date")

    start_date_local = schema.Datetime(title="Start date local")
    timezone = schema.TextLine(title="Timezone")
    utc_offset = schema.Int(title="Utc offset")

    metadata("average_speed")
    index_field("average_speed", type="float")
    average_speed = schema.Float(title="Averge speed")

    metadata("max_speed")
    index_field("max_speed", type="float")
    max_speed = schema.Float(title="Max speed")

    metadata("average_cadence")
    index_field("average_cadence", type="float")
    average_cadence = schema.Float(title="Average cadence")

    metadata("average_watts")
    index_field("average_watts", type="float")
    average_watts = schema.Float(title="Average watts")

    metadata("weighted_average_watts")
    index_field("weighted_average_watts", type="float")
    weighted_average_watts = schema.Float(title="Weighted average watts")

    metadata("kilojoules")
    index_field("kilojoules", type="float")
    kilojoules = schema.Float(title="Kilojoules")

    metadata("device_watts")
    index_field("device_watts", type="boolean")
    device_watts = schema.Bool(title="Device watts")

    metadata("max_watts")
    index_field("max_watts", type="float")
    max_watts = schema.Float(title="Max watts")

    metadata("average_heartrate")
    index_field("average_heartrate", type="float")
    average_heartrate = schema.Float(title="Average heartrate")

    metadata("max_heartrate")
    index_field("max_heartrate", type="int")
    max_heartrate = schema.Int(title="Max heartrate")

    elev_high = schema.Float(title="Elev high")
    elev_low = schema.Float(title="Elev low")
    calories = schema.Float(title="Calories")