public function base_beforeFetchMaster_handler($sender)
{
$session = Gdn::session();
if (!$session->isValid()) {
return;
}
if (isMobile()) {
$theme = htmlspecialchars($session->getPreference('PreviewMobileThemeFolder', ''));
} else {
$theme = htmlspecialchars($session->getPreference('PreviewThemeFolder', ''));
}
$isDefaultMaster = $sender->MasterView == 'default' || $sender->MasterView == '';
if ($theme != '' && $isDefaultMaster) {
$htmlFile = paths(PATH_THEMES, $theme, 'views', 'default.master.tpl');
if (file_exists($htmlFile)) {
$sender->EventArguments['MasterViewPath'] = $htmlFile;
} else {
// for default theme
$sender->EventArguments['MasterViewPath'] = $sender->fetchViewLocation('default.master', '', 'dashboard');
}
}
}