Moslate

 overview 

Moslate is a component for Joomla/Mambo 4.5.1+ (a PHP-based Content Management System) which allows you to create your own template based Mambots. That way you do not need to even think about mambot-parsing or regular expressions to replace simple tags.

These are probably the most likely use-cases for using Moslate:
  • You want to write your own Mambot to insert something into your content item. (activation=Normal)
  • You want to write your own Mambot to filter content (activation=Normal, Every Content, ...)
  • You want to use one of the available Mambots to execute PHP, insert an external script, link to other content items, read database, use logic for clean dynamic output without PHP... (see a List of all)


 download 

download at Joomlacode
com_moslate_0.5.5.zip
samples_export_0.5.5.zip
mambo_export_0.5.5.zip
media_export_0.5.5.zip
logic_export_0.5.5.zip

compatibility_export_0.5.5.zip (this is only here for compatibility with older versions... it is suggested to use it in transition only)

mod_moslate_0.5.5.zip (this is a small module which you can use to execute Moslates, regular Mambots or PHP within a Module)

 installation 

Just use the Component-installer of Joomla/Mambo and you will have a new sub-menu "Moslate".
Moslate needs either that the "Moslate Mambot" is installed and published or that the "Legacy Mambot Includer" (see Site Mambots) is published which is used by the "Legacy Moslate Mambot". If you did not previously install the "Moslate Mambot" (can be found after installation: /administrator/components/com_moslate/mambots/moslate_mambot.zip) then the installation will automatically copy the "Legacy Moslate Mambot" to "/mambots" and publish the "Legacy Mambot Includer". Usually you do not need to do anything beside the regular component installation.
The status will help you to identify any problems.

 uninstall 

To uninstall Moslate you may use the regular component uninstaller. Please note: when you uninstall, all Moslates - including files in the com_moslate-directory - will be removed as well, so you may consider a XML-export first and save the external Moslate-template files (if any and they will not be exported due to no depency by the includes-parameter) you might have created.

If you want to know where Moslate resources are found, here is a list:
  • /administrator/components/com_moslate/*
  • /components/com_moslate/*
  • /mambots/moslate_mambot.php (the "Legacy Moslate Mambot")
  • /mambots/content/moslate_mambot.* (the "Moslate Mambot")
  • database table: #__moslate
  • database entries: #__categories WHERE section='com_moslate'
(Moslate is not a hack and will not modify any Joomla/Mambo core files)

 status 

The status is added since version 0.5 to provide you with useful status information.
There are two status areas:
  • Mambot: to show which Mambot is currently installed (bold line means active). You will find this status during the installation, next to the configuration and for each Moslate.
  • Moslate: shows the status of the currently edited Moslate, you need to save or apply to see any change. It shows you for example how you should be able to call this Moslate within your content item. For this it collects the most relevant configuration and Moslate parameters. (it will usually not show the exact parameter a Moslate expects)
Currently you should see only two different kind of messages: Info (green) and Warning (red). A warning should not be ignored and usually tells you what misconfiguration it may have found. It is for example red, when you have none or both kind of Mambots installed and published.

 documentation 

This component consists of the com_moslate-component for administration and the moslate-mambot.
The intention of this component is to make the creation of mambots as easy as creating the content itself.

In the standard configuration the moslate (template based Mambots) will be interpreted inside the {moslate}...{/moslate} Mambot-Tag. But you may clear the "Mos Tag" in the configuration if you want the whole text to be interpreted. This would change:
{moslate}
{content:link title_alias="somealias"}Link to Content{/content:link}
...
{/moslate}
...
to
{content:link title_alias="somealias"}Link to Content{/content:link}
...

If you are using the Moslates in a few content items only, it would be faster to not use an empty Mos Tag.

In the configuration you may also choose whether you prefer < >, { } or [ ] (or combination of those) for the Moslates.

For more information please see the description of each option by reading the configuration and parameters page as an online reference.

Beside creating your own Moslates, there are already some Moslates available within the separate exports which could be useful for you. To use those you may download and import on of the exports. (Since version 0.5 you do not need to extract the .xml file first, but you may try to extract the .xml file if you are having problems without)

Since version 0.5, each Moslate should be EL (Expression Language) enabled by default. If you are curious what this is you might read one of the logic pages. If you are not using "${" within your parameters you may ignore EL completely. If this is the case you could also turn it off in the configuration.

For more information please read one of the sub pages.

 more reasons 

You know how to create your own Mambots without Moslate... why would I still suggest using Moslate?
Well, mainly because of the parsing done already... especially if you are expecting parameters. Would you handle them correctly? (I saw one not working with spaces for example, or think of quotes inside the parameter-value) What about your tag passed as a parameter or someone wants to show it instead of evaluating it? (in a documentation for example). Sometimes it might be even important in which order the tags are processed. And eventually the tag could be evaluated depending on it's context (in combination with other tags for example).
So while I am sure you could do that too, do you think this should be done in every Mambot? And why would you want to take care of all those situation by yourself while it is already done by Moslate.