The BaseTemplate class is concerned with rendering. It should not be concerned with altering data. This will allow us to have alternative rendering layers e.g Mustache and eventually Vue.
For this reason, I propose the following:
- A Skin::getAfterPortlet method is added. This will have a hook SkinAfterPortlet which will take the same parameters as BaseTemplateAfterPortlet. getAfterPortlet calls this method.
- We update extensions to use the new hook instead of the old hook
- BaseTemplate::renderAfterPortlet and Skin::getAfterPortlet and BaseTemplateAfterPortlet are marked as deprecated