XOOPS 2.3.2 is Released

XOOPS 2.3.2 has officially been released. This update contains a critical security fix (XSS exploit). For more information on XOOPS version 2.3.2, read the official XOOPS version 2.3.2 documentation.
Download the latest versions of XOOPS: XOOPS 2.3.2

XOOPS Login Issue: 2.0.17 and 2.0.18

After updating XOOPS to 2.0.17 a few months back, I ran into a problem with certain users not able to see group specific blocks after updating. The users would authenticate, but then not see any content that was “member only”. I was hopeful this would have been resolved with 2.0.18 but it still remains an issue. The problem:

The solution:
In your XOOPS directory: /kernel/session.php

change:
var $enableRegenerateId = true;
to:
var $enableRegenerateId = false;

(Original fix documentation for 2.0.17: http://www.xoops.org/modules/newbb/viewtopic.php?topic_id=62411&forum=2&post_id=281576

How to Clone the SmartSection Module for XOOPS.

I was recently asked how to clone the SmartSection module for XOOPS, so I thought I would document the process here on my blog. (XOOPS is another favorite CMS I use for my clients when they want a CMS)

  1. Download SmartSection (http://smartfactory.ca/
  2. Duplicate the smartsection module folder (this is the folder with all the module files in it – the folder you will put into the “modules” directory within your XOOPS install)
  3. Now it is time to do a few “find and replaces” with your favorite text editor. (I prefer TextWrangler) For the sake of an example, I am going to name my cloned version of the SmartSection module SmartJappler. Within the entire duplicated folder, find and replace every instance of the following with the name of your newly cloned module. **Make sure you are replacing every instance in all the files**
    1. Find: smartsection and replace it with smartjappler (your module name here)
    2. Find: SMARTSECTION and replace it with SMARTJAPPLER (your module name here)
    3. Find: SmartSection and replace it with SmartJappler (your module name here)
    4. Find: Smart Section and replace it with Smart Jappler (your module name here)
    5. Find: SSECTION and replace it with SJAPPLER (your module name here)
    6. Find: Smartsection and replace it with Smartjappler (your module name here)
  4. You also need to change the template file names in your duplicated folder to match your cloned module name. In the SmartJappler (or whatever you renamed the module) find the /templates/ folder and rename all files that have “smartsection” in the file name to “smartjappler” (or whatever you renamed the module). **Make sure all files in /templates/ and /templates/blocks/ have the new file names. (ex. smartsection_rss.html would be renamed to smartjappler.html)
  5. Last but not least, you will need to do one more find and replace within one file: /sql/mysql.sql. Again, with your favorite text editor, find all instances of: smartsection_ and replace it with the name of your module. In my case I would replace it with smartjappler_.

Once you have completed these steps, upload the duplicated folder (now your cloned module) and install it though the XOOPS Admin panel. Questions, comments? Let me know!