Esempio n. 1
0
 def __call__(self):
     form = self.request.form
     context = aq_inner(self.context)
     annotations = IAnnotations(context)['collective.pfg.payment']
     if form.get("form.button.UpdateNumber", None) is not None:
         sdm = getToolByName(context, 'session_data_manager')
         session = sdm.getSessionData(create=False)
         if session is not None:
             if session.get('collective.pfg.payment.number', None) is not None:
                 del session['collective.pfg.payment.number']
         re = getUtility(IRegularExpression)
         numbering_type = form.get('numbering_type')
         if numbering_type == 'Incremental':
             annotations.numbering_type = 'Incremental'
             next_incremental_number = form.get('next_incremental_number', None)
             if re.integer(next_incremental_number):
                 annotations.next_incremental_number = int(next_incremental_number)
             else:
                 message = _(u"Please input integer number for the incremental number.")
                 IStatusMessage(self.request).addStatusMessage(message, type='warn')
         elif numbering_type == 'Random':
             annotations.numbering_type = 'Random'
             random_number_digits = form.get('random_number_digits', None)
             if re.integer(random_number_digits):
                 annotations.random_number_digits = int(random_number_digits)
             else:
                 message = _(u"Please input integer number for the randome digits.")
                 IStatusMessage(self.request).addStatusMessage(message, type='warn')
     return self.template()
 def number(self):
     context = aq_inner(self.context)
     parent = aq_parent(context)
     if IAnnotations(parent).get('collective.pfg.payment') is not None:
         annotations = IAnnotations(parent)['collective.pfg.payment']
         sdm = getToolByName(context, 'session_data_manager')
         session = sdm.getSessionData(create=True)
         number = session.get('collective.pfg.payment.number', None)
         if number is None:
             if annotations.numbering_type == 'Incremental':
                 number = annotations.next_incremental_number
                 new_number = number + 1
                 annotations.next_incremental_number = new_number
                 number = str(number)
             if annotations.numbering_type == 'Random':
                 digits = annotations.random_number_digits
                 ids = annotations.numbers
                 rd = getUtility(IRandomDigits)
                 number = rd(digits, ids)
             annotations.numbers.append(number)
             session.set('collective.pfg.payment.number', number)
         return number
 def number(self):
     context = aq_inner(self.context)
     parent = aq_parent(context)
     if IAnnotations(parent).get('collective.pfg.payment') is not None:
         annotations = IAnnotations(parent)['collective.pfg.payment']
         sdm = getToolByName(context, 'session_data_manager')
         session = sdm.getSessionData(create=True)
         number = session.get('collective.pfg.payment.number', None)
         if number is None:
             if annotations.numbering_type == 'Incremental':
                 number = annotations.next_incremental_number
                 new_number = number + 1
                 annotations.next_incremental_number = new_number
                 number = str(number)
             if annotations.numbering_type == 'Random':
                 digits = annotations.random_number_digits
                 ids = annotations.numbers
                 rd = getUtility(IRandomDigits)
                 number = rd(digits, ids)
             annotations.numbers.append(number)
             session.set('collective.pfg.payment.number', number)
         return number
Esempio n. 4
0
 def __call__(self):
     form = self.request.form
     context = aq_inner(self.context)
     annotations = IAnnotations(context)['collective.pfg.payment']
     if form.get("form.button.UpdateNumber", None) is not None:
         sdm = getToolByName(context, 'session_data_manager')
         session = sdm.getSessionData(create=False)
         if session is not None:
             if session.get('collective.pfg.payment.number',
                            None) is not None:
                 del session['collective.pfg.payment.number']
         re = getUtility(IRegularExpression)
         numbering_type = form.get('numbering_type')
         if numbering_type == 'Incremental':
             annotations.numbering_type = 'Incremental'
             next_incremental_number = form.get('next_incremental_number',
                                                None)
             if re.integer(next_incremental_number):
                 annotations.next_incremental_number = int(
                     next_incremental_number)
             else:
                 message = _(
                     u"Please input integer number for the incremental number."
                 )
                 IStatusMessage(self.request).addStatusMessage(message,
                                                               type='warn')
         elif numbering_type == 'Random':
             annotations.numbering_type = 'Random'
             random_number_digits = form.get('random_number_digits', None)
             if re.integer(random_number_digits):
                 annotations.random_number_digits = int(
                     random_number_digits)
             else:
                 message = _(
                     u"Please input integer number for the randome digits.")
                 IStatusMessage(self.request).addStatusMessage(message,
                                                               type='warn')
     return self.template()