I’ve been pondering the way language works as an attribute in community.

Right now there are two attributes to highlight: NSFW and “only moderators can post”.

There is an active pull request to add “only the home instance can allow posting”, sort of a variation on the “only moderators” can post: https://github.com/LemmyNet/lemmy/pull/3889

Which is the 20 source file changes for the new feature.

I envision that new attributes will keep coming up, and I see need for an additonal one to make cleaner the !multipass@bulletintree.com feature.

Observation

A general ‘attributes’ table could be created like the existing language table. And then duplicate the logic in Community Edit for picking the languages associated with a community… except you are picking the attributes associated with a community.

This could possibly cut down on the amount of lemmy_server code changes for each new attribute?

I envision in the future there will be ‘members only can post’ (subscribed only), and variations of NSFW that people want to implement… and it could be done by not having to add new PostgreSQL columns to tables… and just a general scheme to insert a new registered attribute ID…

  • RoundSparrow @ BTOP
    link
    fedilink
    1
    edit-2
    1 year ago

    I could see this attribute picking for various opt-in features… “allow voting plugin posts”, “text-only posts, no url link post”, “posting hours only allowed in daytime North America when mods are around”, “postings only allowed on weekends and holidays!”

    The API structure is already there to inform which of the 184 human languages a community has picked. So that gives a sense of just how many of these attributes can be created.

  • RoundSparrowM
    link
    fedilink
    1
    edit-2
    1 year ago

    This feature is being added to another federated platform, Pixelfed, featured called ‘groups’ that kind of allows attributes. https://lemmy.ml/post/3702181

    The community structure in Lemmy is the only federated entity I can think of that allows multiple editors, moderators can all edit the community or act to lock posts / feature posts / ban members - write activities - and the language settings could be a model for setting individual attributes on the community and mod abilities themselves.