The Smarty API for compiling templates don't return any meaningful error
status if a template fails, so we buffer the output and scan it for
error messages instead. If we find one, we return a non-zero error code
to signal the error to the shell or calling process.
Also added more detailed copyright headers.
While PHP seems to be able to handle this construct, PHPStan don't. In
this case there's also no reason for this to be an inner function, so
just move it out to the global scope.
The Smarty class is in the Smarty namespace, and should not be loaded
manually, but through composer. This is taken care of by requiring
`boot.php`. Also make the script slightly more robust as to where it is
invoked from.
Enabled implicit brief descriptions (`JAVADOC_AUTOBRIEF`), and markdown
support (`MARKDOWN_SUPPORT`) for doc blocks. This means that we no
longer need to explicitly inclufe a `@brief` tag in the doc block, the
first full sentence will be regarded as the brief documentation if it's
not explicitly given. Also we can use Markdown formatting in the
comments, which is a bit nicer than the native Doxygen tags.
I also disabled the Doxygen_phpvarfilter, but leave it commented out. It
should not be needed anymore unless somebody is using an ancient version
of doxygen. (Don't do that!)
I also changed the heading a bit, removed "The" from "The Hubzilla", and
added a tagline. Feel free to revise to whatever conforms to the project
norms.