base_validation.py 960 Bytes
class BaseValidation(object):
    def __init__(self, cldr, params=None):
        if params is None:
            params = {}
        self.colander_invalid = cldr
        self.inputname = ('inputname' in params) and params['inputname'] or ''
        self.title = self.inputname.replace('_', ' ').title().replace(' ', '')
        self.value = None
        if 'inputvalue' in params:
            self.value = params['inputvalue']
        self.required = ('required' in params and params['required'] == True)
        self.rulemessage = ('message' in params) and params['message'] or None
        self.rulevalue = None
        if 'rule_value' in params:
            self.rulevalue = params['rule_value']
        self.allvalues = ('all_values' in params) and params['all_values'] or {}

    def value_type(self):
        if type(self.value) is int:
            return 'integer'
        elif type(self.value) is float:
            return float
        return 'string'