6#include "validatoralpha_p.h"
9using namespace Qt::Literals::StringLiterals;
11const QRegularExpression ValidatorAlphaPrivate::regex{u
"^[\\pL\\pM]+$"_s};
16 const QString &defValKey)
30 const QString v =
value(params);
33 result.
value.setValue(v);
35 qCDebug(C_VALIDATOR).noquote().nospace()
36 <<
debugString(c) <<
" \"" << v <<
"\" contains character that are not allowed";
51 for (
const QChar &ch :
value) {
52 const ushort &uc = ch.unicode();
53 if (!(((uc >= ValidatorRulePrivate::ascii_A) &&
54 (uc <= ValidatorRulePrivate::ascii_Z)) ||
55 ((uc >= ValidatorRulePrivate::ascii_a) &&
56 (uc <= ValidatorRulePrivate::ascii_z)))) {
62 valid =
value.contains(ValidatorAlphaPrivate::regex);
72 const QString _label =
label(c);
73 if (_label.isEmpty()) {
77 return c->
qtTrId(
"cutelyst-valalpha-genvalerr-asciionly");
80 return c->
qtTrId(
"cutelyst-valalpha-genvalerr");
87 return c->
qtTrId(
"cutelyst-valalpha-genvalerr-asciionly-label").arg(_label);
91 return c->
qtTrId(
"cutelyst-valalpha-genvalerr-label").arg(_label);
QString qtTrId(const char *id, int n=-1) const
QString genericValidationError(Context *c, const QVariant &errorData=QVariant()) const override
~ValidatorAlpha() override
ValidatorAlpha(const QString &field, bool asciiOnly=false, const ValidatorMessages &messages=ValidatorMessages(), const QString &defValKey=QString())
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)
void defaultValue(Context *c, ValidatorReturnType *result) const
QString value(const ParamsMultiMap ¶ms) const
QString debugString(Context *c) const
QMultiMap< QString, QString > ParamsMultiMap
static bool validate(const QString &value, bool asciiOnly=false)
Returns true if value only contains alphabetic characters.
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.