aboutsummaryrefslogtreecommitdiff
path: root/src/Database/Common/insertserver.cpp
blob: 05b2eaa5996b4b4fcdeb00f311ba00bf74f8c829 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include "commonactions.h"

// insert a server into the list
bool insertServer(const QString         &serverAddress,
                  const unsigned short  &serverPort,
                  const QString         &gamename,
                  const bool            &directBeacon)
{
    // insert query string
    QSqlQuery q;
    QString insertString = "INSERT INTO serverlist (ip, queryport, gamename, f_direct) "
                           "VALUES (:ip, :queryport, :gamename, :directbeacon)";

    // bind values and execute
    q.prepare(insertString);
    q.bindValue(":ip", serverAddress);
    q.bindValue(":queryport", serverPort);
    q.bindValue(":gamename", gamename);
    q.bindValue(":directbeacon", ( directBeacon ? 1 : 0 ) ); // bool to int

    if ( ! q.exec() )
        return reportQuery(q);

    // was a row inserted?
    return (q.numRowsAffected() > 0);
}