Very nice as always Dusty.
One small thing to the action templates code:
PHP Code:
// Cache All ActionTemplates
if (isset($actiontemplates)) {
foreach ($actiontemplates AS $k => $v) {
$globaltemplates = array_merge($globaltemplates, $actiontemplates[$k]);
}
}
Some hacks haven't include the empty $actiontemplates array in their files... so using
isset means that the script won't dribble a warning back to the output stream when that happens.