Update topic after editing time limit has passed

AI-generated summary

The discussion revolves around creating a “Bump topic” button in Discourse. Janno_Liivak wants to allow users to bump topics after the editing time limit has passed, specifically in a category for buying and selling used items. The goal is to enable users to bump their topics every 72 hours without editing the original post.

Janno_Liivak explains that the button would help users keep their topics visible without having to post unnecessary updates. sam clarifies the requirements, and Janno_Liivak confirms that the button should bump topics without forcing users to post on them.

sam suggests creating a plugin with a custom controller to update the bumped_at timestamp and handle permissions. tobiaseigen mentions that a “Bump topic” button could be useful in certain contexts, such as internal Q&A platforms.

Janno_Liivak reveals that he already created a plugin for this purpose, which can be found on GitHub. tobiaseigen asks about the plugin’s effectiveness in Janno_Liivak’s community, and Janno_Liivak explains that it was created to accompany his buy/sell/exchange plugin and helped reduce spam in the trading category.

I would like to let users bump topic with a help of a button “Bump topic” as long as topic is not closed or archived.

I’m almost there but stumbeled upon TopicController’s update method … more specifically upon guardian.ensure_can_edit!(topic) inside the update method. It prevents user from changing their older posts.

Is my only option to go with direct SQL update of a topic or is there “standard” way to achieve this?

Wait, I am unclear, can you explain exactly what you are trying to achieve here?

Because in general I would like indeed topic to be closed for editing… in this case it’s a category where people sell their old/used stuff. In the beginning people should be able to edit their posts as we have certain rules they should follow (photos, necessary information etc). After some time it’s safe to say the post is “finished” apart the price which can go down. People are allowed to “bump” their topic with the help of a button which appears 72 hours after last “bump” (whether bu button or some other person’s post in the topic).

So there it is … what I want to achieve. I have a button. I can bump editable posts but what if something is “in the market” for 2 years? 4 years? :slight_smile:

Still not following,

  • Do you want to give end users the ability to “bump” topics and have them show up first in latest, but only once in 48 hours, without forcing them to post on the topic?

  • Are you trying to lift editing limit temporarily from a topic?

Keep in mind once there is more than one post in a topic, editing OP does not bump topic.

Yes, this is exactly what I’m trying to do.

Then I would recommend you would make a plugin with a special controller that simply updates bumped_at on the topic to Time.zone.now and handles all permissions etc in said controller.

Hat schon mal jemand nach einem Button zum “Thema hochschieben” (Bump topic) gefragt? Ich habe einen Kunden, der Discourse als interne Q&A-Plattform für sein Unternehmen nutzt und möchte seinen Kollegen erlauben, Themen, die nicht genügend Aufmerksamkeit erhalten, hochzuschieben, ohne eine Antwort mit einem Wort wie “bump” hinzuzufügen.

Das könnte für die meisten Communities natürlich nervig sein, aber vielleicht könnte es als optionales Plugin oder Theme-Komponente hinzugefügt werden? :thinking:

Ich habe dieses Plugin schon vor langer Zeit erstellt :slight_smile:

Ich weiß nicht, ob es noch funktioniert, aber du kannst es gerne ausprobieren

(Ich benutze es nicht mehr … deshalb weiß ich es nicht)

Danke! Wie hat das Hinzufügen des Buttons in Ihrer Community funktioniert? Ich denke, für die meisten Websites wäre es ärgerlich, aber ich sehe den Vorteil für eine Q&A-Website, auf der Leute auf eine Antwort warten, aber das Thema nicht mit bedeutungslosen “Ich auch”-Posts überladen wollen.

Dies könnte jetzt als Theme-Komponente implementiert werden.

Dies wurde eigentlich erstellt, um mein Kauf-/Verkaufs-/Austausch-Plugin zu begleiten… ein Plugin, das besagte Schaltflächen zu Themen hinzufügte und damit Benutzer die Handels-Kategorie nicht mit „Up“-Posts „spammen“ (die übrigens nicht erlaubt waren… wir hatten Regeln und Moderatoren). Wenn Sie also etwas verkaufen wollten, erstellten Sie Ihr Thema, und alle 3 Tage konnten Sie mit Hilfe einer Schaltfläche „Up“ gehen.