summaryrefslogtreecommitdiff
path: root/stupid_template_engine.php
Commit message (Collapse)AuthorAge
* Better handling of newslines and whitespacesKevin Chabowski2013-10-25
|
* Adding default values to some properties.Kevin Chabowski2013-10-23
| | | | | | To reduce the ridiculous amount of notices PHP throws when parsing and executing templates (should really be fixed in the future, this is quite embarassing...).
* Removed old parse function and added some documentation.Kevin Chabowski2013-10-21
|
* tidyup_ast improvedKevin Chabowski2013-10-20
|
* Fixed parse_tag and parse_varKevin Chabowski2013-10-20
| | | | Now everything seems to work fine. The output code very noisy, though...
* Added function to tidy up the ASTKevin Chabowski2013-10-20
|
* Fixed tag parameter parsingKevin Chabowski2013-10-20
|
* Some smaller fixes. Parser seems to work now.Kevin Chabowski2013-10-20
| | | | | | * Parser::next fixed * Parser::search_multi fixes (wrong variable, wrong offset added) * fixed shortifopen and shortcompopen overwriting parser result.
* Trying to write a better parser. UNTESTED!Kevin Chabowski2013-10-20
| | | | | | | | | The previous parser relied on some obscure regular expressions which probably could be tricked. The new parser will also allow a more sane definition of the short tags ?{..|..|..} and ~{..|..|..}. Before these were a terrible hack... All in all the goal of the rewrite is to produce a more robust parser.
* Some minor documentation fixesKevin Chabowski2013-02-03
| | | | Grammar and spelling...
* mute_runtime_errors should now work...Kevin Chabowski2012-10-04
|
* improved <ste:escape> and fixed docu.Kevin Chabowski2012-10-04
| | | | | | | | | * <ste:escape> can now also convert line breaks to <br />, if parameter lines is true. * <ste:escape> now uses PHP's htmlspecialchars instead of htmlentities since it only escapes the minimal neccessary chars which should work, if encoding is handled correctly. * Fixed 2 markup bugs in docu/language_definition.html
* set:array_filter addedKevin Chabowski2012-07-02
|
* Added new Tags to the standard library.Kevin Chabowski2012-06-27
| | | | | | | * ste:in_array checks, if a value is in an array * ste:join joins an array with a glue string * ste:split splits a string with a delimiter to an array * ste:array_add adds an element to an array.
* Fixed STECore::get_var_reference bugs.Kevin Chabowski2012-06-27
| | | | | * It did not return a reference. * Some Tags from the standardlib used references in a wrong way.
* evalbool does not longer yield warnings on non-text inputs.Kevin Chabowski2012-06-06
|
* Fixed broken infloop subcompiler.Kevin Chabowski2012-05-22
|
* Removed a temporary debug output.Kevin Chabowski2012-03-01
|
* Introduced new exceptions and fixed a parsing bug.Kevin Chabowski2012-02-29
| | | | | | | | | | | | | | * The exceptions RuntimeError, FatalRuntimeError, CantLoadTemplate and CantSaveTemplate were introduced. * RuntimeErrors are automatically catched by the template engine and will be displayed instead of the tag, unless the parameter $mute_runtime_errors was set to true. * Missing tags will result either in a RuntimeError or, if $fatal_error_on_missing_tag is true, in a FatalRuntimeError. * The mktag-subcompiler and the standard library functions now use the new exceptions. * A bug, that threw away leading TextNodes if a comment or rawtext pseudotag was parsed, is now fixed.
* Fixed some error message bugs.Kevin Chabowski2012-02-21
| | | | | | * Very often the error offsets of parsing errors were too high. * The offset to line translation now works cleaner and should no longer throw PHP errors.
* Added builtin ste:get and fixed a code generation bug.Kevin Chabowski2012-01-15
| | | | | | | | * ste:get allows us to get a variable's content dynamically. * (') was escaped for TextNodes, which resulted to: \' should have been: '
* Win/Mac newlines are now treated correctly at beginning of a TextNode.Kevin Chabowski2012-01-08
|
* ste:comment and ste:rawtext are now handled much cleaner.Kevin Chabowski2012-01-08
|
* Message of a ParseCompileError fixed.Kevin Chabowski2012-01-06
| | | | The template name was not included.
* Fixed a bug regarding tag parameter creation.Kevin Chabowski2011-11-21
| | | | | If a tag parameter was empty, no string was created during trancompilation. Resulted in a PHP parsing error.
* Foreach counter bug fixed.Kevin Chabowski2011-11-12
| | | | The current counter value was not set prorperly.
* Better error messages and a bugfix.Kevin Chabowski2011-11-10
| | | | | | | | | * If there are unbalanced open/close Tags in the template, STE will now tell you exactly which Tag was not closed properly (before: the first opening tag during the current balaning check). * It was not possible to access array fields dynamically, e.g. this: $foo[$bar] was not possible before. Now fixed.
* Fixed *very* stupid bug in ste:for subcompiler.Kevin Chabowski2011-09-29
| | | | | | | The result of this bug: every for-loop, where the step parameter could be evaluated at compile time (i.e. only text) had step = 1. Should have seen this in the example pages...
* ste:date now uses strftimeKevin Chabowski2011-09-29
| | | | | | | Because strftime is more flexible: You can... * ...put arbitrary text inside the format * ...manipulate it by set the locale (i.e. set language-specific month names etc.)
* Fixed documentation and excluded NaturalDocs' project data.Kevin Chabowski2011-09-27
|
* Fixed relative path construction. Again... -.-Kevin Chabowski2011-09-26
|
* Optimized Transcompiler.Kevin Chabowski2011-09-26
| | | | | Output PHP code is now *much* smaller. Should also be faster, because not so many variable assignments are performed.
* Better error messages. Also corrected some minor bugs and typos.Kevin Chabowski2011-09-26
| | | | | | | | * Error messages now include the name of the template and the line where the error occurred. * `instanceof Text` is no longer valid, must be `instanceof TextNode`. * The Precompiler is now a own function. * ste:if subcompiler fixed.
* Fixed bug in relative template path construction.Kevin Chabowski2011-09-24
| | | | | Template "b" was not found, if "a" <ste:load>-ed it and both were in the same, non-root directory. Now fixed.
* Added short syntag for comparison.Kevin Chabowski2011-09-23
| | | | | | ~{a|op|b} Also updated the documentation and made unescape_text() a alias of PHP's stripcslashes().
* Newlines are now treated more XML/HTML-alike.Kevin Chabowski2011-09-22
| | | | | Newlines and following whitespaces at the beginning of a TextNode will be ignored now.
* Added license and readme file.Kevin Chabowski2011-09-21
|
* Added documentation, an example program and fixed some bugs...Kevin Chabowski2011-09-21
|
* Renamed transform.php to stupid_template_engine.phpKevin Chabowski2011-09-18