I did the following things...
Comment out the following code in inc/classes/BxDolProfileFields.php file:
// duplicate password (confirmation)
if ($aItem['Type'] == 'pass') {
$aItem_confirm = $aItem;
$aItem_confirm['Name'] .= '_confirm';
$aItem_confirm['Caption'] = '_Confirm password';
$aItem_confirm['Desc'] = '_Confirm password descr';
$aInputs[] = $this->convertJoinField2Input($aItem_confirm, $aInputParams, 0);
if ($bCoupleEnabled && !in_array( $aItem['Name'], $this -> aCoupleMutual ))
$aAddInputs[] = $this->convertJoinField2Input($aItem_confirm, $aInputParams, 1);
}
That worked, so now I only have the one password field, like we wanted.
I also tried to comment out the code for the password checker below:
function checkPostValueForPassConfirm( $aItem, $mValue, $iHuman )
{
return true;
//$sConfPass = process_pass_data( $_POST[ "{$aItem['Name']}_confirm" ][$iHuman] );
//if( $sConfPass != $mValue )
// return _t( '_Password confirmation failed' );
//else
// return true;
}
That with no succes. Than I tried to modify him as below:
function checkPostValueForPassConfirm( $aItem, $mValue, $iHuman )
{
$sConfPass = process_pass_data( $_POST[ "{$aItem['Name']}_confirm" ][$iHuman] );
return true;
}
Than in the join process everything works. Only problem is when someone tries to change their password on the profile edit page. Because the password checker also works with that, he doesn't check them, so you can give 2 different new passwords.
Our intention was to skip the confirm password field + password checker in the join process, but they need to work on the profile edit page. So on the profile edit page you need to confirm the new password. And if possible also enter the old password.