Skip to content
Extraits de code Groupes Projets
Valider b1fe3990 rédigé par esj's avatar esj
Parcourir les fichiers

bug sur inscription redac/forum

parent 5943d926
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -37,7 +37,7 @@ function boutonne($t, $n, $v, $a='') {
//
// Le code dynamique appelee par les squelettes
//
function retour_forum($id_rubrique, $id_forum, $id_article, $id_breve, $id_syndic, $titre, $table, $forums_publics, $url, $hidden) {
function retour_forum($id_rubrique, $id_forum, $id_article, $id_breve, $id_syndic, $titre, $table, $forums_publics, $url, $retour) {
global $REMOTE_ADDR, $id_message, $afficher_texte, $spip_forum_user;
......@@ -131,10 +131,14 @@ function retour_forum($id_rubrique, $id_forum, $id_article, $id_breve, $id_syndi
$url = quote_amp($url);
return ("<form action='$url' method='post' name='formulaire'>\n$hidden" .
return ("<form action='$url' method='post' name='formulaire'>\n" .
boutonne('hidden', 'retour', $retour) .
boutonne('hidden', 'ajout_forum','oui') .
boutonne('hidden', 'id_message', $id_message) .
boutonne('hidden', 'alea', $alea) .
boutonne('hidden', 'hash', $hash) .
(($forums_publics != 'pri') ? '' :
(_T('forum_info_modere'). '<p>')) .
(($afficher_texte == "non") ?
(boutonne('hidden', 'titre', $titre) .
$table .
......@@ -262,9 +266,9 @@ function afficher_petits_logos_mots($id_mot) {
/*******************************************/
/* DEFINITION DES BALISES LIEES AUX FORUMS */
/*******************************************/
/***********************************************/
/* FONCTIONS POUR LES BALISES LIEES AUX FORUMS */
/***********************************************/
// Noter l'invalideur de la page contenant ces parametres,
// en cas de premier post sur le forum
......@@ -353,8 +357,6 @@ function forum_dyn($args, $donnees_forum) {
list ($idr, $idf, $ida, $idb, $ids) = unserialize($args);
list($titre, $table, $accepter_forum) = unserialize($donnees_forum);
// titre propose pour la reponse
$titre = '> '.supprimer_numero(ereg_replace('^[>[:space:]]*', '',$titre));
// url de reference
if (!$url = rawurldecode($GLOBALS['url']))
......@@ -372,30 +374,28 @@ function forum_dyn($args, $donnees_forum) {
$url = ereg_replace("[?&]var_erreur=[^&]*", '', $url);
$url = ereg_replace("[?&]var_login=[^&]*", '', $url);
$url = ereg_replace("[?&]var_url=[^&]*", '', $url);
// url de retour du forum
// verifier l'identite des posteurs pour les forums sur abo
if (($accepter_forum == "abo") && (!$GLOBALS["auteur_session"]))
{
include_local('inc-login.php3');
return login_pour_tous($url, false, true, $url, 'forum');
}
// au premier appel (pas de http-var nommee "retour")
// memoriser l'URL courante pour y revenir apres envoi du message
// aux appels suivants, reconduire la valeur.
if ($retour_forum = rawurldecode($GLOBALS['HTTP_GET_VARS']['retour']))
$retour_forum = ereg_replace('&recalcul=oui','',$retour_forum);
else {
if (!$retour_forum = rawurldecode($GLOBALS['HTTP_POST_VARS']['retour']))
$retour_forum = $url;
}
// verifier l'identite des posteurs pour les forums sur abo
if (($accepter_forum == "abo") && (!$GLOBALS["auteur_session"]))
{
include_local('inc-login.php3');
return login_pour_tous($url, false, true, $url);
}
else
// debut formulaire forum
return retour_forum($idr,$idf,$ida,$idb,$ids,
texte_script($titre),
$table,
$accepter_forum,
$url,
"<input type='hidden' name='retour' value='".$retour_forum."' />
<input type='hidden' name='ajout_forum' value='oui' />
" .
(($accepter_forum != 'pri') ? '' : (_T('forum_info_modere'). '<p>')));
texte_script('> '.supprimer_numero(ereg_replace('^[>[:space:]]*', '',$titre))),
$table,
$accepter_forum,
$url,
$retour_forum);
}
//
......
......@@ -23,12 +23,12 @@ function inscription_dyn($type) {
$url = $link->getUrl();
$url = quote_amp($url);
return _T('form_forum_indiquer_nom_email') .
"<form method='get' action='$url' style='border: 0px; margin: 0px;'>\n" .
"<form method='post' action='$url' style='border: 0px; margin: 0px;'>\n" .
"<div><b>"._T('form_pet_votre_nom')."</b></div>" .
"<div><input type=\"text\" class=\"forml\" name=\"nom_inscription\" value=\"\" size=\"30\" /></div>" .
"<div><b>"._T('form_pet_votre_email')."</b></div>" .
"<div><input type=\"text\" class=\"forml\" name=\"mail_inscription\" value=\"\" size=\"30\" /></div>" .
"<div align=\"right\"><input type=\"submit\" name=\"Valider\" class=\"spip_bouton\" value=\""._T('bouton_valider')."\" /></div>" .
"<div align=\"right\"><input type=\"submit\" class=\"spip_bouton\" value=\""._T('bouton_valider')."\" /></div>" .
"</form>";
}
}
......
......@@ -61,15 +61,15 @@ function login($cible, $prive = 'prive') {
echo "<a href='$cible'>"._T('login_par_ici')."</a>\n";
return;
}
echo login_pour_tous($cible, $prive, '', $action);
echo login_pour_tous($cible, $prive, '', $action, 'redac');
}
// fonction aussi pour le forums sur abonnement
function login_pour_tous($cible, $prive, $message, $action) {
$pass_popup ='href="spip_pass.php3" target="spip_pass" onclick="'
. "javascript:window.open('spip_pass.php3', 'spip_pass', 'scrollbars=yes, resizable=yes, width=480, height=450'); return false;\"";
function login_pour_tous($cible, $prive, $message, $action, $mode) {
$pass_popup ="href='spip_pass.php3?mode=$mode' target='spip_pass'
onclick=\"javascript:window.open('spip_pass.php3?mode=$mode', 'spip_pass', 'scrollbars=yes, resizable=yes, width=480, height=450'); return false;\"";
global $ignore_auth_http;
global $spip_admin;
......@@ -97,8 +97,8 @@ function login_pour_tous($cible, $prive, $message, $action) {
$statut_login = 0; // statut inconnu
$login = addslashes($login);
$query = "SELECT * FROM spip_auteurs WHERE login='$login'";
$result = spip_query($query);
if ($row = spip_fetch_array($result)) {
$row = spip_fetch_array(spip_query($query));
if ($row) {
if ($row['statut'] == '5poubelle' OR ($row['source'] == 'spip' AND $row['pass'] == '')) {
$statut_login = -1; // refus
} else {
......@@ -229,7 +229,7 @@ function login_pour_tous($cible, $prive, $message, $action) {
// bouton oubli de mot de passe
include_ecrire("inc_mail.php3");
if (tester_mail()) {
$res .= ' [<a href="spip_pass.php3?oubli_pass=oui" target="spip_pass" onclick="'
$res .= ' [<a href="spip_pass.php3?mode=oubli_pass" target="spip_pass" onclick="'
."javascript:window.open(this.href, 'spip_pass', 'scrollbars=yes, resizable=yes, width=480, height=280'); return false;\">"
._T('login_motpasseoublie').'</a>]';
}
......
......@@ -14,12 +14,11 @@ include_ecrire("inc_acces.php3");
utiliser_langue_site();
utiliser_langue_visiteur();
$inscriptions_ecrire = (lire_meta("accepter_inscriptions") == "oui") ;
unset($erreur);
// recuperer le cookie de relance
if ($p = addslashes($p)) {
$oubli_pass = 'oui';
$mode = 'oubli_pass';
$res = spip_query ("SELECT * FROM spip_auteurs WHERE cookie_oubli='$p' AND statut<>'5poubelle' AND pass<>''");
if ($row = spip_fetch_array($res)) {
if ($pass) {
......@@ -38,7 +37,7 @@ if ($p = addslashes($p)) {
echo "<input type='hidden' name='p' value='".htmlspecialchars($p)."'>";
echo _T('pass_choix_pass')."<br>\n";
echo "<input type='password' name='pass' value=''>";
echo ' <input type=submit class="fondl" name="oubli" value="'._T('pass_ok').'"></div></form>';
echo ' <input type=submit class="fondl" value="'._T('pass_ok').'"></div></form>';
install_fin_html();
exit;
}
......@@ -76,7 +75,7 @@ if ($email_oubli) {
$erreur = _T('pass_erreur_non_valide', array('email_oubli' => htmlspecialchars($email_oubli)));
}
if ($oubli_pass == 'oui') {
if ($mode == 'oubli_pass') {
// debut presentation
install_debut_html(_T('pass_mot_oublie'));
......@@ -90,28 +89,32 @@ if ($oubli_pass == 'oui') {
echo '<form action="spip_pass.php3" method="post">';
echo '<div align="right">';
echo '<input type="text" class="fondo" name="email_oubli" value="">';
echo '<input type="hidden" name="oubli_pass" value="oui">';
echo ' <input type=submit class="fondl" name="oubli" value="'._T('pass_ok').'"></div></form>';
echo '<input type="hidden" name="mode" value="oubli_pass">';
echo ' <input type=submit class="fondl" value="'._T('pass_ok').'"></div></form>';
}
}
else if ($inscriptions_ecrire || (lire_meta('accepter_visiteurs') == 'oui') OR (lire_meta('forums_publics') == 'abo')) {
else {
$inscriptions_ecrire = (lire_meta("accepter_inscriptions") == "oui") ;
if ($inscriptions_ecrire || (lire_meta('accepter_visiteurs') == 'oui') OR (lire_meta('forums_publics') == 'abo')) {
// debut presentation
install_debut_html(_T('pass_vousinscrire'));
echo "<p>";
if ($inscriptions_ecrire)
echo _T('pass_espace_prive_bla');
else
echo _T('pass_forum_bla');
echo "\n<p>";
echo formulaire_inscription(($inscriptions_ecrire)? 'redac' : 'forum');
}
else {
install_debut_html(_T('pass_erreur'));
echo "<p>"._T('pass_rien_a_faire_ici');
}
install_debut_html(_T('pass_vousinscrire'));
echo "<p>";
if ($mode != 'forum')
echo _T('pass_espace_prive_bla');
else
echo _T('pass_forum_bla');
echo "\n<p>";
include_local("inc-inscription.php3");
echo (inscription_dyn($mode));
}
else {
install_debut_html(_T('pass_erreur'));
echo "<p>"._T('pass_rien_a_faire_ici');
}
}
echo "<p align='right'>",
http_script("if (window.opener) document.write(\"<a href='javascript:close();'>\");
else document.write(\"<a href='./'>\");
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter