Ejemplo n.º 1
0
    def __call__(self):
        transition = self.request['transition']
        uid = self.request['uid']
        vendor_uid = self.request.form.get('vendor', '')
        subtype = self.request.form.get('subtype', '')
        if vendor_uid:
            vendor_uids = [vendor_uid]
            vendor = get_vendor_by_uid(self.context, vendor_uid)
            user = plone.api.user.get_current()
            if not user.checkPermission(permissions.ModifyOrders, vendor):
                raise Unauthorized
        else:
            vendor_uids = get_vendor_uids_for()
            if not vendor_uids:
                raise Unauthorized

        if subtype == 'order':
            record = self._do_transition_for_order(
                uid,
                transition,
                vendor_uids
            )
        elif subtype == 'booking':
            record = self._do_transition_for_booking(
                uid,
                transition,
                vendor_uids
            )
        else:
            raise ValueError('subtype must be either "order" or "booking"!')
        return self.dropdown(self.context, self.request, record).render()
Ejemplo n.º 2
0
    def __call__(self):
        transition = self.request['transition']
        uid = self.request['uid']
        vendor_uid = self.request.form.get('vendor', '')
        subtype = self.request.form.get('subtype', '')
        if vendor_uid:
            vendor_uids = [vendor_uid]
            vendor = get_vendor_by_uid(self.context, vendor_uid)
            user = plone.api.user.get_current()
            if not user.checkPermission(permissions.ModifyOrders, vendor):
                raise Unauthorized
        else:
            vendor_uids = get_vendor_uids_for()
            if not vendor_uids:
                raise Unauthorized

        if subtype == 'order':
            record = self._do_transition_for_order(uid, transition,
                                                   vendor_uids)
        elif subtype == 'booking':
            record = self._do_transition_for_booking(uid, transition,
                                                     vendor_uids)
        else:
            raise ValueError('subtype must be either "order" or "booking"!')
        return self.dropdown(self.context, self.request, record).render()
Ejemplo n.º 3
0
 def check_modify_order(self, order):
     vendor_uid = self.request.form.get('vendor', '')
     if vendor_uid:
         vendor_uids = [vendor_uid]
         vendor = get_vendor_by_uid(self.context, vendor_uid)
         user = plone.api.user.get_current()
         if not user.checkPermission(permissions.ModifyOrders, vendor):
             return False
     else:
         vendor_uids = get_vendor_uids_for()
         if not vendor_uids:
             return False
     return True
Ejemplo n.º 4
0
 def __call__(self):
     vendor_uid = self.request.form.get('vendor', '')
     if vendor_uid:
         self.vendor_uids = [vendor_uid]
         vendor = get_vendor_by_uid(self.context, vendor_uid)
         user = plone.api.user.get_current()
         if not user.checkPermission(permissions.ModifyOrders, vendor):
             raise Unauthorized
     else:
         self.vendor_uids = get_vendor_uids_for()
         if not self.vendor_uids:
             raise Unauthorized
     return super(OrderView, self).__call__()
Ejemplo n.º 5
0
 def __call__(self):
     vendor_uid = self.request.form.get('vendor', '')
     if vendor_uid:
         self.vendor_uids = [vendor_uid]
         vendor = get_vendor_by_uid(self.context, vendor_uid)
         user = plone.api.user.get_current()
         if not user.checkPermission(permissions.ModifyOrders, vendor):
             raise Unauthorized
     else:
         self.vendor_uids = get_vendor_uids_for()
         if not self.vendor_uids:
             raise Unauthorized
     return super(OrderView, self).__call__()
Ejemplo n.º 6
0
 def check_modify_order(self, order):
     vendor_uid = self.request.form.get('vendor', '')
     if vendor_uid:
         vendor_uids = [vendor_uid]
         vendor = get_vendor_by_uid(self.context, vendor_uid)
         user = plone.api.user.get_current()
         if not user.checkPermission(permissions.ModifyOrders, vendor):
             return False
     else:
         vendor_uids = get_vendor_uids_for()
         if not vendor_uids:
             return False
     return True
Ejemplo n.º 7
0
 def __call__(self):
     vendor_uid = self.request.form.get('vendor', '')
     if vendor_uid:
         self.vendor_uids = [vendor_uid]
         vendor = get_vendor_by_uid(self.context, vendor_uid)
         user = plone.api.user.get_current()
         if not user.checkPermission(permissions.ModifyOrders, vendor):
             raise Unauthorized
     else:
         self.vendor_uids = get_vendor_uids_for()
         if not self.vendor_uids:
             raise Unauthorized
     # disable diazo theming if ajax call
     if '_' in self.request.form:
         self.request.response.setHeader('X-Theme-Disabled', 'True')
     return super(OrderView, self).__call__()
Ejemplo n.º 8
0
 def __call__(self):
     transition = self.request['transition']
     uid = self.request['uid']
     order = get_order(self.context, uid)
     vendor_uid = self.request.form.get('vendor', '')
     if vendor_uid:
         vendor_uids = [vendor_uid]
         vendor = get_vendor_by_uid(self.context, vendor_uid)
         user = plone.api.user.get_current()
         if not user.checkPermission(permissions.ModifyOrders, vendor):
             raise Unauthorized
     else:
         vendor_uids = get_vendor_uids_for()
         if not vendor_uids:
             raise Unauthorized
     transitions = OrderTransitions(self.context)
     order = transitions.do_transition(uid, vendor_uids, transition)
     return self.dropdown(self.context, self.request, order).render()