SpipForum

Ceci est une ARCHIVE, peut-être périmée. Vérifiez bien les compatibilités !

 [1]
voir aussi >


Coucou,

Voici un petit retour sur l’utilisation des boucles forums dans le cadre du forum spip VS php_BB et quelques digressions sur l’usage des forums avec SPIP.

Le squelette spip-forum est disponible sur spip-contrib, il clone php_BB dans la limite des possibilité de spip. Vous êtes invités à tester et à donner vos retours.

voir le forum
rapporter un bogue sur les squelettes
proposer des améliorations pour le squelette
SpipForumCSS : voir l’avancée des modifications des pages de SpipForum en css

Modifications de spip envisageables

Pour réaliser un squelette de forum plus complet, il faudrait modifier le noyau de spip.

Suivre les discussions par mail
Attention terrain glissant ;o)

1) Ca ne va pas de soit
http://webgeneraction.levillage.org/article.php3?id_article=82
(James -> lien mort ?)(BoOz-> oui, domage)

2) il faudrait l’intégrer dans un truc général de suivi pour Spip
http://thread.gmane.org/gmane.comp.web.spip.user/36498
SystemeDeNotification

3) Un debut de code malgré tout
http://spip-contrib.net/ecrire/articles.php3?id_article=636
(Zzz. -> cet url renvoi une erreur 404 ... -> non pas du tout)

_4) Et pourquoi pas une table suivi_forum_auteur avec dedant :

id_forum | id_auteur

On abonne ensuite chaque auteur à une discussion, s’il le demande quand il poste.

Ca permet d’avoir une certaine flexibilité dans le suivi des forum (ne pas s’abonner à une discussion pénible dans un forum, suivre juste la discussion qu’on a lancé).

On peut aussi, en sus, permettre de s’abonner à un forum entier, à la manière d’un modérateur, pour recevoir tous les messages.

Re Editer les messages
C’est une mauvaise idée
(Zzz. -> J’ai lu mais pas d’accord, quand j’écris une connerie ds un forum, j’aime pouvoir me corriger. Un edit au niveau du seul posteur est peut être à envisager non ? (Dsl de polluer mais je ne sais pas ou poster ca sinon... ;-) -> tu n’as qu’a te relire et ne pas écrire de connerie, au pire tu repostes et tu t’excuses ! -> J’ai également lu, et je ne suis pas d’accord non plus. Il n’y a pas que des perveres et des racailles sur le net, et dans le cadre d’une moderation réguliere, l’edition des posts ne pose pas de probleme. Cela dit, vu le manque de compréhension des « patrons » de spip, je vais changer Spip pour un autre CMS. (Georges Briere). -> Pas d’accord non plus. En tant qu’admin, éditer un message a un aspect éducatif irremplaçable concernant la charte du forum et évite beaucoup d’incompréhension. C’est également très pratique pour les messages importants qui peuvent être modifiés régulièrement (post-it etc.). (Thomas Dury)

Aller plus loin avec des boucles (FORUMS)

Rappel des idées déjà proposées sur le sujet des boucles forums :

-  Pour un message générique c’est bien de connaître tout de suite d’ID du
pied de la discussion pour le resituer dans son contexte (après une
recherche par exemple) -> fait dans spip 1.8
-  Ca serait pratique aussi de pouvoir trier _proprement_ les pieds des
discussions par date de mise à jour (ie la date ou la dernière réponse à été
ajoutée à cette discussion) cela permet de faire « remonter » les discussions dans la liste quand un nouveaux message est posté.

MODIFICATIONS à envisager sur la table spip_forum


-  id_thread pour connaitre l’id du pied de la discussion à laquelle le message appartient. -> fait dans spip 1.8
-  date_thread pour un pied de discussion, permet de connaitre la date de mise a jour de la discussion (la date du dernier message dans la discussion).

Pour afficher les forums de tous les articles et rubriques d’un secteur


par JLuc

On ne peut pas le faire directement car id_secteur retient les forums associés à l’unique objet secteur.

Il faut donc exclure tous les mauvais forums, et afficher ceux qui restent.

Dans le code qui suit, proposé par Fil et BoOz, id_rubrique est l’id d’un secteur.

<BOUCLE_contexte(RUBRIQUES){id_rubrique}>
<BOUCLE_secteurs(RUBRIQUES){exclus}{racine}>
<BOUCLE_supp(RUBRIQUES){id_secteur}>
        <BOUCLE_supp2(FORUMS){id_rubrique}{plat}{doublons}>
        </BOUCLE_supp2>
</BOUCLE_supp>
<BOUCLE_supp3(ARTICLES){id_secteur}>
        <BOUCLE_supp4(FORUMS){id_article}{plat}{doublons}>
        </BOUCLE_supp4>
</BOUCLE_supp3>
</BOUCLE_secteurs>
</BOUCLE_contexte> 

<BOUCLE_enfin(FORUMS){doublons}{par date}{inverse}>
 Voici un forum du secteur : #TITRE / #TEXTE
</BOUCLE_enfin>

attention si vous avez des brèves d’en tenir compte aussi

Pour l’appeler depuis un article, on remplace la BOUCLE_contexte par :

<BOUCLE_contexte(HIERARCHIE){id_rubrique}{0,1}>

Afficher la liste des sujets, en faisant « remonter » les sujets quand un nouveau message est posté


BoOz
voici la super boucle forum qui permet de se débrouiller avec spip 1.7.2 pour afficher les derniers sujets par date inverse de réponse, avec des sujets éventuellements cloturés. On peut faire plus simple en spip 1.8.

<!--afficher la liste des discussions par ordre inverse de date de derniere contribution -->


<!-- on choppe le dernier message -->

<BOUCLE_liste(FORUMS){id_article}{plat}{par date}{inverse}{debut_post,50}> 

<?php 
$affiche_date='[(#DATE|nom_jour)] [(#DATE|affdate),] [(#DATE|heures)]:[(#DATE|minutes)]';
 ?>

<!-- on trouve le pied de la discussion -->

<BOUCLE_remonte(FORUMS){id_enfant}>
<BOUCLE_remonte_rec(boucle_remonte)> </BOUCLE_remonte_rec>
</BOUCLE_remonte>

<!-- hop le voila (attention on est en fait dans l'affichage alternatif de la boule remonte) -->

<?php 

$id_forum='[(#ID_FORUM|texte_script)]';
$titre='[(#TITRE|texte_script)]';

<!-- on regarde si le message "pied" cloture la discussion -->

$closed='non'; 

<BOUCLE_sujet_ferme(FORUMS){id_forum}{titre_mot=Fermé}>
$closed='[(#ID_FORUM|texte_script)]'; 
</BOUCLE_sujet_ferme>

<!-- Si ce n'est pas le cas, on regarde si un message dans les reponses cloture la discussion et on compte les réponses au passage -->

$reponse_forum=0;

<BOUCLE_reponse(FORUMS){id_parent}>

$reponse_forum=$reponse_forum+1;


<BOUCLE_reponse_ferme(FORUMS){id_forum}{titre_mot=Fermé}>
$closed='[(#ID_FORUM|texte_script)]'; 
</BOUCLE_reponse_ferme>

<BOUCLE_descends_rec(boucle_reponse)> </BOUCLE_descends_rec>
</BOUCLE_reponse>

<//B_sujet_ferme>

<!-- on affiche maintenant le pied de la discussion et le message sur une ligne en vérifiant qu'on affiche pas deux fois la meme discussion -->

if(!in_array($id_forum,$tableau)){
?>

<!-- titre de la discussion -->
#TITRE
<? echo $closed == "non"? " fermé " : " ouvert " ; ?>

<!-- nombre de réponses -->
<?php echo $reponse_forum; ?>
	
<!-- auteur de la discussion -->
#NOM
	
<!-- dernier message --> 
<BOUCLE_dernier_message(FORUMS){id_parent}{plat}{par date}{inverse}{0,1}>
<?php echo"$affiche_date"; ?>
#NOM

<a href="voirsujet.php3?id_forum=<?php echo $id_forum?>#forum#ID_FORUM">
</BOUCLE_dernier_message>
            -
<//B_dernier_message>

<?php }
$tableau[$id_forum]=$id_forum;
?>

<//B_remonte>

</BOUCLE_liste>

Pas de messages dans ce forum
	
<//B_liste>

@+
BoOz
— Vincent

Proposition : associer un forum à un document
Cela permettrait d’implanter sous SPIP un gallerie de photo façon Gallery, qui permet d’ouvrir une discussion associée à chaque photo. J’expliquais dans un message sur spip-dev comment je m’en sortais pour le moment. C’est faisable, mais ça démultiplie les articles dans la partie privée, sans que chacun soit vraiment un article (texte vide en général, juste de quoi inclure la photo). Ajouter un champ id_document à la table spip_forum permettrait d’implanter cette fonctionnalité. (Yves Grenier)

Proposition : pouvoir transférer un message d’un forum à l’autre
C’est intéressant lorsqu’on a plusieurs forums indépendants. Ah oui, et après les utilisateurs courrent après les messages ? comment fais tu pour suivre les discusssions après que ton message est déplacé ? je ne suis encore pas convaincu

Il suffirait d’ajouter une boîte texte à chaque message dans ecrire/controle_forum.php3, dans laquelle on pourrait modifier le numéro d’article. -> oui sans doute mais le problème n’est pas technique...

Notes

[1ReferencesSpipForum les articles de spikini qui citent cet article

Discussion

Aucune discussion

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom