Exemplo n.º 1
0
function acces_statut($id_auteur, $statut, $bio)
{
	if ($statut != 'nouveau') return $statut;
	include_spip('inc/filtres');
	include_spip('inc/autoriser');
	if (!autoriser('inscrireauteur', $bio)) return $statut; //i.e. "nouveau"
	include_spip('action/editer_auteur');
	instituer_auteur($id_auteur,array('statut'=> $bio));
	include_spip('inc/modifier');
	revision_auteur($id_auteur, array('bio'=>''));
	include_spip('inc/session');
	session_set('statut',$bio);
	return $bio;
}
function auteurs_set($id_auteur, $set = null)
{
    $err = '';
    if (is_null($set)) {
        $c = array();
        foreach (array('nom', 'prenom', 'activite', 'email', 'bio', 'nom_site', 'url_site', 'imessage', 'pgp') as $champ) {
            $c[$champ] = _request($champ, $set);
        }
    } else {
        $c = $set;
        unset($c['webmestre']);
        unset($c['pass']);
        unset($c['login']);
    }
    spip_log('champs ' . $c['nom'], 'journal');
    include_spip('inc/modifier');
    revision_auteur($id_auteur, $c);
    // Modification de statut, changement de rubrique ?
    $c = array();
    foreach (array('statut', 'new_login', 'new_pass', 'login', 'pass', 'webmestre', 'restreintes', 'id_parent') as $champ) {
        if (_request($champ, $set)) {
            $c[preg_replace(',^new_,', '', $champ)] = _request($champ, $set);
        }
    }
    $err .= instituer_auteur($id_auteur, $c);
    // Un lien auteur a prendre en compte ?
    $err .= auteur_referent($id_auteur, array('article' => _request('lier_id_article', $set)));
    return $err;
}
Exemplo n.º 3
0
function auth_spip_modifier_pass($login, $new_pass, $id_auteur, $serveur=''){
	if (is_null($new_pass) OR auth_spip_verifier_pass($login, $new_pass,$id_auteur,$serveur)!='')
		return false;

	if (!$id_auteur = intval($id_auteur)
		OR !$auteur = sql_fetsel('login','spip_auteurs','id_auteur='.intval($id_auteur),'','','','',$serveur))
		return false;

	$c = array();
	include_spip('inc/acces');
	include_spip('auth/sha256.inc');
	$htpass = generer_htpass($new_pass);
	$alea_actuel = creer_uniqid();
	$alea_futur = creer_uniqid();
	$pass = _nano_sha256($alea_actuel.$new_pass);
	$c['pass'] = $pass;
	$c['htpass'] = $htpass;
	$c['alea_actuel'] = $alea_actuel;
	$c['alea_futur'] = $alea_futur;
	$c['low_sec'] = '';

	include_spip('inc/modifier');
	revision_auteur($id_auteur, $c); // manque la gestion de $serveur

}