QString upload(PuushFile file) { QDateTime time = QDateTime::currentDateTime(); QList<FormField> formData = { textField("k", settings.apiKey.toUtf8()), textField("z", "poop"), dataField("f", file.name, file.data) }; QHttpMultiPart *form = createForm(formData); QNetworkReply *reply = apiCall("/api/up", form); if (!reply) return QString(); QString replyText = QString::fromUtf8(reply->readAll()); QStringList replyParts = replyText.split(','); if (replyParts.length() < 3) { if (!replyParts.isEmpty()) { if (replyParts.first() == "-2") trayicon->showMessage(QObject::tr("Upload error."), QObject::tr("Server rejected request."), QSystemTrayIcon::Critical); else if (replyParts.first() == "-1") trayicon->showMessage(QObject::tr("Upload error."), QObject::tr("Server error."), QSystemTrayIcon::Critical); else trayicon->showMessage(QObject::tr("Upload error."), QObject::tr("Unknown server error."), QSystemTrayIcon::Critical); } else { trayicon->showMessage(QObject::tr("Upload error."), QObject::tr("Empty response."), QSystemTrayIcon::Critical); } return QString(); } recent.prepend({replyParts.at(2).toInt(), time, replyParts.at(1), file.name}); setupMenu(); QString url = replyParts.at(1); trayicon->showMessage(QObject::tr("Upload successful."), url, QSystemTrayIcon::Information, 5000); if (settings.onPuushActions & Settings::PlaySound) playSound("qrc:/notify.wav"); if (settings.onPuushActions & Settings::CopyLink) setClipboardText(url); if (settings.onPuushActions & Settings::OpenInBrowser) QDesktopServices::openUrl(url); return url; }
IDataField DataTableWidget::dataField(int ARow, const QString &AVar) const { return dataField(ARow,FDataForms->fieldIndex(AVar,FTable.columns)); }
IDataField DataTableWidget::currentField() const { return dataField(currentRow(),currentColumn()); }