#ifndef Datenbank_H #define Datenbank_H #include #include #include using namespace Framework; using namespace sql; namespace Admin_Recht { const int RSStarten = 8; const int RSBeenden = 9; const int RSPausieren = 10; const int RSMCChange = 11; } class RSDatenbank : public virtual ReferenceCounter { private: Datenbank* datenbank; CRITICAL_SECTION cs; public: // Konstruktor RSDatenbank(InitDatei* zIni); // Destruktor ~RSDatenbank(); // nicht constant void lock(); void unlock(); int istAdministrator(const char* name, const char* passwort); bool adminHatRecht(int id, int recht); bool proveKlient(int num, int sNum); Text* getKlientKey(int cId); void unregisterKlient(int num, int sNum); bool setServerStatus(int id, int status); bool setMaxClients(int id, int maxC); bool serverIstNichtPausiert(int id); int proveNeuAccount(const char* name, const char* eMail); bool neuAccount(const char* name, const char* pass, const char* geheim, const char* eMail, const char* gebDatum, InitDatei* zIni); int removeAccount(const char* name, const char* pass, const char* geheim, InitDatei* zIni); void removeAccountAbbruch(const char* name); bool removeConfirmation(const char* name, const char* key); int passwortChange(const char* name, const char* pass, const char* nPass, const char* geheim); int eMailChange(const char* name, const char* pass, const char* geheim, const char* eMail); int geheimnisChange(const char* name, const char* pass, const char* geheim, const char* nGeheim); bool nameVergessen(const char* pass, const char* geheim, InitDatei* zIni); bool passwortVergessen(const char* name, const char* geheim, InitDatei* zIni); bool geheimnisVergessen(const char* name, const char* pass, InitDatei* zIni); Text* eMailVergessen(const char* name, const char* pass, const char* geheim); char suchConfirmation(const char* name, const char* pass); void sendeRemoveEMail(const char* name, InitDatei* zIni); // constant Text* getLetzterFehler() const; }; #endif