Clicking the sendInvite button triggers a post request to the server to send a bidding invite via mail.
This commit is contained in:
@ -91,7 +91,7 @@ enum GetRequestTypes {
|
||||
GetBiddingsOfSpecificRound,
|
||||
GetBiddingsOfHighestRound
|
||||
};
|
||||
enum PostRequestTypes { RegisterUser };
|
||||
enum PostRequestTypes { RegisterUser, MailInvite };
|
||||
|
||||
/// functions
|
||||
static UserRoles GET_ROLE_FOR_COLUMN(const int column) {
|
||||
|
||||
@ -239,6 +239,34 @@ void TableModel::setOnlineCredentials(const QString& mail,
|
||||
setItemData(itemIndex, {{OnlineIdRole, uuid}, {AccessCodeRole, token}});
|
||||
}
|
||||
|
||||
QJsonDocument TableModel::getMailInviteJsonDoc(const QString& mail,
|
||||
const QString& serverUrl) const {
|
||||
QJsonDocument doc = QJsonDocument();
|
||||
|
||||
QModelIndex index = getIndexByRoleValue(mail, MailRole);
|
||||
|
||||
if (index.isValid()) {
|
||||
QJsonObject rootObject;
|
||||
|
||||
const QString user_id = data(index, OnlineIdRole).toString();
|
||||
const QString email = data(index, MailRole).toString();
|
||||
const QString name = data(index, FullNameRole).toString();
|
||||
const QString token = data(index, AccessCodeRole).toString();
|
||||
const QString accessUrl = serverUrl + "/" + token;
|
||||
|
||||
QJsonObject userObject;
|
||||
userObject.insert("user_id", user_id);
|
||||
userObject.insert("email", email);
|
||||
userObject.insert("name", name);
|
||||
userObject.insert("access_url", accessUrl);
|
||||
|
||||
rootObject.insert("user", userObject);
|
||||
|
||||
doc.setObject(rootObject);
|
||||
}
|
||||
return doc;
|
||||
}
|
||||
|
||||
void TableModel::updateBiddings(const QList<bidding> biddings) {
|
||||
QListIterator<bidding> i(biddings);
|
||||
while (i.hasNext()) {
|
||||
@ -352,6 +380,7 @@ qreal TableModel::biddingAverage2() const {
|
||||
qInfo() << "average calculation (2):" << averageBidding;
|
||||
return averageBidding;
|
||||
}
|
||||
|
||||
qreal TableModel::biddingAverage3() const {
|
||||
const UserRoles biddingRole = Bidding3Role;
|
||||
const qreal averageBidding = averageBiddingAmount(biddingRole);
|
||||
|
||||
@ -46,6 +46,8 @@ class TableModel : public QAbstractTableModel {
|
||||
bool updateItem(const ModelItemValues& itemValues);
|
||||
|
||||
void setOnlineCredentials(const QString& mail, const QString& uuid, const QString& token);
|
||||
QJsonDocument getMailInviteJsonDoc(const QString& mail, const QString& serverUrl) const;
|
||||
|
||||
void updateBiddings(const QList<bidding> biddings);
|
||||
|
||||
public slots:
|
||||
@ -111,6 +113,7 @@ class TableModel : public QAbstractTableModel {
|
||||
qreal totalSharesWithBiddings(const UserRoles biddingRole) const;
|
||||
|
||||
QModelIndex getIndexByRoleValue(const QString& valueString, const int role) const;
|
||||
QMap<int, QVariant> getItemValues(const bidding bid);
|
||||
};
|
||||
|
||||
#endif // TABLEMODEL_H
|
||||
|
||||
Reference in New Issue
Block a user