Enabling the forum on maple

Hello all,
I’m running the Maple release of OpenEdx (with Tutor, I think) from an AMI on AWS; I’m an experienced SRE but still a novice with OpenEdx. I’ve done

plugins enable forum; config save ; local stop ; images build openedx ; local start -d

and the forums now show up in the UI for the course our content people have built. There’s nothing alarming in local logs --follow forum and doing reloads on the /discussion/forum/ URL in the courseware shows the get requests; everything’s returning 200s and happy.

The problem is there doesn’t seem to be any UI to post to the forums; /discussion/forum/ offers to filter topics and says Discussion Home and then the name of our course, but that’s the limit of it.

Some docs I found suggest this can happen if there are blackout dates set for forums, but we don’t have any configuration like that. Viewing the source for the page shows me an “article class=new-post-article is-hidden” but I’m not entirely certain that’s the relevant UI anyway.

I get the feeling I’m very close to having this working; hoping someone might tell me what I’ve missed.

2 Likes

Every time you enable a plugin, you should run tutor local launch. Or if you are running an older release (<v15.0.0) tutor local quickstart. In the case of the forum there is no need to re-build the openedx image. This might be causing the issue that you are facing, so start by running this command.

Source: GitHub - overhangio/tutor-forum: This plugin adds discussion forums to your Open edX platform, such that students can have conversations about the courses they are following right in your LMS

Thank you Regis for the suggestion; I reran local quickstart from the admin console and it stopped the containers, did some reconfiguration, and started them back up.

Unfortunately, this did not change anything; there is still no UI to post to the discussions.

Can you post a screenshot? cc @ghassan who is a maintainer for the tutor-forum plugin.

Sure. (the account for this is called admin but we see the same with other users as well). The URL ends in
/courses/course-v1-IDENTIFIER/discussion/forum/

I don’t have permission to upload the image to the forum because my account here is relatively new; here is a dropbox Link:

I suspect its a front-end issue where there is error in JS/HTML /courses/course-v1-IDENTIFIER/discussion/forum/ would it be doable to check the output of browser dev console when opening the page.

Another question: is seems you are building your openedx image, is this beacuse you have theme change?, did you change the styling of fourm page?

Please find attached a screenshot of the dev console; nothing looks particularly worrying there unless that source map thing is it.

I think the content people tried changing the theme; If they did I doubt they intended to change the forum page styling (but we’re all very new to OpenEdx so it’s possible that mistakes were made). We’ve never used the forums with OpenEdx before - haven’t even gotten them working yet.

It could be that they change a general/common componenet which is used in multiple pages… again just speculating.

in any case to check my hypothesis, it can be done by using the default Open edX image that come be prebuilt with tutor, snd see if the problem persist, if yes. then it has nothing to do with theme changes

Is there a trivial, non disruptive way to revert to that image?

i think if you haven’t change the docker tag of the open edx image, then it can be done by:

  • Getting rid of the built image
    • remove the built docker open edx image, docker image rm overhangio/openedx:tag double tab and it will suggest version, remove all
    • Rename the openedx built image to any thing in case you wouldn’t want to remove them.
  • repull the openedx image tutor images pull openedx

Note when removing the image you need to stop the container which suppose to be lms/cms and their workers.

I’ve tried a lot of variants on your suggested command (didn’t use the port 3737 interface; used the commandline) and it doesn’t seem to be valid.

root@ip-IP:/home/ubuntu# docker image ls | grep overhangio
overhangio/openedx-mfe           13.0.1             2bffa58b5ca2   12 months ago   78.3MB
overhangio/openedx               13.1.0             bb9569681c41   12 months ago   2.85GB
overhangio/openedx               <none>             2e1fb7aa0665   13 months ago   2.84GB
overhangio/openedx-permissions   13.1.0             b24e3add4256   13 months ago   5.61MB
overhangio/openedx-notes         13.0.0             4b2c60123a65   14 months ago   642MB
overhangio/openedx-forum         13.0.0             f99db731b6d4   14 months ago   547MB

root@ip-IP:/home/ubuntu# docker image rm overhangio/openedx:tag
Error: No such image: overhangio/openedx:tag

root@ip-IP:/home/ubuntu# docker image rm overhangio/openedx
Error: No such image: overhangio/openedx

I might not have accurate instruction, but in any case this the one you need to remove or rename, you can do via id which is 2e1fb7aa0665 so docker rmi 2e1fb7aa0665[1] shall do it

And then pull it again tutor images pull openedx and lastly restart the services/containers


  1. docker rmi | Docker Docs ↩︎

Thanks; I did as you instructed but it didn’t seem to change anything. Still no UI to post to the forums.

If you inspect the DOM, can you find a hidden new-post-btn button? It should be located to the left of the “Search all posts” field. Here is a screenshot:

If there is no hidden element there, it might be because the user does not have the “create_thread” permission. Have you created any particular course role in http:///admin/student/courseaccessrole/ ?

I don’t have a hidden element there; it goes straight from page-header-secondary to forum-search.

I will dig through the user configuration to see if I can find the create_thread permission.

Thanks for the lead.

—Pat

Actually, I found that text but it’s not where yours is in the DOM; there’s a section that looks like this:

<section class="discussion inline-discussion" data-discussion-id="<%- discussionId %>">
    <div class="add_post_btn_container <% if (read_only) { %> is-hidden <% } %>">
        <button class="btn-link new-post-btn"><%- gettext("Add a Post") %></button>
    </div>

    <article class="new-post-article is-hidden"></article>

    <div class="inline-discussion-thread-container">
        <section class="inline-threads" data-discussion-id="<%- discussionId %>">
        </section>

        <div class="inline-thread">
            <div class="forum-nav-bar">
                <button class="btn-link all-posts-btn">
                    <span class="icon fa fa-chevron-prev" aria-hidden="true"></span>
                    <span aria-hidden="true"><%- gettext('All Posts') %></span>
                    <span class="sr-only"><%- gettext('Return to all posts') %></span>
                </button>
            </div>
            <div class="forum-content">
            </div>
        </div>
    </div>
</section>

If I tinker with the DOM, I can get “Add a Post” to show up with the interface I want, but when I do a test post I get “Your request could not be processed” (and the post attempt doesn’t actually seem to even hit the backend).

Did you enable discussion in course advanced settings? i.e. have you followed this doc 17.1. Creating Course Discussions — Building and Running an Open edX Course: Maple Release documentation

I think so.To be sure it’s course-specific, I just made a few more topics for the course in that UI and they show up in the filter topics on the left.

Just throughing a guess, it might be the user you are logged with doesn’t have permission to add/create topic.
The membership can be viewd/edited from instructor tab then sub-tab membership. I don’t have deep knowledge if permission mapping, but I think if you are an admin in the course you should be able to create topic,

I don’t see any UI bits to manage any permission with that name, and I made my admin account an instructor and the UI to do new posts in the discussion forum is not present; it has the same lack of posting UI that my test user has.