implement max lengths for input dialogs that are sent to the server (#4522)

* implement max lengths for input dialogs that are sent to the server

* missed a double setMaxLength

* implement max string lengths server side

* add custom getText dialog with max length

* fix deck storage tab and miscellaneous server side

* add max size for deck uploads

* final pass on client side limits
This commit is contained in:
ebbit1q 2022-01-16 23:57:01 +01:00 committed by GitHub
parent d61c604bf4
commit 994704d353
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
37 changed files with 564 additions and 348 deletions

View file

@ -1,5 +1,7 @@
#include "dlg_edit_avatar.h"
#include "stringsizes.h"
#include <QBuffer>
#include <QDebug>
#include <QDialogButtonBox>
@ -75,6 +77,13 @@ QByteArray DlgEditAvatar::getImage()
QByteArray ba;
QBuffer buffer(&ba);
buffer.open(QIODevice::WriteOnly);
image.save(&buffer, "JPG");
return ba;
for (;;) {
image.save(&buffer, "JPG");
if (ba.length() > MAX_FILE_LENGTH) {
ba.clear();
image = image.scaledToWidth(image.width() / 2); // divide the amount of pixels in four to get the size down
} else {
return ba;
}
}
}