예제 #1
0
class ATRefnode(BaseContent):
    """A simple archetype for testing references. It can point to itself"""

    schema = BaseSchema.copy() + Schema((
        ReferenceField('relatedItems',
                       relationship='relatesTo',
                       multiValued=True,
                       isMetadata=True,
                       languageIndependent=False,
                       index='KeywordIndex',
                       referencesSortable=True,
                       keepReferencesOnCopy=True,
                       write_permission=ModifyPortalContent,
                       widget=ReferenceWidget(label=u'label_related_items',
                                              description='',
                                              visible={
                                                  'edit': 'visible',
                                                  'view': 'invisible'
                                              })),  # make it a list
    ))
예제 #2
0
schema = BikaSchema.copy() + Schema((
    ComputedField(
        'RequestID',
        expression='here.getRequestID()',
        widget=ComputedWidget(visible=True, ),
    ),
    FileField(
        'AttachmentFile',
        widget=FileWidget(label=_("Attachment"), ),
    ),
    ReferenceField(
        'AttachmentType',
        required=0,
        allowed_types=('AttachmentType', ),
        relationship='AttachmentAttachmentType',
        widget=ReferenceWidget(label=_("Attachment Type"), ),
    ),
    StringField(
        'ReportOption',
        searchable=True,
        vocabulary="ATTACHMENT_REPORT_OPTIONS",
        widget=SelectionWidget(
            label=_("Report Options"),
            checkbox_bound=0,
            format='select',
            visible=True,
            default='a',
        ),
    ),
    StringField(
        'AttachmentKeys',
예제 #3
0
                  i18n_domain='EEAEnquiry',
              ),
              required=True,
              accessor="Description"),
    StringField(name='email',
                widget=StringWidget(
                    label="Email address",
                    label_msgid='EEAEnquiry_label_email',
                    i18n_domain='EEAEnquiry',
                ),
                required=1,
                validators=('isEmail', )),
    ReferenceField(name='enquiryRequestor',
                   widget=ReferenceWidget(
                       label='Enquiryrequestor',
                       label_msgid='EEAEnquiry_label_enquiryRequestor',
                       i18n_domain='EEAEnquiry',
                   ),
                   allowed_types=('EnquiryRequestor', ),
                   multiValued=0,
                   relationship='enquriyRequestor'),
), )

schema['enquiryRequestor'].widget.visible = {'edit': 'invisible'}

Enquiry_schema = BaseSchema.copy() + \
    schema.copy()


class Enquiry(BaseContent):
    """ Enquiry
예제 #4
0
                    description_msgid='EEAEnquiry_help_region',
                    i18n_domain='EEAEnquiry',
                )),
    BooleanField(
        name='subscribed',
        default=True,
        widget=BooleanWidget(
            label=("I would like to receive email notifications on free to "
                   "download reports and other products published by EEA"),
            label_msgid='EEAEnquiry_label_subscribed',
            i18n_domain='EEAEnquiry',
        )),
    ReferenceField(name='enquiries',
                   widget=ReferenceWidget(
                       label='Enquiries',
                       label_msgid='EEAEnquiry_label_enquiries',
                       i18n_domain='EEAEnquiry',
                   ),
                   allowed_types=('Enquiry', ),
                   multiValued=1,
                   relationship='enquiries'),
), )

schema['enquiries'].widget.visible = {'edit': 'invisible'}

EnquiryRequestor_schema = BaseSchema.copy() + \
    schema.copy()


class EnquiryRequestor(BaseContent):
    """ Requestor
예제 #5
0
             "This setting can enable/disable verifying/consecutively verifying"
             "more than once for the same user."),
         format='select',
     )
 ),
 ReferenceField(
     'DryMatterService',
     schemata="Analyses",
     required=0,
     vocabulary_display_path_bound=sys.maxint,
     allowed_types=('AnalysisService',),
     relationship='SetupDryAnalysisService',
     vocabulary='getAnalysisServices',
     referenceClass=HoldingReference,
     widget=ReferenceWidget(
         label=_("Dry matter analysis"),
         description=_("The analysis to be used for determining dry matter."),
     )
 ),
 LinesField(
     'ARImportOption',
     schemata="Analyses",
     vocabulary=ARIMPORT_OPTIONS,
     widget=MultiSelectionWidget(
         visible=False,
         label=_("AR Import options"),
         description=_(
             "'Classic' indicates importing analysis requests per sample and "
             "analysis service selection. With 'Profiles', analysis profile keywords "
             "are used to select multiple analysis services together"),
     )
 ),
예제 #6
0
""" CallForTender """
from AccessControl import ClassSecurityInfo

from Products.Archetypes.atapi import (Schema, ReferenceField, ReferenceWidget,
                                       BaseFolderSchema, BaseFolder,
                                       registerType)
import zope.interface

from Products.EEAContentTypes.config import PROJECTNAME
from Products.EEAContentTypes.content.CallForInterest import CallForInterest
from Products.EEAContentTypes.content.interfaces import ICallForTender

schema = Schema((ReferenceField(name='awardNotice',
                                widget=ReferenceWidget(
                                    label='Award notice',
                                    label_msgid='EEAContentTypes_award_notice',
                                    i18n_domain='EEAContentTypes',
                                    helper_js=("callfortender_widget.js", )),
                                allowed_types="('Document','File')",
                                multiValued=0,
                                relationship="awardNotice",
                                vocabulary="getPossibleAwardNotice",
                                accessor="getAwardNoticeObject"), ), )

CallForTender_schema = BaseFolderSchema.copy() + \
                       getattr(CallForInterest, 'schema', Schema(())).copy() + \
                       schema.copy()


class CallForTender(CallForInterest, BaseFolder):
    """ Call for tenders
예제 #7
0
                "descriptors where the interim fields are displayed. If "
                "'Apply wide' is enabled the field will be shown in a "
                "selection box on the top of the worksheet, allowing to apply "
                "a specific value to all the corresponding fields on the "
                "sheet."),
        )
    ),

    UIDReferenceField(
        'DependentServices',
        required=1,
        multiValued=1,
        allowed_types=('AnalysisService',),
        widget=ReferenceWidget(
            checkbox_bound=0,
            visible=False,
            label=_("Dependent Analyses"),
        ),
    ),

    RecordsField(
        'PythonImports',
        required=False,
        subfields=('module', 'function'),
        subfield_labels={'module': _('Module'), 'function': _('Function')},
        subfield_readonly={'module': False, 'function': False},
        subfield_types={'module': 'string', 'function': 'string'},
        default=[
            {'module': 'math', 'function': 'ceil'},
            {'module': 'math', 'function': 'floor'},
        ],
예제 #8
0
            label=_("Data Interface Options"),
            description=
            _("Use this field to pass arbitrary parameters to the export/import modules."
              ),
            visible=False,
        ),
    ),

    # References to all analyses performed with this instrument.
    # Includes regular analyses, QC analyes and Calibration tests.
    UIDReferenceField(
        'Analyses',
        required=0,
        multiValued=1,
        allowed_types=('ReferenceAnalysis', 'DuplicateAnalysis', 'Analysis'),
        widget=ReferenceWidget(visible=False, ),
    ),

    # Private method. Use getLatestReferenceAnalyses() instead.
    # See getLatestReferenceAnalyses() method for further info.
    ReferenceField(
        '_LatestReferenceAnalyses',
        required=0,
        multiValued=1,
        allowed_types=('ReferenceAnalysis'),
        relationship='InstrumentLatestReferenceAnalyses',
        widget=ReferenceWidget(visible=False, ),
    ),
    ComputedField(
        'Valid',
        expression="'1' if context.isValid() else '0'",