X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fcore%2Fsqlitestorage.cpp;h=fcc52adf173fb96d473e100c4374b44ec17b0366;hb=92aa3bfeaf3a7f07d3abdf97cf95d9a602bc80ee;hp=19710edf0ff39ec1d85b5d8d36b67c63ea3e707b;hpb=33705cac168ec977c7bd246d9f1f0ee520fe7c7b;p=quassel.git diff --git a/src/core/sqlitestorage.cpp b/src/core/sqlitestorage.cpp index 19710edf..fcc52adf 100644 --- a/src/core/sqlitestorage.cpp +++ b/src/core/sqlitestorage.cpp @@ -120,7 +120,7 @@ UserId SqliteStorage::addUser(const QString &user, const QString &password) { return uid; } -void SqliteStorage::updateUser(UserId user, const QString &password) { +bool SqliteStorage::updateUser(UserId user, const QString &password) { QSqlDatabase db = logDb(); db.transaction(); @@ -130,8 +130,10 @@ void SqliteStorage::updateUser(UserId user, const QString &password) { query.bindValue(":password", cryptedPassword(password)); lockForWrite(); safeExec(query); + bool success = query.numRowsAffected() != 0; db.commit(); unlock(); + return success; } void SqliteStorage::renameUser(UserId user, const QString &newName) { @@ -167,6 +169,23 @@ UserId SqliteStorage::validateUser(const QString &user, const QString &password) } } +UserId SqliteStorage::getUserId(const QString &username) { + QSqlQuery query(logDb()); + query.prepare(queryString("select_userid")); + query.bindValue(":username", username); + + lockForRead(); + safeExec(query); + + if(query.first()) { + unlock(); + return query.value(0).toInt(); + } else { + unlock(); + return 0; + } +} + UserId SqliteStorage::internalUser() { QSqlQuery query(logDb()); query.prepare(queryString("select_internaluser"));