Changeset 96512 in spip-zone for _plugins_/csv2auteurs


Ignore:
Timestamp:
Apr 7, 2016, 12:02:10 PM (4 years ago)
Author:
cy_altern@…
Message:

Regler le cas des nouveaux utilisateurs sans statut ou sans mot de passe.
Bidouille pour autoriser la creation de mots de passe de longueur inferieure a _PASS_LONGUEUR_MINI caracteres.

Location:
_plugins_/csv2auteurs/trunk
Files:
1 added
3 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/csv2auteurs/trunk/formulaires/csv2auteurs_importation.php

    r96477 r96512  
    149149    $i = 0;
    150150    $num_statut = $num_login = -1;
    151     while (($data = fgetcsv($fichiercsv, "$separateur")) !== FALSE){
     151    while (($data = fgetcsv($fichiercsv, "$separateur")) !== FALSE) {
    152152       // petit hack car fgetcsv ne reconnait pas le ~ comme séparateur !!!
    153153       $data           = implode("$separateur", $data);
     
    167167                    $num_login = $j;
    168168           }
    169             if ($num_statut < 0 OR $num_login < 0){
     169            if ($num_statut < 0 OR $num_login < 0) {
    170170                $retour['message_erreur'] = _T('csv2auteurs:champ_manquant').' login:'.$num_login.' statut'.$num_statut;
    171171                return  $retour;
     
    184184                        $tableau_csv_visiteurs[$data[$num_login]][$en_tete[$j]] = $en_tete[$j] == "statut" ? "6forum" : $data[$j];
    185185                       
    186                    if ($Tcorrespondances[strtolower($data[$num_statut])] == '1comite')
     186                   elseif ($Tcorrespondances[strtolower($data[$num_statut])] == '1comite')
    187187                        $tableau_csv_redacs[$data[$num_login]][$en_tete[$j]] = $en_tete[$j] == "statut" ? "1comite" : $data[$j];
    188188                       
    189                    if ($Tcorrespondances[strtolower($data[$num_statut])] == '0minirezo') {
     189                   elseif ($Tcorrespondances[strtolower($data[$num_statut])] == '0minirezo') {
    190190                        $tableau_csv_admins[$data[$num_login]][$en_tete[$j]] = $en_tete[$j] == "statut" ? "0minirezo" : $data[$j];
    191191                        // récup des rubriques pour les admins restreints
     
    197197                        }
    198198                    }
     199                                        // si pas de statut reconnu on passe en visiteur
     200                    else {
     201                                                $tableau_csv_visiteurs[$data[$num_login]][$en_tete[$j]] = $en_tete[$j] == "statut" ? "6forum" : $data[$j];
     202                                                if ($en_tete[$j] == "login")
     203                                                        $retour['message_ok'] .= '<br />'._T('csv2auteurs:statut_absent', array('login_auteur' => $data[$j]));
     204                                        }
     205                   
    199206                }
    200207            }
     
    403410    }
    404411
    405    
    406412    return $retour;
    407413}
     
    464470        // gestion de tous autres champs (y compris extras).
    465471        // On ne modifie pas la valeur du passe si son champ est vide (comportement idem l'interface d'admin des utilisateurs)
     472        // en revanche si nouvel auteur et pas de passe: ne pas créer
    466473        if (in_array($champ, $Tnom_champs_bdd)) {
    467                         if ($champ == 'pass' AND $valeur == '')
    468                                 continue;
     474                        if ($champ == 'pass' AND $valeur == '') {
     475                                if (!$id_auteur) {
     476                                        return '<br />'._T('csv2auteurs:pas_nouveau_compte_sans_mdp', array('login_auteur' => $login));
     477                                }
     478                                else
     479                                        continue;
     480                        }
    469481            $set[$champ] = ($champ == "statut" AND array_key_exists($valeur, $Tcorrespondances)) ? $Tcorrespondances[$valeur] : $valeur;
    470482        }
     483       
     484       
    471485    }
    472486    // si l'utilisateur est 0minirezo mais qu'il n'a pas de rubrique à administrer, le dégrader en redacteur
     
    481495   
    482496    // remplir les champs ou les maj
    483     auteur_modifier($id_auteur, $set);
     497    $ret = auteur_modifier($id_auteur, $set);
     498    if ($ret != '')
     499                $retour .= '<br />'._T('csv2auteurs:probleme_creation_maj_compte', array('login_auteur' => $login)).$ret;
    484500
    485501    //liaison des rubriques
  • _plugins_/csv2auteurs/trunk/lang/csv2auteurs_fr.php

    r96477 r96512  
    8080    'point_virgule'=>'Point-virgule ";"',
    8181    'passage_poubelle' => 'passer à la poubelle',
     82    'probleme_creation_maj_compte' => '<strong class="erreur">Erreur !</strong> La création/modification du compte <strong>@login_auteur@</strong> retourne l\'erreur: ',
     83    'pas_nouveau_compte_sans_mdp' => '<strong class="erreur">Erreur !</strong> La création du compte <strong>@login_auteur@</strong> est annulée: il manque le mot de passe.',
    8284
    8385        // R
     
    99101    'submit_format_import' => 'Exporter au format d\'importation',
    100102    'submit_export_' => 'Exporter les champs sélectionnés',
     103    'statut_absent' => '<strong class="erreur">Attention !</strong> Le compte <strong>@login_auteur@</strong> n\'a pas de statut défini: il est intégré comme visiteur.',
    101104   
    102105        // T
  • _plugins_/csv2auteurs/trunk/paquet.xml

    r96477 r96512  
    22        prefix="csv2auteurs"
    33        categorie="outil"
    4         version="1.1.2"
     4        version="1.1.3"
    55        etat="test"
    66        compatibilite="[3.0.0;3.1.*]"
Note: See TracChangeset for help on using the changeset viewer.