equal
deleted
inserted
replaced
480 |
480 |
481 @lltrace |
481 @lltrace |
482 def __call__(self, cls, req, *args, **kwargs): |
482 def __call__(self, cls, req, *args, **kwargs): |
483 score = 0 |
483 score = 0 |
484 for param in self.expected: |
484 for param in self.expected: |
485 val = req.form.get(param) |
485 if not param in req.form: |
486 if not val: |
|
487 return 0 |
486 return 0 |
488 score += 1 |
487 score += 1 |
489 return len(self.expected) |
488 return len(self.expected) |
490 |
489 |
491 |
490 |
619 try: |
618 try: |
620 etype = req.form['etype'] |
619 etype = req.form['etype'] |
621 except KeyError: |
620 except KeyError: |
622 try: |
621 try: |
623 etype = kwargs['etype'] |
622 etype = kwargs['etype'] |
|
623 except KeyError: |
|
624 return 0 |
|
625 else: |
|
626 # only check this is a known type if etype comes from req.form, |
|
627 # else we want the error to propagate |
|
628 try: |
|
629 etype = cls.vreg.case_insensitive_etypes[etype.lower()] |
|
630 req.form['etype'] = etype |
624 except KeyError: |
631 except KeyError: |
625 return 0 |
632 return 0 |
626 return self.score_class(cls.vreg.etype_class(etype), req) |
633 return self.score_class(cls.vreg.etype_class(etype), req) |
627 |
634 |
628 |
635 |