Example #1
0
function export_all_abort()
{
	// evacuer la fausse erreur du cas du validateur en boucle.
	if (_request('exec') == 'valider_xml')  return;
	include_spip('base/import_all');
	import_all_fin(array());
	include_spip('inc/import');
	detruit_restaurateur();
	effacer_meta('admin');
	// et verifier la session
	include_spip('inc/auth');
	$login = auth_retrouver_login($GLOBALS['visiteur_session']['login']);
	$id_auteur = sql_getfetsel('id_auteur', 'spip_auteurs', 'login='******'visiteur_session']['id_auteur'] != $id_auteur)
			auth_deloger();
	else
			redirige_url_ecrire();
}
Example #2
0
/**
 * informer sur un login
 * Ce dernier transmet le tableau ci-dessous a la fonction JS informer_auteur
 * Il est invoque par la fonction JS actualise_auteur via la globale JS
 * page_auteur=#URL_PAGE{informer_auteur} dans le squelette login
 * N'y aurait-il pas plus simple ?
 *
 * @param string $login
 * @param string $serveur
 * @return array
 */
function auth_informer_login($login, $serveur = '')
{
    if (!$login or !($login = auth_retrouver_login($login, $serveur)) or !($row = sql_fetsel('*', 'spip_auteurs', 'login='******'text'), '', '', '', '', $serveur))) {
        return array();
    }
    $prefs = unserialize($row['prefs']);
    $infos = array('id_auteur' => $row['id_auteur'], 'login' => $row['login'], 'cnx' => $prefs['cnx'] == 'perma' ? '1' : '0', 'logo' => recuperer_fond('formulaires/inc-logo_auteur', $row));
    // desactiver le hash md5 si pas auteur spip ?
    if ($row['source'] !== 'spip') {
        $row['alea_actuel'] = '';
        $row['alea_futur'] = '';
    }
    verifier_visiteur();
    return auth_administrer('informer_login', array($row['source'], $infos, $row, $serveur), $infos);
}
Example #3
0
/**
 * Vérifier si l'auteur est bien authentifié
 *
 * @param string $login
 * @param string $pw
 * @param string $serveur
 * @return array|bool
 */
function lire_php_auth($login, $pw, $serveur = '')
{
    if (!$login or !($login = auth_retrouver_login($login, $serveur))) {
        return false;
    }
    $row = sql_fetsel('*', 'spip_auteurs', 'login='******'text'), '', '', '', '', $serveur);
    if (!$row) {
        if (spip_connect_ldap($serveur) and $auth_ldap = charger_fonction('ldap', 'auth', true)) {
            return $auth_ldap($login, $pw, $serveur, true);
        }
        return false;
    }
    // su pas de source definie
    // ou auth/xxx introuvable, utiliser 'spip'
    if (!($auth_methode = $row['source']) or !($auth = charger_fonction($auth_methode, 'auth', true))) {
        $auth = charger_fonction('spip', 'auth', true);
    }
    $auteur = '';
    if ($auth) {
        $auteur = $auth($login, $pw, $serveur, true);
    }
    // verifier que ce n'est pas un message d'erreur
    if (is_array($auteur) and count($auteur)) {
        return $auteur;
    }
    return false;
}