def render_salaried(self, colname, record): if not self.check_modify_order(record): salaried = OrderData(self.context, order=record).salaried return translate(vocabs.salaried_vocab()[salaried], context=self.request) return OrderSalariedDropdown(self.context, self.request, record).render()
def _sendmail(self, notifier, uid, tpl, subject): order_data = OrderData(self.context, uid=uid) order = order_data.order data = {} for key in TEMPLATE.defaults: # XXX: refactor and use configurable callbacks # special case gender if key == 'personal_data.gender': data[key] = translate(mail_gender_vocab()[order.attrs[key]], context=self.request) continue # special case salaried if key == 'salaried': data[key] = translate(salaried_vocab()[order_data.salaried], context=self.request) continue # special case state if key == 'state': data[key] = translate(state_vocab()[order_data.state], context=self.request) continue # read attrs from order if key in order.attrs: data[key] = order.attrs[key] body = TEMPLATE(tpl, data).encode('utf-8') notifier.send(subject, body, order.attrs['personal_data.email'])
def listing(self): # XXX: discount ret = list() for booking in self.order_data.bookings: obj = get_object_by_uid(self.context, booking.attrs['buyable_uid']) state = vocabs.state_vocab()[booking.attrs.get('state')] salaried = vocabs.salaried_vocab()[booking.attrs.get('salaried')] ret.append({ 'uid': booking.attrs['uid'], 'title': booking.attrs['title'], 'url': obj.absolute_url(), 'count': booking.attrs['buyable_count'], 'net': ascur(booking.attrs.get('net', 0.0)), 'discount_net': ascur(float(booking.attrs['discount_net'])), 'vat': booking.attrs.get('vat', 0.0), 'comment': booking.attrs['buyable_comment'], 'quantity_unit': booking.attrs.get('quantity_unit'), 'currency': booking.attrs.get('currency'), 'state': state, 'salaried': salaried, }) return ret
def listing(self): # XXX: discount ret = list() for booking in self.order_data.bookings: obj = get_object_by_uid(self.context, booking.attrs['buyable_uid']) state = vocabs.state_vocab()[booking.attrs.get('state')] salaried = vocabs.salaried_vocab()[booking.attrs.get('salaried')] ret.append({ 'uid': booking.attrs['uid'], 'title': booking.attrs['title'], 'url': obj.absolute_url(), 'reserved': reserved( booking.attrs['remaining_stock_available'], booking.attrs['buyable_count']), 'count': booking.attrs['buyable_count'], 'net': ascur(booking.attrs.get('net', 0.0)), 'discount_net': ascur(float(booking.attrs['discount_net'])), 'vat': booking.attrs.get('vat', 0.0), 'comment': booking.attrs['buyable_comment'], 'quantity_unit': booking.attrs.get('quantity_unit'), 'currency': booking.attrs.get('currency'), 'state': state, 'salaried': salaried, }) return ret
def listing(self): # XXX: discount can_cancel_booking = self.can_cancel_booking ret = list() for booking in self.order_data.bookings: obj = get_object_by_uid(self.context, booking.attrs['buyable_uid']) state = vocabs.state_vocab()[booking.attrs.get('state')] salaried = vocabs.salaried_vocab()[booking.attrs.get('salaried')] cancel_target = None if can_cancel_booking and state != ifaces.STATE_CANCELLED: cancel_target = addTokenToUrl('{}?uid={}'.format( self.context.absolute_url(), booking.attrs['uid']) ) ret.append({ 'uid': booking.attrs['uid'], 'title': booking.attrs['title'], 'url': obj.absolute_url() if obj else None, 'cancel_target': cancel_target, 'count': booking.attrs['buyable_count'], 'net': ascur(booking.attrs.get('net', 0.0)), 'discount_net': ascur(float(booking.attrs['discount_net'])), 'vat': booking.attrs.get('vat', 0.0), 'comment': booking.attrs['buyable_comment'], 'quantity_unit': booking.attrs.get('quantity_unit'), 'currency': booking.attrs.get('currency'), 'state': state, 'salaried': salaried, }) return ret
def render_salaried(self, colname, record): if not self.check_modify_order(record): salaried = OrderData(self.context, order=record).salaried return translate(vocabs.salaried_vocab()[salaried], context=self.request) return OrderSalariedDropdown( self.context, self.request, record ).render()
def render_salaried(self, colname, record): if not self.check_modify_order(record): booking_data = BookingData( self.context, booking=record ) return translate( vocabs.salaried_vocab()[booking_data.salaried], context=self.request ) return BookingSalariedDropdown( self.context, self.request, record ).render()
class OrderSalariedDropdown(OrderDropdown): name = 'salaried' css = 'dropdown change_order_salaried_dropdown' action = 'ordersalariedtransition' vocab = vocabs.salaried_vocab() transitions = vocabs.salaried_transitions_vocab() @property def value(self): return self.order_data.salaried or ifaces.SALARIED_NO @property def items(self): transitions = transitions_of_salaried_state(self.value) return self.create_items(transitions)
class BookingSalariedDropdown(BookingsDropdown): name = 'salaried' css = 'dropdown change_booking_salaried_dropdown' action = 'bookingsalariedtransition' vocab = vocabs.salaried_vocab() transitions = vocabs.salaried_transitions_vocab() @property def value(self): return self.booking_data.salaried or ifaces.SALARIED_NO @property def items(self): transitions = transitions_of_salaried_state(self.value) return self.create_items(transitions)
def salaried(self): salaried = self.order_data.salaried or ifaces.SALARIED_NO return vocabs.salaried_vocab()[salaried]
def salaried_form_vocab(): salaried = vocabs.salaried_vocab() return [('', _('all', default='All'))] + salaried.items()
def render_salaried(self, colname, record): salaried = OrderData(self.context, order=record).salaried\ or ifaces.SALARIED_NO return translate(vocabs.salaried_vocab()[salaried], context=self.request)