cutelyst 3.9.1
A C++ Web Framework built on top of Qt, using the simple approach of Catalyst (Perl) framework.
validatorfilesize.h
1/*
2 * SPDX-FileCopyrightText: (C) 2018-2022 Matthias Fehring <mf@huessenbergnetz.de>
3 * SPDX-License-Identifier: BSD-3-Clause
4 */
5
6#ifndef CUTELYSTVALIDATORFILESIZE_H
7#define CUTELYSTVALIDATORFILESIZE_H
8
9#include "validatorrule.h"
10
11#include <Cutelyst/cutelyst_global.h>
12
13#include <QLocale>
14
15namespace Cutelyst {
16
17class ValidatorFileSizePrivate;
18
57class CUTELYST_PLUGIN_UTILS_VALIDATOR_EXPORT ValidatorFileSize : public ValidatorRule
58{
59public:
63 enum Option : quint8 {
71 };
72
86 ValidatorFileSize(const QString &field,
87 Option option = NoOption,
88 const QVariant &min = QVariant(),
89 const QVariant &max = QVariant(),
90 const ValidatorMessages &messages = ValidatorMessages(),
91 const QString &defValKey = QString());
92
96 ~ValidatorFileSize() override;
97
110 static bool validate(const QString &value,
111 double min = -1,
112 double max = -1,
113 Option option = NoOption,
114 const QLocale &locale = QLocale(),
115 double *fileSize = nullptr);
116
127 static void inputPattern(Context *c,
128 const QString &stashKey = QStringLiteral("fileSizePattern"));
129
130protected:
137 ValidatorReturnType validate(Context *c, const ParamsMultiMap &params) const override;
138
142 QString genericValidationError(Context *c,
143 const QVariant &errorData = QVariant()) const override;
144
151 QString genericValidationDataError(Context *c, const QVariant &errorData) const override;
152
153private:
154 Q_DECLARE_PRIVATE(ValidatorFileSize)
155 Q_DISABLE_COPY(ValidatorFileSize)
156};
157
158} // namespace Cutelyst
159
160#endif // CUTELYSTVALIDATORFILESIZE_H
The Cutelyst Context.
Definition context.h:39
Checks if the input field contains a valid file size string like 1.5 GB.
Option
Options for ValidatorFileSize.
ValidatorFileSize(const QString &field, Option option=NoOption, const QVariant &min=QVariant(), const QVariant &max=QVariant(), const ValidatorMessages &messages=ValidatorMessages(), const QString &defValKey=QString())
Constructs a new file size validator.
ValidatorRule(const QString &field, const ValidatorMessages &messages=ValidatorMessages(), const QString &defValKey=QString())
Constructs a new ValidatorRule with the given parameters.
The Cutelyst namespace holds all public Cutelyst API.
Definition Mainpage.dox:8
QMultiMap< QString, QString > ParamsMultiMap
Stores custom error messages and the input field label.
Contains the result of a single input parameter validation.