This idea goes very far back right back and here is a suggested implementation and proposal.
What would it do?
Well, it depends how far the integration would go. Two main suggestions fly around.
- Browsing and installation directly from your phpBB install.
- Updates to your phpBB Install.
This would include having some sort of UI inside phpBB to navigate the Customisations Database. Then it would need to download the packages from phpBB and add them ready for the package installer. It would also need to have a system where working with the MOD Manager it would check for updates (using feeds most likely) and when there are updates notify the user. This could also be expanded to other new features for e.g the suggested conflicts and dependencies in MODX 2.0 so that it links you to the MOD or only shows MODs you can use etc.
Option 2 – Integration but no Browsing UI of CDB.
This would include usage of unique identifiers and feed urls (shouldn’t need any APIs) or maybe just a plain version check file (similar to the one used for phpBB) with a few lines of information in. The contribution would have to be downloaded and uploaded but once done so they would be checked for a connection to the CDB, if there isn’t one the user would be prompted to enter the CDB contribution unique identifier and CDB URL. The feed URL/version check file URL and unique identifier would need to be included in the MODX.
phpBB.com becoming too dominant in customisation distribution?
There needs to be the option of being able to either not have CDB integration for MODs in development and MODs not on phpBB.com and being able to use CDB’s from other sites but this shouldn’t be hard with this as its just a different start to the unique identifier and a different feed URL.
Implementation
I’m only really looking at option 2, but option 1 would need some investigating but it would require a lot more work including APIs of sorts. Maybe if option 1 is brought in 3.3 (or 4.0, whichever is earlier) so the integration gets better with time and 3.2 might be a bit early?
Unique Identifers
These will be the golden gates and almost the entire of the integration could be based on these if done correctly.
mod.phpbb_com./customise/db/.unknownbliss.showusertime
Code: Select all
{Contributiontypeasusedforurlrewrite}.{Websitedomain using _ for dots}.{CDBDirectorywhichcanuse/}.{modauthor}.{modnameclean(Used for titania urls)}
URL for Version Check:
http://phpbb.com/customise/db/mod/show_user_time/version.txt
<< All of which is generated from the Unique Identifier except the http:// and the slashes which would be guessed.That itself would give it the URL for the version check. The version check file could look something like this:
mod.phpbbcom.customisedb.unknownbliss.showusertime
1.1.0
Arean
http://www.phpbb.com/customise/db/mod/show_user_time/
http://www.phpbb.com/customise/db/download/id_77079
http://www.phpbb.com/customise/db/view-install/id_53778
Code: Select all
Unique Identifier for Confirmation
Latest Revision Number
Latest Revision Name
Contribution Details Home
Latest Revision Download
Optional MODX File (For preview in the package manager)
This would simply include a link to the version check file in the MODX which would be used and the unique identifier used if it is incorrect or if their isn’t one. I would find this unlikely as it would need to be added after validation which would mean repacking each and every MOD.
As a feed
It could be done as a feed and list the last 10 approved revisions which could allow for further functionality. It could include the information in the version check file for each revision.
Not just MODs
This mainly depends on whether the MOD manager would expand to be a package manager and be extended to include language and styles management which is probably unlikely until 3.3 (or phpBB4, whichever is first) at a guess. Official tools, seeing as they aren’t all designed to go into phpBB I would very much doubt it and won’t even mention them again.
Styles can have a unique identifier as can language packs. For styles they can include the unique identifier inside the style.cfg. Languages I don’t know much about but Mael Soucaze could advise on this? Bridges use MODX so that is that sorted on where to put the unique notifer but this would need to be included in the MOD Manager (don’t know if this is the case for not but if someone could shed some light, please do.) as they currently don’t have an ACP module like styles and language packs do. Custom BBcodes I have no idea how this could be integrated but then again it hasn’t even been implemented into the CDB yet and I think having these in this integration might be overkill.
Just a note, this was written for 3.2, then changed for 3.1 and now its been changed back to 3.2 so there may be some things let over from that.
This would be good going in with the MOD Installer with 3.1 but I doubt there will be enough time to do so so I'm looking at 3.2 for this mainly.
In a Nutshell
A version check url using unique identifiers if a feed url is not avaliable.
Warnings on ACP home for not up to date modifications.
List of MODs to update in MOD Manager
Details of update on the details page of each MOD including download link and information link etc.
Possible expansion at a later date for other contribution types or remote DB browsing and direct installing.
Dependencies
- MOD Manager
- Titania
- MOD 2.0