protected function getVarsFromSource($template, $templateSource, $excludeArr = array('$page', '$input', '$params'))
{
// gets all variables in template and assigns them to $templateVars
preg_match_all('/\\$[A-Za-z0-9_]+/', $templateSource, $templateVars);
$templateVars = array_unique($templateVars[0]);
$varsArr = array();
foreach ($templateVars as $var) {
if (!in_array($var, $excludeArr)) {
$varsArr[str_replace("\$", "", $var)] = NULL;
}
}
// ensure vars key is defined in templates array
$template['vars'] = array_get($template, 'vars', array());
return $template['vars'] + $varsArr;
}