Components - Docus



The menus I can just wipe out and build in Discourse. We lose the gather button which is a pain, bit we can design around that.

The forum supports submenus, and the plan is to rebuild it in React soonish anyway. I’m less sure about how each site will work in an iframe. Is there a way to test that to know of.

The multiple websites is cool. We can use that for our projects like brighter tomorrow map, so they are still part of the whole, but also stags alone. The new site allows us to define a forum category as the website pages home forum, right?


From a wider point of view, I think what you’ve built now will be much more interesting to other projects as there not much nesting around needed, it is just plug and play


Oh, we’ll need to change the forum to the domain and the current Focallocal. Org to/map, right?


There should be no problem with iframes. You can check with this tool.

Yes, it does.

Yes, you’ll need to change the forum to the domain. Regarding your websites, you can put them anywhere, as their urls won’t be seen by users. For example, you can put them on


Checking with the tool, i ran into an issue in our Action Center.

We link users to Trello boards for micro-volunteering tasks, which they can join to begin working on projects. As an example, users will click ‘missions’ and be redirected here:

That will be blocked in an iframe. There is an idea to rebuild in-house using Wekan, but it is lacking some important features. The main one being users can’t join a board without being invited, which breaks our model, so that decision and possible change is at minimum 6 months away.

How can we allow users to escape the iframe and join Trello boards… or bypass the block?


The same for Facebook. Users will often want to add links to social media sites into their posted pages. We would need an escape option for some external links


@syl i spotted what i think is a bug.

on this page i’ve manually moved it into a single category as ‘hidden’ isn’t user friendly on this page. It is still tagged with the dcs-bal code and being called correctly - but the numerical notification ignores it now.

it should display ‘4’:

i suspect this means that the number count is somehow linked to the category rather than the tag.


I can’t seem to reconnect them.


i can see the ‘escape’ issue coming up often as users find more and more sites they want to be able to link to without being blocked. i suggest having a list of included domains in the admin section. Any other links to other domains clicked and users will instead be redirected outside of Docus.

Or maybe both a list of excluded domains and included domains. So users have the flexibility to use Docus to comment around the web (your original vision), or lock it just to their site (which is what users like us would want).


@syl is this change in @PJSmooth’s code, still needed if we switch to V2.

Also what are your thoughts on escaping the iframe so users can visit FB, Trello, and other iframe blocking sites?


This should work. Would you please give me a link to the page showing the issue?


Most badges on this page show a wrong count. I think there’s an issue in the code that assigns ids to balloons (here) and/or in the code that retrieves the counter of a balloon (here).


No, it will be different in v2. But consider that switching to v2 might take a month, so you might prefer fixing this in v1 now.

This should work as-is. Please provide a page where it doesn’t, so that I can investigate.


Using tool you posted above. I go to and click ‘missions’ on one of the cards. This doesn’t work in an iframe as Trello has an iframe killer script. The same when we link to a Facebook profile or event.

Expected behaviour would be either the main Discourse window redirects to Trello/fb. Or that the link opens in a new tab which isn’t inside the iframe


It doesn’t work because doesn’t use Docuss :slight_smile: Is there a page using Docuss that shows a problem?


I was reviewing/exploring V2. It’ll be putting our sites inside an iframe in discourse.

So on the maps, and other areas of the site, inside the Docus iframe. When users click a link to trello, or Facebook, how does the iframe handle that?


Docuss will open external links at the top level window, so that external links are never opened in the iframe.

You can see this behavior at the bottom of this page. See the last sentence: “This is an anchor link. This is an external link. This is a Discourse link.” You can click on any of those to see what happens.


Yeah - the issue is that I wrote the code up to find tags by taking the label as a prefix, not realising there would be duplications.

The first series of balloons is labelled bal so this defaulted to the first non-zero tag with bal prefix (bal5 in this case). Second series of badges were all labelled bal1, so the function went for bal12.

D’oh - but this will be an easy fix. Thanks for pointing out.


That looks fantastic!


@syl we have two Devs working on an app for our build. Will the switch to using Docus as the main site have a significant impact on their build?

If so would you mind discussing/advising how you believe they should proceed?