fix last bugs with register new user

This commit is contained in:
Dario 2019-10-15 11:26:36 +02:00
parent e74271def7
commit e443a7bb4c
11 changed files with 60 additions and 24 deletions

View File

@ -39,7 +39,7 @@ void CheckEmailPage::handleRequest(Poco::Net::HTTPServerRequest& request, Poco::
if(mSession) { if(mSession) {
getErrors(mSession); getErrors(mSession);
if(mSession->getSessionState() < SESSION_STATE_EMAIL_VERIFICATION_SEND) { if(mSession->getSessionState() < SESSION_STATE_EMAIL_VERIFICATION_SEND) {
state = MAIL_NOT_SEND; //state = MAIL_NOT_SEND;
} }
} }
@ -93,22 +93,34 @@ void CheckEmailPage::handleRequest(Poco::Net::HTTPServerRequest& request, Poco::
} else if(state == ASK_VERIFICATION_CODE) { responseStream << "\n"; } else if(state == ASK_VERIFICATION_CODE) { responseStream << "\n";
responseStream << "\t<form method=\"GET\">\n"; responseStream << "\t<form method=\"GET\">\n";
responseStream << "\t\t<p>Bitte gebe deinen E-Mail Verification Code ein. </p>\n"; responseStream << "\t\t<p>Bitte gebe deinen E-Mail Verification Code ein. </p>\n";
responseStream << "\t\t";
#line 68 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\checkEmail.cpsp"
if(mSession && !mSession->getUser().isNull()) { responseStream << "\n";
responseStream << "\t\t\t<p>Er wurde an deine E-Mail Adresse: ";
#line 69 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\checkEmail.cpsp"
responseStream << ( mSession->getUser()->getEmail() );
responseStream << " gesendet.</p>\n";
responseStream << "\t\t";
#line 70 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\checkEmail.cpsp"
} responseStream << "\n";
responseStream << "\t\t<input type=\"number\" name=\"email-verification-code\">\n"; responseStream << "\t\t<input type=\"number\" name=\"email-verification-code\">\n";
responseStream << "\t\t<input class=\"grd_bn_succeed\" type=\"submit\" value=\"Überprüfe Code\">\n"; responseStream << "\t\t<input class=\"grd_bn_succeed\" type=\"submit\" value=\"Überprüfe Code\">\n";
responseStream << "\t\t<p>Du hast bisher keinen Code erhalten? </p>\n";
responseStream << "\t\t<p>E-Mail erneut zuschicken (in Arbeit)</p>\n";
responseStream << "\t</form>\n"; responseStream << "\t</form>\n";
responseStream << "\t"; responseStream << "\t";
#line 71 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\checkEmail.cpsp" #line 76 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\checkEmail.cpsp"
} else { responseStream << "\n"; } else { responseStream << "\n";
responseStream << "\t<div class=\"grd_text\">\n"; responseStream << "\t<div class=\"grd_text\">\n";
responseStream << "\t\t\tUngültige Seite, wenn du das siehst stimmt hier etwas nicht. Bitte wende dich an den Server-Admin. \n"; responseStream << "\t\t\tUngültige Seite, wenn du das siehst stimmt hier etwas nicht. Bitte wende dich an den Server-Admin. \n";
responseStream << "\t\t</div>\n"; responseStream << "\t\t</div>\n";
responseStream << "\t"; responseStream << "\t";
#line 75 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\checkEmail.cpsp" #line 80 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\checkEmail.cpsp"
} responseStream << "\n"; } responseStream << "\n";
responseStream << "</div>\n"; responseStream << "</div>\n";
responseStream << "<div class=\"grd-time-used\">\n"; responseStream << "<div class=\"grd-time-used\">\n";
responseStream << "\t"; responseStream << "\t";
#line 78 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\checkEmail.cpsp" #line 83 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\checkEmail.cpsp"
responseStream << ( mTimeProfiler.string() ); responseStream << ( mTimeProfiler.string() );
responseStream << "\n"; responseStream << "\n";
responseStream << "</div>\n"; responseStream << "</div>\n";

View File

@ -164,10 +164,10 @@ Poco::Net::HTTPRequestHandler* PageRequestHandlerFactory::handleCheckEmail(Sessi
// no session or active session don't belong to verification code // no session or active session don't belong to verification code
if (!session || session->getEmailVerificationCode() != verificationCode) { if (!session || session->getEmailVerificationCode() != verificationCode) {
sm->releaseSession(session); //sm->releaseSession(session);
session = nullptr; //session = nullptr;
// it is maybe unsafe // it is maybe unsafe
//session = sm->findByEmailVerificationCode(verificationCode); session = sm->findByEmailVerificationCode(verificationCode);
} }
// no suitable session in memory, try to create one from db data // no suitable session in memory, try to create one from db data
if (!session) { if (!session) {

View File

@ -9,7 +9,7 @@
#include "../model/Profiler.h" #include "../model/Profiler.h"
#include "../SingletonManager/SessionManager.h" #include "../SingletonManager/SessionManager.h"
#include "Poco/Net/HTTPServerParams.h"
enum PageState enum PageState
{ {
@ -37,6 +37,7 @@ void PassphrasePage::handleRequest(Poco::Net::HTTPServerRequest& request, Poco::
PageState state = PAGE_ASK_PASSPHRASE; PageState state = PAGE_ASK_PASSPHRASE;
auto sm = SessionManager::getInstance(); auto sm = SessionManager::getInstance();
auto uri_start = request.serverParams().getServerName();
// remove old cookies if exist // remove old cookies if exist
sm->deleteLoginCookies(request, response, mSession); sm->deleteLoginCookies(request, response, mSession);
// save login cookie, because maybe we've get an new session // save login cookie, because maybe we've get an new session
@ -101,11 +102,11 @@ void PassphrasePage::handleRequest(Poco::Net::HTTPServerRequest& request, Poco::
responseStream << "<div class=\"grd_container\">\n"; responseStream << "<div class=\"grd_container\">\n";
responseStream << "\t<h1>Einen neuen Account anlegen</h1>\n"; responseStream << "\t<h1>Einen neuen Account anlegen</h1>\n";
responseStream << "\t"; responseStream << "\t";
#line 82 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\passphrase.cpsp" #line 83 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\passphrase.cpsp"
responseStream << ( getErrorsHtml() ); responseStream << ( getErrorsHtml() );
responseStream << "\n"; responseStream << "\n";
responseStream << "\t"; responseStream << "\t";
#line 83 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\passphrase.cpsp" #line 84 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\passphrase.cpsp"
if(state == PAGE_SHOW_PASSPHRASE) { responseStream << "\n"; if(state == PAGE_SHOW_PASSPHRASE) { responseStream << "\n";
responseStream << "\t\t<div class=\"grd_text-max-width\">\n"; responseStream << "\t\t<div class=\"grd_text-max-width\">\n";
responseStream << "\t\t\t<div class=\"grd_text\">\n"; responseStream << "\t\t\t<div class=\"grd_text\">\n";
@ -113,17 +114,20 @@ void PassphrasePage::handleRequest(Poco::Net::HTTPServerRequest& request, Poco::
responseStream << "\t\t\t</div>\n"; responseStream << "\t\t\t</div>\n";
responseStream << "\t\t\t<div class=\"grd_textarea\">\n"; responseStream << "\t\t\t<div class=\"grd_textarea\">\n";
responseStream << "\t\t\t\t"; responseStream << "\t\t\t\t";
#line 89 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\passphrase.cpsp" #line 90 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\passphrase.cpsp"
responseStream << ( mSession->getPassphrase() ); responseStream << ( mSession->getPassphrase() );
responseStream << "\n"; responseStream << "\n";
responseStream << "\t\t\t</div>\n"; responseStream << "\t\t\t</div>\n";
responseStream << "\t\t\t<a href=\"saveKeys\">Weiter</a>\n"; responseStream << "\t\t\t<a href=\"saveKeys\">Weiter</a>\n";
responseStream << "\t\t</div>\n"; responseStream << "\t\t</div>\n";
responseStream << "\t"; responseStream << "\t";
#line 93 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\passphrase.cpsp" #line 94 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\passphrase.cpsp"
} else if(state == PAGE_ASK_PASSPHRASE) { responseStream << "\n"; } else if(state == PAGE_ASK_PASSPHRASE) { responseStream << "\n";
responseStream << "\t<p>Deine E-Mail Adresse wurde erfolgreich bestätigt. </p>\n"; responseStream << "\t<p>Deine E-Mail Adresse wurde erfolgreich bestätigt. </p>\n";
responseStream << "\t<form method=\"POST\" action=\"./passphrase\">\n"; responseStream << "\t<form method=\"POST\" action=\"";
#line 96 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\passphrase.cpsp"
responseStream << ( uri_start );
responseStream << "/passphrase\">\n";
responseStream << "\t\t<fieldset class=\"grd_container_small\">\n"; responseStream << "\t\t<fieldset class=\"grd_container_small\">\n";
responseStream << "\t\t\t<legend>Neue Gradido Adresse anlegen / wiederherstellen</legend>\n"; responseStream << "\t\t\t<legend>Neue Gradido Adresse anlegen / wiederherstellen</legend>\n";
responseStream << "\t\t\t<p>Hast du schonmal ein Gradido Konto besessen?</p>\n"; responseStream << "\t\t\t<p>Hast du schonmal ein Gradido Konto besessen?</p>\n";
@ -136,7 +140,7 @@ void PassphrasePage::handleRequest(Poco::Net::HTTPServerRequest& request, Poco::
responseStream << "\t\t\t\t<label class=\"grd_radio_label\" for=\"passphrase-new-no\">Ja, bitte wiederherstellen!</label>\n"; responseStream << "\t\t\t\t<label class=\"grd_radio_label\" for=\"passphrase-new-no\">Ja, bitte wiederherstellen!</label>\n";
responseStream << "\t\t\t</p>\n"; responseStream << "\t\t\t</p>\n";
responseStream << "\t\t\t<textarea style=\"width:100%;height:100px\" name=\"passphrase-existing\">"; responseStream << "\t\t\t<textarea style=\"width:100%;height:100px\" name=\"passphrase-existing\">";
#line 107 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\passphrase.cpsp" #line 108 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\passphrase.cpsp"
responseStream << ( !form.empty() ? form.get("passphrase-existing", "") : "" ); responseStream << ( !form.empty() ? form.get("passphrase-existing", "") : "" );
responseStream << "</textarea>\n"; responseStream << "</textarea>\n";
responseStream << "\t\t</fieldset>\n"; responseStream << "\t\t</fieldset>\n";
@ -144,18 +148,18 @@ void PassphrasePage::handleRequest(Poco::Net::HTTPServerRequest& request, Poco::
responseStream << "\t\t\n"; responseStream << "\t\t\n";
responseStream << "\t</form>\n"; responseStream << "\t</form>\n";
responseStream << "\t"; responseStream << "\t";
#line 112 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\passphrase.cpsp" #line 113 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\passphrase.cpsp"
} else { responseStream << "\n"; } else { responseStream << "\n";
responseStream << "\t\t<div class=\"grd_text\">\n"; responseStream << "\t\t<div class=\"grd_text\">\n";
responseStream << "\t\t\tUngültige Seite, wenn du das siehst stimmt hier etwas nicht. Bitte wende dich an den Server-Admin. \n"; responseStream << "\t\t\tUngültige Seite, wenn du das siehst stimmt hier etwas nicht. Bitte wende dich an den Server-Admin. \n";
responseStream << "\t\t</div>\n"; responseStream << "\t\t</div>\n";
responseStream << "\t"; responseStream << "\t";
#line 116 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\passphrase.cpsp" #line 117 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\passphrase.cpsp"
} responseStream << "\n"; } responseStream << "\n";
responseStream << "</div>\n"; responseStream << "</div>\n";
responseStream << "<div class=\"grd-time-used\">\n"; responseStream << "<div class=\"grd-time-used\">\n";
responseStream << "\t"; responseStream << "\t";
#line 119 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\passphrase.cpsp" #line 120 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\passphrase.cpsp"
responseStream << ( mTimeProfiler.string() ); responseStream << ( mTimeProfiler.string() );
responseStream << "\n"; responseStream << "\n";
responseStream << "</div>\n"; responseStream << "</div>\n";

View File

@ -43,9 +43,11 @@ void UpdateUserPasswordPage::handleRequest(Poco::Net::HTTPServerRequest& request
if(user->setNewPassword(form.get("register-password"))) { if(user->setNewPassword(form.get("register-password"))) {
std::string referUri = request.get("Referer", "./"); std::string referUri = request.get("Referer", "./");
//printf("[updateUserPasswordPage] referUri: %s\n", referUri.data()); //printf("[updateUserPasswordPage] referUri: %s\n", referUri.data());
mSession->getErrors(user);
response.redirect(referUri); response.redirect(referUri);
return; return;
} }
} }
} }
} }
@ -99,7 +101,7 @@ void UpdateUserPasswordPage::handleRequest(Poco::Net::HTTPServerRequest& request
responseStream << "<div class=\"grd_container\">\n"; responseStream << "<div class=\"grd_container\">\n";
responseStream << "\t<h1>Passwort bestimmen</h1>\n"; responseStream << "\t<h1>Passwort bestimmen</h1>\n";
responseStream << "\t"; responseStream << "\t";
#line 79 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\UpdateUserPassword.cpsp" #line 81 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\UpdateUserPassword.cpsp"
responseStream << ( getErrorsHtml() ); responseStream << ( getErrorsHtml() );
responseStream << "\n"; responseStream << "\n";
responseStream << "\t<form method=\"POST\">\t\n"; responseStream << "\t<form method=\"POST\">\t\n";
@ -122,7 +124,7 @@ void UpdateUserPasswordPage::handleRequest(Poco::Net::HTTPServerRequest& request
responseStream << "</div>\n"; responseStream << "</div>\n";
responseStream << "<div class=\"grd-time-used\">\n"; responseStream << "<div class=\"grd-time-used\">\n";
responseStream << "\t"; responseStream << "\t";
#line 99 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\UpdateUserPassword.cpsp" #line 101 "I:\\Code\\C++\\Eigene_Projekte\\Gradido_LoginServer\\src\\cpsp\\UpdateUserPassword.cpsp"
responseStream << ( mTimeProfiler.string() ); responseStream << ( mTimeProfiler.string() );
responseStream << "\n"; responseStream << "\n";
responseStream << "</div>\n"; responseStream << "</div>\n";

View File

@ -265,6 +265,10 @@ Session* SessionManager::findByEmailVerificationCode(long long emailVerification
for (auto it = mRequestSessionMap.begin(); it != mRequestSessionMap.end(); it++) { for (auto it = mRequestSessionMap.begin(); it != mRequestSessionMap.end(); it++) {
if (it->second->getEmailVerificationCode() == emailVerificationCode) { if (it->second->getEmailVerificationCode() == emailVerificationCode) {
result = it->second; result = it->second;
if (!result->isActive()) {
result = nullptr;
continue;
}
break; break;
} }
} }
@ -315,6 +319,7 @@ void SessionManager::deleteLoginCookies(Poco::Net::HTTPServerRequest& request, P
} }
// delete cookie // delete cookie
auto keks = Poco::Net::HTTPCookie("GRADIDO_LOGIN", it->second); auto keks = Poco::Net::HTTPCookie("GRADIDO_LOGIN", it->second);
keks.setPath("/");
// max age of 0 delete cookie // max age of 0 delete cookie
keks.setMaxAge(0); keks.setMaxAge(0);
response.addCookie(keks); response.addCookie(keks);

View File

@ -46,6 +46,7 @@ public:
Session* getNewSession(int* handle = nullptr); Session* getNewSession(int* handle = nullptr);
inline bool releaseSession(Session* requestSession) { inline bool releaseSession(Session* requestSession) {
if (!requestSession) return false;
return releaseSession(requestSession->getHandle()); return releaseSession(requestSession->getHandle());
} }
bool releaseSession(int requestHandleSession); bool releaseSession(int requestHandleSession);

View File

@ -290,7 +290,7 @@ UserStates Session::loadUser(const std::string& email, const std::string& passwo
lock(); lock();
if (mSessionUser) mSessionUser = nullptr; if (mSessionUser) mSessionUser = nullptr;
mSessionUser = new User(email.data()); mSessionUser = new User(email.data());
if (mSessionUser->getUserState() == USER_LOADED_FROM_DB) { if (mSessionUser->getUserState() >= USER_LOADED_FROM_DB) {
if (!mSessionUser->validatePwd(password, this)) { if (!mSessionUser->validatePwd(password, this)) {
return USER_PASSWORD_INCORRECT; return USER_PASSWORD_INCORRECT;
} }
@ -406,6 +406,7 @@ Poco::Net::HTTPCookie Session::getLoginCookie()
auto keks = Poco::Net::HTTPCookie("GRADIDO_LOGIN", std::to_string(mHandleId)); auto keks = Poco::Net::HTTPCookie("GRADIDO_LOGIN", std::to_string(mHandleId));
// prevent reading or changing cookie with js // prevent reading or changing cookie with js
keks.setHttpOnly(); keks.setHttpOnly();
keks.setPath("/");
// send cookie only via https // send cookie only via https
#ifndef WIN32 #ifndef WIN32
keks.setSecure(true); keks.setSecure(true);

View File

@ -340,6 +340,8 @@ bool User::isEmptyPassword()
{ {
bool bRet = false; bool bRet = false;
lock(); lock();
printf("[User::isEmptyPassword] pwd hashed: %d, running: %d, this: %d\n",
mPasswordHashed, !mCreateCryptoKeyTask.isNull(), this);
bRet = mPasswordHashed == 0 && (mCreateCryptoKeyTask.isNull() || mCreateCryptoKeyTask->isTaskFinished()); bRet = mPasswordHashed == 0 && (mCreateCryptoKeyTask.isNull() || mCreateCryptoKeyTask->isTaskFinished());
unlock(); unlock();
return bRet; return bRet;
@ -372,6 +374,7 @@ bool User::setNewPassword(const std::string& newPassword)
} }
duplicate(); duplicate();
lock(); lock();
printf("[User::setNewPassword] start create crypto key task with this: %d\n", this);
mCreateCryptoKeyTask = new UserCreateCryptoKey(this, newPassword, ServerConfig::g_CPUScheduler); mCreateCryptoKeyTask = new UserCreateCryptoKey(this, newPassword, ServerConfig::g_CPUScheduler);
mCreateCryptoKeyTask->scheduleTask(mCreateCryptoKeyTask); mCreateCryptoKeyTask->scheduleTask(mCreateCryptoKeyTask);
unlock(); unlock();
@ -490,7 +493,7 @@ void User::release()
mWorkingMutex.lock(); mWorkingMutex.lock();
mReferenceCount--; mReferenceCount--;
#ifdef DEBUG_USER_DELETE_ENV #ifdef DEBUG_USER_DELETE_ENV
printf("[User::release] new value: %d\n", mReferenceCount); printf("[User::release] new value: %d, this: %d\n", mReferenceCount, this);
#endif #endif
if (0 == mReferenceCount) { if (0 == mReferenceCount) {
mWorkingMutex.unlock(); mWorkingMutex.unlock();

View File

@ -21,7 +21,7 @@ enum PageState
if(mSession) { if(mSession) {
getErrors(mSession); getErrors(mSession);
if(mSession->getSessionState() < SESSION_STATE_EMAIL_VERIFICATION_SEND) { if(mSession->getSessionState() < SESSION_STATE_EMAIL_VERIFICATION_SEND) {
state = MAIL_NOT_SEND; //state = MAIL_NOT_SEND;
} }
} }
@ -65,8 +65,13 @@ label:not(.grd_radio_label) {
<% } else if(state == ASK_VERIFICATION_CODE) { %> <% } else if(state == ASK_VERIFICATION_CODE) { %>
<form method="GET"> <form method="GET">
<p>Bitte gebe deinen E-Mail Verification Code ein. </p> <p>Bitte gebe deinen E-Mail Verification Code ein. </p>
<% if(mSession && !mSession->getUser().isNull()) {%>
<p>Er wurde an deine E-Mail Adresse: <%= mSession->getUser()->getEmail() %> gesendet.</p>
<% } %>
<input type="number" name="email-verification-code"> <input type="number" name="email-verification-code">
<input class="grd_bn_succeed" type="submit" value="Überprüfe Code"> <input class="grd_bn_succeed" type="submit" value="Überprüfe Code">
<p>Du hast bisher keinen Code erhalten? </p>
<p>E-Mail erneut zuschicken (in Arbeit)</p>
</form> </form>
<% } else { %> <% } else { %>
<div class="grd_text"> <div class="grd_text">

View File

@ -7,7 +7,7 @@
<%! <%!
#include "../model/Profiler.h" #include "../model/Profiler.h"
#include "../SingletonManager/SessionManager.h" #include "../SingletonManager/SessionManager.h"
#include "Poco/Net/HTTPServerParams.h"
enum PageState enum PageState
{ {
@ -19,6 +19,7 @@ enum PageState
PageState state = PAGE_ASK_PASSPHRASE; PageState state = PAGE_ASK_PASSPHRASE;
auto sm = SessionManager::getInstance(); auto sm = SessionManager::getInstance();
auto uri_start = request.serverParams().getServerName();
// remove old cookies if exist // remove old cookies if exist
sm->deleteLoginCookies(request, response, mSession); sm->deleteLoginCookies(request, response, mSession);
// save login cookie, because maybe we've get an new session // save login cookie, because maybe we've get an new session
@ -92,7 +93,7 @@ label:not(.grd_radio_label) {
</div> </div>
<% } else if(state == PAGE_ASK_PASSPHRASE) { %> <% } else if(state == PAGE_ASK_PASSPHRASE) { %>
<p>Deine E-Mail Adresse wurde erfolgreich bestätigt. </p> <p>Deine E-Mail Adresse wurde erfolgreich bestätigt. </p>
<form method="POST" action="./passphrase"> <form method="POST" action="<%= uri_start %>/passphrase">
<fieldset class="grd_container_small"> <fieldset class="grd_container_small">
<legend>Neue Gradido Adresse anlegen / wiederherstellen</legend> <legend>Neue Gradido Adresse anlegen / wiederherstellen</legend>
<p>Hast du schonmal ein Gradido Konto besessen?</p> <p>Hast du schonmal ein Gradido Konto besessen?</p>

View File

@ -24,9 +24,11 @@
if(user->setNewPassword(form.get("register-password"))) { if(user->setNewPassword(form.get("register-password"))) {
std::string referUri = request.get("Referer", "./"); std::string referUri = request.get("Referer", "./");
//printf("[updateUserPasswordPage] referUri: %s\n", referUri.data()); //printf("[updateUserPasswordPage] referUri: %s\n", referUri.data());
mSession->getErrors(user);
response.redirect(referUri); response.redirect(referUri);
return; return;
} }
} }
} }
} }