class DefaultDate(mars.adapter.AdapterFactory): """Create a default date adapter for the `when` field""" grok.name('default') mars.adapter.factory( widget.ComputedWidgetAttribute(lambda adapter: datetime.date.today(), field=IMessage['when'], view=IAddForm))
directives.omitted('nextPreviousEnabled') directives.no_omit(IEditForm, 'nextPreviousEnabled') directives.no_omit(IAddForm, 'nextPreviousEnabled') def getNextPreviousParentValue(adapter_): context = adapter_.context nextprevious = INextPreviousProvider(context, None) if nextprevious is None: return False return nextprevious.enabled DefaultNextPreviousEnabled = widget.ComputedWidgetAttribute( getNextPreviousParentValue, field=INextPreviousToggle['nextPreviousEnabled'], ) # This is taken from plone.app.folder class NextPreviousBase(object): """ adapter for acting as a next/previous provider """ def __init__(self, context): self.context = context registry = getUtility(IRegistry) self.vat = registry.get('plone.types_use_view_action_in_listings', []) self.security = getSecurityManager() order = context.getOrdering() if not isinstance(order, list): order = order.idsInOrder() if not isinstance(order, list):
) form.widget(preselected=checkbox.SingleCheckBoxFieldWidget) preselected = schema.Bool( title=_(u'label_preselected', default='Preselect'), description=_(u'help_preselected', default=''), required=False, ) class TaskTemplate(Item): implements(ITaskTemplate) default_responsible_client = widget.ComputedWidgetAttribute( lambda adapter: get_current_org_unit().id(), field=ITaskTemplate['responsible_client']) class TaskTemplateAddForm(DefaultAddForm): def createAndAdd(self, data): update_reponsible_field_data(data) return super(TaskTemplateAddForm, self).createAndAdd(data) class TaskTemplateAddView(DefaultAddView): form = TaskTemplateAddForm class TaskTemplateEditForm(DefaultEditForm): def applyChanges(self, data):
def add(self, schedule): chooser = INameChooser(self.context) name = chooser.chooseName('', schedule) self.context[name] = schedule self._object_added = schedule def nextURL(self): if self._object_added is not None: return '%s/edit.html' % ( absoluteURL(self._object_added, self.request)) return absoluteURL(self.context, self.request) TimetableAdd_default_first = widget.ComputedWidgetAttribute( lambda adapter: adapter.view.term.first, view=SelectedPeriodsAddView, field=ISelectedPeriodsAddForm['first'] ) TimetableAdd_default_last = widget.ComputedWidgetAttribute( lambda adapter: adapter.view.term.last, view=SelectedPeriodsAddView, field=ISelectedPeriodsAddForm['last'] ) class FlourishSelectedPeriodsAddView(flourish.form.AddForm, SelectedPeriodsAddView): template = flourish.templates.Inherit(flourish.page.Page.template) legend = _("Schedule a school timetable")
class QuestionLabel(mars.adapter.AdapterFactory): grok.name('label') mars.adapter.factory( widget.ComputedWidgetAttribute(getDescriptionAsLabel, view=IQuestionnaireGroup))
@property def dialog_title_template(self): template = (getattr(self.view, 'add_dialog_title_template', None) or getattr(self.view, 'dialog_title_template', None) or _("Assign ${target}")) return template @property def states_source(self): source = getattr(self.view, 'app_states_name', None) return source EditMembership_date = widget.ComputedWidgetAttribute( lambda adapter: adapter.request.util.today, view=StateActionDialog, field=IEditMembership['date']) EditMembership_state = widget.ComputedWidgetAttribute( lambda adapter: adapter.view.default_state, view=StateActionDialog, field=IEditMembership['state']) class RelationshipStatesEditView(flourish.page.Page): content_template = flourish.templates.File('templates/f_states_edit.pt') @property def title(self): return self.target.title
class DefaultDate(mars.adapter.AdapterFactory): grok.name('default') mars.adapter.factory( widget.ComputedWidgetAttribute(lambda adapter: datetime.date.today(), field=IHelloWorld['when'], view=IAddForm))
operatives = schema.List( title=_(u"Operatives"), description=_( u"The user IDs of those that have operative roles in this project " u"(coders, designers, project managers, accounts etc.). " u"Customers should not be included in this list." u"Adding someone here will add them automatically " u"as managers to the default tracker." ), value_type=schema.Object(title=_(u"Resource"), schema=IResource), required=False ) def default_date(data): return date.today() provideAdapter( widget.ComputedWidgetAttribute( default_date, field=IProject['prj_start_date'] ), name='default' ) class IProjectNavigation(Interface): """The project navigation portlet """
required=True, allowed_mime_types=('text/html', )) directives.order_after(accept_conditions='*') accept_conditions = schema.Bool( title=_(u'label_accept_conditions', default=u'Terms and Conditions'), description=_( u'description_accept_conditions', default=u'Please accept the ' '<a target="_blank" href="./terms-and-conditions">terms and conditions</a>' ), default=False) default_email = widget.ComputedWidgetAttribute( lambda adapter: user_mail(), field=INoticeSchema['email'], ) class Notice(Container): implements(INotice) alsoProvides(INoticeSchema, IFormFieldProvider) class AcceptedTermsAndConditions(validator.SimpleFieldValidator): """ z3c.form validator class for international phone numbers """ def validate(self, value): if not value: raise Invalid(
title=_(u'Email Subject for Revoked Reservations'), description=_(u'Sent to <b>users</b> when a reservation is revoked. ' u'May contain the template variables listed below.'), default=templates['reservation_revoked'].get_subject('en')) reservation_revoked_content = schema.Text( title=_(u'Email Text for Revoked Reservations'), description=template_revoke_variables, default=templates['reservation_revoked'].get_body('en')) def get_default_language(adapter): return utils.get_current_site_language() DefaultLanguage = widget.ComputedWidgetAttribute( get_default_language, field=IEmailTemplate['language']) class IReservation(Interface): """ A reservation of an allocation (may be pending or approved). """ id = schema.Int(title=_(u'Id'), default=-1, required=False) day = schema.Date(title=_(u'Day'), required=False) start_time = schema.Time(title=_(u'Start'), required=False) end_time = schema.Time(title=_(u'End'), required=False) quota = schema.Int(title=_(u'Reservation Quota'), required=False,
class CalendarPublicRadioWidget(RadioWidget): @property def terms(self): return CalendarPublicWidgetTerms(self.context, self.request, self.form, self.field, self) def calendar_public_widget_label(adapter): person = adapter.context.__parent__ return _("${person_full_name}'s calendar is visible to...", mapping={'person_full_name': person.title}) CalendarPublicWidgetLabel = widget.ComputedWidgetAttribute( calendar_public_widget_label, field=IPersonPreferences['cal_public'], widget=CalendarPublicRadioWidget) def CalendarPeriodsWidgetFactory(field, request): return widget.FieldWidget(field, CalendarPeriodsRadioWidget(request)) def CalendarPublicWidgetFactory(field, request): return widget.FieldWidget(field, CalendarPublicRadioWidget(request)) class PersonPreferencesView(form.EditForm): """View used for editing person preferences.""" fields = field.Fields(IPersonPreferences)