6#include "validatorin_p.h"
11 const QVariant &values,
12 Qt::CaseSensitivity cs,
14 const QString &defValKey)
27 const QString v =
value(params);
31 if (d->values.userType() == QMetaType::QStringList) {
32 vals = d->values.toStringList();
33 }
else if (d->values.userType() == QMetaType::QString) {
34 vals = c->
stash(d->values.toString()).toStringList();
39 qCWarning(C_VALIDATOR).noquote()
40 <<
debugString(c) <<
"The list of comparison values is emtpy";
42 if (vals.contains(v, d->cs)) {
43 result.
value.setValue(v);
45 qCDebug(C_VALIDATOR).noquote().nospace()
46 <<
debugString(c) <<
" \"" << v <<
"\" is not part of the comparison list "
60 const QStringList vals = errorData.toStringList();
61 const QString _label =
label(c);
62 if (_label.isEmpty()) {
65 return c->
qtTrId(
"cutelyst-valin-genvalerr").arg(c->
locale().createSeparatedList(vals));
70 return c->
qtTrId(
"cutelyst-valin-genvalerr-label")
71 .arg(_label, c->
locale().createSeparatedList(vals));
78 const QString _label =
label(c);
79 if (_label.isEmpty()) {
81 return c->
qtTrId(
"cutelyst-validator-genvaldataerr-empty-list");
85 return c->
qtTrId(
"cutelyst-validator-genvaldataerr-empty-list-label").arg(_label);
void stash(const QVariantHash &unite)
QLocale locale() const noexcept
QString qtTrId(const char *id, int n=-1) const
ValidatorReturnType validate(Context *c, const ParamsMultiMap ¶ms) const override
ValidatorIn(const QString &field, const QVariant &values, Qt::CaseSensitivity cs=Qt::CaseSensitive, const ValidatorMessages &messages=ValidatorMessages(), const QString &defValKey=QString())
QString genericValidationDataError(Context *c, const QVariant &errorData) const override
QString genericValidationError(Context *c, const QVariant &errorData=QVariant()) const override
QString field() const noexcept
QString validationError(Context *c, const QVariant &errorData={}) const
QString label(Context *c) const
ValidatorRule(const QString &field, const ValidatorMessages &messages={}, const QString &defValKey={}, QByteArrayView validatorName=nullptr)
QString validationDataError(Context *c, const QVariant &errorData={}) const
void defaultValue(Context *c, ValidatorReturnType *result) const
QString value(const ParamsMultiMap ¶ms) const
QString debugString(Context *c) const
QMultiMap< QString, QString > ParamsMultiMap
The Cutelyst namespace holds all public Cutelyst API.
Stores custom error messages and the input field label.
Contains the result of a single input parameter validation.