示例#1
0
文件: spip.php 项目: nursit/SPIP
/**
 * Modifier le login d'un auteur SPIP
 *
 * @param string $new_login
 * @param int $id_auteur
 * @param string $serveur
 * @return bool
 */
function auth_spip_modifier_login($new_login, $id_auteur, $serveur = '')
{
    if (is_null($new_login) or auth_spip_verifier_login($new_login, $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;
    }
    if ($new_login == $auteur['login']) {
        return true;
    }
    // on a rien fait mais c'est bon !
    include_spip('action/editer_auteur');
    // vider le login des auteurs a la poubelle qui avaient ce meme login
    if (strlen($new_login)) {
        $anciens = sql_allfetsel('id_auteur', 'spip_auteurs', 'login='******'text') . " AND statut='5poubelle'", '', '', '', '', $serveur);
        while ($row = array_pop($anciens)) {
            auteur_modifier($row['id_auteur'], array('login' => ''), true);
            // manque la gestion de $serveur
        }
    }
    auteur_modifier($id_auteur, array('login' => $new_login), true);
    // manque la gestion de $serveur
    return true;
}
示例#2
0
文件: spip.php 项目: rhertzog/lcs
/**
 * Modifier le login d'un auteur SPIP
 *
 * @param string $new_login
 * @param int $id_auteur
 * @return bool
 */
function auth_spip_modifier_login($new_login, $id_auteur, $serveur=''){
	if (is_null($new_login) OR auth_spip_verifier_login($new_login,$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;
	if ($new_login == $auteur['login'])
		return true; // on a rien fait mais c'est bon !

	include_spip('inc/modifier');

	// vider le login des auteurs a la poubelle qui avaient ce meme login
	if (strlen($new_login)){
		$anciens = sql_select('id_auteur','spip_auteurs','login='******'5poubelle'",'','','','',$serveur);
		while ($row = sql_fetch($anciens)){
			revision_auteur($row['id_auteur'], array('login'=>'')); // manque la gestion de $serveur
		}
	}

	include_spip('inc/modifier');
	revision_auteur($id_auteur, array('login'=>$new_login)); // manque la gestion de $serveur

	return true;
}