{
    "href": "/post/2005/08/09/savant3-alpha2-released/",
    "relId": "2005/08/09/savant3-alpha2-released",
    "title": "Savant3 alpha2 Released",
    "author": "pmjones",
    "markup": "html",
    "tags": [
        {
            "href": "/tag/php/",
            "relId": "php",
            "title": "PHP",
            "author": null,
            "created": null,
            "updated": [],
            "markup": "markdown"
        }
    ],
    "created": "2005-08-09 22:53:47 UTC",
    "updated": [
        "2005-08-09 22:53:47 UTC"
    ],
    "html": "<p><a href=\"http://phpsavant.com/yawiki/area=Savant3\">Savant3</a> is a PHP5 E_STRICT compliant template system; it is non-compiling by default, which means it uses plain PHP for its template language.  It supports object-oriented plugins and output filters, supports multiple paths for template sources so you can \"theme\" or \"skin\" your application, has built-in support for streams as template sources, and has an automated hook for custom user-defined compilers.</p>\n<p>The change notes for this release (3.0.0alpha2) are:</p>\n<ul>\n<li>This is an ALPHA release; while mostly stable, future releases may break backwards comptability.</li>\n<li>Added methods for escaping output (and for printing of escaped output). As a result, the 'scrub' plugin is deprecated and will be removed from future versions of Savant.  Use $this-&gt;escape() instead of $this-&gt;scrub(), and \"$this-&gt;_()\" instead of \"echo $this-&gt;scrub()\".</li>\n<li>Added new plugin 'html_attribs' to standardize how HTML attributes are added to a tag.</li>\n<li>Added a whole series of 'form_*' plugins, one for each element type (button, checkbox, radio, select, text, and so on).  These plugins generate only the related element with no layout, and have a standard argument order (name, value, attribs).  In addition, they are Solar_Form friendly; if the first argument is an array instead of a string, that array is assumed to be a Solar_Form element array with 'name', 'value', 'attribs', etc. keys.  Having them as separate plugins will make it easier to add new form elements, e.g. 'form_date' and 'form_time' pseudo-elements, a la HTML_QuickForm.</li>\n<li>Added new 'form2' plugin that uses the 'form_*' plugins instead of embedded methods for generating elements.  It mimics the current Savant2-derived 'form' plugin and is almost identical in function.</li>\n<li>With respect to the new 'form_*' and 'form2' plugins, this will be the last release with the current Savant2-derived form plugin.  The new 'form2' plugin, and the 'form_*' plugins, will be separated into their own Savant3_Plugin_Form package so they can be upgraded and maintained separately from the core Savant3 distribution.</li>\n</ul>\n"
}
