diff --git a/scripts/install b/scripts/install index 6f114c4..7eda05c 100644 --- a/scripts/install +++ b/scripts/install @@ -71,6 +71,10 @@ ynh_system_user_create --username=$app # MODIFY A CONFIG FILE #================================================= +# TODO +# yunohost domain main-domain | sed "s/current_main_domain: //g" + + mkdir "$final_path" git clone https://github.com/prasathmani/tinyfilemanager.git "$final_path" diff --git a/www/htdocs/create.php b/www/htdocs/create.php index eff1715..45ef4f2 100644 --- a/www/htdocs/create.php +++ b/www/htdocs/create.php @@ -56,7 +56,7 @@ if (isset($_POST["password"]) and $_POST["password"]) { $password = strval($_POS if (isset($_POST["confirmpassword"]) and $_POST["confirmpassword"]) { $confirmpassword = strval($_POST["confirmpassword"]); } else { $result = "confirmpasswordrequired"; } if (! isset($_REQUEST["login"]) and ! isset($_POST["email"]) and ! isset($_POST["password"]) and ! isset($_POST["confirmpassword"])) - { $result = "emptychangeform"; } + { $result = "createaccount"; } # Check the entered username for characters that our installation doesn't support if ( $result === "" ) { @@ -107,7 +107,7 @@ if ( $result === "" ) { } else { # Search for user - $ldap_filter = str_replace("{email}", $email, $ldap_filter); + $ldap_filter = str_replace("{login}", $email, $ldap_filter); $search = ldap_search($ldap, $ldap_base, $ldap_filter); $errno = ldap_errno($ldap); diff --git a/www/htdocs/resetbytoken.php b/www/htdocs/resetbytoken.php index e1a80b2..d591e7f 100644 --- a/www/htdocs/resetbytoken.php +++ b/www/htdocs/resetbytoken.php @@ -118,7 +118,7 @@ if ( $result === "" ) { } else { # Search for user - $ldap_filter = str_replace("{login}", $login, $ldap_filter); + $ldap_filter = str_replace("{email}", $login, $ldap_filter); $search = ldap_search($ldap, $ldap_base, $ldap_filter); $errno = ldap_errno($ldap); diff --git a/www/htdocs/sendtoken.php b/www/htdocs/sendtoken.php index 61006b1..8d52716 100644 --- a/www/htdocs/sendtoken.php +++ b/www/htdocs/sendtoken.php @@ -27,6 +27,7 @@ # Initiate vars $result = ""; $login = $presetLogin; +$email = ""; $mail = ""; $ldap = ""; $userdn = ""; @@ -34,6 +35,7 @@ $token = ""; $usermail = ""; $captchaphrase = ""; + if (!$mail_address_use_ldap) { if (isset($_POST["mail"]) and $_POST["mail"]) { $mail = strval($_POST["mail"]); @@ -49,9 +51,10 @@ if ($use_captcha) { if (isset($_POST["captchaphrase"]) and $_POST["captchaphrase"]) { $captchaphrase = strval($_POST["captchaphrase"]); } else { $result = "captcharequired"; } } -if (isset($_REQUEST["login"]) and $_REQUEST["login"]) { $login = strval($_REQUEST["login"]); } - else { $result = "loginrequired"; } -if (! isset($_POST["mail"]) and ! isset($_REQUEST["login"])) + +if (isset($_REQUEST["email"]) and $_REQUEST["email"]) { $email = strval($_REQUEST["email"]); } + else { $result = "emailrequired"; } +if (! isset($_POST["mail"]) and ! isset($_REQUEST["email"])) { $result = "emptysendtokenform"; } # Check the entered username for characters that our installation doesn't support @@ -74,7 +77,7 @@ if ( $result === "" && $use_captcha ) { # Check mail #============================================================================== if ( $result === "" ) { - + # Connect to LDAP $ldap = ldap_connect($ldap_url); ldap_set_option($ldap, LDAP_OPT_PROTOCOL_VERSION, 3); @@ -100,7 +103,7 @@ if ( $result === "" ) { } else { # Search for user - $ldap_filter = str_replace("{login}", $login, $ldap_filter); + $ldap_filter = str_replace("{email}", $email, $ldap_filter); $search = ldap_search($ldap, $ldap_base, $ldap_filter); $errno = ldap_errno($ldap); @@ -117,50 +120,8 @@ if ( $result === "" ) { $result = "badcredentials"; error_log("LDAP - User $login not found"); } else { - # Compare mail values - $mailValues = ldap_get_values($ldap, $entry, $mail_attribute); - unset($mailValues["count"]); - $match = 0; - - if (!$mail_address_use_ldap) { - # Match with user submitted values - foreach ($mailValues as $mailValue) { - if (strcasecmp($mail_attribute, "proxyAddresses") == 0) { - $mailValue = str_ireplace("smtp:", "", $mailValue); - } - if (strcasecmp($mail, $mailValue) == 0) { - $match = 1; - } - } - } else { - # Use first available mail adress in ldap - if(count($mailValues) > 0) { - $mailValue = $mailValues[0]; - if (strcasecmp($mail_attribute, "proxyAddresses") == 0) { - $mailValue = str_ireplace("smtp:", "", $mailValue); - } - $mail = $mailValue; - $match = true; - } - } - - if (!$match) { - if (!$mail_address_use_ldap) { - $result = "mailnomatch"; - error_log("Mail $mail does not match for user $login"); - } else { - $result = "mailnomatch"; - error_log("Mail not found for user $login"); - } - } - if ( $use_ratelimit ) { - if ( ! allowed_rate($login,$_SERVER[$client_ip_header],$rrl_config) ) { - $result = "throttle"; - error_log("Mail - User $login too fast"); - } - } - + $login = ldap_get_values($ldap, $entry, "uid"); }}}}} @@ -176,7 +137,7 @@ if ( $result === "" ) { session_name("token"); session_start(); - $_SESSION['login'] = $login; + $_SESSION['login'] = $login[0]; $_SESSION['time'] = time(); if ( $crypt_tokens ) { @@ -219,13 +180,13 @@ if ( $result === "" ) { error_log("Send reset URL " . ( $debug ? "$reset_url" : "HIDDEN")); } - $data = array( "login" => $login, "mail" => $mail, "url" => $reset_url ) ; + $data = array( "login" => $login, "mail" => $email, "url" => $reset_url ) ; # Send message - if ( send_mail($mailer, $mail, $mail_from, $mail_from_name, $messages["resetsubject"], $messages["resetmessage"].$mail_signature, $data) ) { + if ( send_mail($mailer, $email, $mail_from, $mail_from_name, $messages["resetsubject"], $messages["resetmessage"].$mail_signature, $data) ) { $result = "tokensent"; } else { $result = "tokennotsent"; - error_log("Error while sending token to $mail (user $login)"); + error_log("Error while sending token to $email (user $login)"); } } diff --git a/www/lang/fr.inc.php b/www/lang/fr.inc.php index 2051e47..50bf224 100644 --- a/www/lang/fr.inc.php +++ b/www/lang/fr.inc.php @@ -35,11 +35,11 @@ $messages['passwordchanged'] = "Votre mot de passe a été changé"; $messages['nomatch'] = "Les mots de passe ne correspondent pas"; $messages['badcredentials'] = "Identifiant ou mot de passe incorrect"; $messages['passworderror'] = "Le mot de passe a été refusé"; -$messages['title'] = "Gestion du mot de passe"; -$messages['login'] = "Identifiant"; +$messages['title'] = "Créer un compte"; +$messages['login'] = "Nom d'utilisateur (caractères alphanumériques)"; $messages['oldpassword'] = "Ancien mot de passe"; $messages['newpassword'] = "Nouveau mot de passe"; -$messages['confirmpassword'] = "Confirmation"; +$messages['confirmpassword'] = "Confirmer le mot de passe"; $messages['submit'] = "Envoyer"; $messages['tooshort'] = "Votre mot de passe est trop court"; $messages['toobig'] = "Votre mot de passe est trop long"; @@ -110,7 +110,7 @@ $messages['smstoken'] = "Code de confirmation"; $messages['getuser'] = "Trouver l'utilisateur"; $messages['nophpmbstring'] = "Vous devriez installer PHP mbstring"; $messages['menuquestions'] = "Question"; -$messages['menutoken'] = "Mail"; +$messages['menutoken'] = "Réinitialiser le mot de passe"; $messages['menusms'] = "SMS"; $messages['nophpxml'] = "Vous devriez installer PHP XML pour utiliser cet outil"; $messages['tokenattempts'] = "Jeton invalide, essayez encore"; @@ -153,4 +153,5 @@ $messages['inhistory'] = "Le mot de passe est déjà présent dans votre histori $messages['throttle'] = "Trop de tentatives en trop peu de temps. Réessayez un peu plus tard (si vous êtes bien humain)"; $messages['email'] = "Courriel"; $messages['firstname'] = "Prénom"; -$messages['lastname'] = "Nom de famille"; \ No newline at end of file +$messages['lastname'] = "Nom de famille"; +$messages['createaccount'] = "Veuillez remplir ce formulaire pour créer votre compte."; \ No newline at end of file diff --git a/www/templates/create.tpl b/www/templates/create.tpl index 9d1317c..5ecd86d 100644 --- a/www/templates/create.tpl +++ b/www/templates/create.tpl @@ -53,7 +53,7 @@
- +
@@ -62,7 +62,7 @@
- +
@@ -71,7 +71,7 @@
- +
@@ -80,7 +80,7 @@
- +
diff --git a/www/templates/menu.tpl b/www/templates/menu.tpl index 889c95c..24d0f9f 100644 --- a/www/templates/menu.tpl +++ b/www/templates/menu.tpl @@ -8,7 +8,7 @@ - + {if $logo} {/if} diff --git a/www/templates/sendtoken.tpl b/www/templates/sendtoken.tpl index f16e885..0ba49a5 100644 --- a/www/templates/sendtoken.tpl +++ b/www/templates/sendtoken.tpl @@ -10,11 +10,11 @@
- +
- +