Valider 05fdae48 rédigé par cerdic's avatar cerdic
Parcourir les fichiers

passage des formulaires de forum public en CVT et ajax

correction de la foncton de traitement des bloc ajax pour traiter les blocs ajax enfants d'un bloc ajax en premier
corrige le bug ajax dans ajax, mais efficacite du script pas optimale
parent cd6ba9f3
Chargement en cours
Chargement en cours
Chargement en cours
Chargement en cours
+7 −0
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -17,6 +17,11 @@ dist/formulaires/editer_rubrique.php -text
dist/formulaires/editer_site.html -text
dist/formulaires/editer_site.php -text
dist/formulaires/editer_site_fonctions.php -text
dist/formulaires/forum/charger.php -text
dist/formulaires/forum/traiter.php -text
dist/formulaires/forum/verifier.php -text
dist/formulaires/forum_ajouter_mot.html -text
dist/formulaires/forum_bloc_choix_mots.html -text
dist/formulaires/login.php -text
dist/formulaires/login_forum_abo.html -text
dist/formulaires/logo_auteur.html -text
@@ -265,6 +270,7 @@ dist/images/wrapper.php -text
dist/images/xml.gif -text
dist/inc-documents.html -text
dist/inc-entete.html -text
dist/inc-forum-repondre.html -text
dist/inc-forum.html -text
dist/inc-head.html -text
dist/inc-petition.html -text
@@ -277,6 +283,7 @@ dist/javascript/articles_tous_edite.js -text
dist/javascript/async_upload.js -text
dist/javascript/bgiframe.js -text
dist/javascript/dragdrop_interface.js -text
dist/javascript/formfx.js -text
dist/javascript/jquery.cookie.js -text
dist/javascript/jquery.form.js -text
dist/javascript/jquery.ifixpng.js -text
+1 −2
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -68,8 +68,7 @@

        [(#REM) Forum de l'article ]
        <a href="#forum" name="forum" id="forum"></a>
        <INCLURE{fond=inc-forum}{id_article}>
        [<p class="repondre"><a href="(#PARAMETRES_FORUM|url_reponse_forum)" rel="noindex nofollow"><:repondre_article:></a></p>]
        <INCLURE{fond=inc-forum}{id_article}{id_forum}{repondre}{ajax}{reponse=<:repondre_article:>}>

	</div><!--#contenu-->
	</div><!--#conteneur-->
+13 −6
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -34,10 +34,19 @@
  padding: 0 0 5px;
  font-weight: normal;
}
.formfx form fieldset fieldset label {
  display: block;
.formfx form fieldset fieldset ul li {
  width: 180px;
  float:left;
  padding:0;
}
.formfx form fieldset fieldset ul label {
  display: inline;
  width:auto;
}
.formfx form fieldset fieldset ul {
  margin:0;
  margin-left:123px;/* Width plus 3 (html space) */
  padding:0;}
.formfx form em {
  font-weight: bold;
  font-style: normal;
@@ -46,15 +55,13 @@
.formfx form label {
  width: 120px; /* Width of labels */
}
.formfx form fieldset fieldset label {
  margin-left: 123px; /* Width plus 3 (html space) */
}


/* messages d'erreur */
.formulaire_erreur {
  color: red;
}
.formfx li .erreur {color:red;}

/* messages de retour */
.formulaire_message {
+2 −11
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
<B_mots>
<ul class="choix_mots">
	<BOUCLE_mots(MOTS){id_groupe} {par titre} {1/2}><li>
	<BOUCLE_mots(MOTS){id_groupe} {par titre}><li>
		<input type="[(#ENV{unseul}|choixsiegal{oui,radio,checkbox})]" name="ajouter_mot[]" id="mot#ID_MOT" value="#ID_MOT" [(#ID_MOT|in_any{#ENV**{ajouter_mot}, ''}|?{'checked="checked"',''})] />
		[<label for="mot#ID_MOT">(#TITRE|supprimer_numero)</label>]</li>
    </BOUCLE_mots>
</ul>
</B_mots>
 No newline at end of file
<B_mots_suite>
<ul class="choix_mots">
	<BOUCLE_mots_suite(MOTS){id_groupe} {par titre} {2/2}><li>
		<input type="[(#ENV{unseul}|choixsiegal{oui,radio,checkbox})]" name="ajouter_mot[]" id="mot#ID_MOT" value="#ID_MOT" [(#ID_MOT|in_any{#ENV**{ajouter_mot}, ''}|?{'checked="checked"',''})] />
		[<label for="mot#ID_MOT">(#TITRE|supprimer_numero)</label>]</li>
    </BOUCLE_mots_suite>
</ul>
</B_mots_suite>
<br class="nettoyeur" />
 No newline at end of file
+59 −44
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
<div class="formulaire_spip formulaire_forum"  id="formulaire_forum">
<div class="formulaire_spip formulaire_forum formfx"  id="formulaire_forum">
[(#REM) pour IE qui sinon se perd dans l'ajax !, ne pas retirer]<br class='spacer' />
#SET{reponse_nom,''}
#SET{reponse_id,''}
<BOUCLE_enreponse(FORUMS){id_forum}>#SET{reponse_nom,#NOM|sinon{#TITRE}|couper{80}}#SET{reponse_id,#ID_AUTEUR}</BOUCLE_enreponse>

<form action="#ENV{url}#formulaire_forum" method="post"><div>
[(#ENV{url_post}|form_hidden)]
[(#ENV{login_forum_abo})
<INCLURE{fond=formulaires/login_forum_abo}{inscription}{oubli}>
]
[(#ENV{editable})

	[<form action="#ENV{url}#formulaire_forum" method="post" class='noajax'><div>
	[(#ACTION_FORMULAIRE{#ENV{url_post}})]
	[<input type="hidden" name="arg" value="(#ENV{arg})" />]
	[<input type="hidden" name="hash" value="(#ENV{hash})" />]
	[<input type="hidden" name="verif_(#ENV{hash})" value="ok" />]
	[<input type="hidden" name="afficher_texte" value="(#ENV{afficher_texte})" />]
	[<input type="hidden" name="retour_forum" value="(#ENV*{retour_forum})" />]
	<input type='hidden' name='titre' value="#ENV{titre}" />
	<input type='hidden' name='texte' value="#ENV{texte}" />
	<input type='hidden' name='url_site' value="#ENV{url_site}" />
	<input type='hidden' name='nom_site' value="#ENV{nom_site}" />
	[<input type="hidden" name="id_forum" value="(#ENV*{id_forum})" />]
	[(#INCLURE{fond=formulaires/forum_ajouter_mot}{ajouter_mot})]
	(#ENV*{erreurs}|table_valeur{previsu})
	</div></form>]

<form action="#ENV{url}#formulaire_forum" method="post" class='ajax'><div>
[(#ACTION_FORMULAIRE{#ENV{url_post}})]
[<input type="hidden" name="arg" value="(#ENV{arg})" />]
[<input type="hidden" name="hash" value="(#ENV{hash})" />]
[<input type="hidden" name="verif_(#ENV{hash})" value="ok" />]
[<input type="hidden" name="afficher_texte" value="(#ENV{afficher_texte})" />]
[<input type="hidden" name="retour_forum" value="(#ENV*{retour_forum}|rawurlencode)" />]
[<input type="hidden" name="retour_forum" value="(#ENV*{retour_forum})" />]
[<input type="hidden" name="id_forum" value="(#ENV*{id_forum})" />]
[<fieldset class="reponse_formulaire">
<legend><:bouton_radio_modere_priori:></legend>
<p>(#ENV{modere})<:forum_info_modere:></p>
</fieldset>]

[(#ENV*{previsu})]

<BOUCLE_G(GROUPES_MOTS)
	{forum=(#CONFIG{mots_cles_forums}|choixsiegal{oui,oui,jamais})}
	{articles==(#ENV{table}|choixsiegal{articles,'oui','.*'})}
	{breves==(#ENV{table}|choixsiegal{breves,'oui','.*'})}
	{rubriques==(#ENV{table}|choixsiegal{rubriques,'oui','.*'})}
	{syndic==(#ENV{table}|choixsiegal{syndic,'oui','.*'})}
>
[(#ID_GROUPE|in_any{#ENV**{ajouter_groupe},' '})
	<fieldset>
	<legend><:mots_clefs:> : #TITRE</legend>
		<INCLURE{fond=formulaires/choix_mots}{id_groupe}{ajouter_mot}{unseul}>
	</fieldset>
]</BOUCLE_G>

[(#ENV**{afficher_texte}|choixsiegal{'non', ' ',''})
[<input type="hidden" name="titre" value="(#ENV{titre})" />]
<p class="spip_bouton"><input type="submit" value="<:forum_valider:>" /></p>]
<p class="bouton"><input type="submit" value="<:forum_valider:>" /></p>]

[(#ENV**{afficher_texte}|choixsiegal{'non', '',' '})

	<fieldset>
	<legend><:form_pet_message_commentaire:></legend>
	<legend><:form_pet_message_commentaire:></legend><ol>
	[<li class='enreponse'><:en_reponse_a:> <span>(#GET{reponse_nom})</span></li>]
	[<li>(#INCLURE{fond=formulaires/forum_bloc_choix_mots}{table=#ENV*{table}}{ajouter_mot})</li>]

[(#CONFIG{forums_titre}|=={oui}|?{
	<p><label for="titre"><:forum_titre:></label>
	<input type="text" class="forml" name="titre" id="titre"[ value="(#ENV{titre})"] size="40" /></p>
	<li class='text'><label for="titre"><:forum_titre:></label>
	<input class='text' type="text" name="titre" id="titre"[ value="(#ENV{titre})"] size="40" />
	[<span class='erreur'>(#ENV**{erreurs}|table_valeur{titre})</span>]
	</li>
,
	<input type="hidden" name="titre" id="titre"[ value="(#ENV{titre})"] />
})]

[(#CONFIG{forums_texte}|=={oui}|?{
	<label><:forum_texte:></label>
	<p><small><:info_creation_paragraphe:></small></p>
	[(#ENV**{texte}|barre_textarea{12,40})]
	</fieldset>
	<li class='textarea'><label for='texte'><:forum_texte|typo:>
	<small><:info_creation_paragraphe:></small></label>
	<textarea name='texte' id='texte'>[(#ENV{texte})]</textarea>
	[<span class='erreur'>(#ENV**{erreurs}|table_valeur{texte})</span>]
	</li>
})]
	</ol></fieldset>

[(#CONFIG{forums_urlref}|=={oui}|?{
	<fieldset>
	<legend><:forum_lien_hyper:></legend>
	<p><:forum_page_url:></p>
	<p><label for="nom_site"><:forum_titre:></label>
	<input type="text" class="forml" name="nom_site" id="nom_site" size="40" value="[(#ENV{nom_site})]" /></p>
	<p><label for="url_site"><:forum_url:></label>
	<input type="text" class="forml" name="url_site" id="url_site" style="text-align: left;" dir="ltr" size="40" value="[(#ENV{url_site})]" /></p>
	</fieldset>
	<legend><:forum_lien_hyper:></legend><ol>
	<li><:forum_page_url:></li>
	<li><label for="nom_site"><:forum_titre:></label>
	<input class='text' type="text" name="nom_site" id="nom_site" size="40" value="[(#ENV{nom_site})]" /></li>
	<li><label for="url_site"><:forum_url:></label>
	<input class='text' type="text" name="url_site" id="url_site" style="text-align: left;" dir="ltr" size="40" value="[(#ENV{url_site})]" /></li>
	</ol></fieldset>
})]

	<INCLURE{fond=formulaires/login_forum}>

	[(#REM) Piege a robots spammeurs ]
	<p style="display: none;"><label for="nobot"><:antispam_champ_vide:></label>
	<input type="text" name="nobot" id="nobot" value="#ENV{nobot}" size="10" /></p>

	<p class="spip_bouton"><input type="submit" value="<:forum_voir_avant:>" /></p>
	<p class="bouton"><input type="submit" value="<:forum_voir_avant:>" /></p>
]
</div>
</form>

</div>

[(#REM)
	Sauver les donnees du formulaire dans un cookie, si on quitte la page,
	et les remettre quand on revient (dans les limites de 4ko etc)
]
<script type="text/javascript"><!--
<script type='text/javascript' src='#CHEMIN{javascript/formfx.js}'></script>
<script type="text/javascript">/*<!#EVAL{chr(91)}CDATA#EVAL{chr(91)}*/
if (window.jQuery)(function($){
	$.getScript('[(#CHEMIN{javascript/jquery.cookie.js}|url_absolue)]',
	function(){
		var a = $.cookie('spip_contenu_formulaire');
		var saveauto = true;
		if (a) {
			$('#formulaire_forum textarea[name=texte]')
			$('#formulaire_forum textarea#EVAL{chr(91)}name=texte#EVAL{chr(93)}')
			.val(a);
			$.cookie('spip_contenu_formulaire', null);
		}
@@ -98,9 +111,11 @@ if (window.jQuery)(function($){
		.bind('unload', function(){
			if (saveauto)
			$.cookie('spip_contenu_formulaire',
				$('#formulaire_forum textarea[name=texte]').val()
				$('#formulaire_forum textarea#EVAL{chr(91)}name=texte#EVAL{chr(93)}').val()
			);
		});
	});
}(jQuery));
// --></script>
/*#EVAL{chr(93)}[(#EVAL{chr(93)})]>*/</script>
]
</div>
 No newline at end of file
Chargement en cours