Fix invite button for public sites

This commit is contained in:
Zach Copley 2011-07-05 17:27:11 -07:00
parent af0eded741
commit 7150c54a3f
3 changed files with 52 additions and 9 deletions

View File

@ -195,8 +195,21 @@ class AllAction extends ProfileAction
function showSections()
{
$ibs = new InviteButtonSection($this);
$ibs->show();
// Show invite button, as long as site isn't closed, and
// we have a logged in user.
if (!common_config('site', 'closed') && common_logged_in()) {
if (!common_config('site', 'private')) {
$ibs = new InviteButtonSection(
$this,
// TRANS: Button text for inviting more users to the StatusNet instance.
// TRANS: Less business/enterprise-oriented language for public sites.
_m('BUTTON', 'Send invite')
);
} else {
$ibs = new InviteButtonSection($this);
}
$ibs->show();
}
$pop = new PopularNoticeSection($this);
$pop->show();
// $pop = new InboxTagCloudSection($this, $this->user);

View File

@ -227,8 +227,22 @@ class PublicAction extends Action
function showSections()
{
$ibs = new InviteButtonSection($this);
$ibs->show();
// Show invite button, as long as site isn't closed, and
// we have a logged in user.
if (!common_config('site', 'closed') && common_logged_in()) {
if (!common_config('site', 'private')) {
$ibs = new InviteButtonSection(
$this,
// TRANS: Button text for inviting more users to the StatusNet instance.
// TRANS: Less business/enterprise-oriented language for public sites.
_m('BUTTON', 'Send invite')
);
} else {
$ibs = new InviteButtonSection($this);
}
$ibs->show();
}
$pop = new PopularNoticeSection($this);
$pop->show();
$cloud = new PublicTagCloudSection($this);

View File

@ -46,6 +46,19 @@ if (!defined('STATUSNET')) {
*/
class InviteButtonSection extends Section
{
protected $buttonText;
function __construct($out = null, $buttonText = null)
{
$this->out = $out;
if (empty($buttonText)) {
// TRANS: Default button text for inviting more users to the StatusNet instance.
$this->buttonText = _m('BUTTON', 'Invite more colleagues');
} else {
$this->buttonText = $buttonText;
}
}
function showTitle()
{
return false;
@ -53,11 +66,14 @@ class InviteButtonSection extends Section
function showContent()
{
$this->out->element('a',
array('href' => common_local_url('invite'),
'class' => 'invite_button'),
// TRANS: Button text for inviting more users to the StatusNet instance.
_m('BUTTON','Invite more colleagues'));
$this->out->element(
'a',
array(
'href' => common_local_url('invite'),
'class' => 'invite_button'
),
$this->buttonText
);
return false;
}
}