1
The "Duplicatable" architecture for XOOPS 2.x modules was developed by the famous
GiJoe from Japan, author of many fantastic XOOPS modules, and mostly known for his security expertise (he developed the Protector module).
He defined the D3 series as:
Quote:
* Requirements
(1) XOOPS 2.x compatible
(2) Dirname can be /^[0-9a-zA-Z_-]+$/
(3) Almost all logic placed inside XOOPS_TRUST_PATH
(4) Can be duplicated just by copy into ROOT/modules/. (No rewriting the source code)
(5) No logics in XOOPS_TRUST_PATH are duplicated.
* Recommendation
- Place ROOT/modules/(dirname)/mytrustdirname.php
- All tables are created as (prefix)_(dirname)_(table)
- All templates are created as (dirname)_(tplfile) into DB
- All Blocks are rendered by 'module' templates not by 'block' templates
- Almost all blocks can be cloned (just set 'can_clone')
- can use D3Language Manager
- can use D3Comment Integration
Most of the D3 modules for XOOPS have been developed in Japan, and while in the recent years they focused more on the development for XoopsCube, several of these modules are still working on the current version of XOOPS.
Since they are all over the place on GitHub in various repositories, I have forked them into one specific location, so it will be easier to find them:
https://github.com/XoopsModulesD3I hope, we can work with our XOOPS friends in Japan to keep these modules compatible between XOOPS and XoopsCube, and to learn from each other. There are definitely some very good ideas there, and it would be nice to leverage them.
So go ahead and check them out, fork them, and see if you can make them work on XOOPS 2.5.8+