cutelyst 4.3.0
A C++ Web Framework built on top of Qt, using the simple approach of Catalyst (Perl) framework.
|
Checks if a value is not bigger or longer than a maximum value. More...
#include <Cutelyst/Plugins/Utils/validatormax.h>
Public Member Functions | |
ValidatorMax (const QString &field, QMetaType::Type type, const QVariant &max, const ValidatorMessages &messages=ValidatorMessages(), const QString &defValKey=QString()) | |
~ValidatorMax () override | |
Public Member Functions inherited from Cutelyst::ValidatorRule | |
ValidatorRule (const QString &field, const ValidatorMessages &messages={}, const QString &defValKey={}, QByteArrayView validatorName=nullptr) | |
virtual | ~ValidatorRule () |
Deconstructs the ValidatorRule. | |
Protected Member Functions | |
QString | genericParsingError (Context *c, const QVariant &errorData) const override |
QString | genericValidationDataError (Context *c, const QVariant &errorData) const override |
QString | genericValidationError (Context *c, const QVariant &errorData=QVariant()) const override |
ValidatorReturnType | validate (Context *c, const ParamsMultiMap ¶ms) const override |
Protected Member Functions inherited from Cutelyst::ValidatorRule | |
ValidatorRule (ValidatorRulePrivate &dd) | |
QString | debugString (Context *c) const |
void | defaultValue (Context *c, ValidatorReturnType *result) const |
QString | field () const noexcept |
QString | label (Context *c) const |
QString | parsingError (Context *c, const QVariant &errorData={}) const |
bool | trimBefore () const noexcept |
QString | validationDataError (Context *c, const QVariant &errorData={}) const |
QString | validationError (Context *c, const QVariant &errorData={}) const |
QString | value (const ParamsMultiMap ¶ms) const |
This works for floating point, integer and QString types, where for numeric types it will check the value itself while for QString it will check the string length. Use max to define the maximum value and type to set the type to check against. max will internally converted into a comparative value (qlonglong for QMetaType::Int, qulonglong for QMetaType::UInt and int for QMetaType::QString. Allowed types for the type specifier are all numeric types and QMetaType::QString. Any other type will result in a validation data error.
If you set a string to the max value, this will neither be interpreted as a number nor as string length, but will be used to get the comparison number value from the stash.
'C'
locale.Definition at line 48 of file validatormax.h.
ValidatorMax::ValidatorMax | ( | const QString & | field, |
QMetaType::Type | type, | ||
const QVariant & | max, | ||
const ValidatorMessages & | messages = ValidatorMessages() , |
||
const QString & | defValKey = QString() |
||
) |
Constructs a new ValidatorMax object with the given parameters.
field | Name of the input field to validate. |
type | The type to compare. |
max | Maximum value. Will be converted into comparable value. If it is a QString, it will try to get the comparison value from the stash. |
messages | Custom error message if validation fails. |
defValKey | Stash key containing a default value if input field is empty. This value will NOT be validated. |
Definition at line 12 of file validatormax.cpp.
|
overridedefault |
Destroys the ValidatorMax object.
|
overrideprotectedvirtual |
Returns a generic error message for input value parsing errors.
Reimplemented from Cutelyst::ValidatorRule.
Definition at line 267 of file validatormax.cpp.
References QString::arg(), QMetaType::Double, QMetaType::Float, QString::isEmpty(), Cutelyst::ValidatorRule::label(), and Cutelyst::Context::qtTrId().
|
overrideprotectedvirtual |
Returns a generic error message for validation data errors.
Reimplemented from Cutelyst::ValidatorRule.
Definition at line 218 of file validatormax.cpp.
References QString::arg(), QString::fromLatin1(), QString::isEmpty(), Cutelyst::ValidatorRule::label(), QMetaType::name(), Cutelyst::Context::qtTrId(), and QVariant::toInt().
|
overrideprotectedvirtual |
Returns a generic error message.
Reimplemented from Cutelyst::ValidatorRule.
Definition at line 167 of file validatormax.cpp.
References QString::arg(), QMetaType::Char, QMetaType::Double, QMetaType::Float, QMetaType::Int, QString::isEmpty(), Cutelyst::ValidatorRule::label(), Cutelyst::Context::locale(), QMetaType::Long, QMetaType::LongLong, QMetaType::QString, Cutelyst::Context::qtTrId(), QMetaType::Short, QVariant::toDouble(), QVariant::toLongLong(), QLocale::toString(), QVariant::toULongLong(), QMetaType::UChar, QMetaType::UInt, QMetaType::ULong, QMetaType::ULongLong, QMetaType::UShort, and Cutelyst::ValidatorRule::validationDataError().
|
overrideprotectedvirtual |
Performs the validation on the input params and returns the result.
If validation succeeded, ValidatorReturnType::value will contain the input parameter value converted into the type specified in the constructor.
Implements Cutelyst::ValidatorRule.
Definition at line 23 of file validatormax.cpp.
References QMetaType::Char, Cutelyst::ValidatorRule::debugString(), Cutelyst::ValidatorRule::defaultValue(), QMetaType::Double, Cutelyst::ValidatorReturnType::errorMessage, QMetaType::Float, QMetaType::Int, QString::isEmpty(), QVariant::isValid(), QString::length(), Cutelyst::Context::locale(), QMetaType::Long, QMetaType::LongLong, Cutelyst::ValidatorRule::parsingError(), QMetaType::QString, QVariant::setValue(), QMetaType::Short, QString::toDouble(), QLocale::toLongLong(), QString::toULongLong(), QMetaType::UChar, QMetaType::UInt, QMetaType::ULong, QMetaType::ULongLong, QMetaType::UShort, Cutelyst::ValidatorRule::validationDataError(), Cutelyst::ValidatorRule::validationError(), Cutelyst::ValidatorReturnType::value, and Cutelyst::ValidatorRule::value().