public function validate($validator) { $currencySymbol = preg_quote(DBCurrency::config()->get('currency_symbol')); $regex = '/^\\s*(\\-?' . $currencySymbol . '?|' . $currencySymbol . '\\-?)?(\\d{1,3}(\\,\\d{3})*|(\\d+))(\\.\\d{2})?\\s*$/'; if (!empty($this->value) && !preg_match($regex, $this->value)) { $validator->validationError($this->name, _t('Form.VALIDCURRENCY', "Please enter a valid currency"), "validation"); return false; } return true; }