First events for adding menu items

This commit is contained in:
Evan Prodromou 2009-02-09 08:02:23 -05:00
parent e40d503dfb
commit 05991e2206
1 changed files with 47 additions and 40 deletions

View File

@ -312,42 +312,46 @@ class Action extends HTMLOutputter // lawsuit
*/ */
function showPrimaryNav() function showPrimaryNav()
{ {
$user = common_current_user();
$this->elementStart('dl', array('id' => 'site_nav_global_primary')); $this->elementStart('dl', array('id' => 'site_nav_global_primary'));
$this->element('dt', null, _('Primary site navigation')); $this->element('dt', null, _('Primary site navigation'));
$this->elementStart('dd'); $this->elementStart('dd');
$user = common_current_user();
$this->elementStart('ul', array('class' => 'nav')); $this->elementStart('ul', array('class' => 'nav'));
if ($user) { if (Event::handle('StartPrimaryNav', array($this))) {
$this->menuItem(common_local_url('all', array('nickname' => $user->nickname)), if ($user) {
_('Home'), _('Personal profile and friends timeline'), false, 'nav_home'); $this->menuItem(common_local_url('all', array('nickname' => $user->nickname)),
} _('Home'), _('Personal profile and friends timeline'), false, 'nav_home');
$this->menuItem(common_local_url('peoplesearch'), }
_('Search'), _('Search for people or text'), false, 'nav_search'); $this->menuItem(common_local_url('peoplesearch'),
if ($user) { _('Search'), _('Search for people or text'), false, 'nav_search');
$this->menuItem(common_local_url('profilesettings'), if ($user) {
_('Account'), _('Change your email, avatar, password, profile'), false, 'nav_account'); $this->menuItem(common_local_url('profilesettings'),
_('Account'), _('Change your email, avatar, password, profile'), false, 'nav_account');
if (common_config('xmpp', 'enabled')) { if (common_config('xmpp', 'enabled')) {
$this->menuItem(common_local_url('imsettings'), $this->menuItem(common_local_url('imsettings'),
_('Connect'), _('Connect to IM, SMS, Twitter'), false, 'nav_connect'); _('Connect'), _('Connect to IM, SMS, Twitter'), false, 'nav_connect');
} else {
$this->menuItem(common_local_url('smssettings'),
_('Connect'), _('Connect to SMS, Twitter'), false, 'nav_connect');
}
$this->menuItem(common_local_url('logout'),
_('Logout'), _('Logout from the site'), false, 'nav_logout');
} else { } else {
$this->menuItem(common_local_url('smssettings'), $this->menuItem(common_local_url('login'),
_('Connect'), _('Connect to SMS, Twitter'), false, 'nav_connect'); _('Login'), _('Login to the site'), false, 'nav_login');
if (!common_config('site', 'closed')) {
$this->menuItem(common_local_url('register'),
_('Register'), _('Create an account'), false, 'nav_register');
}
$this->menuItem(common_local_url('openidlogin'),
_('OpenID'), _('Login with OpenID'), false, 'nav_openid');
} }
$this->menuItem(common_local_url('logout'), $this->menuItem(common_local_url('doc', array('title' => 'help')),
_('Logout'), _('Logout from the site'), false, 'nav_logout'); _('Help'), _('Help me!'), false, 'nav_help');
} else { Event::handle('EndPrimaryNav', array($this));
$this->menuItem(common_local_url('login'),
_('Login'), _('Login to the site'), false, 'nav_login');
if (!common_config('site', 'closed')) {
$this->menuItem(common_local_url('register'),
_('Register'), _('Create an account'), false, 'nav_register');
}
$this->menuItem(common_local_url('openidlogin'),
_('OpenID'), _('Login with OpenID'), false, 'nav_openid');
} }
$this->menuItem(common_local_url('doc', array('title' => 'help')),
_('Help'), _('Help me!'), false, 'nav_help');
$this->elementEnd('ul'); $this->elementEnd('ul');
$this->elementEnd('dd'); $this->elementEnd('dd');
$this->elementEnd('dl'); $this->elementEnd('dl');
@ -570,18 +574,21 @@ class Action extends HTMLOutputter // lawsuit
$this->element('dt', null, _('Secondary site navigation')); $this->element('dt', null, _('Secondary site navigation'));
$this->elementStart('dd', null); $this->elementStart('dd', null);
$this->elementStart('ul', array('class' => 'nav')); $this->elementStart('ul', array('class' => 'nav'));
$this->menuItem(common_local_url('doc', array('title' => 'help')), if (Event::handle('StartSecondaryNav', array($this))) {
_('Help')); $this->menuItem(common_local_url('doc', array('title' => 'help')),
$this->menuItem(common_local_url('doc', array('title' => 'about')), _('Help'));
_('About')); $this->menuItem(common_local_url('doc', array('title' => 'about')),
$this->menuItem(common_local_url('doc', array('title' => 'faq')), _('About'));
_('FAQ')); $this->menuItem(common_local_url('doc', array('title' => 'faq')),
$this->menuItem(common_local_url('doc', array('title' => 'privacy')), _('FAQ'));
_('Privacy')); $this->menuItem(common_local_url('doc', array('title' => 'privacy')),
$this->menuItem(common_local_url('doc', array('title' => 'source')), _('Privacy'));
_('Source')); $this->menuItem(common_local_url('doc', array('title' => 'source')),
$this->menuItem(common_local_url('doc', array('title' => 'contact')), _('Source'));
_('Contact')); $this->menuItem(common_local_url('doc', array('title' => 'contact')),
_('Contact'));
Event::handle('EndSecondaryNav', array($this));
}
$this->elementEnd('ul'); $this->elementEnd('ul');
$this->elementEnd('dd'); $this->elementEnd('dd');
$this->elementEnd('dl'); $this->elementEnd('dl');