cutelyst 4.3.0
A C++ Web Framework built on top of Qt, using the simple approach of Catalyst (Perl) framework.
validatorrequiredif.h
1/*
2 * SPDX-FileCopyrightText: (C) 2017-2023 Matthias Fehring <mf@huessenbergnetz.de>
3 * SPDX-License-Identifier: BSD-3-Clause
4 */
5#ifndef CUTELYSTVALIDATORREQUIREDIF_H
6#define CUTELYSTVALIDATORREQUIREDIF_H
7
8#include "validatorrule.h"
9
10#include <Cutelyst/cutelyst_global.h>
11
12#include <QStringList>
13
14namespace Cutelyst {
15
16class ValidatorRequiredIfPrivate;
17
41class CUTELYST_PLUGIN_UTILS_VALIDATOR_EXPORT ValidatorRequiredIf : public ValidatorRule
42{
43public:
53 ValidatorRequiredIf(const QString &field,
54 const QString &otherField,
55 const QStringList &otherValues,
56 const ValidatorMessages &messages = ValidatorMessages());
57
62
63protected:
70 ValidatorReturnType validate(Context *c, const ParamsMultiMap &params) const override;
71
75 QString genericValidationError(Context *c,
76 const QVariant &errorData = QVariant()) const override;
77
78private:
79 Q_DECLARE_PRIVATE(ValidatorRequiredIf) // NOLINT(cppcoreguidelines-pro-type-reinterpret-cast)
80 Q_DISABLE_COPY(ValidatorRequiredIf)
81};
82
83} // namespace Cutelyst
84
85#endif // CUTELYSTVALIDATORREQUIREDIF_H
The Cutelyst Context.
Definition context.h:42
The field under validation must be present and not empty if the other field is equal to any value in ...
Base class for all validator rules.
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.