Is this forum source code available?

I’m just looking for an intact example of message handling for a blog-like system. Does the forum just use the WikiPageComment and CommunicationEvent stuff?

1 Like

Sadly the forum doesn’t have anything to do with Moqui code. The forum is based on discourse

gasp - doesn’t use Moqui!?!?

1 Like

It’s flattering that you think this forum software might have been built on Moqui, ie that someone put in the hundreds or thousands of hours that would be required to build something like Discourse… but no, that is not the case… at least not yet… maybe someday, but not likely as I’m not sure what the point of the effort would be. In other words, I haven’t seen much demand for this sort of functionality among users of Moqui. It may be that forum functionality would be handy for HiveMind or general group-ware sorts of functionality in Moqui, like it might integrate well with other functionality to avoid issues from having a separate system, but even those are only lightly used to date and there seems to be very little need to customize that sort of functionality making it a less valuable candidate for effort in a project like Moqui.

1 Like

Remaking a forum may not seem necessary, but an integration with Moqui would be cool to leverage the functionality of discourse inside of moqui.

1 Like

I saw this thread, and googled a little, there is a infosys version java-discourse on github. GitHub - Infosys/Discourse-Java: Discourse-java is a platform where users can freely discuss on topics they want to, and like-minded people can join in and contribute

I started to fit a php-javascript light forum into moqui. It works so far.

The forum is called mdclub. If you search it on github, u will find it.

The process is:

  1. Find its frontend code. It is in another github repos, a link to it from mdclub github repo is there.

  2. Rewrite the templets for php into ftl format, use some find and replace to do it.

  3. Go to source dir, find main.js. Edit code doing mounting the js app on the document.body to where you want to mount it. Preferably by getelementbyid call get the element. Thats what i have done.

  4. Go to the build subdir in frontend code, change copying dest dir for temples which now include files to where u wanted. And the build script will try to replace the generated js and css filenames written in temple files before copying the template dir. you will find details there.

  5. Go to moqui component, render the mount point div you specified in step 3

  6. In mdclub code, find the sql file which we can use to transform it to entity definition in moqui . And there are some js varibles needed to be rendered on the page. Goto the demo page of the mdclub in the browser, view the source code of webpage, you willl see it. They start with G_ as prefix

  7. The servring process of the forum is like this: There backend php code renders page first and then js loaded, the php rendered part will be replaced by js rendered part, for all. At some point it thinks neccessary, a heref tag will direct browser back to php again.

Currently thats all. Hope this info could help some people looking for forum to embbed in moqui.

The text is edited on my phone. Sorry for typos

2 Likes

Migration done.

Forum is online

Check on https://fatfishbox.com/store/community/forum

1 Like

Interesting, looks visually a bit like PopRestStore but the forum stuff you’ve build is the interesting part. Is this something you are making available under a Free/Open Source license? If so I’d be happy to add it to the add-ons list, currently at Moqui Add-ons and will probably be moved to the wiki along with docs sooner or later. It would also be interesting to see how this process went, migrating an application written in something else to run on Moqui.

1 Like

This is impressive work.

Do you end up using php code in the end result or did you migrate that to javascript? If not, how are you running the php code in a way that talks to moqui? Is it the same process or something different?

Happy to add this small piece of work to the add-on list.

According the licence they are giving, it is open-source and free to modify. The origial piece of work is on Github. https://github.com/zdhxiong/mdclub. The whole mdclub is under mit licence. For the front-end part source code, they dont provide any licence txt. There are 2 parts I migrated: mdclub-theme-material, and mdclub-sdk-js. The sdk-js part is under mit licence as well. There is no licence text provided yet in the theme-material part github repo.

The data model is just a mimic of their data model by using moqui WikiBlog and WikiPage and other resource entities. This part I dont think it will have licence issues.

Currently, this forum addon probably is not general purpose yet. As I customized PopRestStore a little a bit which I dont even remember, and there are some entities and seed data stuff are not listed under this add-on. For clear it up, Of course the main part of this add-on is designed to fit in the moqui framework structure. It is actually a seperated moqui component. it just that it will not probably be able to up and running out of box.

No, I did not using any php code though it is possible according moqui doc as long as we develope a script runner for moqui. I am totally stranger to PHP.

The process started from the front end-code. The original work having a relatively good comments in code and the code itself is easy to read, and the functionality is not that complicated. Make some guesses and let it connect to moqui rest api and watch the error info moqui is giving, and then make some changes in the code.

If you are interested, I can put the migrated code and necessary source somewhere for your reference. Or just leave a email then send it to you. But to be warned that it may not run out of box on your moqui repo as I did some change in my moqui code. But those changes just small things here and there. And besides we have this forum to communicate.

1 Like