Hey guys! I posted this in the discord, but I wanted to repost here for more visibility.

Users on my forum are asking for the ability to delete their own threads. The default functionality in flarum is that this is allowed until someone replies, then deletion is locked.

2 things that I've already tried. There is a "Delete discussions" setting. But this setting applies to every user and every thread, not to the authors.

There is also a "Allow post editing" interval setting. This applies only to editing posts and has nothing to do with deleting the thread. After spend a few hours looking at the core, I've come up empty handed, it appears as though this isn't something that can be changed from the settings panel.

Does anyone have any ideas?

    johnlewissims

    I think you would have to write an extension to grant threadstarters that kind of power. In addition to the existing user groups based on active promotion, I could imagine user groups based solely on certain activities (such as starting a thread).

    But honestly:

    Users on my forum are asking for the ability to delete their own threads.

    I think there is a fundamental misunderstanding here, which - as I know only too well - is prevalent among a sometimes very demanding group of users: they see a thread they have started as "their own". But why should anyone have the right to delete posts by other users without their consent?

    When I am confronted with such a request, I regularly ask the thread starter to obtain the consent of all other participants to delete the thread.

    @Pollux I understand the ethical question behind why and in principle I agree. But there are exceptions to the rule.

    Example. Some threads aren't designed for conversation, such as job listings or classifieds. In these cases this really isn't a concern.

    Secondarily, it seems to me that the admins of the forums should be the ones deciding what the rules are on how content is deleted, and how much power to give their users.

    Ideally, a plugin would allow you to set rules, based on the category of the thread. But that's just my two cents.

    If nobody has a solution to this, then I'll build the plugin in the next few weeks.

    Thanks for having this dialog with me and explaining the ethics of the design.

      johnlewissims Some threads aren't designed for conversation, such as job listings or classifieds. In these cases this really isn't a concern.

      I understand that perfectly. In my answer I was guided by my own experiences as the admin of a larger forum where some users asked me to delete discussions with hundreds of posts.

      Ideally, a plugin would allow you to set rules, based on the category of the thread. But that's just my two cents.

      As I mentioned before, the most versatile way to adress your use case would be an extension that creates special user groups depending on circumstances in the forum. In your case, that would be the special user group 'thread starter' that applies to someone who has started a discussion only in that discussion, outside that discussion this user group doesn't apply to him.

      Once you have that, it's easy: Grant the allowance to delete discussions within certain tags to administrators and thread starters.

      There is already an extension which does something similar:

      askvortsov

      Flarum Help Tags

      Now, your users can create discussions in certain tags, but only certain groups can see/reply to posts in those tags. For instance, if you want to have a tag for private support, users could create posts there and manage their own posts, but could not see posts that other users have made. However, designated groups could see and reply to all posts in the tag.

      By starting a discussion the thread starter aquires the permission to view his discussion in a tag, where he otherwise isn't allowed to view discussions.