idigital
15.09.2004, 04:09
Well, today marks the day many Mambo developers have been waiting for in anticipation: the release of the preliminary roadmap for the future of Mambo up to 4.6. :D
It was released with a small announcement in this thread (http://forum.mamboserver.com/showthread.php?t=15539) on Mamboserver, in the FreeMind format which is a great tool for such planning. For those of you that don't want to install FreeMind, I've exported it to HTML for discussion here. :cool:
I'd like to begin this discussion with the unadulterated roadmap that we can all read without bias:
...=::::=...
Mambo Project Roadmap
Disclaimer
The following is the proposed Roadmap for Mambo 4.5.x and 4.6. It is likely to change depending on the features implemented in previous versions and other features requested during development and use of previous versions.
4.5.2
Fix bugs reported in 4.5.1
Translator class
Implement single getItemid process with no URL passing
Drop RTE editor from distribution
Merge com_registration and com_user into a single component
Frontend Language Support
Language constants will move into a class and a global variable ($_LANG) rather than many individual defines. This improves performance, security and coding. Backwards compatibility can be supported for this change.
At present the language files in Mambo use the define method e.g.
<?php
DEFINE (‘_ADD_CONTENT’, ‘Click here to add new content’);
?>
By moving to a class based method will provide a speed increase in the general operation of Mambo e.g.
<?php
class mamboLanguageEN extends mamboAbstractLanguage {
/** Common Language variables */
var $ACTIONS = 'Actions';
var $BACK = 'Back';
var $LOGIN = 'Login'; }
$_LANG =& new mamboLanguageEN();
?>
Backend Language Support
Language constants will move into a class and a global variable ($_LANG) rather than many individual defines. This improves performance, security and coding. Backwards compatibility can be supported for this change.
See Frontend Language Support for more information
Add support for Backend language installer
Configuration
Move to .ini style
The current configuration syntax found in configuration.php is not really human readable and is also not broken down into sections so that users can easily understand which part of the configuration file is doing what.
In order to simplify the configuration.php file it is proposed to move to a ‘.ini’ style e.g.
[Database]
database_type = mysql
database_name = mambo
database_user = mambo
database_password = abc123
[Server]
hostname = jarjar
url = http://jarjar.domain.com
The configuration.php file should also be able to be added to by 3rd parties. For example:
[Simpleboard]
Forum = “Test Form”
Style = “default”
Etc…
Moveable administrator directory
Allow for the Administrator directory to be placed in a different location on the same server for security reasons.
Soft Port to ADODB
To facilitate future cross-database support and the the phpGACL library.
RBAC
All of the role based permissions like an author can edit/own can be configured
Add the ability to edit user groups
4.5.3
Fix bugs reported in 4.5.2
Drop Banners Component and module
Banners component and modules. There are better systems are available such as phpAds.
Drop Polls component and module
There is an existing project called PollXT. This project already provides many enhancements over the core poll component/module today.
~ http://mamboforge.net/projects/pollxt/ (http://mamboforge.net/projects/pollxt/)
Web Services
In order to provide a better mechanism for adding content to Mambo outside of administration it is proposed to remove the editing feature from the frontend content component and move it to a web services based external application. This application could be a separate PHP install or a 3rd party Java, Perl, Python etc. application. The gains from this proposed moved will be plenty. Firstly security will be improved as the worries about XSS or SQL injection will be further removed. Performance of the content component will be enhanced as the component will be drastically reduced in size.
4.6
Fixed bugs reported in 4.5.3
Authentication
Develop Mambots to allow for other Authentication models (for example, via LDAP).
Web Services
Allow for the Administrator to connect to a remote site. Components must have the ability to expose certain calls for this protocol.
xHTML compliance (xMambo)
All output will be redesigned to conform to X-Mambo principles (that is, xHTML, more layout styling via css rather than tables). This puts Mambo on track for more easily complying with Accessibility Issues (like tablet screen readers, etc) and for alternative stylesheets for printing, etc.
---ends---
BTW, you can get the Freemind version of the roadmap from here (http://mamboforge.net/docman/view.php/5/99/Mambo.mm), and you can download Freemind from the Sourceforge project here (http://freemind.sourceforge.net/).
It was released with a small announcement in this thread (http://forum.mamboserver.com/showthread.php?t=15539) on Mamboserver, in the FreeMind format which is a great tool for such planning. For those of you that don't want to install FreeMind, I've exported it to HTML for discussion here. :cool:
I'd like to begin this discussion with the unadulterated roadmap that we can all read without bias:
...=::::=...
Mambo Project Roadmap
Disclaimer
The following is the proposed Roadmap for Mambo 4.5.x and 4.6. It is likely to change depending on the features implemented in previous versions and other features requested during development and use of previous versions.
4.5.2
Fix bugs reported in 4.5.1
Translator class
Implement single getItemid process with no URL passing
Drop RTE editor from distribution
Merge com_registration and com_user into a single component
Frontend Language Support
Language constants will move into a class and a global variable ($_LANG) rather than many individual defines. This improves performance, security and coding. Backwards compatibility can be supported for this change.
At present the language files in Mambo use the define method e.g.
<?php
DEFINE (‘_ADD_CONTENT’, ‘Click here to add new content’);
?>
By moving to a class based method will provide a speed increase in the general operation of Mambo e.g.
<?php
class mamboLanguageEN extends mamboAbstractLanguage {
/** Common Language variables */
var $ACTIONS = 'Actions';
var $BACK = 'Back';
var $LOGIN = 'Login'; }
$_LANG =& new mamboLanguageEN();
?>
Backend Language Support
Language constants will move into a class and a global variable ($_LANG) rather than many individual defines. This improves performance, security and coding. Backwards compatibility can be supported for this change.
See Frontend Language Support for more information
Add support for Backend language installer
Configuration
Move to .ini style
The current configuration syntax found in configuration.php is not really human readable and is also not broken down into sections so that users can easily understand which part of the configuration file is doing what.
In order to simplify the configuration.php file it is proposed to move to a ‘.ini’ style e.g.
[Database]
database_type = mysql
database_name = mambo
database_user = mambo
database_password = abc123
[Server]
hostname = jarjar
url = http://jarjar.domain.com
The configuration.php file should also be able to be added to by 3rd parties. For example:
[Simpleboard]
Forum = “Test Form”
Style = “default”
Etc…
Moveable administrator directory
Allow for the Administrator directory to be placed in a different location on the same server for security reasons.
Soft Port to ADODB
To facilitate future cross-database support and the the phpGACL library.
RBAC
All of the role based permissions like an author can edit/own can be configured
Add the ability to edit user groups
4.5.3
Fix bugs reported in 4.5.2
Drop Banners Component and module
Banners component and modules. There are better systems are available such as phpAds.
Drop Polls component and module
There is an existing project called PollXT. This project already provides many enhancements over the core poll component/module today.
~ http://mamboforge.net/projects/pollxt/ (http://mamboforge.net/projects/pollxt/)
Web Services
In order to provide a better mechanism for adding content to Mambo outside of administration it is proposed to remove the editing feature from the frontend content component and move it to a web services based external application. This application could be a separate PHP install or a 3rd party Java, Perl, Python etc. application. The gains from this proposed moved will be plenty. Firstly security will be improved as the worries about XSS or SQL injection will be further removed. Performance of the content component will be enhanced as the component will be drastically reduced in size.
4.6
Fixed bugs reported in 4.5.3
Authentication
Develop Mambots to allow for other Authentication models (for example, via LDAP).
Web Services
Allow for the Administrator to connect to a remote site. Components must have the ability to expose certain calls for this protocol.
xHTML compliance (xMambo)
All output will be redesigned to conform to X-Mambo principles (that is, xHTML, more layout styling via css rather than tables). This puts Mambo on track for more easily complying with Accessibility Issues (like tablet screen readers, etc) and for alternative stylesheets for printing, etc.
---ends---
BTW, you can get the Freemind version of the roadmap from here (http://mamboforge.net/docman/view.php/5/99/Mambo.mm), and you can download Freemind from the Sourceforge project here (http://freemind.sourceforge.net/).