From abcfde4d7d8c0cf64c02c134478e2911fcee6e86 Mon Sep 17 00:00:00 2001 From: Siebrand Mazeland Date: Fri, 15 Apr 2011 09:55:09 +0200 Subject: [PATCH] i18n fixes for xgettext issue with contructions like "<<< END_OF_INSTRUCTIONS". Update translator documentation. FIXMEs added. Asking Zach on IRC to have a look at them. --- plugins/Directory/actions/groupdirectory.php | 50 ++++++++++---------- plugins/Directory/lib/sortablegrouplist.php | 8 ++-- 2 files changed, 30 insertions(+), 28 deletions(-) diff --git a/plugins/Directory/actions/groupdirectory.php b/plugins/Directory/actions/groupdirectory.php index 4e8e422bf2..9ae1bede7c 100644 --- a/plugins/Directory/actions/groupdirectory.php +++ b/plugins/Directory/actions/groupdirectory.php @@ -91,17 +91,23 @@ class GroupdirectoryAction extends Action if ($this->filter == 'all') { if ($this->page != 1) { + // TRANS: Title for group directory page. %d is a page number. return(sprintf(_m('Group Directory, page %d'), $this->page)); } + // TRANS: Title for group directory page. return _m('Group directory'); } else if ($this->page == 1) { return sprintf( + // TRANS: Title for group directory page when it is filtered. + // TRANS: %s is the filter string. _m('Group directory - %s'), strtoupper($this->filter) ); } else { return sprintf( - _m('Group directory - %s, page %d'), + // TRANS: Title for group directory page when it is filtered. + // TRANS: %1$s is the filter string, %2$d is a page number. + _m('Group directory - %1$s, page %2$d'), strtoupper($this->filter), $this->page ); @@ -115,19 +121,11 @@ class GroupdirectoryAction extends Action */ function getInstructions() { - // TRANS: Page notice for groups directory. - // TRANS: %%site.name%% is the name of the StatusNet site. - // TRANS: %%action.newgroup%% is a URL. Do not change it. - // TRANS: This message contains Markdown links in the form [link text](link). - $instructions = <<< END_OF_INSTRUCTIONS -After you join a group you can send messages to all other members -using the syntax "!groupname". - -Browse groups, or search for groups on by their name, location or topic. -Separate the terms by spaces; they must be three characters or more. -END_OF_INSTRUCTIONS; - - return _m($instructions); + // TRANS: Page instructions. + return _m("After you join a group you can send messages to all other members\n". + "using the syntax \"!groupname\".\n\n". + "Browse groups, or search for groups on by their name, location or topic.\n". + "Separate the terms by spaces; they must be three characters or more.\n"); } /** @@ -217,7 +215,7 @@ END_OF_INSTRUCTIONS; 'href' => common_local_url('newgroup'), 'class' => 'more'), // TRANS: Link to create a new group on the group list page. - _('Create a new group') + _m('Create a new group') ); $this->elementEnd('p'); } @@ -226,6 +224,7 @@ END_OF_INSTRUCTIONS; $this->elementStart('div', array('id' => 'profile_directory')); + // @todo FIXME: Does "All" need i18n here? $alphaNav = new AlphaNav($this, false, false, array('0-9', 'All')); $alphaNav->show(); @@ -280,12 +279,15 @@ END_OF_INSTRUCTIONS; $this->elementStart('fieldset'); + // TRANS: Fieldset legend. $this->element('legend', null, _m('Search groups')); $this->elementStart('ul', 'form_data'); $this->elementStart('li'); + // TRANS: Field label for input of one or more keywords. $this->input('q', _m('Keyword(s)'), $this->q); + // TRANS: Button text for searching group directory. $this->submit('search', _m('BUTTON','Search')); $this->elementEnd('li'); $this->elementEnd('ul'); @@ -401,19 +403,20 @@ GROUP_QUERY_END; 'p', 'error', sprintf( - _m('No groups starting with %s'), + // TRANS: Empty list message for searching group directory. + // TRANS: %s is the search string. + _m('No groups starting with %s.'), $this->filter ) ); } else { + // TRANS: Empty list message for searching group directory. $this->element('p', 'error', _m('No results.')); - $message = _m(<<elementStart('div', 'help instructions'); $this->raw(common_markup_to_html($message)); $this->elementEnd('div'); @@ -427,5 +430,4 @@ E_O_T $gbm = new GroupsByMembersSection($this); $gbm->show(); } - } diff --git a/plugins/Directory/lib/sortablegrouplist.php b/plugins/Directory/lib/sortablegrouplist.php index 2b51ef5655..4f34a8a897 100644 --- a/plugins/Directory/lib/sortablegrouplist.php +++ b/plugins/Directory/lib/sortablegrouplist.php @@ -1,5 +1,4 @@ out->elementStart('tr'); $tableHeaders = array( + // TRANS: Column header in table for user nickname. 'nickname' => _m('Nickname'), + // TRANS: Column header in table for timestamp when user was created. 'created' => _m('Created') ); foreach ($tableHeaders as $id => $label) { - $attrs = array('id' => $id); $current = (!empty($this->action->sort) && $this->action->sort == $id); @@ -110,6 +109,7 @@ class SortableGroupList extends SortableSubscriptionList $this->out->elementEnd('th'); } + // TRANS: Column header in table for members of a group. $this->out->element('th', array('id' => 'Members'), _m('Members')); $this->out->element('th', array('id' => 'controls'), null); @@ -245,6 +245,7 @@ class SortableGroupListItem extends SortableSubscriptionListItem function showCreatedDate() { $this->out->elementStart('td', 'entry_created'); + // @todo FIXME: Should we provide i18n for timestamps in core? $this->out->raw(date('j M Y', strtotime($this->profile->created))); $this->out->elementEnd('td'); } @@ -267,5 +268,4 @@ class SortableGroupListItem extends SortableSubscriptionListItem } } - } -- 2.39.5