Requirement: Using Mango Blog as the base system, incorporate a forum. Logging into site should auto login to forum. All user management must be done via Mango Blog's user system.

Form: After some research (went for riaforge.org), Galleon Forums was chosen.

Solution: My first issue was.. How do I display Galleon forums in a Mango Blog page? Well.. this, as it turned out, was the easy part. I grabbed a plug-in called addcfcode. This plug-in allows for the inclusion of outside code into a Mango Blog page. With this I was then easily able to get Galleon forums to display in mango blog. Next up, figure out the user system.

First, I had to understand the workings of Mango blog's login and user system. I then had to take that knowledge and compare it to how Galleon Forums user security works. This was, for the most part, not that difficult. The data structure was pretty basic and straight forward. The part that tripped me up was how roles worked. That took a little more time to figure out. Now that I was able to map the security my next goal was to figure out user creation and updating. This was because I was handling all user management via Mango Blog. I looked into the Mango blog code to try and have it cross update users in both the Galleon tables and Mango tables at the same time. This would require me editing the Mango blog core code. I decided against this and took a different approach.

What I ended up doing for user management was database triggers. I added triggers to the base user tables for Mango blog so that any insert/update/ delete would also be reflected in the Galleon tables. This was a new experience for me as I had never written triggers for MySQL before. I have written them for SQL Server so I was familiar with the techniques. Once I got passed the nuances I was good to go. The main part in making this work was to have like roles in both Mango and Galleon. This made the security marry up perfectly from one to the next.

[More]