|  | cutelyst 5.0.1
    A C++ Web Framework built on top of Qt, using the simple approach of Catalyst (Perl) framework. | 
The field under validation must be a valid URL. More...
#include <Cutelyst/Plugins/Utils/validatorurl.h>

| Public Types | |
| enum | Constraint { NoConstraint , StrictParsing , NoRelative , NoLocalFile , WebsiteOnly } | 
| Public Member Functions | |
| ValidatorUrl (const QString &field, Constraints constraints=NoConstraint, const QStringList &schemes={}, const ValidatorMessages &messages={}, const QString &defValKey={}) | |
| ~ValidatorUrl () 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 | genericValidationError (Context *c, const QVariant &errorData=QVariant()) const override | 
| ValidatorReturnType | validate (Context *c, const ParamsMultiMap ¶ms) const override | 
| void | validateCb (Context *c, const ParamsMultiMap ¶ms, ValidatorRtFn cb) const override | 
|  Protected Member Functions inherited from Cutelyst::ValidatorRule | |
| ValidatorRule (ValidatorRulePrivate &dd) | |
| QString | debugString (const Context *c) const | 
| void | defaultValue (Context *c, ValidatorReturnType *result) const | 
| void | defaultValue (Context *c, ValidatorRtFn cb) const | 
| QString | field () const noexcept | 
| virtual QString | genericParsingError (Context *c, const QVariant &errorData={}) const | 
| virtual QString | genericValidationDataError (Context *c, const QVariant &errorData={}) const | 
| QString | label (const 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 | 
| Additional Inherited Members | |
|  Related Symbols inherited from Cutelyst::ValidatorRule | |
| using | ValidatorRtFn = std::function< void(ValidatorReturnType &&result)> | 
| Void callback function for validator rules that processes the ValidatorReturnType. | |
Checks if the field contains a valid URL by loading it into a QUrl and testing it’s validity.
Definition at line 33 of file validatorurl.h.
Constraints to limit the validation.
| Enumerator | |
|---|---|
| NoConstraint | No constraints set. | 
| StrictParsing | String will be parsed in strict mode. See QUrl::ParsingMode | 
| NoRelative | Relative URLs are not valid. | 
| NoLocalFile | Local file URLs are not Vaid. | 
| WebsiteOnly | Combines NoRelative and NoLocalFile and sets http and https to the schemes list. (Will overwrite existing list) | 
Definition at line 39 of file validatorurl.h.
| 
 | explicit | 
Constructs a new ValidatorUrl object with the given parameters.
| field | Name of the input field to validate. | 
| constraints | Constraints for parsing and validating the URL. | 
| schemes | List of allowed schemes for a valid URL. | 
| messages | Custom error messages if validation fails. | 
| defValKey | Stash key containing a default value if input field is empty. This value will NOT be validated. | 
Definition at line 13 of file validatorurl.cpp.
| 
 | overridedefault | 
Destroys the ValidatorUrl object.
| 
 | overrideprotectedvirtual | 
Returns a generic error message if validation failed.
Reimplemented from Cutelyst::ValidatorRule.
Definition at line 91 of file validatorurl.cpp.
References QString::arg(), QString::isEmpty(), Cutelyst::ValidatorRule::label(), and Cutelyst::Context::qtTrId().
| 
 | overrideprotectedvirtual | 
Performs the validation on the input params and returns the result.
If validation succeeded, ValidatorReturnType::value will contain the input paramter value converted into QUrl.
Implements Cutelyst::ValidatorRule.
Definition at line 24 of file validatorurl.cpp.
References Cutelyst::ValidatorRule::debugString(), Cutelyst::ValidatorRule::defaultValue(), QList::empty(), Cutelyst::ValidatorReturnType::errorMessage, QString::isEmpty(), NoLocalFile, NoRelative, QVariant::setValue(), QUrl::StrictMode, StrictParsing, QUrl::TolerantMode, QString::toLower(), Cutelyst::ValidatorRule::validationError(), Cutelyst::ValidatorReturnType::value, Cutelyst::ValidatorRule::value(), and WebsiteOnly.
Referenced by validateCb().
| 
 | overrideprotectedvirtual | 
Performs the validation on the input params and calls the cb with the ValidatorReturnType as argument.
If validation succeeded, ValidatorReturnType::value will contain the input paramter value converted into QUrl.
Reimplemented from Cutelyst::ValidatorRule.
Definition at line 86 of file validatorurl.cpp.
References validate().