Comment puis-je dupliquer un sujet entier ?

It sounds probably ridiculous since people usually want to avoid or remove duplicate threads. However I have a use case right now where I need to duplicate a thread. How can I do it?

2 « J'aime »

Manually ? You can navigate to the raw contents of the topic by going to /raw/{topic_id} and copying everything there.

So, https://meta.discourse.org/t/195111 becomes https://meta.discourse.org/raw/195111

By the way, Discourse calls topics what you call “threads”


Edit: or, if you are TL4/staff you can just click edit and copy everything there

4 « J'aime »

Actually that doesn’t do what I need. I want all the topic with all the replies. I want an exact duplicate of the thread, but with different topic_id

1 « J'aime »

I found a way to “reproduce” a whole thread which was laborious but no way to truly duplicate it. (Retaining the likes for instance)

I create a new thread and put it in a non accessible category e.g. staff. I copy each reply from the original topic tread and paste it in a reply in the new topic thread. For replies I only need in the new topic thread, I just select and move them. Then I change ownership of the copied reply to the name of the poster of the original reply. Once I am done, I close the original thread and I change the category of the new topic to a public category.

Of course this is too painstaking to use on a regular basis. The reason I needed to do it this time was because someone created a topic with a very long title that could be interpreted in two different topic threads. We (moderators) noted the issue of long title (this will be restricted to less characters now) but didn’t realize at that time that it would cause a problem.

The conversation started and before we knew it, we had two very intertwined delicate conversations going on, with some offensive comments from one member that nevertheless provoked a rich series of responses in both matters.

To retain the richness of the contributions that had taken place, to reprimand the repeated offender, to use the event for community educational purpose and to permit both valuable conversations to grow each their way, I determined that it was best to split the topics apart, keeping only the pertinent interventions to each but not hesitating to repeat in both the interventions that were covering both matters for clarity comprehension purposes.

In the topic thread that retained the offensive reply, I also put a staff notice before the offensive post saying that it wasn’t in accordance with our community values but that we’d let it for educational purpose. I doctored that post in the following manner: I put the markdown code < del >
In front of the offensive language

I explained that to express his opinion in a constructive manner the member

would have been better wording it

< ins > this way instead.

That was a lot of work and thinking. I would not do that again manually. But the use case is definitely there.

2 « J'aime »

That sounds like a lot of work! You might get better feedback next time when you don’t just ask for technical support (“How can I duplicate a topic?”), but explain the situation and what you want to achieve in your initial post. E.g. you probably could have just closed the topic, put a staff note as last post and link it to two new topics where the respective discussions could continue?

7 « J'aime »

I can’t blame you for your comment: we often ask what is the goal when people ask for technical stuff about fmpro on our board.

However I was dead set on my intent to experiment this approach with the current situation. I knew about closing thread and starting two new topics. I wanted to use the existing material for educational purposes.

We have a very good community, lots of great contributions. However, we were born out of frustration with the vendor’s platform. So I have been using various approach and change management techniques to help people move away from the whining and bitching about the vendor.

Most have progressed in the way they express critical opinions about the product or the vendor. Unfortunately a few individuals had the tendency to stir the pot and brought upon the community a bad reputation and valuable members of the ecosystem whom have a closer or privileged relationship with the vendor won’t come near us. Which is unfortunate because we have grown organically as most people when they become aware that we exist like the forums and want to stay and these stellar members were bringing in valuable expertise and content.

Two very reputable and esteemed developers had to withstand bickering and had to “work” too hard to rectify information and lost the motivation and fun to contribute and removed themselves.

We did moderate but it was just unpleasant to constantly have the same irritating behaviours resurfacing and by trying to give everyone the right to their say, I eventually realize that it was somewhat unfair on everyone to have to exercise tolerance and forcing them to witness unpleasantries because a few would not refrain from being jerks.

Our FAQ did nit impress upon them the faculty to observe and recognize the faults in their interactions. Instead of do’s and don’ts, or guidelines people interpret how they want anyway, our new administrator decided to promote values instead. It turns out it is easier to moderate because we just say that post doesn’t abide by our community values so it was edited (or hidden until you modify it).

However we eventually realized that doing this didn’t help people who have been communicating poorly all their lives to know how to do better.

So now we are adding educational interventions, basically metacommunicating, directly in the threads. We’ll se how that turns out.

5 « J'aime »

I know, @HAWK even edited my title to reflect that.

I use threads exactly to avoid what happened here: your suggestion was a solution to duplicate the topic (aka the initial post). However what I wanted was a solution to duplicate the whole thread (which is the the initial post aka topic + all the following replies.

In other words, when you create a new topic and people post replies, what you get is a thread.

That’s the thing – you don’t… There is literally no such thing as a thread in Discourse. The first post and all responses together are called a topic.

2 « J'aime »

I will accept the concept you expose in the context of Discourse. However, linguistically, philosophically, and historically in the online fora domain, thread is what best describe the thing that has for components a titled initial post and the following replies. :slightly_smiling_face:

1 « J'aime »

Agreed, but the thing that you’re missing here is that Discourse doesn’t have threading like all other forum platforms do. That is literally why we make this distinction.

4 « J'aime »

You make a point. In this case a discussion or conversation might be a better term since it is less specific about the design uniting the components :grinning:

3 « J'aime »

Eh bien, vous pouvez rechercher la définition de sujet sur Google :

sujet
/ˈtäpik/
une affaire traitée dans un texte, un discours ou une conversation ; un thème.

C’est assez exact. Si vous préférez un autre mot pour des raisons personnelles, vous êtes libre de modifier le texte dans Discourse via Admin, Personnaliser.

Quant à la question initiale…

Pourquoi ne pas utiliser la clé à molette d’administrateur sur le sujet et scinder le sujet, afin que les réponses concernant l’“autre” sujet soient dans un sujet différent, mais lié ? Ce serait l’action la plus simple, soutenue par une multitude d’outils dans Discourse.

2 « J'aime »

Parce que :

« Je [voulais] séparer les sujets, en ne gardant que les interventions pertinentes pour chacun, mais sans hésiter à répéter dans les deux les interventions qui couvraient les deux sujets à des fins de clarté et de compréhension. »

À moins qu’il n’existe un moyen de copier une publication dans un nouveau sujet tout en la laissant également dans le sujet d’origine que je n’ai pas encore découvert, la solution que vous proposez ne permet pas de conserver certaines réponses dans les deux sujets à des fins de compréhension.

Je vois, si vous avez des réponses très imbriquées avec beaucoup de citations de divers messages, cela pourrait devenir délicat, mais cela devrait être relativement rare. J’ai modéré meta sous la plupart de ses formes pendant près d’une décennie maintenant et je ne peux pas penser à de nombreuses fois où j’ai rencontré ce « besoin » de dupliquer un sujet entier… une division de sujet régulière fonctionne généralement assez bien.

2 « J'aime »

Jeff, j’ai un cas d’utilisation où la duplication d’un sujet entier serait extrêmement utile.

Nous utilisons notre instance pour la collaboration d’entreprise, spécifiquement un syndicat. Chaque réunion, nous créons un fil de discussion, 8 messages, style TOC.

Chaque réunion publie 1 à 8, bien que très différents au sein du sujet, ont le même format mois après mois, avec juste des informations spécifiques collées. Il serait incroyablement utile d’avoir la possibilité de créer un modèle non seulement pour le premier message, mais pour l’ensemble du sujet, en le reproduisant chaque mois et en insérant les informations mensuelles.

Actuellement, j’ai un sujet que j’ai créé dans une catégorie privée avec le modèle pour chaque message 1-8. Je dois actuellement l’ouvrir en écran partagé avec un nouveau sujet, copier le message 1 du sujet modèle vers le nouveau sujet, puis le message 2, puis le message 3, etc.

Bien qu’il s’agisse d’un cas d’utilisation vraiment inhabituel, certaines instances pourraient vraiment bénéficier d’une fonctionnalité d’administrateur pour cloner un sujet, ou s’il existe un moyen d’étendre le modèle de sujet pour inclure plusieurs modèles de réponse individuels imbriqués dans la catégorie avec le modèle de sujet.

Actuellement, qu’il s’agisse d’un modèle de sujet ou d’un assistant, tout ce que je peux faire, c’est essentiellement cloner un message n°1 non rempli.

1 « J'aime »

Bonjour,

Est-ce que Discourse Canned Replies ne pourrait pas être une meilleure solution pour cela ? Il vous suffit de le créer une fois pour le sujet et les publications, puis vous pouvez simplement sélectionner les modèles.

4 « J'aime »

Vous savez… ça pourrait bien fonctionner. Après l’avoir examiné, je suis vraiment encouragé. @Don merci !

4 « J'aime »

Nous avons également un cas d’utilisation. Nous utilisons les messages privés à un groupe comme moyen de demandes d’aide privées, mais nous encourageons les utilisateurs à nous permettre de rendre leur demande publique. Nous préférons les demandes d’aide publiques car plus de personnes peuvent bénéficier de l’assistance.

Idéalement, nous copierions la demande d’aide de l’OP et les réponses sélectionnées dans un nouveau sujet public, en omettant le message de réponse automatique et les réponses où nous demandons si nous pouvons la rendre publique, etc.

Tel quel, nous devrons faire du sujet du message privé un sujet complet dans une catégorie privée, supprimer les réponses que nous ne voulons pas montrer, puis le déplacer vers une zone publique.

Y a-t-il une raison pour laquelle vous ne faites pas l’inverse ? Sélectionner les messages que vous voulez rendre publics, les déplacer vers une nouvelle conversation et transformer celle-ci en sujet public ? Je me sentirais plus en sécurité en choisissant soigneusement ce que je publie plutôt qu’en supprimant tout ce que je ne veux pas publier.

4 « J'aime »

C’est un bon point. Je suppose que je pensais que le message de l’OP ne pouvait pas être déplacé vers un nouveau sujet. Je vais faire quelques tests pour voir comment cela pourrait fonctionner. Merci pour la suggestion.

1 « J'aime »