Passwort.cpp 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579
  1. #include "..\..\Global\Variablen.h"
  2. #include "Passwort.h"
  3. #include "..\..\Global\Initialisierung.h"
  4. #include <Punkt.h>
  5. #include <Text.h>
  6. #include <InitDatei.h>
  7. // Inhalt der PasswortÄndern Klasse aus Passwort.h
  8. // Konstruktor
  9. PasswortÄndern::PasswortÄndern( Fenster *zVorLoginFenster )
  10. : ReferenceCounter()
  11. {
  12. Punkt bildschirmmitte = uiFactory.initParam.bildschirm->getBackBufferSize() / 2;
  13. passwortÄndern = initKnopf( 10, 170, 130, 30, Knopf::Style::Sichtbar, "Passwort ändern" );
  14. passwortÄndern->setMausEreignisParameter( this );
  15. passwortÄndern->setMausEreignis( passwortÄndernPasswortÄndernME );
  16. initToolTip( passwortÄndern, "Account Passwort ändern." );
  17. zVorLoginFenster->addMember( dynamic_cast<Zeichnung *>( passwortÄndern->getThis() ) );
  18. fenster = initFenster( bildschirmmitte.x - 125, bildschirmmitte.y - 115, 250, 230, Fenster::Style::Erlaubt | Fenster::Style::Rahmen | Fenster::Style::Titel | Fenster::Style::TitelBuffered, "Passwort ändern" );
  19. name = initTextFeld( 20, 20, 208, 20, TextFeld::Style::TextFeld, "Name" );
  20. name->setTastaturEreignisParameter( this );
  21. name->setTastaturEreignis( passwortÄndernNameTE );
  22. initToolTip( name, "Account Name." );
  23. fenster->addMember( dynamic_cast<Zeichnung *>( name->getThis() ) );
  24. passwort = initTextFeld( 20, 50, 208, 20, TextFeld::Style::TextFeld, "Passwort" );
  25. passwort->setTastaturEreignisParameter( this );
  26. passwort->setTastaturEreignis( passwortÄndernPasswortTE );
  27. initToolTip( passwort, "Account Passwort." );
  28. fenster->addMember( dynamic_cast<Zeichnung *>( passwort->getThis() ) );
  29. neuPasswort = initTextFeld( 20, 80, 208, 20, TextFeld::Style::TextFeld, "neues Passwort" );
  30. neuPasswort->setTastaturEreignisParameter( this );
  31. neuPasswort->setTastaturEreignis( passwortÄndernNeuPasswortTE );
  32. initToolTip( neuPasswort, "Neues Account Passwort." );
  33. fenster->addMember( dynamic_cast<Zeichnung *>( neuPasswort->getThis() ) );
  34. neuPasswort2 = initTextFeld( 20, 110, 208, 20, TextFeld::Style::TextFeld, "Passwort wiederholen" );
  35. neuPasswort2->setTastaturEreignisParameter( this );
  36. neuPasswort2->setTastaturEreignis( passwortÄndernNeuPasswort2TE );
  37. initToolTip( neuPasswort2, "Neues Passwort Wiederhohlen." );
  38. fenster->addMember( dynamic_cast<Zeichnung *>( neuPasswort2->getThis() ) );
  39. geheimnis = initTextFeld( 20, 140, 208, 20, TextFeld::Style::TextFeld, "Geheimis" );
  40. geheimnis->setTastaturEreignisParameter( this );
  41. geheimnis->setTastaturEreignis( passwortÄndernGeheimnisTE );
  42. initToolTip( geheimnis, "Account Geheimnis." );
  43. fenster->addMember( dynamic_cast<Zeichnung *>( geheimnis->getThis() ) );
  44. weiter = initKnopf( 74, 170, 100, 20, Knopf::Style::Sichtbar, "weiter" );
  45. weiter->setMausEreignisParameter( this );
  46. weiter->setMausEreignis( passwortÄndernWeiterME );
  47. nachricht = initTextFeld( 0, 5, 255, 150, TextFeld::Style::HCenter | TextFeld::Style::Mehrzeilig, "" );
  48. fenster->addMember( dynamic_cast<Zeichnung *>( nachricht->getThis() ) );
  49. fenster->addMember( dynamic_cast<Zeichnung *>( weiter->getThis() ) );
  50. zVorLoginFenster->addMember( dynamic_cast<Zeichnung *>( fenster->getThis() ) );
  51. }
  52. // Destruktor
  53. PasswortÄndern::~PasswortÄndern()
  54. {
  55. if( passwortÄndern )
  56. passwortÄndern = (Knopf *)passwortÄndern->release();
  57. if( fenster )
  58. fenster = (Fenster *)fenster->release();
  59. if( name )
  60. name = (TextFeld *)name->release();
  61. if( passwort )
  62. passwort = (TextFeld *)passwort->release();
  63. if( neuPasswort )
  64. neuPasswort = (TextFeld *)neuPasswort->release();
  65. if( neuPasswort2 )
  66. neuPasswort2 = (TextFeld *)neuPasswort2->release();
  67. if( geheimnis )
  68. geheimnis = (TextFeld *)geheimnis->release();
  69. if( weiter )
  70. weiter = (Knopf *)weiter->release();
  71. if( nachricht )
  72. nachricht = (TextFeld *)nachricht->release();
  73. }
  74. // Privat
  75. void PasswortÄndern::zeigeNachricht( const char *txt )
  76. {
  77. Punkt bildschirmmitte = uiFactory.initParam.bildschirm->getBackBufferSize() / 2;
  78. name->removeStyle( TextFeld::Style::Sichtbar );
  79. passwort->removeStyle( TextFeld::Style::Sichtbar );
  80. neuPasswort->removeStyle( TextFeld::Style::Sichtbar );
  81. neuPasswort2->removeStyle( TextFeld::Style::Sichtbar );
  82. geheimnis->removeStyle( TextFeld::Style::Sichtbar );
  83. fenster->setSize( 250, 150 );
  84. fenster->setPosition( bildschirmmitte.x - 125, bildschirmmitte.y - 75 );
  85. weiter->setPosition( 139, 100 );
  86. weiter->setText( "Ok" );
  87. nachricht->setText( txt );
  88. if( nachricht->zText()->getLength() > 30 )
  89. {
  90. int pos = -1;
  91. bool set = 0;
  92. int lastp = 0;
  93. for( int i = 20; i < nachricht->zText()->getLength(); )
  94. {
  95. char *tmp = &nachricht->zText()->getText()[ i ];
  96. while( *tmp != ' ' && i < nachricht->zText()->getLength() )
  97. {
  98. tmp++;
  99. i++;
  100. if( i - 30 >= lastp )
  101. {
  102. if( set )
  103. {
  104. lastp = pos;
  105. set = 0;
  106. nachricht->zText()->getText()[ pos ] = '\n';
  107. }
  108. else
  109. lastp += 5;
  110. }
  111. }
  112. if( i < nachricht->zText()->getLength() )
  113. {
  114. pos = i;
  115. set = 1;
  116. tmp++;
  117. i++;
  118. }
  119. }
  120. }
  121. nachricht->addStyle( TextFeld::Style::Sichtbar );
  122. }
  123. // Knopfdruck
  124. void PasswortÄndern::druckFremdKnopf() // Ein anderer Knopf wurde gedrückt
  125. {
  126. fenster->removeStyle( Fenster::Style::Sichtbar );
  127. passwortÄndern->setRahmenBreite( 2 );
  128. passwortÄndern->setAlphaFeldFarbe( 0x5500FF00 );
  129. passwortÄndern->setAlphaFeldStrength( -5 );
  130. }
  131. bool PasswortÄndern::passwortÄndernME( void *obj, MausEreignis me ) // MausEreignis im Knopf passwortVergessen
  132. {
  133. if( me.id == ME_RLinks )
  134. {
  135. vorLogin->setPasswortÄndern();
  136. passwortÄndern->setRahmenBreite( 3 );
  137. passwortÄndern->setAlphaFeldFarbe( 0xFF000000 );
  138. passwortÄndern->setAlphaFeldStrength( 20 );
  139. Punkt bildschirmmitte = uiFactory.initParam.bildschirm->getBackBufferSize() / 2;
  140. fenster->setSize( 255, 230 );
  141. fenster->setPosition( bildschirmmitte.x - 125, bildschirmmitte.y - 115 );
  142. fenster->addStyle( Fenster::Style::Sichtbar );
  143. nachricht->removeStyle( TextFeld::Style::Sichtbar );
  144. weiter->setText( "weiter" );
  145. weiter->setPosition( 75, 170 );
  146. name->addStyle( TextFeld::Style::Sichtbar );
  147. passwort->addStyle( TextFeld::Style::Sichtbar );
  148. neuPasswort->addStyle( TextFeld::Style::Sichtbar );
  149. neuPasswort2->addStyle( TextFeld::Style::Sichtbar );
  150. geheimnis->addStyle( TextFeld::Style::Sichtbar );
  151. name->addStyle( TextFeld::Style::Fokus );
  152. name->setAuswahl( 0, name->zText()->getLength() );
  153. }
  154. return 1;
  155. }
  156. bool PasswortÄndern::nameTE( void *obj, TastaturEreignis te ) // Tastaturereignis im Textfeld name
  157. {
  158. if( te.id == TE_Press && te.taste == T_Enter )
  159. return 0;
  160. if( te.id == TE_Release && ( te.taste == T_Enter || te.taste == T_Tab ) )
  161. {
  162. name->removeStyle( TextFeld::Style::Fokus );
  163. passwort->addStyle( TextFeld::Style::Fokus );
  164. passwort->setAuswahl( 0, passwort->zText()->getLength() );
  165. }
  166. if( name->zText()->getLength() >= 25 && istSchreibbar( te.taste ) )
  167. return 0;
  168. return 1;
  169. }
  170. bool PasswortÄndern::passwortTE( void *obj, TastaturEreignis te ) // Tastaturereignis im Textfeld passwort
  171. {
  172. if( te.id == TE_Press && te.taste == T_Enter )
  173. return 0;
  174. if( te.id == TE_Press )
  175. passwort->setSchowChar( '*' );
  176. if( te.id == TE_Release && ( te.taste == T_Enter || te.taste == T_Tab ) )
  177. {
  178. passwort->removeStyle( TextFeld::Style::Fokus );
  179. neuPasswort->addStyle( TextFeld::Style::Fokus );
  180. neuPasswort->setAuswahl( 0, neuPasswort->zText()->getLength() );
  181. }
  182. if( passwort->zText()->getLength() >= 25 && istSchreibbar( te.taste ) )
  183. return 0;
  184. return 1;
  185. }
  186. bool PasswortÄndern::neuPasswortTE( void *obj, TastaturEreignis te ) // Tastaturereignis im Textfeld neuPasswort
  187. {
  188. if( te.id == TE_Press && te.taste == T_Enter )
  189. return 0;
  190. if( te.id == TE_Press )
  191. neuPasswort->setSchowChar( '*' );
  192. if( te.id == TE_Release && ( te.taste == T_Enter || te.taste == T_Tab ) )
  193. {
  194. neuPasswort->removeStyle( TextFeld::Style::Fokus );
  195. neuPasswort2->addStyle( TextFeld::Style::Fokus );
  196. neuPasswort2->setAuswahl( 0, neuPasswort2->zText()->getLength() );
  197. }
  198. if( neuPasswort->zText()->getLength() >= 25 && istSchreibbar( te.taste ) )
  199. return 0;
  200. return 1;
  201. }
  202. bool PasswortÄndern::neuPasswort2TE( void *obj, TastaturEreignis te ) // Tastaturereignis im Textfeld neuPasswort2
  203. {
  204. if( te.id == TE_Press && te.taste == T_Enter )
  205. return 0;
  206. if( te.id == TE_Press )
  207. neuPasswort2->setSchowChar( '*' );
  208. if( te.id == TE_Release && ( te.taste == T_Enter || te.taste == T_Tab ) )
  209. {
  210. neuPasswort2->removeStyle( TextFeld::Style::Fokus );
  211. geheimnis->addStyle( TextFeld::Style::Fokus );
  212. geheimnis->setAuswahl( 0, geheimnis->zText()->getLength() );
  213. }
  214. if( neuPasswort2->zText()->getLength() >= 25 && istSchreibbar( te.taste ) )
  215. return 0;
  216. return 1;
  217. }
  218. bool PasswortÄndern::geheimnisTE( void *obj, TastaturEreignis te ) // Tastaturereignis im Textfeld geheimnis
  219. {
  220. if( te.id == TE_Press && te.taste == T_Enter )
  221. return 0;
  222. if( te.id == TE_Press )
  223. geheimnis->setSchowChar( '*' );
  224. if( te.id == TE_Release && te.taste == T_Enter )
  225. {
  226. geheimnis->removeStyle( TextFeld::Style::Fokus );
  227. MausEreignis me;
  228. me.id = ME_RLinks;
  229. weiterME( 0, me );
  230. }
  231. if( geheimnis->zText()->getLength() >= 50 && istSchreibbar( te.taste ) )
  232. return 0;
  233. return 1;
  234. }
  235. bool PasswortÄndern::weiterME( void *obj, MausEreignis me ) // MausEreignis im Knopf weiter
  236. {
  237. if( me.id == ME_RLinks )
  238. {
  239. if( weiter->zText()->istGleich( "weiter" ) )
  240. {
  241. if( name->zText()->getLength() == 0 )
  242. zeigeNachricht( "Bitte gebe deinen Accountnamen ein." );
  243. if( passwort->zText()->getLength() == 0 )
  244. zeigeNachricht( "Bitte gebe dein Accountpasswort ein." );
  245. if( neuPasswort->zText()->getLength() == 0 )
  246. zeigeNachricht( "Bitte gebe ein neues Passwort ein." );
  247. if( geheimnis->zText()->getLength() == 0 )
  248. zeigeNachricht( "Bitte gebe dein Accountgeheimnis ein." );
  249. if( !neuPasswort2->zText()->istGleich( neuPasswort->zText()->getText() ) )
  250. zeigeNachricht( "Das wiederhohlte Passwort stimmt nicht mit dem neuen Passwort überein." );
  251. if( weiter->zText()->istGleich( "Ok" ) )
  252. return 1;
  253. new AktionsThread( 13, name->zText()->getText(), passwort->zText()->getText(), geheimnis->zText()->getText(), neuPasswort->zText()->getText(), 0 );
  254. }
  255. else
  256. {
  257. Punkt bildschirmmitte = uiFactory.initParam.bildschirm->getBackBufferSize() / 2;
  258. fenster->setSize( 255, 230 );
  259. fenster->setPosition( bildschirmmitte.x - 125, bildschirmmitte.y - 115 );
  260. fenster->addStyle( Fenster::Style::Sichtbar );
  261. nachricht->removeStyle( TextFeld::Style::Sichtbar );
  262. weiter->setText( "weiter" );
  263. weiter->setPosition( 75, 170 );
  264. name->addStyle( TextFeld::Style::Sichtbar );
  265. passwort->addStyle( TextFeld::Style::Sichtbar );
  266. neuPasswort->addStyle( TextFeld::Style::Sichtbar );
  267. neuPasswort2->addStyle( TextFeld::Style::Sichtbar );
  268. geheimnis->addStyle( TextFeld::Style::Sichtbar );
  269. name->addStyle( TextFeld::Style::Fokus );
  270. name->setAuswahl( 0, name->zText()->getLength() );
  271. }
  272. }
  273. return 1;
  274. }
  275. void PasswortÄndern::setResult( bool ret ) // Setzt den Returnwert
  276. {
  277. if( ret )
  278. zeigeNachricht( "Passwort erfolgreich geändert." );
  279. else if( lastError.getLength() )
  280. zeigeNachricht( lastError );
  281. else
  282. zeigeNachricht( "Es ist ein Unbekannter Fehler aufgetreten." );
  283. }
  284. // Inhalt der PasswortVergessen Klasse aus Passwort.h
  285. // Konstruktor
  286. PasswortVergessen::PasswortVergessen( Fenster *zVorLoginFenster )
  287. : ReferenceCounter()
  288. {
  289. Punkt bildschirmmitte = uiFactory.initParam.bildschirm->getBackBufferSize() / 2;
  290. passwortVergessen = initKnopf( 10, 330, 130, 30, Knopf::Style::Sichtbar, "Passwort vergessen" );
  291. passwortVergessen->setMausEreignisParameter( this );
  292. passwortVergessen->setMausEreignis( passwortVergessenPasswortVergessenME );
  293. initToolTip( passwortVergessen, "Account Passwort per E-Mail senden." );
  294. zVorLoginFenster->addMember( dynamic_cast<Zeichnung *>( passwortVergessen->getThis() ) );
  295. fenster = initFenster( bildschirmmitte.x - 125, bildschirmmitte.y - 70, 250, 140, Fenster::Style::Erlaubt | Fenster::Style::Rahmen | Fenster::Style::Titel | Fenster::Style::TitelBuffered, "Passwort vergessen" );
  296. name = initTextFeld( 20, 20, 208, 20, TextFeld::Style::TextFeld, "Name" );
  297. name->setTastaturEreignisParameter( this );
  298. name->setTastaturEreignis( passwortVergessenNameTE );
  299. initToolTip( name, "Account Name." );
  300. fenster->addMember( dynamic_cast<Zeichnung *>( name->getThis() ) );
  301. geheimnis = initTextFeld( 20, 50, 208, 20, TextFeld::Style::TextFeld, "Geheimis" );
  302. geheimnis->setTastaturEreignisParameter( this );
  303. geheimnis->setTastaturEreignis( passwortVergessenGeheimnisTE );
  304. initToolTip( geheimnis, "Account geheimnis." );
  305. fenster->addMember( dynamic_cast<Zeichnung *>( geheimnis->getThis() ) );
  306. weiter = initKnopf( 74, 80, 100, 20, Knopf::Style::Sichtbar, "weiter" );
  307. weiter->setMausEreignisParameter( this );
  308. weiter->setMausEreignis( passwortVergessenWeiterME );
  309. nachricht = initTextFeld( 0, 5, 255, 150, TextFeld::Style::HCenter | TextFeld::Style::Mehrzeilig, "" );
  310. fenster->addMember( dynamic_cast<Zeichnung *>( nachricht->getThis() ) );
  311. fenster->addMember( dynamic_cast<Zeichnung *>( weiter->getThis() ) );
  312. zVorLoginFenster->addMember( dynamic_cast<Zeichnung *>( fenster->getThis() ) );
  313. }
  314. // Destruktor
  315. PasswortVergessen::~PasswortVergessen()
  316. {
  317. if( passwortVergessen )
  318. passwortVergessen = (Knopf *)passwortVergessen->release();
  319. if( fenster )
  320. fenster = (Fenster *)fenster->release();
  321. if( name )
  322. name = (TextFeld *)name->release();
  323. if( geheimnis )
  324. geheimnis = (TextFeld *)geheimnis->release();
  325. if( weiter )
  326. weiter = (Knopf *)weiter->release();
  327. if( nachricht )
  328. nachricht = (TextFeld *)nachricht->release();
  329. }
  330. // Privat
  331. void PasswortVergessen::zeigeNachricht( const char *txt )
  332. {
  333. Punkt bildschirmmitte = uiFactory.initParam.bildschirm->getBackBufferSize() / 2;
  334. name->removeStyle( TextFeld::Style::Sichtbar );
  335. geheimnis->removeStyle( TextFeld::Style::Sichtbar );
  336. fenster->setSize( 250, 150 );
  337. fenster->setPosition( bildschirmmitte.x - 125, bildschirmmitte.y - 75 );
  338. weiter->setPosition( 139, 100 );
  339. weiter->setText( "Ok" );
  340. nachricht->setText( txt );
  341. if( nachricht->zText()->getLength() > 30 )
  342. {
  343. int pos = -1;
  344. bool set = 0;
  345. int lastp = 0;
  346. for( int i = 20; i < nachricht->zText()->getLength(); )
  347. {
  348. char *tmp = &nachricht->zText()->getText()[ i ];
  349. while( *tmp != ' ' && i < nachricht->zText()->getLength() )
  350. {
  351. tmp++;
  352. i++;
  353. if( i - 30 >= lastp )
  354. {
  355. if( set )
  356. {
  357. lastp = pos;
  358. set = 0;
  359. nachricht->zText()->getText()[ pos ] = '\n';
  360. }
  361. else
  362. lastp += 5;
  363. }
  364. }
  365. if( i < nachricht->zText()->getLength() )
  366. {
  367. pos = i;
  368. set = 1;
  369. tmp++;
  370. i++;
  371. }
  372. }
  373. }
  374. nachricht->addStyle( TextFeld::Style::Sichtbar );
  375. }
  376. // Knopfdruck
  377. void PasswortVergessen::druckFremdKnopf() // Ein anderer Knopf wurde gedrückt
  378. {
  379. fenster->removeStyle( Fenster::Style::Sichtbar );
  380. passwortVergessen->setRahmenBreite( 2 );
  381. passwortVergessen->setAlphaFeldFarbe( 0x5500FF00 );
  382. passwortVergessen->setAlphaFeldStrength( -5 );
  383. }
  384. bool PasswortVergessen::passwortVergessenME( void *obj, MausEreignis me ) // MausEreignis im Knopf passwortVergessen
  385. {
  386. if( me.id == ME_RLinks )
  387. {
  388. vorLogin->setPasswortVergessen();
  389. passwortVergessen->setRahmenBreite( 3 );
  390. passwortVergessen->setAlphaFeldFarbe( 0xFF000000 );
  391. passwortVergessen->setAlphaFeldStrength( 20 );
  392. Punkt bildschirmmitte = uiFactory.initParam.bildschirm->getBackBufferSize() / 2;
  393. fenster->setSize( 255, 140 );
  394. fenster->setPosition( bildschirmmitte.x - 125, bildschirmmitte.y - 70 );
  395. fenster->addStyle( Fenster::Style::Sichtbar );
  396. nachricht->removeStyle( TextFeld::Style::Sichtbar );
  397. weiter->setText( "weiter" );
  398. weiter->setPosition( 75, 80 );
  399. name->addStyle( TextFeld::Style::Sichtbar );
  400. geheimnis->addStyle( TextFeld::Style::Sichtbar );
  401. name->addStyle( TextFeld::Style::Fokus );
  402. name->setAuswahl( 0, name->zText()->getLength() );
  403. }
  404. return 1;
  405. }
  406. bool PasswortVergessen::nameTE( void *obj, TastaturEreignis te ) // Tastaturereignis im Textfeld name
  407. {
  408. if( te.id == TE_Press && te.taste == T_Enter )
  409. return 0;
  410. if( te.id == TE_Release && ( te.taste == T_Enter || te.taste == T_Tab ) )
  411. {
  412. name->removeStyle( TextFeld::Style::Fokus );
  413. geheimnis->addStyle( TextFeld::Style::Fokus );
  414. geheimnis->setAuswahl( 0, geheimnis->zText()->getLength() );
  415. }
  416. if( name->zText()->getLength() >= 25 && istSchreibbar( te.taste ) )
  417. return 0;
  418. return 1;
  419. }
  420. bool PasswortVergessen::geheimnisTE( void *obj, TastaturEreignis te ) // Tastaturereignis im Textfeld geheimnis
  421. {
  422. if( te.id == TE_Press && te.taste == T_Enter )
  423. return 0;
  424. if( te.id == TE_Press )
  425. geheimnis->setSchowChar( '*' );
  426. if( te.id == TE_Release && te.taste == T_Enter )
  427. {
  428. geheimnis->removeStyle( TextFeld::Style::Fokus );
  429. MausEreignis me;
  430. me.id = ME_RLinks;
  431. weiterME( 0, me );
  432. }
  433. if( geheimnis->zText()->getLength() >= 50 && istSchreibbar( te.taste ) )
  434. return 0;
  435. return 1;
  436. }
  437. bool PasswortVergessen::weiterME( void *obj, MausEreignis me ) // MausEreignis im Knopf weiter
  438. {
  439. if( me.id == ME_RLinks )
  440. {
  441. if( weiter->zText()->istGleich( "weiter" ) )
  442. {
  443. if( name->zText()->getLength() == 0 )
  444. zeigeNachricht( "Bitte gebe deinen Accountnamen ein." );
  445. if( geheimnis->zText()->getLength() == 0 )
  446. zeigeNachricht( "Bitte gebe dein Accountgeheimnis ein." );
  447. if( weiter->zText()->istGleich( "Ok" ) )
  448. return 1;
  449. new AktionsThread( 14, name->zText()->getText(), geheimnis->zText()->getText(), 0, 0, 0 );
  450. }
  451. else
  452. {
  453. Punkt bildschirmmitte = uiFactory.initParam.bildschirm->getBackBufferSize() / 2;
  454. fenster->setSize( 255, 140 );
  455. fenster->setPosition( bildschirmmitte.x - 125, bildschirmmitte.y - 70 );
  456. fenster->addStyle( Fenster::Style::Sichtbar );
  457. nachricht->removeStyle( TextFeld::Style::Sichtbar );
  458. weiter->setText( "weiter" );
  459. weiter->setPosition( 75, 80 );
  460. name->addStyle( TextFeld::Style::Sichtbar );
  461. geheimnis->addStyle( TextFeld::Style::Sichtbar );
  462. name->addStyle( TextFeld::Style::Fokus );
  463. name->setAuswahl( 0, name->zText()->getLength() );
  464. }
  465. }
  466. return 1;
  467. }
  468. void PasswortVergessen::setResult( bool ret ) // Setzt den Returnwert
  469. {
  470. if( ret )
  471. zeigeNachricht( "Dir wurde eine E-Mail mit deinem Accountpasswort gesendet." );
  472. else if( lastError.getLength() )
  473. zeigeNachricht( lastError );
  474. else
  475. zeigeNachricht( "Es ist ein Unbekannter Fehler aufgetreten." );
  476. }
  477. // messages
  478. bool passwortÄndernPasswortÄndernME( void *p, void *obj, MausEreignis me )
  479. {
  480. if( !p )
  481. return 0;
  482. return ( (PasswortÄndern *)p )->passwortÄndernME( obj, me );
  483. }
  484. bool passwortÄndernNameTE( void *p, void *obj, TastaturEreignis te )
  485. {
  486. if( !p )
  487. return 0;
  488. return ( (PasswortÄndern *)p )->nameTE( obj, te );
  489. }
  490. bool passwortÄndernPasswortTE( void *p, void *obj, TastaturEreignis te )
  491. {
  492. if( !p )
  493. return 0;
  494. return ( (PasswortÄndern *)p )->passwortTE( obj, te );
  495. }
  496. bool passwortÄndernNeuPasswortTE( void *p, void *obj, TastaturEreignis te )
  497. {
  498. if( !p )
  499. return 0;
  500. return ( (PasswortÄndern *)p )->neuPasswortTE( obj, te );
  501. }
  502. bool passwortÄndernNeuPasswort2TE( void *p, void *obj, TastaturEreignis te )
  503. {
  504. if( !p )
  505. return 0;
  506. return ( (PasswortÄndern *)p )->neuPasswort2TE( obj, te );
  507. }
  508. bool passwortÄndernGeheimnisTE( void *p, void *obj, TastaturEreignis te )
  509. {
  510. if( !p )
  511. return 0;
  512. return ( (PasswortÄndern *)p )->geheimnisTE( obj, te );
  513. }
  514. bool passwortÄndernWeiterME( void *p, void *obj, MausEreignis me )
  515. {
  516. if( !p )
  517. return 0;
  518. return ( (PasswortÄndern *)p )->weiterME( obj, me );
  519. }
  520. bool passwortVergessenPasswortVergessenME( void *p, void *obj, MausEreignis me )
  521. {
  522. if( !p )
  523. return 0;
  524. return ( (PasswortVergessen *)p )->passwortVergessenME( obj, me );
  525. }
  526. bool passwortVergessenNameTE( void *p, void *obj, TastaturEreignis te )
  527. {
  528. if( !p )
  529. return 0;
  530. return ( (PasswortVergessen *)p )->nameTE( obj, te );
  531. }
  532. bool passwortVergessenGeheimnisTE( void *p, void *obj, TastaturEreignis te )
  533. {
  534. if( !p )
  535. return 0;
  536. return ( (PasswortVergessen *)p )->geheimnisTE( obj, te );
  537. }
  538. bool passwortVergessenWeiterME( void *p, void *obj, MausEreignis me )
  539. {
  540. if( !p )
  541. return 0;
  542. return ( (PasswortVergessen *)p )->weiterME( obj, me );
  543. }