class IDummy(form.Schema):

            form.primary('foo')
            form.primary('bar', 'baz')

            foo = zope.schema.TextLine(title=u"Foo")
            bar = zope.schema.TextLine(title=u"Bar")
            baz = zope.schema.TextLine(title=u"Baz")
            qux = zope.schema.TextLine(title=u"Qux")
Example #2
0
class ICommittee(form.Schema, IImageScaleTraversable):
    """
    TBFAC Committee Type
    """
    
    # If you want a schema-defined interface, delete the form.model
    # line below and delete the matching file in the models sub-directory.
    # If you want a model-based interface, edit
    # models/committee.xml to define the content type
    # and add directives here as necessary.
    
    #form.model("models/committee.xml")

    title = schema.TextLine(
        title=_(u"Name"),
    )

    category = schema.Choice(
        title=_(u'Award Category'),
        values=[_(u'Visual Arts'), _(u'Performing Arts'), _(u'Uncatrgorized')],
        required=True,
    )

    group = schema.List(
        title=_(u"Group"),
        value_type=schema.Choice(
            values=[_(u"NominatorGroup"), _(u"ObserverGroup"), _(u"Jury"), _(u"Committee"), _(u"FinalReviewer"), _(u"RecommendGroup")]
        )
    )

    year = schema.TextLine(
        title=_(u"Year"),
    )

    description = schema.Text(
        title=_(u"Description"),
        required=False,
    )

    form.primary('bio')
    bio = RichText(
        title=_(u"Bio"),
        required=False,
    )

    form.primary('photo')
    photo = NamedImage(
        title=_(u"Photo"),
        description=_(u"Upload Photo"),
        required=False,
    )
Example #3
0
class IRoom(form.Schema):
    """A conference room.
    """
    
    title = schema.TextLine(
            title=_(u"Name of the Room"),
        )


    description = schema.Text(
            title=_(u"A description of the room and its location"),
        )

    
    picture = NamedBlobImage(
            title=_(u"A picture of the room"),
            description=_(u"Please upload an image"),
            required=False,
        )
    
    form.primary ('details')
    details = RichText(
             title=_(u"A full description of the room, it's location and the way to get there"),
             required=True,                          
        )
    
    capacity = schema.Int(
             title=_(u"Capacity of the room"),
             description=_(u"Please fill in the maximum number of attendees"),
             required=False,
        )
Example #4
0
class IDocumentSchema(form.Schema):
    """Document Schema Interface."""

    form.fieldset(
        u'common',
        label=_(u'fieldset_common', u'Common'),
        fields=[
            u'title',
            u'file',
        ],
    )

    dexteritytextindexer.searchable('title')
    form_directives.order_before(title='IDocumentMetadata.description')
    title = schema.TextLine(title=_(u'label_title', default=u'Title'),
                            required=False)

    form.primary('file')
    form_directives.order_after(file='IDocumentMetadata.document_author')
    file = field.NamedBlobFile(
        title=_(u'label_file', default='File'),
        description=_(u'help_file', default=''),
        required=False,
    )

    @invariant
    def title_or_file_required(data):
        if not data.title and not data.file:
            raise Invalid(
                _(u'error_title_or_file_required',
                  default=u'Either the title or the file is '
                  'required.'))
Example #5
0
class ISablonTemplate(IDocumentSchema):

    form.primary('file')
    file = NamedBlobFile(
        title=_(u'label_sablon_template_file', default='File'),
        required=True,
    )
Example #6
0
class IDateAndTimeSchema(form.Schema):

    form.primary('datetime')
    zope_datetime = schema.Datetime(title=u'Zope Datetime')
    datetime = schema.Datetime(title=u'Datetime')
    date = schema.Date(title=u'Date')
    time = schema.Time(title=u'Time')
Example #7
0
class IBlobDataset(IDataset):

    # TODO: a primary field should not be required. possible bug in plone core
    form.primary('file')
    file = NamedBlobFile(title=_(u"File"),
                         description=_(u"Data content"),
                         required=True)
Example #8
0
class IAdvancedPage(form.Schema, IImageScaleTraversable):
    """
    An advanced page with some goodies
    """

    form.primary('body')
    form.widget(body=AceEditorFieldWidget)
    body = schema.Text(
        title=_(u"Body"),
        description=_(
            u"Fill in the body of the page. Supports TAL templating."),
        required=True,
        default=u"")

    show_title = schema.Bool(
        title=_(u'Show title?'),
        default=False,
    )

    show_description = schema.Bool(
        title=_(u'Show description?'),
        default=False,
    )

    include_hidden_structure = schema.Bool(
        title=_(u'Include hidden structure?'),
        description=_(u'This will render title and description '
                      u'for SEO even if not showing them.'),
        default=False,
    )
Example #9
0
class IABCTune(form.Schema):

    dexteritytextindexer.searchable('abc')
    form.primary('abc')
    abc = schema.Text(title=_(u"Tune abc"),
                      description=_(u'The tune in abc format'),)

    dexteritytextindexer.searchable('tunekeys')
    form.omitted('tunekeys')
    tunekeys = schema.List(title=u'keys',
                           description=u'set by abc content',
                           required=False,
                           value_type=schema.TextLine(required=False),
                           )

    dexteritytextindexer.searchable('tunetype')
    form.omitted('tunetype')
    tunetype = schema.TextLine(title=_(u"The type of the tune"),
                               description=_(u"from the field R:"),
                               required=False,
                               )
    # NOTE: as specified in the v2.1 standard, A: field is deprecated
    # so, only O: is used to specified country and areas... separated
    # by ';'
    dexteritytextindexer.searchable('tunearea')
    form.omitted('tunearea')
    tunearea = schema.TextLine(title=tunearea_title,
                               description=tunearea_desc,
                               required=False,
                               )
    dexteritytextindexer.searchable('tunecountry')
    form.omitted('tunecountry')
    tunecountry = schema.TextLine(title=tunecountry_title,
                                  description=_(u"The country"),
                                  required=False,
                                  )

    form.omitted('score')
    score = NamedBlobImage(title=_(u"Score"),
                           description=score_desc,
                           required=False,)

    form.omitted('pdfscore')
    pdfscore = NamedBlobFile(title=_(u"PDF Score"),
                             description=_(u'The score of the tune as PDF'),
                             required=False,
                             )

    form.omitted('midi')
    midi = NamedBlobFile(title=_(u"Midi"),
                         description=_(u'Midi sound of the tune'),
                         required=False,
                         )
    form.omitted('sound')
    sound = NamedBlobFile(title=_(u"sound"),
                          description=_(u'The mp3 sound of the tune'),
                          required=False,
                          )
Example #10
0
class IJury(form.Schema, IImageScaleTraversable):
    """
    TBFAC Jury Type
    """

    # If you want a schema-defined interface, delete the form.model
    # line below and delete the matching file in the models sub-directory.
    # If you want a model-based interface, edit
    # models/jury.xml to define the content type
    # and add directives here as necessary.

    #form.model("models/jury.xml")

    title = schema.TextLine(title=_(u"Name"), )

    description = schema.Text(
        title=_(u"Description"),
        required=False,
    )

    category = schema.Choice(
        title=_(u'Award Category'),
        values=[_(u'Visual Arts'),
                _(u'Performing Arts'),
                _(u'Uncatrgorized')],
        required=True,
    )

    form.primary('bio')
    bio = RichText(
        title=_(u"Bio"),
        required=False,
    )

    form.primary('photo')
    photo = NamedImage(
        title=_(u"Photo"),
        description=_(u"Upload Photo"),
        required=False,
    )
Example #11
0
class INECDFile(form.Schema, IImageScaleTraversable):
    """
    Files with special needs
    """
    title = schema.TextLine(
        title=_(u'Title'),
        required=False,
    )

    form.primary('file')
    file = NamedBlobFile(
        title=_(u'File'),
        required=True,
    )
Example #12
0
class IBlogEntry(form.Schema, IImageScaleTraversable):
    """
    A single blogentry that can contain images
    """
    form.primary('text')
    text = RichText(
        title=_(u"Blog Entry"),
        description=_(u"Please enter main body text for this blog entry"),
        required=False,
    )
    allow_discussion = schema.Bool(
        title=_(u"Allow discussion on this item?"),
        default=True,
    )
class ICallforpaper(form.Schema):
    """A call for paper for a conference. 
    A call for paper can contain incomming talks.
    """

    title = schema.TextLine(title=_(u"Call for paper title"), )

    description = schema.Text(title=_(u"Call for paper summary"), )

    form.primary('details')
    details = RichText(
        title=_(u"Details"),
        description=_(u"Details about the program"),
        required=True,
    )
Example #14
0
class IProgram(model.Schema):
    """A conference program. Programs can contain Sessions.
    """

    title = schema.TextLine(title=_(u"Program name"), )

    description = schema.Text(title=_(u"Program summary"), )

    start = schema.Datetime(
        title=_(u"Start date"),
        required=False,
    )

    end = schema.Datetime(
        title=_(u"End date"),
        required=False,
    )

    form.primary('details')
    details = RichText(
        title=_(u"Details"),
        description=_(u"Details about the program"),
        required=False,
    )

    form.widget(organizer=AutocompleteFieldWidget)
    organizer = schema.Choice(
        title=_(u"Organiser"),
        vocabulary=u"plone.principalsource.Users",
        required=False,
    )

    form.widget(tracks=TextLinesFieldWidget)
    tracks = schema.List(
        title=_(u"Tracks"),
        required=True,
        default=[],
        value_type=schema.TextLine(),
    )

    @invariant
    def validateStartEnd(data):
        if data.start is not None and data.end is not None:
            if data.start > data.end:
                raise StartBeforeEnd(
                    _(u"The start date must be before the end date."))
Example #15
0
class IDXItemSchema(Schema):

    primary('file_field')

    bool_field = schema.Bool(title=u'Bool Field', default=False)
    choice_field = schema.Choice(title=u'Choice Field', vocabulary=COLORS)
    date_field = schema.Date(title=u'Date Field')
    datetime_field = schema.Datetime(title=u'Datetime Field')
    decimal_field = schema.Decimal(title=u'Float Field')
    dottedname_field = schema.URI(title=u'DottedName Field')
    file_field = NamedFile(title=u'File Field')
    float_field = schema.Float(title=u'Float Field')
    image_field = NamedImage(title=u'Image Field')
    list_field = schema.List(title=u'List Field')
    richtext_field = RichText(title=u'Rich Text Field')
    text_field = schema.Text(title=u'Text Field')
    time_field = schema.Time(title=u'Time Field')
    timedelta_field = schema.Timedelta(title=u'Timedelta Field')
    uri_field = schema.URI(title=u'URI Field')
Example #16
0
class ITrack(form.Schema):
    """A conference track. Tracks are managed inside Programs.
    """

    title = schema.TextLine(
        title=_(u"Title"),
        description=_(u"Track title"),
    )

    description = schema.Text(title=_(u"Track summary"), )

    form.primary('details')
    details = RichText(title=_(u"Track details"), required=False)

    start = schema.Datetime(
        title=_(u"Startdate"),
        description=_(u"Start date"),
        required=False,
    )

    end = schema.Datetime(
        title=_(u"Enddate"),
        description=_(u"End date"),
        required=False,
    )
    # use an autocomplete selection widget instead of the default content tree
    form.widget(room=AutocompleteFieldWidget)
    room = RelationChoice(
        title=_(u"Room"),
        source=ObjPathSourceBinder(object_provides=IRoom.__identifier__),
        required=False,
    )

    #    room = schema.TextLine(
    #            title= _(u"Room"),
    #        )

    @invariant
    def validateStartEnd(data):
        if data.start is not None and data.end is not None:
            if data.start > data.end:
                raise StartBeforeEnd(
                    _(u"The start date must be before the end date."))
Example #17
0
class INoteSchemaPrimary(form.Schema):
    form.primary('blob')
    blob = field.NamedBlobFile(
        title=u'blobfile',
        required=False,
    )
Example #18
0
class ITextSchema(form.Schema):

    form.primary('text')
    text = RichText(title=u'Text')
Example #19
0
class IImageSchema(form.Schema):

    form.primary('image')
    image = NamedImage(title=u'image')
Example #20
0
class IFileSchema(form.Schema):

    form.primary('file')
    file = NamedFile(title=u'File')
class IEUpProject(model.Schema):

    dexteritytextindexer.searchable('title')
    title = schema.TextLine(
        title=_(u"Title"),
        description=_(u"Project Title - minimum 5 and maximum 50 characters"),
        min_length=5,
        max_length=50)

    dexteritytextindexer.searchable('description')
    description = schema.Text(title=_(u"Project Summary"), )

    dexteritytextindexer.searchable('details')
    form.primary('details')
    details = RichText(title=_(u"Full Project Description"), required=False)

    dexteritytextindexer.searchable('category_choice')
    form.widget(category_choice=CheckBoxFieldWidget)
    category_choice = schema.List(
        title=_(u"Choose your categories"),
        description=
        _(u"Please select the appropriate categories (one or more) for your project."
          ),
        value_type=schema.Choice(source=vocabCategories),
        constraint=isNotEmptyCategory,
        required=True)

    contactAddress = schema.TextLine(
        title=_(u"Contact email-address"),
        description=_(u"Contact email-address for the project."),
        constraint=validateEmail)

    homepage = schema.URI(
        title=_(u"Homepage"),
        description=
        _(u"If the project has an external home page, enter its URL (example: 'http://www.mysite.org')."
          ),
        required=False)

    documentation_link = schema.URI(
        title=_(u"URL of documentation repository "),
        description=_(u"If the project has externally hosted "
                      u"documentation, enter its URL "
                      u"(example: 'http://www.mysite.org')."),
        required=False)

    documentation_file = NamedBlobFile(
        title=_(u"Dokumentation File"),
        description=
        _(u"If you have a Documentation in the file format 'PDF' or 'ODT' you could add it here."
          ),
        required=False,
        constraint=validatedocfileextension)

    project_logo = NamedBlobImage(
        title=_(u"Logo"),
        description=
        _(u"Add a logo for the project (or organization/company) by clicking the 'Browse' button."
          u"You could provide an image of the file format 'png', 'gif' or 'jpg'."
          ),
        required=False,
        constraint=validateImageextension)

    screenshot = NamedBlobImage(
        title=_(u"Screenshot of the Extension"),
        description=_(
            u"Add a screenshot by clicking the 'Browse' button. You could provide an image of the file "
            u"format 'png', 'gif' or 'jpg'."),
        required=False,
        constraint=validateImageextension)

    @invariant
    def missingScreenshotOrLogo(data):
        if not data.screenshot and not data.project_logo:
            raise ProvideScreenshotLogo(
                _(u'Please add a screenshot or a logo to your project page. You will find the '
                  u'appropriate fields below on this page.'))
Example #22
0
class ITalk(form.Schema):
    """A conference talk. Talks are managed inside tracks of the Program.
    """

    length = SimpleVocabulary([
        SimpleTerm(value=u'30', title=_(u'30 minutes')),
        SimpleTerm(value=u'45', title=_(u'45 minutes')),
        SimpleTerm(value=u'60', title=_(u'60 minutes'))
    ])

    #    talktrack = SimpleVocabulary(
    #       [SimpleTerm(value=u'UX', title=_(u'Usability')),
    #        SimpleTerm(value=u'Core-Development', title=_(u'Development in the Core')),
    #        SimpleTerm(value=u'Extension-Development', title=_(u'Development of Extensions')),]
    #        )

    title = schema.TextLine(
        title=_(u"Title"),
        description=_(u"Talk title"),
    )

    description = schema.Text(title=_(u"Talk summary"), )

    form.primary('details')
    details = RichText(title=_(u"Talk details"), required=True)

    # use an autocomplete selection widget instead of the default content tree
    form.widget(speaker=AutocompleteFieldWidget)
    speaker = RelationChoice(
        title=_(u"Presenter"),
        source=ObjPathSourceBinder(object_provides=ISpeaker.__identifier__),
        required=False,
    )
    form.widget(speaker=AutocompleteFieldWidget)
    speaker2 = RelationChoice(
        title=_(u"Co-Presenter"),
        source=ObjPathSourceBinder(object_provides=ISpeaker.__identifier__),
        required=False,
    )
    form.widget(track=AutocompleteFieldWidget)
    track = RelationChoice(
        title=_(u"Track"),
        source=ObjPathSourceBinder(object_provides=ITrack.__identifier__),
        required=False,
    )

    #
    #    start = schema.Datetime(
    #            title=_(u"Startdate"),
    #            description =_(u"Start date"),
    #            required=False,
    #        )
    #
    #    end = schema.Datetime(
    #            title=_(u"Enddate"),
    #            description =_(u"End date"),
    #            required=False,
    #        )
    #    talktrack= schema.Choice(
    #               title=_(u"Choose the Track for the Talk"),
    #               vocabulary=talktrack,
    #               required=True,
    #               )

    length = schema.Choice(
        title=_(u"Length"),
        vocabulary=length,
        required=True,
    )
    dexterity.write_permission(order='collective.conference.ModifyTrack')
    order = schema.Int(
        title=_(u"Orderintrack"),
        description=_(u"Order in the track: write in an Integer from 1 to 12"),
        min=1,
        max=12,
        required=False,
    )

    slides = NamedBlobFile(
        title=_(u"Presentation slides"),
        description=_(u"Please upload your presentation"),
        required=False,
    )

    creativecommonslicense = schema.Bool(
        title=_(
            u'label_creative_commons_license',
            default=
            u'License is Creative Commons Attribution-Share Alike 3.0 License.'
        ),
        description=_(
            u'help_creative_commons_license',
            default=
            u'You agree that your talk and slides are provided under the Creative Commons Attribution-Share Alike 3.0 License.'
        ),
        default=True)

    dexterity.read_permission(reviewNotes='cmf.ReviewPortalContent')
    dexterity.write_permission(reviewNotes='cmf.ReviewPortalContent')
    reviewNotes = schema.Text(
        title=u"Review notes",
        required=False,
    )
 class IFoo(form.Schema):
     form.primary('fou')
     foo = zope.schema.TextLine()
Example #24
0
class IInfo(form.Schema, IImageScaleTraversable):
    """
    TBFAC Info Type
    """

    # If you want a schema-defined interface, delete the form.model
    # line below and delete the matching file in the models sub-directory.
    # If you want a model-based interface, edit
    # models/info.xml to define the content type
    # and add directives here as necessary.

    #form.model("models/info.xml")

    organizer = schema.TextLine(
        title=_(u'Organizer'),
        required=False,
    )

    category = schema.List(
        title=_(u'Category'),
        value_type=schema.Choice(values=[
            _(u'Show'),
            _(u'Dancing'),
            _(u'Music'),
            _(u'Drama'),
            _(u'Opera')
        ]),
        required=False,
    )

    startDate = schema.Date(title=_(u'Start Date'), )

    endDate = schema.Date(title=_(u'End Date'), )

    dateDetails = schema.Text(
        title=_(u'Date Details'),
        description=_(u'Date Details Description'),
        required=False,
    )

    region = schema.List(
        title=_(u"Region"),
        value_type=schema.Choice(
            vocabulary='regions',
            required=False,
        ),
    )

    venue = RelationList(
        title=_(u'Venue'),
        value_type=RelationChoice(
            source=ObjPathSourceBinder(
                object_provides=IVenue.__identifier__,
                #navigation_tree_query={
                #    'path': {'query': '/taishin/venues'}
                #},
            ), ),
        required=False,
    )

    form.primary('text')
    text = RichText(
        title=_(u'Body'),
        required=False,
    )

    feeDetails = schema.Text(
        title=_(u'Fee Details'),
        description=_(u'Fee Details Description'),
        required=False,
    )

    ticketURL = schema.TextLine(
        title=_(u'Ticket URL'),
        required=False,
    )

    contactPhone = schema.TextLine(
        title=_(u'Contact Phone'),
        required=False,
    )

    contactName = schema.TextLine(
        title=_(u'Contact Name'),
        required=False,
    )

    eventURL = schema.TextLine(
        title=_(u'Event URL'),
        required=False,
    )

    image = NamedBlobImage(
        title=_(u'Lead Image'),
        description=_(u"Upload a Image of Size 230x230."),
        required=True,
    )

    banner = NamedBlobImage(
        title=_(u'Banner Image'),
        description=_(u"Upload a Image of Size 710x300."),
        required=False,
    )
Example #25
0
class ITaskTemplate(form.Schema):

    form.fieldset(
        u'common',
        label=_(u'fieldset_common', default=u'Common'),
        fields=[
            u'title',
            u'issuer',
            u'task_type',
            u'responsible_client',
            u'responsible',
            u'deadline',
            u'text',
            u'preselected'
                ],
            )

    title = schema.TextLine(
        title=_(u"label_title", default=u"Title"),
        description=_('help_title', default=u""),
        required=True,
    )

    form.widget(issuer=AutocompleteFieldWidget)
    issuer = schema.Choice(
        title=_(u"label_issuer", default=u"Issuer"),
        description=_('help_issuer', default=u""),
        vocabulary=u'opengever.tasktemplates.IssuerVocabulary',
        required=True,
        )

    form.widget(task_type='z3c.form.browser.radio.RadioFieldWidget')
    task_type = schema.Choice(
        title=_(u'label_task_type', default=u'Task Type'),
        description=_('help_task_type', default=u''),
        required=True,
        readonly=False,
        default=None,
        missing_value=None,
        source=util.getTaskTypeVocabulary,
    )

    responsible_client = schema.Choice(
        title=_(u'label_resonsible_client',
                default=u'Responsible Client'),
        description=_(u'help_responsible_client',
                      default=u''),
        vocabulary='opengever.tasktemplates.ResponsibleClientVocabulary',
        required=True)

    form.widget(responsible=AutocompleteFieldWidget)
    responsible = schema.Choice(
        title=_(u"label_responsible", default="Responsible"),
        description=_(u"help_responsible", default=""),
        vocabulary=u'opengever.tasktemplates.ResponsibleVocabulary',
        required=True,
        )

    deadline = schema.Int(
        title=_(u"label_deadline", default=u"Deadline in Days"),
        description=_('help_deadline', default=u""),
        required=True,
    )

    form.primary('text')
    text = schema.Text(
        title=_(u"label_text", default=u"Text"),
        description=_(u"help_text", default=u""),
        required=False,
        )

    form.widget(preselected=checkbox.SingleCheckBoxFieldWidget)
    preselected = schema.Bool(
        title=_(u'label_preselected', default='Preselect'),
        description=_(u'help_preselected', default=''),
        required=False,
        )
class IWorkshop(form.Schema):
    """A conference workshop. Workshops are managed inside tracks of the Program.
    """
        
    length = SimpleVocabulary(
       [SimpleTerm(value=u'30', title=_(u'30 minutes')),
        SimpleTerm(value=u'45', title=_(u'45 minutes')),
        SimpleTerm(value=u'60', title=_(u'60 minutes'))]
        )
    

    title = schema.TextLine(
            title=_(u"Title"),
            description=_(u"Workshop title"),
        )

    description = schema.Text(
            title=_(u"Workshop summary"),
        )

    form.primary('details')
    details = RichText(
            title=_(u"Workshop details"),
            required=False
        )

    # use an autocomplete selection widget instead of the default content tree
    form.widget(speaker=AutocompleteFieldWidget)
    speaker = RelationChoice(
            title=_(u"Presenter"),
            source=ObjPathSourceBinder(object_provides=ISpeaker.__identifier__),
            required=False,
        )
    form.widget(speaker=AutocompleteFieldWidget)
    speaker2 = RelationChoice(
            title=_(u"Co-Presenter"),
            source=ObjPathSourceBinder(object_provides=ISpeaker.__identifier__),
            required=False,
        )
    form.widget(track=AutocompleteFieldWidget)
    track = RelationChoice(
            title=_(u"Track"),
            source=ObjPathSourceBinder(object_provides=ITrack.__identifier__),
            required=False,
        )
    
        
    
#    start = schema.Datetime(
#            title=_(u"Startdate"),
#            description =_(u"Start date"),
#            required=False,
#        )
#
#    end = schema.Datetime(
#            title=_(u"Enddate"),
#            description =_(u"End date"),
#            required=False,
#        )
    
            
    length= schema.Choice(
            title=_(u"Length"),
            vocabulary=length,
            required=True,
        )
  

      
    order=schema.Int(
           title=_(u"Orderintrack"),               
           description=_(u"Order in the track: write in an Integer"),
           required=False,
        )
                    
    
    slides = NamedBlobFile(
            title=_(u"Workshop slides / material"),
            description=_(u"Please upload your workshop presentation or material about the content of the workshop."),
            required=False,
        )    
Example #27
0
class IEUpCenter(model.Schema):
    """ An Extension Upload Center for LibreOffice extensions.
    """

    title = schema.TextLine(title=_(u"Name of the Extensions Center"), )

    description = schema.Text(
        description=_(u"Description of the Extensions Center"), )

    product_description = schema.Text(
        description=_(u"Description of the features of extensions"))

    product_title = schema.TextLine(
        title=_(u"Extension Product Name"),
        description=
        _(u"Name of the Extension product, e.g. only Extensions or LibreOffice Extensions"
          ),
    )

    form.fieldset('categories_et_all',
                  label=u"Categories et all",
                  fields=[
                      'available_category', 'available_licenses',
                      'available_versions', 'available_platforms'
                  ])

    available_category = schema.List(title=_(u"Available Categories"),
                                     default=[
                                         'All modules',
                                         'Dictionary',
                                         'Clipart',
                                         'Macro',
                                         'Template Extension',
                                         'Gallery Contents',
                                         'Language Tools',
                                         'Writer Extension',
                                         'Calc Extension',
                                         'Impress Extension',
                                         'Draw Extension',
                                         'Base Extension',
                                         'Math Extension',
                                         'Extension Building',
                                     ],
                                     value_type=schema.TextLine())

    available_licenses = schema.List(
        title=_(u"Available Licenses"),
        default=[
            'GNU-GPL-v2 (GNU General Public License Version 2)',
            'GNU-GPL-v3 (General Public License Version 3)',
            'LGPL-v2.1 (GNU Lesser General Public License Version 2.1)',
            'LGPL-v3+ (GNU Lesser General Public License Version 3 and later)',
            'BSD (BSD License (revised))',
            'MPL-v1.1 (Mozilla Public License Version 1.1)',
            'MPL-v2.0+ (Mozilla Public License Version 2.0 or later)',
            'CC-by-sa-v3 (Creative Commons Attribution-ShareAlike 3.0)',
            'CC-BY-SA-v4 (Creative Commons Attribution-ShareAlike 4.0 International)',
            'AL-v2 (Apache License Version 2.0)', 'Public Domain',
            'OSI (Other OSI Approved)'
        ],
        value_type=schema.TextLine())

    available_versions = schema.List(
        title=_(u"Available Versions"),
        default=[
            'LibreOffice 3.3', 'LibreOffice 3.4', 'LibreOffice 3.5',
            'LibreOffice 3.6', 'LibreOffice 4.0', 'LibreOffice 4.1',
            'LibreOffice 4.2', 'LibreOffice 4.3', 'LibreOffice 4.4',
            'LibreOffice 5.0', 'LibreOffice 5.1', 'LibreOffice 5.2',
            'LibreOffice 5.3', 'LibreOffice 5.4', 'LibreOffice 6.0',
            'LibreOffice 6.1'
        ],
        value_type=schema.TextLine())

    available_platforms = schema.List(title=_(u"Available Platforms"),
                                      default=[
                                          'All platforms', 'Linux',
                                          'Linux-x64', 'Mac OS X', 'Windows',
                                          'BSD', 'UNIX (other)'
                                      ],
                                      value_type=schema.TextLine())

    form.fieldset('instructions',
                  label=u'Instructions',
                  fields=[
                      'install_instructions',
                      'reporting_bugs',
                  ])

    form.primary('install_instructions')
    install_instructions = RichText(
        title=_(u"Extension Installation Instructions"),
        description=_(u"Please fill in the install instructions"),
        required=False)

    form.primary('reporting_bugs')
    reporting_bugs = RichText(title=_(u"Instruction how to report Bugs"),
                              required=False)

    form.fieldset('disclaimer',
                  label=u'Legal Disclaimer',
                  fields=[
                      'title_legaldisclaimer', 'legal_disclaimer',
                      'title_legaldownloaddisclaimer',
                      'legal_downloaddisclaimer'
                  ])

    title_legaldisclaimer = schema.TextLine(
        title=_(u"Title for Legal Disclaimer and Limitations"),
        default=_(u"Legal Disclaimer and Limitations"),
        required=False)

    legal_disclaimer = schema.Text(
        title=_(u"Text of the Legal Disclaimer and Limitations"),
        description=_(u"Enter the text of the legal disclaimer and "
                      u"limitations that should be displayed to the "
                      u"project creator and should be accepted by "
                      u"the owner of the project."),
        default=_(u"Fill in the legal disclaimer, that had to be "
                  u"accepted by the project owner."),
        required=False)

    title_legaldownloaddisclaimer = schema.TextLine(
        title=_(
            u"Title of the Legal Disclaimer and Limitations for Downloads"),
        default=_(u"Legal Disclaimer and Limitations for Downloads"),
        required=False)

    form.primary('legal_downloaddisclaimer')
    legal_downloaddisclaimer = RichText(
        title=_(u"Text of the Legal Disclaimer and Limitations for Downlaods"),
        description=_(u"Enter any legal disclaimer and limitations for "
                      u"downloads that should appear on each page for "
                      u"dowloadable files."),
        default=_(u"Fill in the text for the legal download disclaimer."),
        required=False)

    form.primary('information_oldversions')
    information_oldversions = RichText(
        title=_(u"Information About Search For Old LibreOffice Versions"),
        description=_(u"Enter an information about the search for older "
                      u"versions of LibreOffice, if they are not on the "
                      u"versions list (compatibility) anymore."),
        required=False)

    form.fieldset('contactadresses',
                  label=u'Special Email Adresses',
                  fields=['releaseAllert', 'contactForCenter'])

    releaseAllert = schema.ASCIILine(
        title=_(u"EMail address for the messages about new releases"),
        description=
        _(u"Enter an email address to which information about a new release should be send."
          ),
        required=False)

    contactForCenter = schema.ASCIILine(
        title=
        _(u"EMail address for communication with the extension center manager and reviewer"
          ),
        description=
        _(u"Enter an email address for the communication with extension center manager and reviewer"
          ),
        default='*****@*****.**',
        constraint=validateEmail)
Example #28
0
class ITask(form.Schema):

    form.fieldset(
        u'common',
        label=_(u'fieldset_common', default=u'Common'),
        fields=[
            u'title',
            u'issuer',
            u'task_type',
            u'responsible_client',
            u'responsible',
            u'deadline',
            u'text',
            u'relatedItems',
        ],
    )

    form.fieldset(
        u'additional',
        label=_(u'fieldset_additional', u'Additional'),
        fields=[
            u'expectedStartOfWork',
            u'expectedDuration',
            u'expectedCost',
            u'effectiveDuration',
            u'effectiveCost',
            u'date_of_completion',
        ],
    )

    dexteritytextindexer.searchable('title')
    title = schema.TextLine(
        title=_(u"label_title", default=u"Title"),
        description=_('help_title', default=u""),
        required=True,
    )

    form.widget(issuer=AutocompleteFieldWidget)
    issuer = schema.Choice(
        title=_(u"label_issuer", default=u"Issuer"),
        description=_('help_issuer', default=u""),
        vocabulary=u'opengever.ogds.base.ContactsAndUsersVocabulary',
        required=True,
    )

    form.widget(task_type='z3c.form.browser.radio.RadioFieldWidget')
    task_type = schema.Choice(
        title=_(u'label_task_type', default=u'Task Type'),
        description=_('help_task_type', default=u''),
        required=True,
        readonly=False,
        default=None,
        missing_value=None,
        source=util.getTaskTypeVocabulary,
    )

    responsible_client = schema.Choice(
        title=_(u'label_resonsible_client', default=u'Responsible Client'),
        description=_(u'help_responsible_client', default=u''),
        vocabulary='opengever.ogds.base.ClientsVocabulary',
        required=True)

    form.widget(responsible=AutocompleteFieldWidget)
    responsible = schema.Choice(
        title=_(u"label_responsible", default=u"Responsible"),
        description=_(u"help_responsible", default=""),
        vocabulary=u'opengever.ogds.base.UsersAndInboxesVocabulary',
        required=True,
    )

    form.widget(deadline=DatePickerFieldWidget)
    deadline = schema.Date(
        title=_(u"label_deadline", default=u"Deadline"),
        description=_(u"help_deadline", default=u""),
        required=True,
    )

    form.widget(deadline=DatePickerFieldWidget)
    date_of_completion = schema.Date(
        title=_(u"label_date_of_completion", default=u"Date of completion"),
        description=_(u"help_date_of_completion", default=u""),
        required=False,
    )

    dexteritytextindexer.searchable('text')
    form.primary('text')
    text = schema.Text(
        title=_(u"label_text", default=u"Text"),
        description=_(u"help_text", default=u""),
        required=False,
    )

    relatedItems = RelationList(
        title=_(u'label_related_items', default=u'Related Items'),
        default=[],
        missing_value=[],
        value_type=RelationChoice(
            title=u"Related",
            source=DossierPathSourceBinder(
                portal_type=("opengever.document.document", "ftw.mail.mail"),
                navigation_tree_query={
                    'object_provides': [
                        'opengever.dossier.behaviors.dossier.IDossierMarker',
                        'opengever.document.document.IDocumentSchema',
                        'opengever.task.task.ITask',
                        'ftw.mail.mail.IMail',
                    ],
                }),
        ),
        required=False,
    )

    form.widget(deadline=DatePickerFieldWidget)
    expectedStartOfWork = schema.Date(
        title=_(u"label_expectedStartOfWork", default="Start with work"),
        description=_(u"help_expectedStartOfWork", default=""),
        required=False,
    )

    expectedDuration = schema.Float(
        title=_(
            u"label_expectedDuration",
            default="Expected duration",
        ),
        description=_(u"help_expectedDuration", default="Duration in h"),
        required=False,
    )

    expectedCost = schema.Float(
        title=_(u"label_expectedCost", default="expected cost"),
        description=_(u"help_expectedCost", default="Cost in CHF"),
        required=False,
    )

    effectiveDuration = schema.Float(
        title=_(u"label_effectiveDuration", default="effective duration"),
        description=_(u"help_effectiveDuration", default="Duration in h"),
        required=False,
    )

    effectiveCost = schema.Float(
        title=_(u"label_effectiveCost", default="effective cost"),
        description=_(u"help_effectiveCost", default="Cost in CHF"),
        required=False,
    )

    form.omitted('predecessor')
    predecessor = schema.TextLine(title=_(u'label_predecessor',
                                          default=u'Predecessor'),
                                  description=_(u'help_predecessor',
                                                default=u''),
                                  required=False)
Example #29
0
class IRulesUploadSchema(form.Schema):
    form.primary('rules_file')
    rules_file = NamedBlobFile(
        title=_(u'redirect_config_file',
                default=u'Excel redirect config'),
        required=True)
Example #30
0
class IProposalTemplate(IDocumentSchema):

    primary('file')
    file = NamedBlobFile(title=_(u'label_file', default='File'), required=True)