History of LibertyFormats
Version 11
LibertyFormats
Data format plugins
LibertyPackage allows developers to specify various formats for data.
A plugin can be defined to allow and process data in a certain format. The formats can be enabled by an administrator on the Liberty>Plugins page.
Available formats:
Common tags:
since some tags do more than just make it easy to edit text, we want to allow the usage of specific tags in any plugin. these include:
Plugins have three standard functions the LibertyEngine attempts to call at various times. You must name these functions using your format_guid as a prefix, followed by three possible endings. For example, if your format is 'bbcode', then your functions declared in liberty/plugins/format.bbcode.php must look like:
It needs to copy the edit field to the 'content_store''data' hash for proper storage. For example:
{CODE(in=>php)}
function bbcode_verify_data( &$pParamHash ) {
$errorMsg = NULL;
$pParamHashcontent_store>'content_store'data>'data' = bbcode_check_syntax( $pParamHashedit>'edit' );
return( $errorMsg );
}
{CODE}
returns an errorMsg if there was a syntax error with the format, else returns null.
A plugin can be defined to allow and process data in a certain format. The formats can be enabled by an administrator on the Liberty>Plugins page.
Available formats:
- Tiki Wiki format is the default.
- HTML format
- PEAR Text_Wiki
Common tags:
since some tags do more than just make it easy to edit text, we want to allow the usage of specific tags in any plugin. these include:
please edit and comment!
- {toc} - creates a table of contents from a given structure.
- {maketoc} - creates a table of contents from the headings within a page.
- ((WikiWords)) - might be useful as well, since these wouldn't be recognised otherwise.
- {rss id=x} - RSS streams
- {cookie} - not entirely sure what this is used for, but it certaily wouldn't be accessible through css.
- {mm} - Freemind mindmap integration. (See link for more details)
Plugins have three standard functions the LibertyEngine attempts to call at various times. You must name these functions using your format_guid as a prefix, followed by three possible endings. For example, if your format is 'bbcode', then your functions declared in liberty/plugins/format.bbcode.php must look like:
bbcode_save_data
called automatically during object call to LibertyContent::store if the LibertyContent object has the format 'bbcode'bbcode_parse_data
called automatically during object call to LibertyContent::load if the LibertyContent object has the format 'bbcode'bbcode_verify_data( &$pParamHash )
The function called automatically during object call to LibertyContent::store method to verify proper syntax if the LibertyContent object has the format 'bbcode'.It needs to copy the edit field to the 'content_store''data' hash for proper storage. For example:
{CODE(in=>php)}
function bbcode_verify_data( &$pParamHash ) {
$errorMsg = NULL;
$pParamHashcontent_store>'content_store'data>'data' = bbcode_check_syntax( $pParamHashedit>'edit' );
return( $errorMsg );
}
{CODE}
returns an errorMsg if there was a syntax error with the format, else returns null.