FSN#38653 Bij wachtwoord direkt kunnen laten verlopen
svn path=/Website/trunk/; revision=31854
This commit is contained in:
@@ -128,8 +128,16 @@ var EXPIRED_PASSWORD_OK = true;
|
||||
}
|
||||
RWFIELDTR("password1", "fldnotresponsive", L("lcl_ch_password_new"), "", { required: true, html: " type=password" });
|
||||
RWFIELDTR("password2", "fldnotresponsive", L("lcl_ch_password_con"), "", { required: true, html: " type=password" });
|
||||
// Een vinkje met 'Stuur bevestiging naar user_info.prs_perslid_email()' klinkt leuk maar dan staat
|
||||
// het wachtwoord plain-text in een e-mail wat absoluut not done is.
|
||||
if (theUser != user_key)
|
||||
{
|
||||
RWCHECKBOXTR("pass_expired", "fldcheck", L("lcl_ch_pass_expired"), true);
|
||||
// Een vinkje met 'Stuur bevestiging naar user_info.prs_perslid_email()' klinkt leuk maar dan staat
|
||||
// het wachtwoord plain-text in een e-mail wat absoluut not done is.
|
||||
// Als bovenstaand vinkje aanstaat zouden we wel de volgende aan kunnen zetten? Ooit...
|
||||
// if (user_info.prs_perslid_email())
|
||||
// RWCHECKBOXTR("pass_mail", "fldcheck", L("lcl_ch_pass_mail"));
|
||||
}
|
||||
|
||||
BLOCK_END();
|
||||
IFACE.FORM_END();
|
||||
%>
|
||||
|
||||
@@ -34,6 +34,9 @@ if (clearpassword && !xfunc.canWrite("WEB_PRSSYS") && !xfunc.canWrite("WEB_FACMG
|
||||
if (!xfunc.canWrite("WEB_PRSSYS") && new Perslid(theUser_key).checkAutorisation("WEB_PRSSYS", true))
|
||||
abort_with_warning(L("lcl_no_auth"));
|
||||
|
||||
// pass_expired alleen voor anderen
|
||||
var pass_expired = theUser_key != user_key && getFParam("pass_expired", "off") == "on";
|
||||
|
||||
var user_info = new Perslid(theUser_key);
|
||||
|
||||
if ( Session("must_reset_password") != 1
|
||||
@@ -67,7 +70,7 @@ if (!clearpassword)
|
||||
|
||||
// alle oude fac_session opruimen gebeurt door een trigger op PRS_PERSLID
|
||||
shared.trackaction("PRSLOG", theUser_key, L("lcl_pwd_success"));
|
||||
setpassword(theUser_key, newPassword);
|
||||
setpassword(theUser_key, newPassword, pass_expired);
|
||||
if (theUser_key == user_key)
|
||||
{
|
||||
doLogin(user_key); // Want credentials gewijzigd
|
||||
|
||||
@@ -432,7 +432,7 @@ function testpassword(prs_key, wachtwoord, pmobile)
|
||||
}
|
||||
|
||||
|
||||
function setpassword(prs_key, wachtwoord)
|
||||
function setpassword(prs_key, wachtwoord, expired)
|
||||
{
|
||||
if (S("prs_password_hash_factor") == 0 || !wachtwoord) // Old style
|
||||
{
|
||||
@@ -444,8 +444,8 @@ function setpassword(prs_key, wachtwoord)
|
||||
var passsalt = shared.random(32);
|
||||
var workfactor = S("prs_password_hash_factor");
|
||||
var is_hash = pbkdf2(wachtwoord, passsalt, workfactor);
|
||||
var sql = "UPDATE prs_perslid"
|
||||
+ " SET prs_perslid_wachtwoord_exp = NULL" // Niet meer expired. Ooit: SYSDATE + fac.getsetting ('prs_password_expiration') als die is gevuld
|
||||
var sql = "UPDATE prs_perslid" // Ooit expire op SYSDATE + fac.getsetting ('prs_password_expiration') als die is gevuld
|
||||
+ " SET prs_perslid_wachtwoord_exp = " + (pass_expired?"SYSDATE":"NULL")
|
||||
+ " , prs_perslid_salt = " + safe.quoted_sql(passsalt)
|
||||
+ " , prs_perslid_wachtwoord_hash = " + safe.quoted_sql('1${0}${1}'.format(workfactor, is_hash))
|
||||
+ " WHERE prs_perslid_key = " + prs_key;
|
||||
|
||||
Reference in New Issue
Block a user