rainphp/raintpl — pull request #44 by eliemichel (2014-08-09 11:56:39+00:00)
Title: Refactor path_replace

Separate function to handle proper URL rewriting.

More easy-to-maintain since there is less code duplication.
More easy to customize (just add a rewriting rule at *one* place,
saying in `rewrite_url`).

Cleanup regexps:
* (?:") = " (not sure)
* "([^"]+?)" = "([^"]+)" = "(.+?)" (and anyway, why a '+' and not a '*' ?)
* Isolate protocol to make it easy to add some of them

Behavior changes:
* `href=@foo@` is not a way to bypass rewriting anymore. You can still use `href = "foo"` (with spaces)
* Leading `#` in full URLs (those beginning with http or so) are trimed. This can be easily fixed.
* New protocols where added: ftp, file, apt, magnet. It is trivial to change it. (see line 658)
* Paths starting with a `/` are prefixed with base_url only, not base_url/template_dir. This is a wanted improvement.