X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fcore%2Fcore.h;h=3eb43132d1d2deceaef87b50cd7c935c7f445690;hb=07473582d22eddd934ee52127cad2baa11943d59;hp=835e7879c9bcd5e343d56fb8b1c503da1f6f9547;hpb=7fb88a023ef8e4658b39d22c2d88c0d8bd6709f8;p=quassel.git diff --git a/src/core/core.h b/src/core/core.h index 835e7879..3eb43132 100644 --- a/src/core/core.h +++ b/src/core/core.h @@ -95,7 +95,7 @@ public: static inline UserId addUser(const QString &userName, const QString &password, const QString &authenticator = "Database") { return instance()->_storage->addUser(userName, password, authenticator); } - + //! Does a comparison test against the authenticator in the database and the authenticator currently in use for a UserID. /** * \param userid The user's ID (note: not login name). @@ -114,6 +114,13 @@ public: */ static bool changeUserPassword(UserId userId, const QString &password); + //! Check if we can change a user password. + /** + * \param userID The user's ID + * \return true, if we can change their password, false otherwise + */ + static bool canChangeUserPassword(UserId userId); + //! Store a user setting persistently /** * \param userId The users Id @@ -611,10 +618,14 @@ private: void unregisterAuthenticatorBackend(Authenticator *); bool selectBackend(const QString &backend); + bool selectAuthenticator(const QString &backend); bool createUser(); bool saveBackendSettings(const QString &backend, const QVariantMap &settings); void saveAuthBackendSettings(const QString &backend, const QVariantMap &settings); + QVariantMap promptForSettings(const Storage *storage); + QVariantMap promptForSettings(const Authenticator *authenticator); + QVariantMap promptForSettings(QStringList keys, QVariantMap defaults); private: QSet _connectingClients;