* github-p/feature/template-engine: (87 commits)
[feature/template-engine] Delete _get_locator function.
[feature/template-engine] Clean up template locator usage in bbcode.
[feature/template-engine] Need to call set_template on template.
[feature/template-engine] Update installer for template engine changes.
[feature/template-engine] Dependency inject locator into template.
[feature/template-engine] Delete useless code from set_template.
[feature/template-engine] Delete no longer used $template_filename property.
[feature/template-engine] Delete useless $template globalization.
[feature/template-engine] Use template engine class in bbcode class.
[feature/template-engine] Corrected an error message in template locator.
[feature/template-engine] Remaining documentation.
[feature/template-engine] More documentation for template class.
[feature/template-engine] Create load_and_render to reduce code duplication.
[feature/template-engine] Get rid of orig_tpl_* in template engine.
[feature/template-engine] Delete $style_name param from locator's set_custom_template.
[feature/template-engine] Add constructor to template locator.
[feature/template-engine] Factor template locator out of template class.
[feature/template-engine] Delete $files_template property.
[feature/template-engine] Rename is_absolute to phpbb_is_absolute.
[feature/template-engine] Test template DEFINE statements across files
...
Conflicts:
.gitignore
phpBB/includes/template.php
It is possible to evade the word filter using control characters.
Seeing as control characters have no practical application in a bulletin
board software, it doesn't do any harm to remove them entirely. That is
what this commit does.
PHPBB3-10240
The origins of orig_tpl_* are not pretty. Please see the following commits
and associated tickets: r9823, r9839, r9847, r10150, r10460.
In short, multiple hacks were required due to template engine reading
inheritance/storedb flags from $user (global) even when the template that
was being looked up or rendered was not the "active style of the
current user".
We no longer store templates in the database, removing half of the problem.
This commit fixes the second half of the problem by deleting
set_template_path function from template locator, and moving that logic
back into the template class' set_template. set_template now calls
set_custom_template, the latter only taking the template path and the
fallback paths as parameters. With this change template locator no longer
uses $user and does not use phpbb root path either.
All logic involving setting the user's "active" template is now
encapsulated in a single template class's function, set_template.
Setting other templates is done via set_custom_template and the caller
is responsible for determining and passing in fallback/inheritance path,
if any.
PHPBB3-9726
Template locator is responsible for maintaining mapping from template
handles to filenames and paths, and provides resolution services
using these mappings.
Template locator is aware of template inheritance and is capable of
checking template file existence on the filesystem.
PHPBB3-9726
This seems to have been used for db storage of templates.
We no longer offer db storage of templates, and thus currenty
$files_template is only written to but not read anywhere.
PHPBB3-9726
The following code can be found in the ACP, when changing a user's
signature:
t: '{ BBCODE_T_HELP }',
The code that uses it and the code that produces it were changed or
removed a while ago, but this code remained. In 2c4c1f9, the accesskey
for the list item button was changed to y from t, explaining the origin of
the redundant code - although it wasn't being used then, either.
This commit also changes the helpline code of "[*]" to y, as the access
key is y, so this makes it more consistent.
PHPBB3-8173