Use presence of IM plugins to decide if "IM" options should be available

This commit is contained in:
Craig Andrews 2010-06-16 16:00:54 -04:00
parent 4ee2c12507
commit 1a62d1b493
2 changed files with 8 additions and 4 deletions

View File

@ -185,7 +185,9 @@ class SubscriptionsListItem extends SubscriptionListItem
return;
}
if (!common_config('xmpp', 'enabled') && !common_config('sms', 'enabled')) {
$transports = array();
Event::handle('GetImTransports', array(&$transports));
if (!$transports && !common_config('sms', 'enabled')) {
return;
}
@ -195,7 +197,7 @@ class SubscriptionsListItem extends SubscriptionListItem
'action' => common_local_url('subedit')));
$this->out->hidden('token', common_session_token());
$this->out->hidden('profile', $this->profile->id);
if (common_config('xmpp', 'enabled')) {
if ($transports) {
$attrs = array('name' => 'jabber',
'type' => 'checkbox',
'class' => 'checkbox',
@ -205,7 +207,7 @@ class SubscriptionsListItem extends SubscriptionListItem
}
$this->out->element('input', $attrs);
$this->out->element('label', array('for' => 'jabber-'.$this->profile->id), _('Jabber'));
$this->out->element('label', array('for' => 'jabber-'.$this->profile->id), _('IM'));
} else {
$this->out->hidden('jabber', $sub->jabber);
}

View File

@ -105,7 +105,9 @@ class ConnectSettingsNav extends Widget
# action => array('prompt', 'title')
$menu = array();
if (Event::handle('GetImTransports', array(&$transports))) {
$transports = array();
Event::handle('GetImTransports', array(&$transports));
if ($transports) {
$menu['imsettings'] =
array(_('IM'),
_('Updates by instant messenger (IM)'));