resources
Module Identification System
Posted by: Jo on April 11, 2008 | Updated: May 25, 2008 1:54 AM
The identification information for each module is contained in the module's xarversion.php file. The information in xarversion.php is provided by the module developer and used to indicate whether the module has administrator and user functions available, the type of functionality provided by the module, xaraya and php dependencies, and the module's role within the Xaraya framework (core or non-core).
The information is divided into:
1. Required data
Module Reference ID
$modversion['id'] = '555';
The module reference ID is an integer that acts an external and permanent identifier, uniquely identifing the module across Xaraya modules and themes.
Version
$modversion['version'] = '1.0.9';
The version of the module, in three point version notation.
Name
$modversion['name'] = 'authsystem';
A unique short name, preferably lowercase, and composed of characters consistent with directory naming.
Directory
$modversion['directory'] = 'authsystem';
A unique name that identifies the name of the directory where the module is stored and as such should be composed of characters consistent with directory naming.
[Currently directory should be the same as the name until core is updated consistently.]
Display name
$modversion['name'] = 'Authsystem';
Module display name
Description
$modversion['description'] = 'Xaraya default authentication module';
A short description of the module.Admin functionality
$modversion['admin'] = '1';
Boolean indicating whether the author has provided admin functions in the module.
User functionliaty
$modversion['user'] = '1';
Boolean indicating whether the author has provided user functions in the module.
Official
$modversion['official'] = '1';
Boolean indicating whether the module is officially certified or not.
Module Class
$modversion['class'] = 'Core Admin';
The class names are shared by essential 'core' modules, and optional modules.
Core class names are associated with modules that provide key functionality to the Xaraya core and are distributed as part of the Xaraya core distribution. These modules have their class name prefixed by 'Core', are installed by default, and cannot be uninstalled.
All other modules are optional and can be installed or uninstalled at any time.
- [Core] Admin : provides administration functionality
- [Core] User : provide user functionality
- [Core] Authentication : provides authentication functionality
- [Core] Complete : provide both admin and user functionality
- [Core] Utility : provide cross module functionality
- [Core] Miscellaneous : other functionalitly
Module Category Name
$modversion['category'] = 'Core Admin';
The category determines the place and role of the module in the Xaraya framework.
- Global: site wide settings, languages and similar side wide functionality
- Users & Groups:related to roles, users, user management, permissions
- Content: a module providing content such as articles, xarpages, sitecontact
- Miscellaneous: for modules that do not fit in the prior categories (review regularly to determine if a new category is required).
2. Optional Data
Module Dependency
$modversion['dependency'] = array(333,555);
An array of module reference ids belonging to modules on which the current has a dependency.
PHP Extension
$modversion['extensions'] = array('ldap','xsl');
An array of php extensions on which the current has a dependency.
Author
$modversion['author'] = 'Foo Brown, XMod development team';
A string containing the author(s) name.
Contact
$modversion['contact'] = 'http://xarigami.com';
A string containing a contact for the author(s), either email or web address or both.
Credits
$modversion['credits'] = 'xardocs/credits.txt';
A string containing the text or html credits file.
Help
$modversion['help'] = 'xardocs/help.txt';
A string containing the text or html help file.
Changelog
$modversion['changelog'] = 'xardocs/changelog.txt';
A string containing the text or html changelog file.
License
$modversion['license'] = 'xardocs/license.txt';
A string containing the text or html licence under which the module is released.
Theme Variables now also available in modules
Xaraya version
$modversion['xar_version'] = '1.0.0';
A string containing the three point version number of the xaraya version required for the module.
Block Layout compiler version
$modversion['bl_version'] = '1';
A string containing the version number of the Block layout engine used by the module.
Email
$modversion['email'] = 'foo@noname.tld';
Publish date
$modversion['publish_date'] = '20/3/2008';
Homepage
$modversion['homepage'] = 'http://xarigami.com';
Notes:
1. Further information on Xaraya module classifications can be found at RFC-0013 : Module Classification System http://www.xaraya.com/documentation/rfcs/rfc0013.html
2. This specific set of variables is consistent with the main Xaraya requirements, but has been consolidated for efficiency and performance improvements consistent within the Xarigami CoreĀ
Related project : xarigami core
| « prev | next» |