public function Base_Render_Before(&$Sender) { $Session = Gdn::Session(); // Enable theme previewing if ($Session->IsValid()) { $PreviewThemeFolder = $Session->GetPreference('PreviewThemeFolder', ''); // echo 'test'.$PreviewThemeFolder; if ($PreviewThemeFolder != '') { $Sender->Theme = $PreviewThemeFolder; $Sender->AddAsset('Content', $Sender->FetchView('previewtheme', 'settingscontroller', 'garden')); $Sender->AddCssFile('previewtheme.css'); } } // Add Message Modules (if necessary) $MessageCache = Gdn::Config('Garden.Messages.Cache', array()); $Location = $Sender->Application . '/' . substr($Sender->ControllerName, 0, -10) . '/' . $Sender->RequestMethod; if ($Sender->MasterView != 'empty' && in_array('Base', $MessageCache) || InArrayI($Location, $MessageCache)) { $MessageModel = new Gdn_MessageModel(); $MessageData = $MessageModel->GetMessagesForLocation($Location); foreach ($MessageData as $Message) { $MessageModule = new Gdn_MessageModule($Sender, $Message); $Sender->AddModule($MessageModule); } } }
public function Base_Render_Before(&$Sender) { // Add menu items. $Session = Gdn::Session(); if ($Sender->Menu) { $Sender->Menu->AddLink('Dashboard', 'Dashboard', '/garden/settings', array('Garden.Settings.Manage')); $Sender->Menu->AddLink('Dashboard', 'Users', '/user/browse', array('Garden.Users.Add', 'Garden.Users.Edit', 'Garden.Users.Delete')); $Sender->Menu->AddLink('Activity', 'Activity', '/activity'); $Authenticator = Gdn::Authenticator(); if ($Session->IsValid()) { $Sender->Menu->AddLink('SignOut', 'Sign Out', '/entry/leave/{Session_TransientKey}', FALSE, array('class' => 'NonTab')); $Notifications = Gdn::Translate('Notifications'); $CountNotifications = $Session->User->CountNotifications; if (is_numeric($CountNotifications) && $CountNotifications > 0) { $Notifications .= '<span>' . $CountNotifications . '</span>'; } $Sender->Menu->AddLink('User', '{Username}', '/profile/{Username}', array('Garden.SignIn.Allow')); $Sender->Menu->AddLink('User', '\\' . $Notifications, 'profile/notifications/{Username}'); } else { $Sender->Menu->AddLink('Entry', 'Sign In', $Authenticator->SignInUrl()); } } // Enable theme previewing if ($Session->IsValid()) { $PreviewTheme = $Session->GetPreference('PreviewTheme', ''); if ($PreviewTheme != '') { $Sender->Theme = $PreviewTheme; } } // Add Message Modules (if necessary) $MessageCache = Gdn::Config('Garden.Messages.Cache', array()); $Location = $Sender->Application . '/' . substr($Sender->ControllerName, 0, -10) . '/' . $Sender->RequestMethod; if (in_array('Base', $MessageCache) || InArrayI($Location, $MessageCache)) { $MessageModel = new Gdn_MessageModel(); $MessageData = $MessageModel->GetMessagesForLocation($Location); foreach ($MessageData as $Message) { $MessageModule = new Gdn_MessageModule($Sender, $Message); $Sender->AddModule($MessageModule); } } }