[SPIP][PLUGINS] v3.0-->v3.2
[lhc/web/www.git] / www / prive / informer_auteur_fonctions.php
index c12d3ee..87ae8a1 100644 (file)
@@ -3,50 +3,45 @@
 /***************************************************************************\
  *  SPIP, Systeme de publication pour l'internet                           *
  *                                                                         *
- *  Copyright (c) 2001-2016                                                *
+ *  Copyright (c) 2001-2017                                                *
  *  Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James  *
  *                                                                         *
  *  Ce programme est un logiciel libre distribue sous licence GNU/GPL.     *
  *  Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne.   *
 \***************************************************************************/
 
-if (!defined('_ECRIRE_INC_VERSION')) return;
+if (!defined('_ECRIRE_INC_VERSION')) {
+       return;
+}
+
 
-// Filtre ad hoc pour le formulaire de login:
-// le parametre var_login n'est pas dans le contexte pour optimiser le cache
-// il faut aller le chercher a la main
-function informer_auteur($bof)
-{
+/**
+ * Retrouve pour le formulaire de login les informations d'un login qui permettront de crypter le mot de passe saisi
+ *
+ * Si le login n'est pas trouvé, retourne de fausses informations,
+ * sauf si la constante `_AUTORISER_AUTH_FAIBLE` est déclarée à true.
+ *
+ * @note
+ *     Le parametre var_login n'est pas dans le contexte pour optimiser le cache
+ *     il faut aller le chercher à la main
+ *
+ * @uses auth_informer_login()
+ * @uses json_export()
+ *
+ * @param string $bof
+ *     Date de la demande
+ * @return string
+ *     JSON des différentes informations
+ */
+function informer_auteur($bof) {
        include_spip('inc/json');
        include_spip('formulaires/login');
        include_spip('inc/auth');
        $login = strval(_request('var_login'));
        $row = auth_informer_login($login);
-       if ($row AND is_array($row)) {
+       if ($row and is_array($row) and isset($row['id_auteur'])) {
                unset($row['id_auteur']);
        }
-       // permettre d'autoriser l'envoi de password non crypte lorsque
-       // l'auteur n'est pas (encore) declare dans SPIP, par exemple pour les cas
-       // de premiere authentification via SPIP a une autre application.
-       else if (defined('_AUTORISER_AUTH_FAIBLE') and _AUTORISER_AUTH_FAIBLE) {
-               $row = array();
-       }
-       // generer de fausses infos, mais credibles, pour eviter une attaque
-       // http://core.spip.org/issues/1758
-       else {
-               include_spip('inc/securiser_action');
-               $fauxalea1 = md5('fauxalea'.secret_du_site().$login.floor(date('U')/86400));
-               $fauxalea2 = md5('fauxalea'.secret_du_site().$login.ceil(date('U')/86400));
-
-               $row = array('login' => $login,
-                'cnx' => '0',
-                'logo' => "",
-                'alea_actuel' => substr_replace($fauxalea1,'.',24,0),
-                'alea_futur' => substr_replace($fauxalea2,'.',24,0)
-               );
-       }
-
+       
        return json_export($row);
 }
-
-?>