def update(self): pps = self.context.restrictedTraverse('@@plone_portal_state') self.portal = pps.portal() self.orders_folder = self.portal.orders self.orders = [] if self.request.has_key('list_orders.form.submitted'): # we have to have *some* filter criteria or the search will take # forever. oc = getToolByName(self.context, 'order_catalog') query = {'portal_type': 'emas.app.order', 'path': '/'.join(self.orders_folder.getPhysicalPath())} # make it a dict, because I want an easy way to get rid of some keys filter_criteria = DictType(self.request.get('filter_criteria', {})) now = DT() yesterday = now - 1 tomorrow = now + 1 start_date = self.request['order_date_start'] end_date = self.request['order_date_end'] if start_date and end_date: start_date = DT(self.request['order_date_start']) end_date = DT(self.request['order_date_end']) date_query = {'query': [start_date, end_date], 'range': 'minmax'} query['order_date'] = date_query for key, value in filter_criteria.items(): query[key] = value self.orders = oc(query) if self.orders: b_size = int(self.request.get('b_size', 50)) b_start = int(self.request.get('b_start', 0)) self.orders = Batch(self.orders, b_size, b_start) else: self.context.plone_utils.addPortalMessage( _('No orders match your search criteria.') )
from z3c.form import group, field from plone.namedfile.field import NamedImage, NamedFile from plone.namedfile.field import NamedBlobImage, NamedBlobFile from plone.app.textfield import RichText from z3c.relationfield.schema import RelationList, RelationChoice from plone.formwidget.contenttree import ObjPathSourceBinder from emas.app import MessageFactory as _ vocab_shipping_methods = SimpleVocabulary( [SimpleTerm(value=u'postal_service', title=_(u'Postal service')), SimpleTerm(value=u'courier', title=_(u'Courier')), ] ) # TODO: make this a portal property VAT = 0.14 class IOrder(form.Schema): """ Container for orderable items like products and services """ date_ordered = schema.Datetime( title=_(u"Date ordered"), required=False,
render = ViewPageTemplateFile("./templates/memberservices_table.pt") def __init__( self, context, request, url, view_url, items, show_sort_column, buttons): self.context = context super(Table, self).__init__(request, url, view_url, items, show_sort_column, buttons) self.intids = queryUtility(IIntIds, context=context) def related_service(self, related_service_id): return self.intids.queryObject(related_service_id) SERVICE_TYPES = SimpleVocabulary( [SimpleTerm(value=u'credits', title=_(u'Credits')), SimpleTerm(value=u'subscription', title=_(u'Subscription'))] ) class IMemberServiceForm(form.Schema): form.mode(id='hidden') id = schema.Int( title=_(u'id', default=u'Primary key'), required=True, ) memberid = schema.TextLine( title=_(u'Member id'), ) title = schema.TextLine(
from zope import schema from zope.schema.vocabulary import SimpleVocabulary from zope.schema.interfaces import IContextSourceBinder from zope.schema.vocabulary import SimpleVocabulary, SimpleTerm from Products.CMFCore.utils import getToolByName from plone.app.z3cform.wysiwyg.widget import WysiwygFieldWidget from emas.app.product import Product from emas.app.product import IProduct from emas.app import MessageFactory as _ vocab_service_types = SimpleVocabulary( [ SimpleTerm(value=u'credit', title=_(u'Credit based')), SimpleTerm(value=u'subscription', title=_(u'Subscription based')), ] ) vocab_grades = SimpleVocabulary( [ SimpleTerm(value=u'grade-10', title=_(u'Grade 10')), SimpleTerm(value=u'grade-11', title=_(u'Grade 11')), SimpleTerm(value=u'grade-12', title=_(u'Grade 12')), ] ) vocab_subjects = SimpleVocabulary( [ SimpleTerm(value=u'maths', title=_(u'Maths')),
from five import grok from plone.directives import dexterity, form from zope import schema from zope.schema.vocabulary import SimpleVocabulary, SimpleTerm from plone.app.z3cform.wysiwyg.widget import WysiwygFieldWidget from emas.app.product import Product from emas.app.product import IProduct from emas.app import MessageFactory as _ vocab_service_types = SimpleVocabulary( [ SimpleTerm(value=u'credit', title=_(u'Credit based')), SimpleTerm(value=u'subscription', title=_(u'Subscription based')), ] ) vocab_grades = SimpleVocabulary( [ SimpleTerm(value=u'grade10', title=_(u'Grade 10')), SimpleTerm(value=u'grade11', title=_(u'Grade 11')), SimpleTerm(value=u'grade12', title=_(u'Grade 12')), ] ) vocab_subjects = SimpleVocabulary( [ SimpleTerm(value=u'maths', title=_(u'Maths')),
from plone.indexer import indexer from zope import schema from zope.schema.vocabulary import SimpleVocabulary, SimpleTerm from zope.component import queryUtility from plone.registry.interfaces import IRegistry from emas.theme.interfaces import IEmasSettings from emas.app.browser.utils import compute_vcs_response_hash from emas.app import MessageFactory as _ vocab_shipping_methods = SimpleVocabulary( [SimpleTerm(value=u'postal_service', title=_(u'Postal service')), SimpleTerm(value=u'courier', title=_(u'Courier')), ] ) CREDITCARD = u'creditcard' SMS = u'sms' EFT = u'eft' MOOLA = u'moola' vocab_payment_methods = SimpleVocabulary( [SimpleTerm(value=CREDITCARD, title=_(u'Credit card')), SimpleTerm(value=EFT, title=_(u'Electronic funds transfer')), SimpleTerm(value=SMS, title=_(u'Premium SMS')), SimpleTerm(value=MOOLA, title=_(u'Moola')), ]