mirror of
https://github.com/Dolibarr/dolibarr.git
synced 2026-02-07 16:41:48 +01:00
Merge remote-tracking branch 'Upstream/develop' into develop-loan
This commit is contained in:
@@ -165,6 +165,16 @@ else if ($action == 'disable_MAIN_SECURITY_DISABLEFORGETPASSLINK')
|
||||
exit;
|
||||
}
|
||||
|
||||
if ($action == 'maj_pattern')
|
||||
{
|
||||
dolibarr_set_const($db, "USER_PASSWORD_PATTERN", GETPOST("pattern"),'chaine',0,'',$conf->entity);
|
||||
header("Location: security.php");
|
||||
exit;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -265,6 +275,113 @@ foreach ($arrayhandler as $key => $module)
|
||||
print '</table>';
|
||||
print '</form>';
|
||||
|
||||
//if($conf->global->MAIN_SECURITY_DISABLEFORGETPASSLINK == 1)
|
||||
// Patter for Password Perso
|
||||
if ($conf->global->USER_PASSWORD_GENERATED == "Perso"){
|
||||
$var=!$var;
|
||||
|
||||
$tabConf = explode(";",$conf->global->USER_PASSWORD_PATTERN);
|
||||
/*$this->length2 = $tabConf[0];
|
||||
$this->NbMaj = $tabConf[1];
|
||||
$this->NbNum = $tabConf[2];
|
||||
$this->NbSpe = $tabConf[3];
|
||||
$this->NbRepeat = $tabConf[4];
|
||||
$this->WithoutAmbi = $tabConf[5];
|
||||
*/
|
||||
print '<table class="noborder" width="100%">';
|
||||
print '<tr class="liste_titre">';
|
||||
print '<td colspan="3"> '.$langs->trans("PasswordPatternDesc").'</td>';
|
||||
print '</tr>';
|
||||
|
||||
$var=!$var;
|
||||
print "<tr ".$bc[$var].">";
|
||||
print '<td>' . $langs->trans("MinLength")."</td>";
|
||||
print '<td colspan="2"><input type="number" value="'.$tabConf[0].'" id="minlenght" min="1"></td>';
|
||||
print '</tr>';
|
||||
|
||||
$var=!$var;
|
||||
print "<tr ".$bc[$var].">";
|
||||
print '<td>' . $langs->trans("NbMajMin")."</td>";
|
||||
print '<td colspan="2"><input type="number" value="'.$tabConf[1].'" id="NbMajMin" min="0"></td>';
|
||||
print '</tr>';
|
||||
|
||||
$var=!$var;
|
||||
print "<tr ".$bc[$var].">";
|
||||
print '<td>' . $langs->trans("NbNumMin")."</td>";
|
||||
print '<td colspan="2"><input type="number" value="'.$tabConf[2].'" id="NbNumMin" min="0"></td>';
|
||||
print '</tr>';
|
||||
|
||||
$var=!$var;
|
||||
print "<tr ".$bc[$var].">";
|
||||
print '<td>' . $langs->trans("NbSpeMin")."</td>";
|
||||
print '<td colspan="2"><input type="number" value="'.$tabConf[3].'" id="NbSpeMin" min="0"></td>';
|
||||
print '</tr>';
|
||||
|
||||
$var=!$var;
|
||||
print "<tr ".$bc[$var].">";
|
||||
print '<td>' . $langs->trans("NbIteConsecutive")."</td>";
|
||||
print '<td colspan="2"><input type="number" value="'.$tabConf[4].'" id="NbIteConsecutive" min="0"></td>';
|
||||
print '</tr>';
|
||||
|
||||
$var=!$var;
|
||||
print "<tr ".$bc[$var].">";
|
||||
print '<td>' . $langs->trans("NoAmbiCaracAutoGeneration")."</td>";
|
||||
print '<td colspan="2"><input type="checkbox" id="NoAmbiCaracAutoGeneration" '.($tabConf[5] ? "checked" : "").' min="0"> <span id="textcheckbox">'.($tabConf[5] ? $langs->trans("Activated") : $langs->trans("Disabled")).'</span></td>';
|
||||
print '</tr>';
|
||||
|
||||
$var=!$var;
|
||||
print "<tr ".$bc[$var].">";
|
||||
print '<td colspan="2"></td><td width="103" align="center"><a id="linkChangePattern">'.$langs->trans("Save").'</a></td>';
|
||||
print '</tr>';
|
||||
print '</table>';
|
||||
|
||||
print '<script type="text/javascript">';
|
||||
print ' function getStringArg(){';
|
||||
print ' var pattern = "";';
|
||||
print ' pattern += $("#minlenght").val() + ";";';
|
||||
print ' pattern += $("#NbMajMin").val() + ";";';
|
||||
print ' pattern += $("#NbNumMin").val() + ";";';
|
||||
print ' pattern += $("#NbSpeMin").val() + ";";';
|
||||
print ' pattern += $("#NbIteConsecutive").val() + ";";';
|
||||
print ' pattern += $("#NoAmbiCaracAutoGeneration")[0].checked ? "1" : "0";';
|
||||
print ' return pattern;';
|
||||
print ' }';
|
||||
|
||||
print ' function valuePossible(){';
|
||||
print ' var length = parseInt($("#minlenght").val());';
|
||||
print ' var length_mini = parseInt($("#NbMajMin").val()) + parseInt($("#NbNumMin").val()) + parseInt($("#NbSpeMin").val());';
|
||||
print ' return length >= length_mini;';
|
||||
print ' }';
|
||||
|
||||
print ' function generatelink(){';
|
||||
print ' return "security.php?action=maj_pattern&pattern="+getStringArg();';
|
||||
print ' }';
|
||||
|
||||
print ' function valuePatternChange(){';
|
||||
print ' var lang_save = "'.$langs->trans("Save").'";';
|
||||
print ' var lang_error = "'.$langs->trans("Error").'";';
|
||||
print ' var lang_Disabled = "'.$langs->trans("Disabled").'";';
|
||||
print ' var lang_Activated = "'.$langs->trans("Activated").'";';
|
||||
print ' $("#textcheckbox").html($("#NoAmbiCaracAutoGeneration")[0].checked ? unescape(lang_Activated) : unescape(lang_Disabled));';
|
||||
print ' if(valuePossible()){';
|
||||
print ' $("#linkChangePattern").attr("href",generatelink()).text(lang_save);';
|
||||
print ' }';
|
||||
print ' else{';
|
||||
print ' $("#linkChangePattern").attr("href", null).text(lang_error);';
|
||||
print ' }';
|
||||
print ' }';
|
||||
|
||||
print ' $("#minlenght").change(function(){valuePatternChange();});';
|
||||
print ' $("#NbMajMin").change(function(){valuePatternChange();});';
|
||||
print ' $("#NbNumMin").change(function(){valuePatternChange();});';
|
||||
print ' $("#NbSpeMin").change(function(){valuePatternChange();});';
|
||||
print ' $("#NbIteConsecutive").change(function(){valuePatternChange();});';
|
||||
print ' $("#NoAmbiCaracAutoGeneration").change(function(){valuePatternChange();});';
|
||||
|
||||
print '</script>';
|
||||
}
|
||||
|
||||
|
||||
// Cryptage mot de passe
|
||||
print '<br>';
|
||||
$var=true;
|
||||
|
||||
Reference in New Issue
Block a user