Discussion Lists

MIT license Latest Stable Version Total Downloads Donate

This extension allows creating public and private lists of discussions.

Public lists can further be configured as series which will be shown as a navigation menu on discussions and blog posts.

Private lists act as a bookmark feature and can be accessed from a user profile.

Lists can be ordered by date or manually. Manually ordered lists are limited to 50 entries maximum, to avoid any issue related to pagination.



Installation

This extension will automatically install Flamarkt Backoffice, which you will need to enable before you can enable this extension. You don't need to worry about the backoffice admin panel, it's not used. The backoffice is only installed to get access to some of its UI components.

composer require clarkwinkelmann/flarum-ext-discussion-lists

Support

This extension is under minimal maintenance.

It was developed for a client and released as open-source for the benefit of the community.
I might publish simple bugfixes or compatibility updates for free.

You can contact me to sponsor additional features or updates.

Support is offered on a "best effort" basis through the Flarum community thread.

Sponsors: puppydreamwork

Links

    fakruzaruret you mean the number of lists created by a user or the number of discussions that can be added to a single list? Neither are possible in current version (except for the hard-coded limit of 50 discussions when ordering is set to manual). There's also no way to limit how many series a single discussion can be part of.

    There are however a number of permissions that control who can create what kind of lists.

      a month later

      very nice extension! just a small issue (but may not worth fixing), the button text color under fof night mode might not be readable. But anyway, thanks for the nice work!

      4 months later

      Hi,

      I just installed this plugin, I made a list public but I cannot see it available in my navigation panel, what am I missing or doing wrong?

        Jinxy make sure you gave your user the permission to create Series and set the list to a Public Series. I don't remember exactly how the UI for that looks like but there should be a permission at the bottom of the extension page in the admin panel and additional options will appear when creating/editing a list of the current user has the required permissions.

        If you are referring to seeing another user's public list on their profile, there should also be a permission for who can see public lists from other users.

        2 years later

        The private list seems not display properly after upgrading to 1.8.8.
        not sure if it's 1.8.8 related

        The pages go blank in private list, but data still exists in database. I tried disabling some extensions to find if there is any conflicts but it doesn't seem so.

        console errors:

        2024-11-02-01.47.32-ba8892e4e1c146179d5462a34336a0b3.png
        2024-11-02-01.47.43-84418873745bbc835f22415da07e7557.png

        Flarum info:

        Flarum core: 1.8.8
        PHP version: 8.2.24
        MySQL version: 8.0.35
        Loaded extensions: Core, date, libxml, openssl, pcre, sqlite3, zlib, bcmath, ctype, curl, dom, filter, ftp, gd, gettext, hash, iconv, intl, json, mbstring, SPL, session, pcntl, standard, mysqlnd, PDO, pdo_mysql, pdo_sqlite, Phar, posix, random, Reflection, mysqli, shmop, SimpleXML, soap, sockets, sodium, sysvsem, tokenizer, xml, xmlreader, xmlwriter, zip, fileinfo, igbinary, redis, exif, imagick, gmp, Zend OPcache
        +------------------------------------------+----------+--------+
        | Flarum Extensions | | |
        +------------------------------------------+----------+--------+
        | ID | Version | Commit |
        +------------------------------------------+----------+--------+
        | flarum-flags | v1.8.1 | |
        | flarum-likes | v1.8.1 | |
        | flarum-tags | v1.8.2 | |
        | flarum-approval | v1.8.2 | |
        | antoinefr-money | v1.3.1 | |
        | flarum-mentions | v1.8.4 | |
        | flarum-subscriptions | v1.8.1 | |
        | flarum-suspend | v1.8.3 | |
        | flarum-lock | v1.8.1 | |
        | xypp-store | v1.1.5 | |
        | flarum-sticky | v1.8.1 | |
        | flarum-bbcode | v1.8.0 | |
        | fof-follow-tags | 1.2.6 | |
        | flamarkt-backoffice | 0.1.4 | |
        | fof-byobu | 1.3.8 | |
        | v17development-blog | v0.6.5 | |
        | afrux-forum-widgets-core | v0.1.7 | |
        | ziiven-raffle-ticket | v1.1.5 | |
        | ziiven-money-leaderboard | v0.1.7 | |
        | ziiven-dice-game | dev-main | |
        | ziiven-decoration-store | dev-main | |
        | zerosonesfun-member | 1.2 | |
        | zerosonesfun-bbcode-button | 1.1.3 | |
        | yannisme-oxotheme | 2.1.8 | |
        | xypp-store-group | v1.0.2 | |
        | xypp-sticky-card | v1.1.0 | |
        | v17development-seo | v2.0.3 | |
        | the-turk-stickiest | 3.0.1 | |
        | sycho-private-facade | v0.1.16 | |
        | nodeloc-split-view | 1.0.0 | |
        | nodeloc-my-emoji | dev-main | |
        | nodeloc-dislikes | 1.0.1 | |
        | nearata-maintenance-mode | 1.0.0 | |
        | nearata-internal-links-noreload | v2.2.0 | |
        | nearata-cakeday | v2.2.0 | |
        | matteociaroni-public-suspensions | v1.0.0 | |
        | littlecxm-reply-to-see | 1.0.2 | |
        | kilowhat-rich-embeds | 1.3.1 | |
        | justoverclock-feedback | 0.1.9 | |
        | ianm-follow-users | 1.4.9 | |
        | ganuonglachanh-sonic | 0.1.9 | |
        | fof-user-bio | 1.4.0 | |
        | fof-upload | 1.5.5 | |
        | fof-split | 1.1.1 | |
        | fof-sitemap | 2.2.1 | |
        | fof-recaptcha | 1.3.4 | |
        | fof-profile-image-crop | 1.1.6 | |
        | fof-pretty-mail | 1.1.2 | |
        | fof-polls | 2.2.8 | |
        | fof-nightmode | 1.6.0 | |
        | fof-masquerade | 2.1.5 | |
        | fof-links | 1.3.0 | |
        | fof-linguist | 1.1.2 | |
        | fof-frontpage | 1.2.0 | |
        | fof-formatting | 1.0.3 | |
        | fof-drafts | 1.2.11 | |
        | fof-doorman | 1.1.5 | |
        | fof-default-user-preferences | 1.2.1 | |
        | flarumite-simple-discussion-views | 1.2.4 | |
        | flarum-statistics | v1.8.1 | |
        | flarum-nicknames | v1.8.1 | |
        | flarum-markdown | v1.8.1 | |
        | flarum-lang-russian | 1.37.0 | |
        | flarum-lang-english | v1.8.0 | |
        | flarum-lang-chinese-simplified | v1.4.2 | |
        | flarum-extension-manager | v1.0.4 | |
        | flamarkt-taxonomies | 0.1.9 | |
        | datlechin-usercard-uid | v0.1.1 | |
        | datlechin-scroll-buttons | v1.1.0 | |
        | datlechin-copy-links | v1.0.1 | |
        | datlechin-add-like-controls | v1.0.6 | |
        | club-1-cross-references | v1.1.1 | |
        | clarkwinkelmann-see-past-first-post | 1.3.1 | |
        | clarkwinkelmann-post-stream-search | 1.1.0 | |
        | clarkwinkelmann-post-bookmarks | 1.0.0 | |
        | clarkwinkelmann-money-to-all | 1.0.0 | |
        | clarkwinkelmann-money-rewards | 1.0.0 | |
        | clarkwinkelmann-group-invitation | 1.0.2 | |
        | clarkwinkelmann-formatted-banner | 1.0.0 | |
        | clarkwinkelmann-discussion-open-position | 1.1.0 | |
        | clarkwinkelmann-discussion-lists | 1.0.0 | |
        | clarkwinkelmann-catch-the-fish | 1.1.4 | |
        | clarkwinkelmann-author-change | 1.0.3 | |
        | blomstra-realtime | 0.3.2 | |
        | blomstra-no-email-notifications | 0.1.0 | |
        | blomstra-fontawesome | 0.1.5 | |
        | blomstra-cache-assets | 0.5 | |
        | askvortsov-pwa | v3.4.1 | |
        | askvortsov-moderator-warnings | v0.6.3 | |
        | askvortsov-discussion-templates | v0.8.3 | |
        | askvortsov-categories | v3.1.0 | |
        | annonny-watermark | dev-main | |
        | annonny-gpt-bot | dev-main | |
        | annonny-date-filter | dev-main | |
        | afrux-news-widget | v0.1.1 | |
        | afrux-forum-stats-widget | v0.1.1 | |
        | acpl-mobile-tab | 1.4.4

        And there is no error reported from Flarum.debug mode.

        The public list with discussions only created by the user still display correctly.

          Version 1.0.1

          • Fixed compatibility with Flarum 1.8.6+, improved compatibility with other extensions
          • Fixed owner profile link not loading when accessing list from discussion

          This version is only compatible with Flarum 1.8.6 and above.


          Teddan this should fix the issue. Thanks for the report!

          4 months later

          Some feature suggestions (interested in sponsoring alongside others if people are intrested), very open to suggestions, can work on some mock ups if that would help?

          The aim would be to fill in so UI gaps and expand to include collaboration?

          1. Expanded settings from the list edit dialog etc
            a. add a icon (same as with groups) with a picker tool? likely an extension in itself, proposed
            b. add a colour (same as with groups)
            c. list description (with support for formatting the same as fof/user-bio)
            d. customise parent slug (/lists is desirable)
            e. limit icon selection (allow list/deny list?)

          2. User collaboration (think using it as a task list) (ah, not a small I admit, likely trying to turn it into something the extension is not)
            a. invite users/groups to collaborate (think fof/byobu)
            b. collaborator permissions, basic might be pre defined roles of owner (delete, add/remove users/groups), editor (can edit settings and delete discussions) and contributor (can add discussions). Advanced would be ones users can define permissions (scope creep)
            c. who did what activity shown, notifications of changes subscribe
            d. note when discussion is added to list (scope creep)
            e. except submissions (contributor but without being added) option on a per list level (only for public lists)
            f. (scope creep so very much nice to have) Template list (that can be assigned per group), eg a todo' list for all users with predefined collaborator permissions

          3. Improved display of lists
            a. on the profile sub page display the lists in a similar format as a list of discussions with the profile image is the icon [1a] on a circler coloured [1b] bg (think the default group circles on avatars in discussions) or the icon [1a] the colour [1b] set to the left of the list title with the description [1c] below (think a sticky discussion with the preview)
            b. on individual list pages add the description [1c] under the Hero-author
            c. add additional collaborators [2] to the Hero-author
            d. add the notes [2d] under each discussions with ... edit function (scope creep)

          4. Expanded permissions
            a. can use formatting in descriptions [1c] depended on group (global)
            b. can add note when adding discussion [2d] (scope creep)
            c. bypass icon limit selection [1e]

            dav1d it can definitely be done.

            Even if you were interested to make such a sponsored update this open-source, I'd probably make this into a separate extension, because the new extension would be a lot more complex. When thinking of things like the future Flarum 2.0 migration, the current extension will be relatively easy to migrate and test. The proposed extension would likely require more careful testing and therefore slow down any upgrade to the simple extension. Parts of the existing extension could definitely be re-used as a starting point.

            It's a bit difficult to give an estimate on the whole proposal. The collaboration aspect is the most complex, as it requires a lot more code, database changes and UI components. There are also probably more details that would need discussing for the exact behavior and settings for those behaviors.

            Feel free to reach out via email and I can see how long this could take and whether I have some time available for it.