Datenbank.h 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. #ifndef Datenbank_H
  2. #define Datenbank_H
  3. #include <sql.h>
  4. #include <Text.h>
  5. #include <InitDatei.h>
  6. using namespace Framework;
  7. using namespace sql;
  8. namespace Admin_Recht
  9. {
  10. const int RSStarten = 8;
  11. const int RSBeenden = 9;
  12. const int RSPausieren = 10;
  13. const int RSMCChange = 11;
  14. }
  15. class RSDatenbank : public virtual ReferenceCounter
  16. {
  17. private:
  18. Datenbank *datenbank;
  19. CRITICAL_SECTION cs;
  20. public:
  21. // Konstruktor
  22. RSDatenbank( InitDatei *zIni );
  23. // Destruktor
  24. ~RSDatenbank();
  25. // nicht constant
  26. void lock();
  27. void unlock();
  28. int istAdministrator( const char *name, const char *passwort );
  29. bool adminHatRecht( int id, int recht );
  30. bool proveKlient( int num, int sNum );
  31. Text *getKlientKey( int cId );
  32. void unregisterKlient( int num, int sNum );
  33. bool setServerStatus( int id, int status );
  34. bool setMaxClients( int id, int maxC );
  35. bool serverIstNichtPausiert( int id );
  36. int proveNeuAccount( const char *name, const char *eMail );
  37. bool neuAccount( const char *name, const char *pass, const char *geheim, const char *eMail, const char *gebDatum, InitDatei *zIni );
  38. int removeAccount( const char *name, const char *pass, const char *geheim, InitDatei *zIni );
  39. void removeAccountAbbruch( const char *name );
  40. bool removeConfirmation( const char *name, const char *key );
  41. int passwortChange( const char *name, const char *pass, const char *nPass, const char *geheim );
  42. int eMailChange( const char *name, const char *pass, const char *geheim, const char *eMail );
  43. int geheimnisChange( const char *name, const char *pass, const char *geheim, const char *nGeheim );
  44. bool nameVergessen( const char *pass, const char *geheim, InitDatei *zIni );
  45. bool passwortVergessen( const char *name, const char *geheim, InitDatei *zIni );
  46. bool geheimnisVergessen( const char *name, const char *pass, InitDatei *zIni );
  47. Text *eMailVergessen( const char *name, const char *pass, const char *geheim );
  48. char suchConfirmation( const char *name, const char *pass );
  49. void sendeRemoveEMail( const char *name, InitDatei *zIni );
  50. // constant
  51. Text *getLetzterFehler() const;
  52. };
  53. #endif