예제 #1
0
/**
 * http://doc.spip.org/@balise_FORMULAIRE_INSCRIPTION_stat
 *
 * [(#FORMULAIRE_INSCRIPTION{nom_inscription, #ID_RUBRIQUE})]
 *
 * @param array $args
 *   args[0] un statut d'auteur (redacteur par defaut)
 *   args[1] indique la rubrique eventuelle de proposition
 * @param array $context_compil
 * @return array|string
 */
function balise_FORMULAIRE_INSCRIPTION_stat($args, $context_compil)
{
    list($mode, $id) = $args;
    include_spip('action/inscrire_auteur');
    $mode = tester_statut_inscription($mode, $id);
    return $mode ? array($mode, $id) : '';
}
예제 #2
0
/**
 * Un filtre pour determiner le nom du satut des inscrits
 *
 * @param void|int $id
 * @param string $mode
 * @return string
 */
function tester_config($id, $mode = '')
{
    include_spip('action/inscrire_auteur');
    return tester_statut_inscription($mode, $id);
}
예제 #3
0
/**
 * Un nouvel inscrit prend son statut definitif a la 1ere connexion.
 * Le statut a ete memorise dans prefs (cf test_inscription_dist).
 * On le verifie, car la config a peut-etre change depuis,
 * et pour compatibilite avec les anciennes versions qui n'utilisaient pas "prefs".
 *
 * http://doc.spip.org/@acces_statut
 *
 * @param array $auteur
 * @return array
 */
function confirmer_statut_inscription($auteur)
{
    // securite
    if ($auteur['statut'] != 'nouveau') {
        return $auteur;
    }
    if (!($s = tester_statut_inscription($auteur['prefs']))) {
        return $auteur;
    }
    include_spip('inc/autoriser');
    // accorder l'autorisation de modif du statut auteur
    autoriser_exception('modifier', 'auteur', $auteur['id_auteur']);
    include_spip('action/editer_auteur');
    // changer le statut
    auteur_modifier($auteur['id_auteur'], array('statut' => $s));
    unset($_COOKIE['spip_session']);
    // forcer la maj de la session
    // lever l'autorisation de modif du statut auteur
    autoriser_exception('modifier', 'auteur', $auteur['id_auteur'], false);
    // mettre a jour le statut
    $auteur['statut'] = $s;
    return $auteur;
}