]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - locale/pt/LC_MESSAGES/statusnet.po
Localisation updates from http://translatewiki.net.
[quix0rs-gnu-social.git] / locale / pt / LC_MESSAGES / statusnet.po
index ed66ddfdfed1efa61e81f4a53a06e29246fb9a45..af8af1c4e5f0430428418a9ae1814f556daefea8 100644 (file)
@@ -1,6 +1,8 @@
 # Translation of StatusNet - Core to Portuguese (Português)
-# Expored from translatewiki.net
+# Exported from translatewiki.net
 #
+# Author: Aracnus
+# Author: Brion
 # Author: Gallaecio
 # Author: Giro720
 # Author: Hamilton Abreu
@@ -13,155 +15,203 @@ msgid ""
 msgstr ""
 "Project-Id-Version: StatusNet - Core\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-10-09 14:04+0000\n"
-"PO-Revision-Date: 2010-10-09 14:07:03+0000\n"
+"POT-Creation-Date: 2011-02-14 16:00+0000\n"
+"PO-Revision-Date: 2011-02-14 16:06:34+0000\n"
 "Language-Team: Portuguese <http://translatewiki.net/wiki/Portal:pt>\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r74529); Translate extension (2010-09-17)\n"
+"X-Generator: MediaWiki 1.18alpha (r82114); Translate extension (2011-02-01)\n"
 "X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
 "X-Language-Code: pt\n"
 "X-Message-Group: #out-statusnet-core\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-POT-Import-Date: 2010-10-04 23:06:40+0000\n"
+"X-POT-Import-Date: 2011-02-03 00:48:08+0000\n"
 
-#. TRANS: Page title
+#. TRANS: Page title for Access admin panel that allows configuring site access.
 #. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:363
+#: actions/accessadminpanel.php:53 lib/adminpanelaction.php:363
 msgid "Access"
 msgstr "Acesso"
 
-#. TRANS: Page notice
-#: actions/accessadminpanel.php:67
+#. TRANS: Page notice.
+#: actions/accessadminpanel.php:64
 msgid "Site access settings"
 msgstr "Configurações de acesso ao site"
 
 #. TRANS: Form legend for registration form.
-#: actions/accessadminpanel.php:161
+#: actions/accessadminpanel.php:151
 msgid "Registration"
 msgstr "Registo"
 
-#. TRANS: Checkbox instructions for admin setting "Private"
-#: actions/accessadminpanel.php:165
+#. TRANS: Checkbox instructions for admin setting "Private".
+#: actions/accessadminpanel.php:155
 msgid "Prohibit anonymous users (not logged in) from viewing site?"
 msgstr "Proibir utilizadores anónimos (sem sessão iniciada) de ver o site?"
 
 #. TRANS: Checkbox label for prohibiting anonymous users from viewing site.
-#: actions/accessadminpanel.php:167
+#: actions/accessadminpanel.php:157
 msgctxt "LABEL"
 msgid "Private"
 msgstr "Privado"
 
-#. TRANS: Checkbox instructions for admin setting "Invite only"
-#: actions/accessadminpanel.php:174
+#. TRANS: Checkbox instructions for admin setting "Invite only".
+#: actions/accessadminpanel.php:164
 msgid "Make registration invitation only."
 msgstr "Permitir o registo só a convidados."
 
 #. TRANS: Checkbox label for configuring site as invite only.
-#: actions/accessadminpanel.php:176
+#: actions/accessadminpanel.php:166
 msgid "Invite only"
 msgstr "Só por convite"
 
-#. TRANS: Checkbox instructions for admin setting "Closed" (no new registrations)
-#: actions/accessadminpanel.php:183
+#. TRANS: Checkbox instructions for admin setting "Closed" (no new registrations).
+#: actions/accessadminpanel.php:173
 msgid "Disable new registrations."
 msgstr "Impossibilitar registos novos."
 
 #. TRANS: Checkbox label for disabling new user registrations.
-#: actions/accessadminpanel.php:185
+#: actions/accessadminpanel.php:175
 msgid "Closed"
 msgstr "Fechado"
 
-#. TRANS: Title / tooltip for button to save access settings in site admin panel
-#: actions/accessadminpanel.php:202
+#. TRANS: Title for button to save access settings in site admin panel.
+#: actions/accessadminpanel.php:191
 msgid "Save access settings"
 msgstr "Gravar configurações de acesso"
 
+#. TRANS: Tooltip for button to save access settings in site admin panel.
+#. TRANS: Button text for saving theme settings.
 #. TRANS: Button label to save e-mail preferences.
-#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save Instant Messaging preferences.
+#. TRANS: Button text for saving "Other settings" in profile.
+#. TRANS: Button text to store form data in the Paths admin panel.
+#. TRANS: Button to save input in profile settings.
+#. TRANS: Button text for saving site notice in admin panel.
 #. TRANS: Button label to save SMS preferences.
+#. TRANS: Save button for settings for a profile in a subscriptions list.
+#. TRANS: Button text to save user settings in user admin panel.
 #. TRANS: Button label in the "Edit application" form.
-#: actions/accessadminpanel.php:203 actions/emailsettings.php:228
-#: actions/imsettings.php:187 actions/smssettings.php:209
-#: lib/applicationeditform.php:355
+#. TRANS: Button text on profile design page to save settings.
+#: actions/accessadminpanel.php:193 actions/designadminpanel.php:732
+#: actions/emailsettings.php:250 actions/imsettings.php:183
+#: actions/othersettings.php:136 actions/pathsadminpanel.php:512
+#: actions/profilesettings.php:197 actions/sitenoticeadminpanel.php:197
+#: actions/smssettings.php:205 actions/subscriptions.php:259
+#: actions/useradminpanel.php:298 lib/applicationeditform.php:355
+#: lib/designsettings.php:270 lib/groupeditform.php:201
 msgctxt "BUTTON"
 msgid "Save"
 msgstr "Gravar"
 
+#. TRANS: Server error when page not found (404).
 #. TRANS: Server error when page not found (404)
 #: actions/all.php:68 actions/public.php:98 actions/replies.php:93
-#: actions/showfavorites.php:138 actions/tag.php:52
+#: actions/showfavorites.php:140 actions/tag.php:52
 msgid "No such page."
 msgstr "Página não foi encontrada."
 
+#. TRANS: Client error when user not found for an action.
+#. TRANS: Client error when user not found for an rss related action.
+#. TRANS: Client error displayed when no existing user is provided for a user's delivery device setting.
+#. TRANS: Client error displayed if a user could not be found.
+#. TRANS: Client error when user not found updating a profile background image.
+#. TRANS: Client error displayed updating profile image without having a user object.
+#. TRANS: Client error displayed when making an Atom API request for an unknown user.
+#. TRANS: Client error displayed when trying to block a non-existing user or a user from another site.
+#. TRANS: Client error when user not found for an API action to remove a block for a user.
+#. TRANS: Client error given when a user was not found (404).
+#. TRANS: Client error when user not found for an API direct message action.
+#. TRANS: Client error given when a user was not found (404).
+#. TRANS: Client error displayed when checking group membership for a non-existing user.
+#. TRANS: Client error displayed when trying to have a non-existing user join a group.
+#. TRANS: Client error displayed when trying to have a non-existing user leave a group.
+#. TRANS: Client error displayed when updating a status for a non-existing user.
+#. TRANS: Client error displayed when requesting a list of followers for a non-existing user.
+#. TRANS: Client error displayed when requesting most recent favourite notices by a user for a non-existing user.
+#. TRANS: Client error displayed when requesting dents of a user and friends for a user that does not exist.
+#. TRANS: Client error displayed when requesting most recent dents by user and friends for a non-existing user.
+#. TRANS: Client error displayed when requesting most recent mentions for a non-existing user.
+#. TRANS: Client error displayed requesting most recent notices for a non-existing user.
+#. TRANS: Client error displayed trying to get an avatar for a non-existing user.
+#. TRANS: Client error displayed when trying to get the RSS feed with favorites of a user that does not exist.
+#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a user nickname.
+#. TRANS: Client error displayed when requesting Friends of a Friend feed for an object that is not a user.
+#. TRANS: Client error displayed when trying to get a user hCard for a non-existing user.
+#. TRANS: Client error displayed when trying to display favourite notices for a non-existing user.
 #. TRANS: Error text shown when trying to send a direct message to a user that does not exist.
-#: actions/all.php:79 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:115
-#: actions/apiaccountupdateprofile.php:106
-#: actions/apiaccountupdateprofilebackgroundimage.php:117
-#: actions/apiaccountupdateprofileimage.php:106 actions/apiblockcreate.php:98
-#: actions/apiblockdestroy.php:97 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:114
-#: actions/apigroupismember.php:91 actions/apigroupjoin.php:101
-#: actions/apigroupleave.php:101 actions/apigrouplist.php:73
-#: actions/apistatusesupdate.php:230 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
-#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
-#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
-#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
-#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
-#: actions/otp.php:76 actions/remotesubscribe.php:145
-#: actions/remotesubscribe.php:154 actions/replies.php:73
-#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:495 lib/galleryaction.php:59
-#: lib/mailbox.php:82 lib/profileaction.php:77
+#. TRANS: Client error displayed when calling a profile action without specifying a user.
+#: actions/all.php:80 actions/allrss.php:69
+#: actions/apiaccountupdatedeliverydevice.php:110
+#: actions/apiaccountupdateprofile.php:103
+#: actions/apiaccountupdateprofilebackgroundimage.php:118
+#: actions/apiaccountupdateprofileimage.php:104 actions/apiatomservice.php:59
+#: actions/apiblockcreate.php:96 actions/apiblockdestroy.php:94
+#: actions/apidirectmessage.php:75 actions/apidirectmessagenew.php:72
+#: actions/apigroupcreate.php:111 actions/apigroupismember.php:89
+#: actions/apigroupjoin.php:98 actions/apigroupleave.php:98
+#: actions/apigrouplist.php:70 actions/apistatusesupdate.php:230
+#: actions/apisubscriptions.php:85 actions/apitimelinefavorites.php:70
+#: actions/apitimelinefriends.php:173 actions/apitimelinehome.php:78
+#: actions/apitimelinementions.php:77 actions/apitimelineuser.php:79
+#: actions/avatarbynickname.php:79 actions/favoritesrss.php:72
+#: actions/foaf.php:42 actions/foaf.php:61 actions/hcard.php:67
+#: actions/microsummary.php:62 actions/newmessage.php:116 actions/otp.php:76
+#: actions/remotesubscribe.php:144 actions/remotesubscribe.php:153
+#: actions/replies.php:73 actions/repliesrss.php:38 actions/rsd.php:116
+#: actions/showfavorites.php:106 actions/userbyid.php:74
+#: actions/usergroups.php:93 actions/userrss.php:40 actions/userxrd.php:59
+#: actions/xrds.php:71 lib/command.php:497 lib/galleryaction.php:59
+#: lib/mailbox.php:80 lib/profileaction.php:77
 msgid "No such user."
 msgstr "Utilizador não foi encontrado."
 
 #. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:90
+#: actions/all.php:91
 #, php-format
 msgid "%1$s and friends, page %2$d"
 msgstr "%1$s e amigos, página %2$d"
 
-#. TRANS: Page title. %1$s is user nickname
-#. TRANS: H1 text. %1$s is user nickname
+#. TRANS: Page title. %s is user nickname
+#. TRANS: H1 text for page. %s is a user nickname.
 #. TRANS: Message is used as link title. %s is a user nickname.
-#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
-#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
-#: lib/personalgroupnav.php:100
+#. TRANS: Timeline title for user and friends. %s is a user nickname.
+#. TRANS: Tooltop for personal group navigation menu option when logged in for viewing timeline of self and friends.
+#: actions/all.php:94 actions/all.php:191 actions/allrss.php:117
+#: actions/apitimelinefriends.php:207 actions/apitimelinehome.php:113
+#: lib/personalgroupnav.php:102
 #, php-format
 msgid "%s and friends"
 msgstr "%s e amigos"
 
-#. TRANS: %1$s is user nickname
-#: actions/all.php:107
+#. TRANS: %s is user nickname.
+#: actions/all.php:108
 #, php-format
 msgid "Feed for friends of %s (RSS 1.0)"
 msgstr "Fonte para os amigos de %s (RSS 1.0)"
 
-#. TRANS: %1$s is user nickname
-#: actions/all.php:116
+#. TRANS: %s is user nickname.
+#: actions/all.php:117
 #, php-format
 msgid "Feed for friends of %s (RSS 2.0)"
 msgstr "Fonte para os amigos de %s (RSS 2.0)"
 
-#. TRANS: %1$s is user nickname
-#: actions/all.php:125
+#. TRANS: %s is user nickname.
+#: actions/all.php:126
 #, php-format
 msgid "Feed for friends of %s (Atom)"
 msgstr "Fonte para os amigos de %s (Atom)"
 
-#. TRANS: %1$s is user nickname
-#: actions/all.php:138
+#. TRANS: Empty list message. %s is a user nickname.
+#: actions/all.php:139
 #, php-format
 msgid ""
 "This is the timeline for %s and friends but no one has posted anything yet."
 msgstr ""
 "Estas são as notas de %s e dos amigos, mas ainda não publicaram nenhuma."
 
-#: actions/all.php:143
+#. TRANS: Encouragement displayed on logged in user's empty timeline.
+#. TRANS: This message contains Markdown links. Keep "](" together.
+#: actions/all.php:146
 #, php-format
 msgid ""
 "Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -170,8 +220,9 @@ msgstr ""
 "Tente subscrever mais pessoas, [juntar-se a um grupo](%%action.groups%%) ou "
 "publicar qualquer coisa."
 
-#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:146
+#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@".
+#. TRANS: This message contains Markdown links. Keep "](" together.
+#: actions/all.php:150
 #, php-format
 msgid ""
 "You can try to [nudge %1$s](../%2$s) from their profile or [post something "
@@ -180,7 +231,11 @@ msgstr ""
 "Pode tentar [dar um toque em %1$s](../%2$s) a partir do perfil ou [endereçar-"
 "lhe uma nota](%%%%action.newnotice%%%%?status_textarea=%3$s)."
 
-#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
+#. TRANS: Encoutagement displayed on empty timeline user pages for anonymous users.
+#. TRANS: %s is a user nickname. This message contains Markdown links. Keep "](" together.
+#. TRANS: Second sentence of empty message for anonymous users. %s is a user nickname.
+#. TRANS: This message contains a Markdown link. Keep "](" together.
+#: actions/all.php:155 actions/replies.php:210 actions/showstream.php:227
 #, php-format
 msgid ""
 "Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
@@ -189,415 +244,662 @@ msgstr ""
 "Podia [registar uma conta](%%%%action.register%%%%) e depois dar um toque em "
 "%s ou endereçar-lhe uma nota."
 
-#. TRANS: H1 text
-#: actions/all.php:182
+#. TRANS: H1 text for page when viewing a list for self.
+#: actions/all.php:188
 msgid "You and friends"
 msgstr "Você e seus amigos"
 
 #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
 #. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
-#: actions/allrss.php:121 actions/apitimelinefriends.php:216
-#: actions/apitimelinehome.php:122
+#: actions/allrss.php:122 actions/apitimelinefriends.php:213
+#: actions/apitimelinehome.php:119
 #, php-format
 msgid "Updates from %1$s and friends on %2$s!"
 msgstr "Actualizações de %1$s e amigos no %2$s!"
 
-#: actions/apiaccountratelimitstatus.php:72
-#: actions/apiaccountupdatedeliverydevice.php:95
-#: actions/apiaccountupdateprofile.php:98
-#: actions/apiaccountupdateprofilebackgroundimage.php:95
-#: actions/apiaccountupdateprofilecolors.php:119
-#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:101 actions/apifavoritedestroy.php:102
-#: actions/apifriendshipscreate.php:101 actions/apifriendshipsdestroy.php:101
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:140
-#: actions/apigroupismember.php:115 actions/apigroupjoin.php:157
-#: actions/apigroupleave.php:143 actions/apigrouplist.php:137
-#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
-#: actions/apigroupshow.php:116 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
-#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
-#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
-#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
-#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
-#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
+#. TRANS: Client error displayed handling a non-existing API method.
+#. TRANS: Client error displayed when trying to handle an unknown API method.
+#. TRANS: Client error displayed trying to execute an unknown API method updating profile colours.
+#. TRANS: Client error displayed trying to execute an unknown API method verifying user credentials.
+#. TRANS: Client error given when an API method was not found (404).
+#. TRANS: Client error displayed when trying to handle an unknown API method.
+#. TRANS: Client error displayed trying to execute an unknown API method showing friendship.
+#. TRANS: Client error given when an API method was not found (404).
+#. TRANS: Client error displayed trying to execute an unknown API method showing group membership.
+#. TRANS: Client error displayed trying to execute an unknown API method joining a group.
+#. TRANS: Client error displayed trying to execute an unknown API method leaving a group.
+#. TRANS: Client error displayed trying to execute an unknown API method checking group membership.
+#. TRANS: Client error displayed trying to execute an unknown API method listing the latest 20 groups.
+#. TRANS: Client error displayed trying to execute an unknown API method showing group membership.
+#. TRANS: Client error displayed trying to execute an unknown API method showing a group.
+#. TRANS: Client error displayed trying to execute an unknown API method testing API connectivity.
+#. TRANS: Client error displayed trying to execute an unknown API method deleting a status.
+#. TRANS: Client error displayed when trying to handle an unknown API method.
+#: actions/apiaccountratelimitstatus.php:69
+#: actions/apiaccountupdatedeliverydevice.php:92
+#: actions/apiaccountupdateprofile.php:94
+#: actions/apiaccountupdateprofilebackgroundimage.php:92
+#: actions/apiaccountupdateprofilecolors.php:115
+#: actions/apiaccountverifycredentials.php:68 actions/apidirectmessage.php:157
+#: actions/apifavoritecreate.php:98 actions/apifavoritedestroy.php:98
+#: actions/apifriendshipscreate.php:99 actions/apifriendshipsdestroy.php:99
+#: actions/apifriendshipsshow.php:124 actions/apigroupcreate.php:138
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:160
+#: actions/apigroupleave.php:145 actions/apigrouplist.php:134
+#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:105
+#: actions/apigroupshow.php:114 actions/apihelptest.php:84
+#: actions/apistatusesdestroy.php:101 actions/apistatusesretweets.php:110
+#: actions/apistatusesshow.php:105 actions/apistatusnetconfig.php:138
+#: actions/apistatusnetversion.php:91 actions/apisubscriptions.php:109
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:268
+#: actions/apitimelinegroup.php:147 actions/apitimelinehome.php:173
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:239
+#: actions/apitimelineretweetedtome.php:118
+#: actions/apitimelineretweetsofme.php:150 actions/apitimelinetag.php:159
+#: actions/apitimelineuser.php:206 actions/apiusershow.php:100
 msgid "API method not found."
 msgstr "Método da API não encontrado."
 
 #. TRANS: Client error message. POST is a HTTP command. It should not be translated.
 #. TRANS: Client error. POST is a HTTP command. It should not be translated.
-#: actions/apiaccountupdatedeliverydevice.php:87
-#: actions/apiaccountupdateprofile.php:90
-#: actions/apiaccountupdateprofilebackgroundimage.php:87
-#: actions/apiaccountupdateprofilecolors.php:111
-#: actions/apiaccountupdateprofileimage.php:85 actions/apiblockcreate.php:90
-#: actions/apiblockdestroy.php:89 actions/apidirectmessagenew.php:110
-#: actions/apifavoritecreate.php:92 actions/apifavoritedestroy.php:93
-#: actions/apifriendshipscreate.php:92 actions/apifriendshipsdestroy.php:92
-#: actions/apigroupcreate.php:106 actions/apigroupjoin.php:93
-#: actions/apigroupleave.php:93 actions/apimediaupload.php:68
-#: actions/apistatusesretweet.php:66 actions/apistatusesupdate.php:199
+#: actions/apiaccountupdatedeliverydevice.php:83
+#: actions/apiaccountupdateprofile.php:85
+#: actions/apiaccountupdateprofilebackgroundimage.php:83
+#: actions/apiaccountupdateprofilecolors.php:106
+#: actions/apiaccountupdateprofileimage.php:80 actions/apiblockcreate.php:87
+#: actions/apiblockdestroy.php:85 actions/apidirectmessagenew.php:107
+#: actions/apifavoritecreate.php:88 actions/apifavoritedestroy.php:88
+#: actions/apifriendshipscreate.php:89 actions/apifriendshipsdestroy.php:89
+#: actions/apigroupcreate.php:102 actions/apigroupjoin.php:89
+#: actions/apigroupleave.php:89 actions/apimediaupload.php:66
+#: actions/apistatusesretweet.php:63 actions/apistatusesupdate.php:194
 msgid "This method requires a POST."
 msgstr "Este método requer um POST."
 
-#: actions/apiaccountupdatedeliverydevice.php:107
+#. TRANS: Client error displayed when no valid device parameter is provided for a user's delivery device setting.
+#: actions/apiaccountupdatedeliverydevice.php:103
 msgid ""
 "You must specify a parameter named 'device' with a value of one of: sms, im, "
 "none."
 msgstr ""
 "Tem de especificar um parâmetro 'aparelho' com um dos valores: sms, im, none."
 
-#: actions/apiaccountupdatedeliverydevice.php:134
+#. TRANS: Server error displayed when a user's delivery device cannot be updated.
+#. TRANS: Server error displayed when a user update to the database fails in the contact address confirmation action.
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating Instant Messaging preferences.
+#. TRANS: Server error thrown on database error removing a registered Instant Messaging address.
+#. TRANS: Server error displayed when "Other" settings in user profile could not be updated on the server.
+#. TRANS: Server error thrown when user profile settings could not be updated.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/apiaccountupdatedeliverydevice.php:130
+#: actions/confirmaddress.php:118 actions/emailsettings.php:352
+#: actions/emailsettings.php:498 actions/imsettings.php:276
+#: actions/imsettings.php:432 actions/othersettings.php:186
+#: actions/profilesettings.php:322 actions/smssettings.php:301
+#: actions/smssettings.php:454
 msgid "Could not update user."
 msgstr "Não foi possível actualizar o utilizador."
 
-#: actions/apiaccountupdateprofile.php:113
-#: actions/apiaccountupdateprofilebackgroundimage.php:195
-#: actions/apiaccountupdateprofilecolors.php:186
-#: actions/apiaccountupdateprofileimage.php:131 actions/apiusershow.php:108
-#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
+#. TRANS: Client error displayed if a user profile could not be found.
+#. TRANS: Client error displayed when a user has no profile.
+#. TRANS: Client error displayed a user has no profile updating profile colours.
+#. TRANS: Client error displayed if a user profile could not be found updating a profile image.
+#. TRANS: Client error displayed when requesting user information for a user without a profile.
+#. TRANS: Client error displayed trying to get an avatar for a user without a profile.
+#. TRANS: Server error displayed when requesting Friends of a Friend feed for a user for which the profile could not be found.
+#. TRANS: Server error displayed when trying to get a user hCard for a user without a profile.
+#. TRANS: Server error displayed when calling a profile action while the specified user does not have a profile.
+#: actions/apiaccountupdateprofile.php:111
+#: actions/apiaccountupdateprofilebackgroundimage.php:199
+#: actions/apiaccountupdateprofilecolors.php:183
+#: actions/apiaccountupdateprofileimage.php:131
+#: actions/apiuserprofileimage.php:88 actions/apiusershow.php:108
+#: actions/avatarbynickname.php:85 actions/foaf.php:69 actions/hcard.php:75
 #: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
-#: lib/profileaction.php:84
+#: lib/profileaction.php:85
 msgid "User has no profile."
 msgstr "Utilizador não tem perfil."
 
-#: actions/apiaccountupdateprofile.php:148
+#. TRANS: Server error displayed if a user profile could not be saved.
+#. TRANS: Server error thrown when user profile settings could not be saved.
+#: actions/apiaccountupdateprofile.php:147 actions/profilesettings.php:418
 msgid "Could not save profile."
 msgstr "Não foi possível gravar o perfil."
 
-#: actions/apiaccountupdateprofilebackgroundimage.php:109
-#: actions/apiaccountupdateprofileimage.php:98 actions/apimediaupload.php:81
-#: actions/apistatusesupdate.php:213 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:123 actions/editapplication.php:118
-#: actions/newapplication.php:101 actions/newnotice.php:94
-#: lib/designsettings.php:283
+#. TRANS: Client error displayed when the number of bytes in a POST request exceeds a limit.
+#. TRANS: %s is the number of bytes of the CONTENT_LENGTH.
+#. TRANS: Form validation error in design settings form. POST should remain untranslated.
+#: actions/apiaccountupdateprofilebackgroundimage.php:108
+#: actions/apiaccountupdateprofileimage.php:95 actions/apimediaupload.php:81
+#: actions/apistatusesupdate.php:210 actions/avatarsettings.php:269
+#: actions/designadminpanel.php:120 actions/editapplication.php:121
+#: actions/newapplication.php:102 actions/newnotice.php:95
+#: lib/designsettings.php:298
 #, php-format
 msgid ""
+"The server was unable to handle that much POST data (%s byte) due to its "
+"current configuration."
+msgid_plural ""
 "The server was unable to handle that much POST data (%s bytes) due to its "
 "current configuration."
-msgstr ""
+msgstr[0] ""
+"O servidor não conseguiu processar tantos dados POST (%s byte) devido à sua "
+"configuração actual."
+msgstr[1] ""
 "O servidor não conseguiu processar tantos dados POST (%s bytes) devido à sua "
 "configuração actual."
 
-#: actions/apiaccountupdateprofilebackgroundimage.php:137
-#: actions/apiaccountupdateprofilebackgroundimage.php:147
-#: actions/apiaccountupdateprofilecolors.php:165
-#: actions/apiaccountupdateprofilecolors.php:175
-#: actions/groupdesignsettings.php:290 actions/groupdesignsettings.php:300
-#: actions/userdesignsettings.php:210 actions/userdesignsettings.php:220
-#: actions/userdesignsettings.php:263 actions/userdesignsettings.php:273
+#. TRANS: Client error displayed when saving design settings fails because of an empty id.
+#. TRANS: Client error displayed when saving design settings fails because of an empty result.
+#. TRANS: Client error displayed when a database error occurs inserting profile colours.
+#. TRANS: Client error displayed when a database error occurs updating profile colours.
+#. TRANS: Form validation error displayed when group design settings could not be saved because of an application issue.
+#: actions/apiaccountupdateprofilebackgroundimage.php:138
+#: actions/apiaccountupdateprofilebackgroundimage.php:149
+#: actions/apiaccountupdateprofilecolors.php:160
+#: actions/apiaccountupdateprofilecolors.php:171
+#: actions/groupdesignsettings.php:285 actions/groupdesignsettings.php:296
+#: actions/userdesignsettings.php:201 actions/userdesignsettings.php:211
+#: actions/userdesignsettings.php:253 actions/userdesignsettings.php:263
 msgid "Unable to save your design settings."
 msgstr "Não foi possível gravar as configurações do estilo."
 
-#: actions/apiaccountupdateprofilebackgroundimage.php:188
-#: actions/apiaccountupdateprofilecolors.php:143
+#. TRANS: Error displayed when updating design settings fails.
+#. TRANS: Client error displayed when a database error occurs updating profile colours.
+#: actions/apiaccountupdateprofilebackgroundimage.php:191
+#: actions/apiaccountupdateprofilecolors.php:139
+#: actions/userdesignsettings.php:179
 msgid "Could not update your design."
 msgstr "Não foi possível actualizar o seu estilo."
 
-#: actions/apiblockcreate.php:106
+#. TRANS: Title for Atom feed.
+#: actions/apiatomservice.php:85
+#, fuzzy
+msgctxt "ATOM"
+msgid "Main"
+msgstr "Principal"
+
+#. TRANS: Title for Atom feed. %s is a user nickname.
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/apiatomservice.php:93 actions/grouprss.php:138
+#: actions/userrss.php:94 lib/atomgroupnoticefeed.php:63
+#: lib/atomusernoticefeed.php:88
+#, php-format
+msgid "%s timeline"
+msgstr "Notas de %s"
+
+#. TRANS: Title for Atom feed with a user's subscriptions. %s is a user nickname.
+#. TRANS: Title for Atom subscription feed.
+#. TRANS: %s is a user nickname.
+#. TRANS: Header for subscriptions overview for a user (first page).
+#. TRANS: %s is a user nickname.
+#: actions/apiatomservice.php:104 actions/atompubsubscriptionfeed.php:148
+#: actions/subscriptions.php:51
+#, php-format
+msgid "%s subscriptions"
+msgstr "Subscrições de %s"
+
+#. TRANS: Title for Atom feed with a user's favorite notices. %s is a user nickname.
+#. TRANS: Title for Atom favorites feed.
+#. TRANS: %s is a user nickname.
+#: actions/apiatomservice.php:115 actions/atompubfavoritefeed.php:142
+#, php-format
+msgid "%s favorites"
+msgstr "Favoritas de %s"
+
+#. TRANS: Title for Atom feed with a user's memberships. %s is a user nickname.
+#: actions/apiatomservice.php:126
+#, fuzzy, php-format
+msgid "%s memberships"
+msgstr "Membros do grupo %s"
+
+#. TRANS: Client error displayed when users try to block themselves.
+#: actions/apiblockcreate.php:105
 msgid "You cannot block yourself!"
 msgstr "Os utilizadores não podem bloquear-se a si próprios!"
 
+#. TRANS: Server error displayed when blocking a user has failed.
 #: actions/apiblockcreate.php:127
 msgid "Block user failed."
 msgstr "Bloqueio do utilizador falhou."
 
-#: actions/apiblockdestroy.php:115
+#. TRANS: Server error displayed when unblocking a user has failed.
+#: actions/apiblockdestroy.php:113
 msgid "Unblock user failed."
 msgstr "Desbloqueio do utilizador falhou."
 
-#: actions/apidirectmessage.php:89
+#. TRANS: Title. %s is a user nickname.
+#: actions/apidirectmessage.php:88
 #, php-format
 msgid "Direct messages from %s"
 msgstr "Mensagens directas de %s"
 
+#. TRANS: Subtitle. %s is a user nickname.
 #: actions/apidirectmessage.php:93
 #, php-format
 msgid "All the direct messages sent from %s"
 msgstr "Todas as mensagens directas enviadas por %s"
 
-#: actions/apidirectmessage.php:101
+#. TRANS: Title. %s is a user nickname.
+#: actions/apidirectmessage.php:102
 #, php-format
 msgid "Direct messages to %s"
 msgstr "Mensagens directas para %s"
 
-#: actions/apidirectmessage.php:105
+#. TRANS: Subtitle. %s is a user nickname.
+#: actions/apidirectmessage.php:107
 #, php-format
 msgid "All the direct messages sent to %s"
 msgstr "Todas as mensagens directas enviadas para %s"
 
-#: actions/apidirectmessagenew.php:119
+#. TRANS: Client error displayed when no message text was submitted (406).
+#: actions/apidirectmessagenew.php:117
 msgid "No message text!"
 msgstr "Mensagem não tem texto!"
 
-#: actions/apidirectmessagenew.php:128 actions/newmessage.php:150
-#, php-format
-msgid "That's too long. Max message size is %d chars."
-msgstr "Demasiado longo. Tamanho máx. das mensagens é %d caracteres."
+#. TRANS: Client error displayed when message content is too long.
+#. TRANS: %d is the maximum number of characters for a message.
+#. TRANS: Form validation error displayed when message content is too long.
+#. TRANS: %d is the maximum number of characters for a message.
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:152
+#, fuzzy, php-format
+msgid "That's too long. Maximum message size is %d character."
+msgid_plural "That's too long. Maximum message size is %d characters."
+msgstr[0] "Demasiado longo. Tamanho máx. das mensagens é %d caracteres."
+msgstr[1] "Demasiado longo. Tamanho máx. das mensagens é %d caracteres."
 
+#. TRANS: Client error displayed if a recipient user could not be found (403).
 #: actions/apidirectmessagenew.php:139
 msgid "Recipient user not found."
 msgstr "Destinatário não encontrado."
 
-#: actions/apidirectmessagenew.php:143
+#. TRANS: Client error displayed trying to direct message another user who's not a friend (403).
+#: actions/apidirectmessagenew.php:144
 msgid "Can't send direct messages to users who aren't your friend."
 msgstr ""
 "Não pode enviar mensagens directas a utilizadores que não sejam amigos."
 
-#: actions/apifavoritecreate.php:110 actions/apifavoritedestroy.php:111
+#. TRANS: Client error displayed trying to direct message self (403).
+#: actions/apidirectmessagenew.php:154
+#, fuzzy
+msgid ""
+"Do not send a message to yourself; just say it to yourself quietly instead."
+msgstr "Não auto-envie uma mensagem; basta lê-la baixinho a si próprio."
+
+#. TRANS: Client error displayed when requesting a status with a non-existing ID.
+#. TRANS: Client error displayed when trying to remove a favourite with an invalid ID.
+#. TRANS: Client error displayed trying to delete a status with an invalid ID.
+#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:108
 #: actions/apistatusesdestroy.php:121
 msgid "No status found with that ID."
 msgstr "Nenhum estado encontrado com esse ID."
 
-#: actions/apifavoritecreate.php:121
+#. TRANS: Client error displayed when trying to mark a notice favourite that already is a favourite.
+#: actions/apifavoritecreate.php:120
 msgid "This status is already a favorite."
 msgstr "Este estado já é um favorito."
 
+#. TRANS: Client error displayed when marking a notice as favourite fails.
+#. TRANS: Server error displayed when trying to mark a notice as favorite fails in the database.
 #. TRANS: Error message text shown when a favorite could not be set.
-#: actions/apifavoritecreate.php:132 actions/favor.php:84 lib/command.php:294
+#: actions/apifavoritecreate.php:132 actions/favor.php:86 lib/command.php:294
 msgid "Could not create favorite."
 msgstr "Não foi possível criar o favorito."
 
-#: actions/apifavoritedestroy.php:124
+#. TRANS: Client error displayed when trying to remove a favourite that was not a favourite.
+#: actions/apifavoritedestroy.php:122
 msgid "That status is not a favorite."
 msgstr "Esse estado não é um favorito."
 
-#: actions/apifavoritedestroy.php:136 actions/disfavor.php:87
+#. TRANS: Client error displayed when removing a favourite has failed.
+#. TRANS: Server error displayed when removing a favorite from the database fails.
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:90
 msgid "Could not delete favorite."
 msgstr "Não foi possível eliminar o favorito."
 
-#: actions/apifriendshipscreate.php:110
+#. TRANS: Client error displayed when trying follow who's profile could not be found.
+#: actions/apifriendshipscreate.php:109
 msgid "Could not follow user: profile not found."
 msgstr "Não foi possível seguir o utilizador: o perfil não foi encontrado."
 
-#: actions/apifriendshipscreate.php:119
+#. TRANS: Client error displayed when trying to follow a user that's already being followed.
+#. TRANS: %s is the nickname of the user that is already being followed.
+#: actions/apifriendshipscreate.php:120
 #, php-format
 msgid "Could not follow user: %s is already on your list."
 msgstr "Não foi possível seguir utilizador: %s já está na sua lista."
 
-#: actions/apifriendshipsdestroy.php:110
+#. TRANS: Client error displayed when trying to unfollow a user that cannot be found.
+#: actions/apifriendshipsdestroy.php:109
 msgid "Could not unfollow user: User not found."
 msgstr ""
 "Não foi possível deixar de seguir utilizador: Utilizador não encontrado."
 
+#. TRANS: Client error displayed when trying to unfollow self.
 #: actions/apifriendshipsdestroy.php:121
 msgid "You cannot unfollow yourself."
 msgstr "Não pode deixar de seguir-se a si próprio."
 
-#: actions/apifriendshipsexists.php:91
-msgid "Two valid IDs or screen_names must be supplied."
+#. TRANS: Client error displayed when supplying invalid parameters to an API call checking if a friendship exists.
+#: actions/apifriendshipsexists.php:88
+#, fuzzy
+msgid "Two valid IDs or nick names must be supplied."
 msgstr "Têm de ser fornecidos dois IDs ou nomes de utilizador válidos."
 
-#: actions/apifriendshipsshow.php:134
+#. TRANS: Client error displayed when a source user could not be determined showing friendship.
+#: actions/apifriendshipsshow.php:131
 msgid "Could not determine source user."
 msgstr "Não foi possível determinar o utilizador de origem."
 
-#: actions/apifriendshipsshow.php:142
+#. TRANS: Client error displayed when a target user could not be determined showing friendship.
+#: actions/apifriendshipsshow.php:140
 msgid "Could not find target user."
 msgstr "Não foi possível encontrar o utilizador de destino."
 
-#: actions/apigroupcreate.php:168 actions/editgroup.php:186
-#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:212
-msgid "Nickname must have only lowercase letters and numbers and no spaces."
-msgstr "Utilizador só deve conter letras minúsculas e números. Sem espaços."
-
-#: actions/apigroupcreate.php:177 actions/editgroup.php:190
-#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:215
+#. TRANS: Client error trying to create a group with a nickname this is already in use.
+#. TRANS: Group edit form validation error.
+#. TRANS: Group create form validation error.
+#. TRANS: Validation error in form for profile settings.
+#: actions/apigroupcreate.php:156 actions/editgroup.php:191
+#: actions/newgroup.php:137 actions/profilesettings.php:273
+#: actions/register.php:214
 msgid "Nickname already in use. Try another one."
 msgstr "Utilizador já é usado. Tente outro."
 
-#: actions/apigroupcreate.php:184 actions/editgroup.php:193
-#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:217
+#. TRANS: Client error in form for group creation.
+#. TRANS: Group edit form validation error.
+#. TRANS: Group create form validation error.
+#. TRANS: Validation error in form for profile settings.
+#: actions/apigroupcreate.php:164 actions/editgroup.php:195
+#: actions/newgroup.php:141 actions/profilesettings.php:243
+#: actions/register.php:216
 msgid "Not a valid nickname."
 msgstr "Utilizador não é válido."
 
-#: actions/apigroupcreate.php:200 actions/editapplication.php:215
-#: actions/editgroup.php:199 actions/newapplication.php:203
-#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:224
+#. TRANS: Client error in form for group creation.
+#. TRANS: Validation error shown when providing an invalid homepage URL in the "Edit application" form.
+#. TRANS: Group edit form validation error.
+#. TRANS: Validation error shown when providing an invalid homepage URL in the "New application" form.
+#. TRANS: Group create form validation error.
+#. TRANS: Validation error in form for profile settings.
+#: actions/apigroupcreate.php:181 actions/editapplication.php:235
+#: actions/editgroup.php:202 actions/newapplication.php:221
+#: actions/newgroup.php:148 actions/profilesettings.php:248
+#: actions/register.php:223
 msgid "Homepage is not a valid URL."
 msgstr "Página de ínicio não é uma URL válida."
 
-#: actions/apigroupcreate.php:209 actions/editgroup.php:202
-#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:227
-msgid "Full name is too long (max 255 chars)."
+#. TRANS: Client error in form for group creation.
+#. TRANS: Group edit form validation error.
+#. TRANS: Group create form validation error.
+#. TRANS: Validation error in form for profile settings.
+#: actions/apigroupcreate.php:191 actions/editgroup.php:206
+#: actions/newgroup.php:152 actions/profilesettings.php:252
+#: actions/register.php:226
+#, fuzzy
+msgid "Full name is too long (maximum 255 characters)."
 msgstr "Nome completo demasiado longo (máx. 255 caracteres)."
 
-#: actions/apigroupcreate.php:217 actions/editapplication.php:190
-#: actions/newapplication.php:172
-#, php-format
-msgid "Description is too long (max %d chars)."
-msgstr "Descrição demasiado longa (máx. %d caracteres)."
-
-#: actions/apigroupcreate.php:228 actions/editgroup.php:208
-#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:234
-msgid "Location is too long (max 255 chars)."
+#. TRANS: Client error shown when providing too long a description during group creation.
+#. TRANS: %d is the maximum number of allowed characters.
+#. TRANS: Validation error shown when providing too long a description in the "Edit application" form.
+#. TRANS: %d is the maximum number of allowed characters.
+#. TRANS: Group edit form validation error.
+#. TRANS: Form validation error in New application form.
+#. TRANS: %d is the maximum number of characters for the description.
+#. TRANS: Group create form validation error.
+#. TRANS: %d is the maximum number of allowed characters.
+#: actions/apigroupcreate.php:201 actions/editapplication.php:202
+#: actions/editgroup.php:211 actions/newapplication.php:182
+#: actions/newgroup.php:157
+#, fuzzy, php-format
+msgid "Description is too long (maximum %d character)."
+msgid_plural "Description is too long (maximum %d characters)."
+msgstr[0] "Descrição demasiado longa (máx. %d caracteres)."
+msgstr[1] "Descrição demasiado longa (máx. %d caracteres)."
+
+#. TRANS: Client error shown when providing too long a location during group creation.
+#. TRANS: Group edit form validation error.
+#. TRANS: Group create form validation error.
+#. TRANS: Validation error in form for profile settings.
+#: actions/apigroupcreate.php:215 actions/editgroup.php:218
+#: actions/newgroup.php:164 actions/profilesettings.php:265
+#: actions/register.php:235
+#, fuzzy
+msgid "Location is too long (maximum 255 characters)."
 msgstr "Localidade demasiado longa (máx. 255 caracteres)."
 
-#: actions/apigroupcreate.php:247 actions/editgroup.php:219
-#: actions/newgroup.php:159
-#, php-format
-msgid "Too many aliases! Maximum %d."
-msgstr "Demasiados nomes alternativos! Máx. %d."
+#. TRANS: Client error shown when providing too many aliases during group creation.
+#. TRANS: %d is the maximum number of allowed aliases.
+#. TRANS: Group edit form validation error.
+#. TRANS: %d is the maximum number of allowed aliases.
+#. TRANS: Group create form validation error.
+#. TRANS: %d is the maximum number of allowed aliases.
+#: actions/apigroupcreate.php:236 actions/editgroup.php:231
+#: actions/newgroup.php:177
+#, fuzzy, php-format
+msgid "Too many aliases! Maximum %d allowed."
+msgid_plural "Too many aliases! Maximum %d allowed."
+msgstr[0] "Demasiados nomes alternativos! Máx. %d."
+msgstr[1] "Demasiados nomes alternativos! Máx. %d."
 
-#: actions/apigroupcreate.php:268
+#. TRANS: Client error shown when providing an invalid alias during group creation.
+#. TRANS: %s is the invalid alias.
+#: actions/apigroupcreate.php:253
 #, php-format
 msgid "Invalid alias: \"%s\"."
 msgstr "Nome alternativo inválido: \"%s\""
 
-#: actions/apigroupcreate.php:277 actions/editgroup.php:232
-#: actions/newgroup.php:172
+#. TRANS: Client error displayed when trying to use an alias during group creation that is already in use.
+#. TRANS: %s is the alias that is already in use.
+#. TRANS: Group edit form validation error.
+#. TRANS: Group create form validation error. %s is the already used alias.
+#: actions/apigroupcreate.php:264 actions/editgroup.php:246
+#: actions/newgroup.php:193
 #, php-format
 msgid "Alias \"%s\" already in use. Try another one."
 msgstr "Nome alternativo \"%s\" já em uso. Tente outro."
 
-#: actions/apigroupcreate.php:290 actions/editgroup.php:238
-#: actions/newgroup.php:178
+#. TRANS: Client error displayed when trying to use an alias during group creation that is the same as the group's nickname.
+#. TRANS: Group edit form validation error.
+#: actions/apigroupcreate.php:278 actions/editgroup.php:253
 msgid "Alias can't be the same as nickname."
 msgstr "Um nome alternativo não pode ser igual ao nome do utilizador."
 
-#: actions/apigroupismember.php:96 actions/apigroupjoin.php:106
-#: actions/apigroupleave.php:106 actions/apigroupmembership.php:92
-#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+#. TRANS: Client error displayed when checking group membership for a non-existing group.
+#. TRANS: Client error displayed when trying to join a group that does not exist.
+#. TRANS: Client error displayed when trying to leave a group that does not exist.
+#. TRANS: Client error displayed trying to show group membership on a non-existing group.
+#. TRANS: Client error displayed when trying to show a group that could not be found.
+#. TRANS: Client error displayed requesting most recent notices to a group for a non-existing group.
+#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
+#: actions/apigroupleave.php:104 actions/apigroupmembership.php:71
+#: actions/apigroupshow.php:81 actions/apitimelinegroup.php:89
 msgid "Group not found."
 msgstr "Grupo não foi encontrado."
 
+#. TRANS: Server error displayed when trying to join a group the user is already a member of.
+#. TRANS: Client error displayed when trying to join a group while already a member.
 #. TRANS: Error text shown a user tries to join a group they already are a member of.
-#: actions/apigroupjoin.php:112 actions/joingroup.php:100 lib/command.php:333
+#: actions/apigroupjoin.php:111 actions/joingroup.php:103 lib/command.php:333
 msgid "You are already a member of that group."
 msgstr "Já é membro desse grupo."
 
+#. TRANS: Server error displayed when trying to join a group the user is blocked from joining.
+#. TRANS: Client error displayed when trying to join a group while being blocked form joining it.
 #. TRANS: Error text shown when a user tries to join a group they are blocked from joining.
-#: actions/apigroupjoin.php:121 actions/joingroup.php:105 lib/command.php:338
+#: actions/apigroupjoin.php:121 actions/joingroup.php:109 lib/command.php:338
 msgid "You have been blocked from that group by the admin."
 msgstr "Foi bloqueado desse grupo pelo gestor."
 
+#. TRANS: Server error displayed when joining a group fails.
+#. TRANS: %1$s is a user nickname, $2$s is a group nickname.
+#. TRANS: Server error displayed when joining a group failed in the database.
+#. TRANS: %1$s is the joining user's nickname, $2$s is the group nickname for which the join failed.
 #. TRANS: Message given having failed to add a user to a group.
 #. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
-#: actions/apigroupjoin.php:140 actions/joingroup.php:134 lib/command.php:350
+#: actions/apigroupjoin.php:142 actions/joingroup.php:139 lib/command.php:350
 #, php-format
 msgid "Could not join user %1$s to group %2$s."
 msgstr "Não foi possível adicionar %1$s ao grupo %2$s."
 
-#: actions/apigroupleave.php:116
+#. TRANS: Server error displayed when trying to leave a group the user is not a member of.
+#: actions/apigroupleave.php:115
 msgid "You are not a member of this group."
 msgstr "Não é membro deste grupo."
 
+#. TRANS: Server error displayed when leaving a group fails.
+#. TRANS: %1$s is a user nickname, $2$s is a group nickname.
+#. TRANS: Server error displayed when leaving a group failed in the database.
+#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed.
 #. TRANS: Message given having failed to remove a user from a group.
 #. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
-#: actions/apigroupleave.php:126 actions/leavegroup.php:129
+#: actions/apigroupleave.php:127 actions/leavegroup.php:133
 #: lib/command.php:398
 #, php-format
 msgid "Could not remove user %1$s from group %2$s."
 msgstr "Não foi possível remover %1$s do grupo %2$s."
 
-#. TRANS: %s is a user name
-#: actions/apigrouplist.php:98
+#. TRANS: Used as title in check for group membership. %s is a user name.
+#: actions/apigrouplist.php:94
 #, php-format
 msgid "%s's groups"
 msgstr "Grupos de %s"
 
-#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
-#: actions/apigrouplist.php:108
+#. TRANS: Used as subtitle in check for group membership. %1$s is a user name, %2$s is the site name.
+#: actions/apigrouplist.php:104
 #, php-format
 msgid "%1$s groups %2$s is a member of."
 msgstr "Grupos de %1$s de que %2$s é membro."
 
-#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a title when listing the lastest 20 groups. %s is a site name.
 #. TRANS: Message is used as a page title. %s is a nick name.
-#: actions/apigrouplistall.php:92 actions/usergroups.php:63
+#: actions/apigrouplistall.php:88 actions/usergroups.php:63
 #, php-format
 msgid "%s groups"
 msgstr "Grupos de %s"
 
-#: actions/apigrouplistall.php:96
+#. TRANS: Message is used as a subtitle when listing the lastest 20 groups. %s is a site name.
+#: actions/apigrouplistall.php:93
 #, php-format
 msgid "groups on %s"
 msgstr "Grupos em %s"
 
-#: actions/apimediaupload.php:100
+#. TRANS: Client error displayed when uploading a media file has failed.
+#: actions/apimediaupload.php:101
 msgid "Upload failed."
 msgstr "O upload falhou."
 
-#: actions/apioauthauthorize.php:101
+#. TRANS: Client error given from the OAuth API when the request token or verifier is invalid.
+#: actions/apioauthaccesstoken.php:102
+#, fuzzy
+msgid "Invalid request token or verifier."
+msgstr "Chave de entrada especificada é inválida."
+
+#. TRANS: Client error given when no oauth_token was passed to the OAuth API.
+#: actions/apioauthauthorize.php:107
 msgid "No oauth_token parameter provided."
 msgstr "Não foi fornecido o parâmetro oauth_token."
 
-#: actions/apioauthauthorize.php:106
-msgid "Invalid token."
+#. TRANS: Client error given when an invalid request token was passed to the OAuth API.
+#: actions/apioauthauthorize.php:115 actions/apioauthauthorize.php:129
+#, fuzzy
+msgid "Invalid request token."
 msgstr "Chave inválida."
 
-#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:172 actions/disfavor.php:74
-#: actions/emailsettings.php:271 actions/favor.php:75 actions/geocode.php:55
-#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:230
-#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
-#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
-#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
-#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:350
-#: actions/register.php:172 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
+#. TRANS: Client error given when an invalid request token was passed to the OAuth API.
+#: actions/apioauthauthorize.php:121
+#, fuzzy
+msgid "Request token already authorized."
+msgstr "Não tem autorização."
+
+#. TRANS: Form validation error in API OAuth authorisation because of an invalid session token.
+#. TRANS: Client error displayed when the session token does not match or is not given.
+#. TRANS: Form validation error message.
+#. TRANS: Form validation error.
+#. TRANS: Form validation error message.
+#: actions/apioauthauthorize.php:147 actions/avatarsettings.php:280
+#: actions/deletenotice.php:177 actions/disfavor.php:75
+#: actions/emailsettings.php:291 actions/favor.php:75 actions/geocode.php:55
+#: actions/groupblock.php:65 actions/grouplogo.php:321
+#: actions/groupunblock.php:65 actions/imsettings.php:224
+#: actions/invite.php:60 actions/login.php:137 actions/makeadmin.php:66
+#: actions/newmessage.php:135 actions/newnotice.php:105 actions/nudge.php:80
+#: actions/oauthappssettings.php:165 actions/oauthconnectionssettings.php:138
+#: actions/othersettings.php:155 actions/passwordsettings.php:138
+#: actions/profilesettings.php:217 actions/recoverpassword.php:383
+#: actions/register.php:172 actions/remotesubscribe.php:76
+#: actions/repeat.php:82 actions/smssettings.php:250 actions/subedit.php:40
 #: actions/subscribe.php:86 actions/tagother.php:166
 #: actions/unsubscribe.php:69 actions/userauthorization.php:52
-#: lib/designsettings.php:294
+#: lib/designsettings.php:310
 msgid "There was a problem with your session token. Try again, please."
 msgstr "Ocorreu um problema com a sua sessão. Por favor, tente novamente."
 
-#: actions/apioauthauthorize.php:135
+#. TRANS: Form validation error given when an invalid username and/or password was passed to the OAuth API.
+#: actions/apioauthauthorize.php:168
 msgid "Invalid nickname / password!"
 msgstr "Utilizador ou senha inválidos!"
 
-#: actions/apioauthauthorize.php:159
-msgid "Database error deleting OAuth application user."
-msgstr "Erro na base de dados ao apagar o utilizador da aplicação OAuth."
-
-#: actions/apioauthauthorize.php:185
-msgid "Database error inserting OAuth application user."
+#. TRANS: Server error displayed when a database action fails.
+#: actions/apioauthauthorize.php:217
+#, fuzzy
+msgid "Database error inserting oauth_token_association."
 msgstr "Erro na base de dados ao inserir o utilizador da aplicação OAuth."
 
-#: actions/apioauthauthorize.php:214
-#, php-format
-msgid ""
-"The request token %s has been authorized. Please exchange it for an access "
-"token."
-msgstr "A chave de pedido %s foi autorizada. Troque-a por uma chave de acesso."
-
-#: actions/apioauthauthorize.php:227
-#, php-format
-msgid "The request token %s has been denied and revoked."
-msgstr "A chave de pedido %s foi negada e retirada."
-
+#. TRANS: Client error given on when invalid data was passed through a form in the OAuth API.
+#. TRANS: Unexpected validation error on avatar upload form.
+#. TRANS: Client error displayed when the submitted form contains unexpected data.
+#. TRANS: Client error displayed submitting invalid form data for edit application.
 #. TRANS: Message given submitting a form with an unknown action in e-mail settings.
-#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Form validation error message when an unsupported argument is used.
+#. TRANS: Message given submitting a form with an unknown action in Instant Messaging settings.
+#. TRANS: Client error displayed when encountering an unexpected action on form submission.
+#. TRANS: Client error when submitting a form with unexpected information.
+#. TRANS: Client error displayed when unexpected data is posted in the password recovery form.
 #. TRANS: Message given submitting a form with an unknown action in SMS settings.
-#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:104 actions/editapplication.php:139
-#: actions/emailsettings.php:290 actions/grouplogo.php:322
-#: actions/imsettings.php:245 actions/newapplication.php:121
-#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:277 lib/designsettings.php:304
+#. TRANS: Unknown form validation error in design settings form.
+#: actions/apioauthauthorize.php:294 actions/avatarsettings.php:294
+#: actions/designadminpanel.php:100 actions/editapplication.php:144
+#: actions/emailsettings.php:310 actions/grouplogo.php:332
+#: actions/imsettings.php:239 actions/newapplication.php:124
+#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:46
+#: actions/smssettings.php:271 lib/designsettings.php:321
 msgid "Unexpected form submission."
 msgstr "Envio inesperado de formulário."
 
-#: actions/apioauthauthorize.php:259
+#. TRANS: Title for a page where a user can confirm/deny account access by an external application.
+#: actions/apioauthauthorize.php:387
 msgid "An application would like to connect to your account"
 msgstr "Uma aplicação pretende ligar-se à sua conta"
 
-#: actions/apioauthauthorize.php:276
+#. TRANS: Fieldset legend.
+#: actions/apioauthauthorize.php:404
 msgid "Allow or deny access"
 msgstr "Permitir ou negar acesso"
 
-#: actions/apioauthauthorize.php:292
+#. TRANS: User notification of external application requesting account access.
+#. TRANS: %3$s is the access type requested (read-write or read-only), %4$s is the StatusNet sitename.
+#: actions/apioauthauthorize.php:425
+#, fuzzy, php-format
+msgid ""
+"An application would like the ability to <strong>%3$s</strong> your %4$s "
+"account data. You should only give access to your %4$s account to third "
+"parties you trust."
+msgstr ""
+"A aplicação <strong>%1$s</strong> por <strong>%2$s</strong> solicita "
+"permissão para <strong>%3$s</strong> os dados da sua conta %4$s. Só deve "
+"permitir acesso à sua conta %4$s a terceiros da sua confiança."
+
+#. TRANS: User notification of external application requesting account access.
+#. TRANS: %1$s is the application name requesting access, %2$s is the organisation behind the application,
+#. TRANS: %3$s is the access type requested, %4$s is the StatusNet sitename.
+#: actions/apioauthauthorize.php:433
 #, php-format
 msgid ""
 "The application <strong>%1$s</strong> by <strong>%2$s</strong> would like "
@@ -608,242 +910,760 @@ msgstr ""
 "permissão para <strong>%3$s</strong> os dados da sua conta %4$s. Só deve "
 "permitir acesso à sua conta %4$s a terceiros da sua confiança."
 
-#. TRANS: Main menu option when logged in for access to user settings
-#: actions/apioauthauthorize.php:310 lib/action.php:462
+#. TRANS: Fieldset legend.
+#: actions/apioauthauthorize.php:455
+#, fuzzy
+msgctxt "LEGEND"
 msgid "Account"
 msgstr "Conta"
 
-#: actions/apioauthauthorize.php:313 actions/login.php:252
-#: actions/profilesettings.php:106 actions/register.php:431
-#: actions/showgroup.php:245 actions/tagother.php:94
-#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:132
+#. TRANS: Field label on OAuth API authorisation form.
+#. TRANS: Field label in form for profile settings.
+#. TRANS: Label for group nickname (dt). Text hidden by default.
+#. TRANS: DT for nick name in a profile.
+#: actions/apioauthauthorize.php:459 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:432
+#: actions/showgroup.php:243 actions/tagother.php:94
+#: actions/userauthorization.php:145 lib/groupeditform.php:145
+#: lib/userprofile.php:137
 msgid "Nickname"
 msgstr "Utilizador"
 
+#. TRANS: Field label on OAuth API authorisation form.
 #. TRANS: Link description in user account settings menu.
-#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/apioauthauthorize.php:463 actions/login.php:255
 #: actions/register.php:436 lib/accountsettingsaction.php:120
 msgid "Password"
 msgstr "Senha"
 
-#: actions/apioauthauthorize.php:328
-msgid "Deny"
-msgstr "Negar"
+#. TRANS: Button text that when clicked will cancel the process of allowing access to an account
+#. TRANS: by an external application.
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an Instant Messaging address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label in the "Edit application" form.
+#: actions/apioauthauthorize.php:478 actions/emailsettings.php:124
+#: actions/imsettings.php:127 actions/smssettings.php:133
+#: lib/applicationeditform.php:351
+msgctxt "BUTTON"
+msgid "Cancel"
+msgstr "Cancelar"
 
-#: actions/apioauthauthorize.php:334
+#. TRANS: Button text that when clicked will allow access to an account by an external application.
+#: actions/apioauthauthorize.php:485
+#, fuzzy
+msgctxt "BUTTON"
 msgid "Allow"
 msgstr "Permitir"
 
-#: actions/apioauthauthorize.php:351
-msgid "Allow or deny access to your account information."
+#. TRANS: Form instructions.
+#: actions/apioauthauthorize.php:502
+#, fuzzy
+msgid "Authorize access to your account information."
 msgstr "Permitir ou negar acesso à informação da sua conta."
 
-#: actions/apistatusesdestroy.php:112
+#. TRANS: Header for user notification after revoking OAuth access to an application.
+#: actions/apioauthauthorize.php:594
+#, fuzzy
+msgid "Authorization canceled."
+msgstr "Confirmação do mensageiro instantâneo cancelada."
+
+#. TRANS: User notification after revoking OAuth access to an application.
+#. TRANS: %s is an OAuth token.
+#: actions/apioauthauthorize.php:598
+#, fuzzy, php-format
+msgid "The request token %s has been revoked."
+msgstr "A chave de pedido %s foi negada e retirada."
+
+#. TRANS: Title of the page notifying the user that an anonymous client application was successfully authorized to access the user's account with OAuth.
+#: actions/apioauthauthorize.php:621
+#, fuzzy
+msgid "You have successfully authorized the application"
+msgstr "Não tem autorização."
+
+#. TRANS: Message notifying the user that an anonymous client application was successfully authorized to access the user's account with OAuth.
+#: actions/apioauthauthorize.php:625
+msgid ""
+"Please return to the application and enter the following security code to "
+"complete the process."
+msgstr ""
+
+#. TRANS: Title of the page notifying the user that the client application was successfully authorized to access the user's account with OAuth.
+#. TRANS: %s is the authorised application name.
+#: actions/apioauthauthorize.php:632
+#, fuzzy, php-format
+msgid "You have successfully authorized %s"
+msgstr "Não tem autorização."
+
+#. TRANS: Message notifying the user that the client application was successfully authorized to access the user's account with OAuth.
+#. TRANS: %s is the authorised application name.
+#: actions/apioauthauthorize.php:639
+#, php-format
+msgid ""
+"Please return to %s and enter the following security code to complete the "
+"process."
+msgstr ""
+
+#. TRANS: Client error displayed trying to delete a status not using POST or DELETE.
+#. TRANS: POST and DELETE should not be translated.
+#: actions/apistatusesdestroy.php:111
 msgid "This method requires a POST or DELETE."
 msgstr "Este método requer um POST ou DELETE."
 
-#: actions/apistatusesdestroy.php:135
+#. TRANS: Client error displayed trying to delete a status of another user.
+#: actions/apistatusesdestroy.php:136
 msgid "You may not delete another user's status."
 msgstr "Não pode apagar o estado de outro utilizador."
 
-#: actions/apistatusesretweet.php:76 actions/apistatusesretweets.php:72
-#: actions/deletenotice.php:58 actions/shownotice.php:92
+#. TRANS: Client error displayed trying to repeat a non-existing notice through the API.
+#. TRANS: Client error displayed trying to display redents of a non-exiting notice.
+#. TRANS: Client exception thrown when referencing a non-existing notice.
+#. TRANS: Error message displayed trying to delete a non-existing notice.
+#: actions/apistatusesretweet.php:74 actions/apistatusesretweets.php:70
+#: actions/atompubshowfavorite.php:82 actions/deletenotice.php:61
+#: actions/shownotice.php:92
 msgid "No such notice."
 msgstr "Nota não foi encontrada."
 
+#. TRANS: Client error displayed trying to repeat an own notice through the API.
 #. TRANS: Error text shown when trying to repeat an own notice.
-#: actions/apistatusesretweet.php:84 lib/command.php:535
+#: actions/apistatusesretweet.php:83 lib/command.php:537
 msgid "Cannot repeat your own notice."
 msgstr "Não pode repetir a sua própria nota."
 
+#. TRANS: Client error displayed trying to re-repeat a notice through the API.
 #. TRANS: Error text shown when trying to repeat an notice that was already repeated by the user.
-#: actions/apistatusesretweet.php:92 lib/command.php:541
+#: actions/apistatusesretweet.php:92 lib/command.php:543
 msgid "Already repeated that notice."
 msgstr "Já repetiu essa nota."
 
-#: actions/apistatusesshow.php:139
+#. TRANS: Client error displayed calling an unsupported HTTP error in API status show.
+#. TRANS: Client exception thrown when using an unsupported HTTP method.
+#. TRANS: Client exception thrown using an unsupported HTTP method.
+#. TRANS: Client exception thrown when using an unsupported HTTP method.
+#. TRANS: Client error shown when using a non-supported HTTP method.
+#. TRANS: Client exception thrown when using an unsupported HTTP method.
+#: actions/apistatusesshow.php:118 actions/atompubfavoritefeed.php:103
+#: actions/atompubmembershipfeed.php:105 actions/atompubshowfavorite.php:117
+#: actions/atompubshowmembership.php:116
+#: actions/atompubshowsubscription.php:122
+#: actions/atompubsubscriptionfeed.php:109
+#, fuzzy
+msgid "HTTP method not supported."
+msgstr "Método da API não encontrado."
+
+#. TRANS: Exception thrown requesting an unsupported notice output format.
+#. TRANS: %s is the requested output format.
+#: actions/apistatusesshow.php:144
+#, fuzzy, php-format
+msgid "Unsupported format: %s"
+msgstr "Formato não suportado."
+
+#. TRANS: Client error displayed requesting a deleted status.
+#: actions/apistatusesshow.php:155
 msgid "Status deleted."
 msgstr "Estado apagado."
 
-#: actions/apistatusesshow.php:145
+#. TRANS: Client error displayed requesting a status with an invalid ID.
+#: actions/apistatusesshow.php:162
 msgid "No status with that ID found."
 msgstr "Não foi encontrado um estado com esse ID."
 
-#: actions/apistatusesupdate.php:222
+#. TRANS: Client error displayed when trying to delete a notice not using the Atom format.
+#: actions/apistatusesshow.php:227
+msgid "Can only delete using the Atom format."
+msgstr ""
+
+#. TRANS: Client error displayed when a user has no rights to delete notices of other users.
+#. TRANS: Error message displayed trying to delete a notice that was not made by the current user.
+#: actions/apistatusesshow.php:235 actions/deletenotice.php:78
+#, fuzzy
+msgid "Cannot delete this notice."
+msgstr "Nota não pode ser apagada."
+
+#. TRANS: Confirmation of notice deletion in API. %d is the ID (number) of the deleted notice.
+#: actions/apistatusesshow.php:249
+#, fuzzy, php-format
+msgid "Deleted notice %d"
+msgstr "Apagar nota"
+
+#. TRANS: Client error displayed when the parameter "status" is missing.
+#: actions/apistatusesupdate.php:221
 msgid "Client must provide a 'status' parameter with a value."
 msgstr "O cliente tem de fornecer um parâmetro 'status' com um valor."
 
-#: actions/apistatusesupdate.php:243 actions/newnotice.php:157
+#. TRANS: Client error displayed when the parameter "status" is missing.
+#. TRANS: %d is the maximum number of character for a notice.
+#: actions/apistatusesupdate.php:244 actions/newnotice.php:161
 #: lib/mailhandler.php:60
-#, php-format
-msgid "That's too long. Max notice size is %d chars."
-msgstr "Demasiado longo. Tamanho máx. das notas é %d caracteres."
-
-#: actions/apistatusesupdate.php:284 actions/apiusershow.php:96
-msgid "Not found."
-msgstr "Não encontrado."
+#, fuzzy, php-format
+msgid "That's too long. Maximum notice size is %d character."
+msgid_plural "That's too long. Maximum notice size is %d characters."
+msgstr[0] "Demasiado longo. Tamanho máx. das notas é %d caracteres."
+msgstr[1] "Demasiado longo. Tamanho máx. das notas é %d caracteres."
 
-#: actions/apistatusesupdate.php:307 actions/newnotice.php:181
-#, php-format
-msgid "Max notice size is %d chars, including attachment URL."
-msgstr "Tamanho máx. das notas é %d caracteres, incluíndo a URL do anexo."
+#. TRANS: Client error displayed when replying to a non-existing notice.
+#: actions/apistatusesupdate.php:284
+#, fuzzy
+msgid "Parent notice not found."
+msgstr "Método da API não encontrado."
 
-#: actions/apisubscriptions.php:233 actions/apisubscriptions.php:263
+#. TRANS: Client error displayed exceeding the maximum notice length.
+#. TRANS: %d is the maximum lenth for a notice.
+#: actions/apistatusesupdate.php:308 actions/newnotice.php:184
+#, fuzzy, php-format
+msgid "Maximum notice size is %d character, including attachment URL."
+msgid_plural "Maximum notice size is %d characters, including attachment URL."
+msgstr[0] "Tamanho máx. das notas é %d caracteres, incluindo a URL do anexo."
+msgstr[1] "Tamanho máx. das notas é %d caracteres, incluindo a URL do anexo."
+
+#. TRANS: Client error displayed when requesting profiles of followers in an unsupported format.
+#. TRANS: Client error displayed when requesting IDs of followers in an unsupported format.
+#: actions/apisubscriptions.php:228 actions/apisubscriptions.php:258
 msgid "Unsupported format."
 msgstr "Formato não suportado."
 
-#: actions/apitimelinefavorites.php:110
+#. TRANS: Title for timeline of most recent favourite notices by a user.
+#. TRANS: %1$s is the StatusNet sitename, %2$s is a user nickname.
+#: actions/apitimelinefavorites.php:108
 #, php-format
 msgid "%1$s / Favorites from %2$s"
 msgstr "%1$s / Favoritas de %2$s"
 
-#: actions/apitimelinefavorites.php:119
-#, php-format
-msgid "%1$s updates favorited by %2$s / %2$s."
+#. TRANS: Subtitle for timeline of most recent favourite notices by a user.
+#. TRANS: %1$s is the StatusNet sitename, %2$s is a user's full name,
+#. TRANS: %3$s is a user nickname.
+#: actions/apitimelinefavorites.php:120
+#, fuzzy, php-format
+msgid "%1$s updates favorited by %2$s / %3$s."
 msgstr "%1$s actualizações preferidas por %2$s / %2$s."
 
-#: actions/apitimelinementions.php:118
+#. TRANS: Server error displayed when generating an Atom feed fails.
+#. TRANS: %s is the error.
+#: actions/apitimelinegroup.php:134
+#, fuzzy, php-format
+msgid "Could not generate feed for group - %s"
+msgstr "Não foi possível actualizar o grupo."
+
+#. TRANS: Title for timeline of most recent mentions of a user.
+#. TRANS: %1$s is the StatusNet sitename, %2$s is a user nickname.
+#: actions/apitimelinementions.php:115
 #, php-format
 msgid "%1$s / Updates mentioning %2$s"
 msgstr "%1$s / Actualizações que mencionam %2$s"
 
+#. TRANS: Subtitle for timeline of most recent mentions of a user.
+#. TRANS: %1$s is the StatusNet sitename, %2$s is a user nickname,
+#. TRANS: %3$s is a user's full name.
 #: actions/apitimelinementions.php:131
 #, php-format
 msgid "%1$s updates that reply to updates from %2$s / %3$s."
 msgstr "%1$s actualizações em resposta a actualizações de %2$s / %3$s."
 
-#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
+#. TRANS: Title for site timeline. %s is the StatusNet sitename.
+#: actions/apitimelinepublic.php:193 actions/publicrss.php:103
 #, php-format
 msgid "%s public timeline"
 msgstr "Notas públicas de %s"
 
-#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
+#. TRANS: Subtitle for site timeline. %s is the StatusNet sitename.
+#: actions/apitimelinepublic.php:199 actions/publicrss.php:105
 #, php-format
 msgid "%s updates from everyone!"
 msgstr "%s actualizações de todos!"
 
-#: actions/apitimelineretweetedtome.php:111
+#. TRANS: Server error displayed calling unimplemented API method for 'retweeted by me'.
+#: actions/apitimelineretweetedbyme.php:71
+#, fuzzy
+msgid "Unimplemented."
+msgstr "Método não implementado."
+
+#. TRANS: Title for Atom feed "repeated to me". %s is the user nickname.
+#: actions/apitimelineretweetedtome.php:108
 #, php-format
 msgid "Repeated to %s"
 msgstr "Repetida para %s"
 
-#: actions/apitimelineretweetsofme.php:114
+#. TRANS: Title of list of repeated notices of the logged in user.
+#. TRANS: %s is the nickname of the logged in user.
+#: actions/apitimelineretweetsofme.php:112
 #, php-format
 msgid "Repeats of %s"
 msgstr "Repetições de %s"
 
-#: actions/apitimelinetag.php:105 actions/tag.php:67
+#. TRANS: Title for timeline with lastest notices with a given tag.
+#. TRANS: %s is the tag.
+#: actions/apitimelinetag.php:101 actions/tag.php:67
 #, php-format
 msgid "Notices tagged with %s"
 msgstr "Notas categorizadas com %s"
 
-#: actions/apitimelinetag.php:107 actions/tagrss.php:65
+#. TRANS: Subtitle for timeline with lastest notices with a given tag.
+#. TRANS: %1$s is the tag, $2$s is the StatusNet sitename.
+#: actions/apitimelinetag.php:105 actions/tagrss.php:65
 #, php-format
 msgid "Updates tagged with %1$s on %2$s!"
 msgstr "Actualizações categorizadas com %1$s em %2$s!"
 
-#: actions/apitrends.php:87
+#. TRANS: Client error displayed trying to add a notice to another user's timeline.
+#: actions/apitimelineuser.php:297
+#, fuzzy
+msgid "Only the user can add to their own timeline."
+msgstr "Só o próprio utilizador pode ler a sua caixa de correio."
+
+#. TRANS: Client error displayed when using another format than AtomPub.
+#: actions/apitimelineuser.php:304
+msgid "Only accept AtomPub for Atom feeds."
+msgstr ""
+
+#. TRANS: Client error displayed attempting to post an empty API notice.
+#: actions/apitimelineuser.php:311
+msgid "Atom post must not be empty."
+msgstr ""
+
+#. TRANS: Client error displayed attempting to post an API that is not well-formed XML.
+#: actions/apitimelineuser.php:317
+msgid "Atom post must be well-formed XML."
+msgstr ""
+
+#. TRANS: Client error displayed when not using an Atom entry.
+#: actions/apitimelineuser.php:323 actions/atompubfavoritefeed.php:228
+#: actions/atompubmembershipfeed.php:230
+#: actions/atompubsubscriptionfeed.php:236
+msgid "Atom post must be an Atom entry."
+msgstr ""
+
+#. TRANS: Client error displayed when not using the POST verb. Do not translate POST.
+#: actions/apitimelineuser.php:335
+msgid "Can only handle POST activities."
+msgstr ""
+
+#. TRANS: Client error displayed when using an unsupported activity object type.
+#. TRANS: %s is the unsupported activity object type.
+#: actions/apitimelineuser.php:346
+#, php-format
+msgid "Cannot handle activity object type \"%s\"."
+msgstr ""
+
+#. TRANS: Client error displayed when posting a notice without content through the API.
+#. TRANS: %d is the notice ID (number).
+#: actions/apitimelineuser.php:380
+#, fuzzy, php-format
+msgid "No content for notice %d."
+msgstr "Procurar no conteúdo das notas"
+
+#. TRANS: Client error displayed when using another format than AtomPub.
+#: actions/apitimelineuser.php:408
+#, fuzzy, php-format
+msgid "Notice with URI \"%s\" already exists."
+msgstr "Não existe nenhuma nota com essa identificação."
+
+#. TRANS: Server error for unfinished API method showTrends.
+#: actions/apitrends.php:85
 msgid "API method under construction."
 msgstr "Método da API em desenvolvimento."
 
+#. TRANS: Client error displayed when requesting user information for a non-existing user.
+#: actions/apiuserprofileimage.php:80 actions/apiusershow.php:94
+#, fuzzy
+msgid "User not found."
+msgstr "Método da API não encontrado."
+
+#. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile.
+#. TRANS: Client exception.
+#: actions/atompubfavoritefeed.php:69 actions/atompubmembershipfeed.php:71
+#: actions/atompubshowfavorite.php:75 actions/atompubshowmembership.php:72
+#: actions/subscribe.php:107
+msgid "No such profile."
+msgstr "Perfil não foi encontrado."
+
+#. TRANS: Subtitle for Atom favorites feed.
+#. TRANS: %1$s is a user nickname, %2$s is the StatusNet sitename.
+#: actions/atompubfavoritefeed.php:147
+#, fuzzy, php-format
+msgid "Notices %1$s has favorited on %2$s"
+msgstr "Actualizações de %1$s e amigos no %2$s!"
+
+#. TRANS: Client exception thrown when trying to set a favorite for another user.
+#. TRANS: Client exception thrown when trying to subscribe another user.
+#: actions/atompubfavoritefeed.php:217 actions/atompubsubscriptionfeed.php:225
+#, fuzzy
+msgid "Cannot add someone else's subscription."
+msgstr "Não foi possível inserir nova subscrição."
+
+#. TRANS: Client exception thrown when trying use an incorrect activity verb for the Atom pub method.
+#: actions/atompubfavoritefeed.php:240
+#, fuzzy
+msgid "Can only handle favorite activities."
+msgstr "Procurar no conteúdo das notas"
+
+#. TRANS: Client exception thrown when trying favorite an object that is not a notice.
+#: actions/atompubfavoritefeed.php:250 actions/atompubmembershipfeed.php:250
+#, fuzzy
+msgid "Can only fave notices."
+msgstr "Procurar no conteúdo das notas"
+
+#. TRANS: Client exception thrown when trying favorite a notice without content.
+#: actions/atompubfavoritefeed.php:259
+#, fuzzy
+msgid "Unknown note."
+msgstr "Desconhecida"
+
+#. TRANS: Client exception thrown when trying favorite an already favorited notice.
+#: actions/atompubfavoritefeed.php:267
+#, fuzzy
+msgid "Already a favorite."
+msgstr "Adicionar às favoritas"
+
+#. TRANS: Title for group membership feed.
+#. TRANS: %s is a username.
+#: actions/atompubmembershipfeed.php:144
+#, fuzzy, php-format
+msgid "%s group memberships"
+msgstr "Membros do grupo %s"
+
+#. TRANS: Subtitle for group membership feed.
+#. TRANS: %1$s is a username, %2$s is the StatusNet sitename.
+#: actions/atompubmembershipfeed.php:149
+#, fuzzy, php-format
+msgid "Groups %1$s is a member of on %2$s"
+msgstr "Grupos de que %s é membro"
+
+#. TRANS: Client exception thrown when trying subscribe someone else to a group.
+#: actions/atompubmembershipfeed.php:219
+#, fuzzy
+msgid "Cannot add someone else's membership."
+msgstr "Não foi possível inserir nova subscrição."
+
+#. TRANS: Client error displayed when not using the POST verb.
+#. TRANS: Do not translate POST.
+#: actions/atompubmembershipfeed.php:242
+#, fuzzy
+msgid "Can only handle join activities."
+msgstr "Procurar no conteúdo das notas"
+
+#. TRANS: Client exception thrown when trying to subscribe to a non-existing group.
+#: actions/atompubmembershipfeed.php:259
+#, fuzzy
+msgid "Unknown group."
+msgstr "Desconhecida"
+
+#. TRANS: Client exception thrown when trying to subscribe to an already subscribed group.
+#: actions/atompubmembershipfeed.php:267
+#, fuzzy
+msgid "Already a member."
+msgstr "Todos os membros"
+
+#. TRANS: Client exception thrown when trying to subscribe to group while blocked from that group.
+#: actions/atompubmembershipfeed.php:275
+msgid "Blocked by admin."
+msgstr ""
+
+#. TRANS: Client exception thrown when referencing a non-existing favorite.
+#: actions/atompubshowfavorite.php:90
+#, fuzzy
+msgid "No such favorite."
+msgstr "Ficheiro não foi encontrado."
+
+#. TRANS: Client exception thrown when trying to remove a favorite notice of another user.
+#: actions/atompubshowfavorite.php:151
+#, fuzzy
+msgid "Cannot delete someone else's favorite."
+msgstr "Não foi possível eliminar o favorito."
+
+#. TRANS: Client exception thrown when referencing a non-existing group.
+#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group.
+#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group.
+#. TRANS: Client error when trying to delete a non-local group.
+#. TRANS: Client error when trying to delete a non-existing group.
+#. TRANS: Client error displayed trying to edit a non-existing group.
+#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname.
+#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group.
+#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group.
+#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group.
+#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID.
+#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group.
+#. TRANS: Client error displayed when trying to update logo settings for a non-existing group.
+#. TRANS: Client error displayed when trying to view group members for a non-existing group.
+#. TRANS: Client error displayed when trying to view group members for an object that is not a group.
+#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist.
+#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group.
+#. TRANS: Client error displayed when trying to unblock a user from a non-existing group.
+#. TRANS: Client error displayed when trying to join a non-local group.
+#. TRANS: Client error displayed when trying to join a non-existing group.
+#. TRANS: Client error displayed when trying to leave a non-local group.
+#. TRANS: Client error displayed when trying to leave a non-existing group.
+#. TRANS: Client error displayed if no remote group with a given name was found requesting group page.
+#. TRANS: Client error displayed if no local group with a given name was found requesting group page.
+#. TRANS: Command exception text shown when a group is requested that does not exist.
+#. TRANS: Error text shown when trying to leave a group that does not exist.
+#: actions/atompubshowmembership.php:81 actions/blockedfromgroup.php:81
+#: actions/blockedfromgroup.php:89 actions/deletegroup.php:87
+#: actions/deletegroup.php:100 actions/editgroup.php:102
+#: actions/foafgroup.php:46 actions/foafgroup.php:65 actions/foafgroup.php:73
+#: actions/groupblock.php:89 actions/groupbyid.php:83
+#: actions/groupdesignsettings.php:101 actions/grouplogo.php:103
+#: actions/groupmembers.php:84 actions/groupmembers.php:92
+#: actions/grouprss.php:97 actions/grouprss.php:105
+#: actions/groupunblock.php:89 actions/joingroup.php:82
+#: actions/joingroup.php:95 actions/leavegroup.php:82
+#: actions/leavegroup.php:95 actions/makeadmin.php:86
+#: actions/showgroup.php:134 actions/showgroup.php:143 lib/command.php:168
+#: lib/command.php:380
+msgid "No such group."
+msgstr "Grupo não foi encontrado."
+
+#. TRANS: Client exception thrown when trying to show membership of a non-subscribed group
+#: actions/atompubshowmembership.php:91
+#, fuzzy
+msgid "Not a member."
+msgstr "Todos os membros"
+
+#. TRANS: Client exception thrown when deleting someone else's membership.
+#: actions/atompubshowmembership.php:151
+#, fuzzy
+msgid "Cannot delete someone else's membership."
+msgstr "Não foi possível apagar a auto-subscrição."
+
+#. TRANS: Client exception thrown when trying to display a subscription for a non-existing profile ID.
+#. TRANS: %d is the non-existing profile ID number.
+#: actions/atompubshowsubscription.php:72
+#: actions/atompubshowsubscription.php:83
+#: actions/atompubsubscriptionfeed.php:74
+#, fuzzy, php-format
+msgid "No such profile id: %d."
+msgstr "Perfil não foi encontrado."
+
+#. TRANS: Client exception thrown when trying to display a subscription for a non-subscribed profile ID.
+#. TRANS: %1$d is the non-existing subscriber ID number, $2$d is the ID of the profile that was not subscribed to.
+#: actions/atompubshowsubscription.php:94
+#, fuzzy, php-format
+msgid "Profile %1$d not subscribed to profile %2$d."
+msgstr "Não subscreveu esse perfil."
+
+#. TRANS: Client exception thrown when trying to delete a subscription of another user.
+#: actions/atompubshowsubscription.php:157
+#, fuzzy
+msgid "Cannot delete someone else's subscription."
+msgstr "Não foi possível apagar a auto-subscrição."
+
+#. TRANS: Subtitle for Atom subscription feed.
+#. TRANS: %1$s is a user nickname, %s$s is the StatusNet sitename.
+#: actions/atompubsubscriptionfeed.php:153
+#, fuzzy, php-format
+msgid "People %1$s has subscribed to on %2$s"
+msgstr "Pessoas que subscrevem %s"
+
+#. TRANS: Client error displayed when not using the follow verb.
+#: actions/atompubsubscriptionfeed.php:248
+msgid "Can only handle Follow activities."
+msgstr ""
+
+#. TRANS: Client exception thrown when subscribing to an object that is not a person.
+#: actions/atompubsubscriptionfeed.php:256
+msgid "Can only follow people."
+msgstr ""
+
+#. TRANS: Client exception thrown when subscribing to a non-existing profile.
+#. TRANS: %s is the unknown profile ID.
+#: actions/atompubsubscriptionfeed.php:267
+#, fuzzy, php-format
+msgid "Unknown profile %s."
+msgstr "Tipo do ficheiro é desconhecido"
+
+#. TRANS: Client error displayed trying to subscribe to an already subscribed profile.
+#. TRANS: %s is the profile the user already has a subscription on.
+#: actions/atompubsubscriptionfeed.php:275
+#, fuzzy, php-format
+msgid "Already subscribed to %s."
+msgstr "Já subscrito!"
+
+#. TRANS: Client error displayed trying to get a non-existing attachment.
 #: actions/attachment.php:73
 msgid "No such attachment."
 msgstr "Anexo não foi encontrado."
 
-#: actions/avatarbynickname.php:59 actions/blockedfromgroup.php:73
-#: actions/editgroup.php:84 actions/groupdesignsettings.php:84
+#. TRANS: Client error displayed trying to get an avatar without providing a nickname.
+#. TRANS: Client error displayed when requesting a list of blocked users for a group without providing a group nickname.
+#. TRANS: Client error displayed trying to edit a group while not proving a nickname for the group to edit.
+#. TRANS: Client error displayed trying to change group design settings without providing a group nickname.
+#. TRANS: Client error displayed when trying to change group logo settings without providing a nickname.
+#. TRANS: Client error displayed when trying to view group members without providing a group nickname.
+#. TRANS: Client error displayed when requesting a group RSS feed without providing a group nickname.
+#. TRANS: Client error displayed if no nickname argument was given requesting a group page.
+#: actions/avatarbynickname.php:60 actions/blockedfromgroup.php:73
+#: actions/editgroup.php:85 actions/groupdesignsettings.php:84
 #: actions/grouplogo.php:86 actions/groupmembers.php:76
-#: actions/grouprss.php:91 actions/showgroup.php:121
+#: actions/grouprss.php:89 actions/showgroup.php:116
 msgid "No nickname."
 msgstr "Nome de utilizador não definido."
 
-#: actions/avatarbynickname.php:64
+#. TRANS: Client error displayed trying to get an avatar without providing an avatar size.
+#: actions/avatarbynickname.php:66
 msgid "No size."
 msgstr "Tamanho não definido."
 
-#: actions/avatarbynickname.php:69
+#. TRANS: Client error displayed trying to get an avatar providing an invalid avatar size.
+#: actions/avatarbynickname.php:72
 msgid "Invalid size."
 msgstr "Tamanho inválido."
 
+#. TRANS: Title for avatar upload page.
+#. TRANS: Label for group avatar (dt). Text hidden by default.
 #. TRANS: Link description in user account settings menu.
-#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: actions/avatarsettings.php:66 actions/showgroup.php:227
 #: lib/accountsettingsaction.php:113
 msgid "Avatar"
 msgstr "Avatar"
 
+#. TRANS: Instruction for avatar upload page.
+#. TRANS: %s is the maximum file size, for example "500b", "10kB" or "2MB".
 #: actions/avatarsettings.php:78
 #, php-format
 msgid "You can upload your personal avatar. The maximum file size is %s."
 msgstr "Pode carregar o seu avatar pessoal. O tamanho máximo do ficheiro é %s."
 
-#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#. TRANS: Server error displayed in avatar upload page when no matching profile can be found for a user.
+#. TRANS: Server error displayed coming across a request from a user without a profile.
+#: actions/avatarsettings.php:108 actions/avatarsettings.php:192
+#: actions/grouplogo.php:184 actions/remotesubscribe.php:190
 #: actions/userauthorization.php:72 actions/userrss.php:108
 msgid "User without matching profile."
 msgstr "Utilizador sem perfil correspondente."
 
-#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
-#: actions/grouplogo.php:254
+#. TRANS: Avatar upload page form legend.
+#. TRANS: Avatar upload page crop form legend.
+#. TRANS: Legend for group logo settings fieldset.
+#: actions/avatarsettings.php:122 actions/avatarsettings.php:205
+#: actions/grouplogo.php:261
 msgid "Avatar settings"
 msgstr "Configurações do avatar"
 
-#: actions/avatarsettings.php:127 actions/avatarsettings.php:205
-#: actions/grouplogo.php:202 actions/grouplogo.php:262
+#. TRANS: Header on avatar upload page for thumbnail of originally uploaded avatar (h2).
+#. TRANS: Header on avatar upload crop form for thumbnail of originally uploaded avatar (h2).
+#. TRANS: Uploaded original file in group logo form.
+#. TRANS: Header for originally uploaded file before a crop on the group logo page.
+#: actions/avatarsettings.php:131 actions/avatarsettings.php:214
+#: actions/grouplogo.php:207 actions/grouplogo.php:270
 msgid "Original"
 msgstr "Original"
 
-#: actions/avatarsettings.php:142 actions/avatarsettings.php:217
-#: actions/grouplogo.php:213 actions/grouplogo.php:274
+#. TRANS: Header on avatar upload page for thumbnail of to be used rendition of uploaded avatar (h2).
+#. TRANS: Header on avatar upload crop form for thumbnail of to be used rendition of uploaded avatar (h2).
+#. TRANS: Header for preview of to be displayed group logo.
+#. TRANS: Header for the cropped group logo on the group logo page.
+#: actions/avatarsettings.php:147 actions/avatarsettings.php:227
+#: actions/grouplogo.php:219 actions/grouplogo.php:283
 msgid "Preview"
 msgstr "Antevisão"
 
-#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:667
+#. TRANS: Button on avatar upload page to delete current avatar.
+#. TRANS: Button text for user account deletion.
+#: actions/avatarsettings.php:155 actions/deleteaccount.php:319
+#, fuzzy
+msgctxt "BUTTON"
 msgid "Delete"
 msgstr "Apagar"
 
-#: actions/avatarsettings.php:166 actions/grouplogo.php:236
+#. TRANS: Button on avatar upload page to upload an avatar.
+#. TRANS: Submit button to confirm upload of a user backup file for account restore.
+#: actions/avatarsettings.php:173 actions/restoreaccount.php:369
+#, fuzzy
+msgctxt "BUTTON"
 msgid "Upload"
 msgstr "Carregar"
 
-#: actions/avatarsettings.php:231 actions/grouplogo.php:289
+#. TRANS: Button on avatar upload crop form to confirm a selected crop as avatar.
+#: actions/avatarsettings.php:243
+#, fuzzy
+msgctxt "BUTTON"
 msgid "Crop"
 msgstr "Cortar"
 
-#: actions/avatarsettings.php:305
+#. TRANS: Validation error on avatar upload form when no file was uploaded.
+#: actions/avatarsettings.php:318
 msgid "No file uploaded."
 msgstr "Não foi carregado nenhum ficheiro."
 
-#: actions/avatarsettings.php:332
+#. TRANS: Avatar upload form unstruction after uploading a file.
+#: actions/avatarsettings.php:345
 msgid "Pick a square area of the image to be your avatar"
 msgstr "Escolha uma área quadrada da imagem para ser o seu avatar"
 
-#: actions/avatarsettings.php:347 actions/grouplogo.php:380
+#. TRANS: Server error displayed if an avatar upload went wrong somehow server side.
+#. TRANS: Server error displayed trying to crop an uploaded group logo that is no longer present.
+#: actions/avatarsettings.php:360 actions/grouplogo.php:391
 msgid "Lost our file data."
 msgstr "Perdi os dados do nosso ficheiro."
 
-#: actions/avatarsettings.php:370
+#. TRANS: Success message for having updated a user avatar.
+#: actions/avatarsettings.php:384
 msgid "Avatar updated."
 msgstr "Avatar actualizado."
 
-#: actions/avatarsettings.php:373
+#. TRANS: Error displayed on the avatar upload page if the avatar could not be updated for an unknown reason.
+#: actions/avatarsettings.php:388
 msgid "Failed updating avatar."
 msgstr "Falha ao actualizar avatar."
 
-#: actions/avatarsettings.php:397
+#. TRANS: Success message for deleting a user avatar.
+#: actions/avatarsettings.php:412
 msgid "Avatar deleted."
 msgstr "Avatar apagado."
 
-#: actions/block.php:69
+#. TRANS: Title for backup account page.
+#. TRANS: Option in profile settings to create a backup of the account of the currently logged in user.
+#: actions/backupaccount.php:61 actions/profilesettings.php:467
+msgid "Backup account"
+msgstr ""
+
+#. TRANS: Client exception thrown when trying to backup an account while not logged in.
+#: actions/backupaccount.php:79
+#, fuzzy
+msgid "Only logged-in users can backup their account."
+msgstr "Só utilizadores com sessão iniciada podem repetir notas."
+
+#. TRANS: Client exception thrown when trying to backup an account without having backup rights.
+#: actions/backupaccount.php:84
+msgid "You may not backup your account."
+msgstr ""
+
+#. TRANS: Information displayed on the backup account page.
+#: actions/backupaccount.php:225
+msgid ""
+"You can backup your account data in <a href=\"http://activitystrea.ms/"
+"\">Activity Streams</a> format. This is an experimental feature and provides "
+"an incomplete backup; private account information like email and IM "
+"addresses is not backed up. Additionally, uploaded files and direct messages "
+"are not backed up."
+msgstr ""
+
+#. TRANS: Submit button to backup an account on the backup account page.
+#: actions/backupaccount.php:248
+#, fuzzy
+msgctxt "BUTTON"
+msgid "Backup"
+msgstr "Fundo"
+
+#. TRANS: Title for submit button to backup an account on the backup account page.
+#: actions/backupaccount.php:252
+msgid "Backup your account"
+msgstr ""
+
+#. TRANS: Client error displayed when blocking a user that has already been blocked.
+#: actions/block.php:68
 msgid "You already blocked that user."
 msgstr "Já bloqueou esse utilizador."
 
-#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
+#. TRANS: Title for block user page.
+#. TRANS: Legend for block user form.
+#. TRANS: Fieldset legend for block user from group form.
+#: actions/block.php:106 actions/block.php:136 actions/groupblock.php:165
 msgid "Block user"
 msgstr "Bloquear utilizador"
 
-#: actions/block.php:138
+#. TRANS: Explanation of consequences when blocking a user on the block user page.
+#: actions/block.php:139
 msgid ""
 "Are you sure you want to block this user? Afterwards, they will be "
 "unsubscribed from you, unable to subscribe to you in the future, and you "
@@ -855,181 +1675,252 @@ msgstr ""
 
 #. TRANS: Button label on the user block form.
 #. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete group form.
 #. TRANS: Button label on the delete notice form.
 #. TRANS: Button label on the delete user form.
 #. TRANS: Button label on the form to block a user from a group.
-#: actions/block.php:153 actions/deleteapplication.php:154
-#: actions/deletenotice.php:150 actions/deleteuser.php:152
-#: actions/groupblock.php:178
+#: actions/block.php:154 actions/deleteapplication.php:157
+#: actions/deletegroup.php:220 actions/deletenotice.php:155
+#: actions/deleteuser.php:154 actions/groupblock.php:187
 msgctxt "BUTTON"
 msgid "No"
 msgstr "Não"
 
 #. TRANS: Submit button title for 'No' when blocking a user.
-#. TRANS: Submit button title for 'No' when deleting a user.
-#: actions/block.php:157 actions/deleteuser.php:156
+#: actions/block.php:158
 msgid "Do not block this user"
 msgstr "Não bloquear este utilizador"
 
 #. TRANS: Button label on the user block form.
 #. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete group form.
 #. TRANS: Button label on the delete notice form.
 #. TRANS: Button label on the delete user form.
 #. TRANS: Button label on the form to block a user from a group.
-#: actions/block.php:160 actions/deleteapplication.php:161
-#: actions/deletenotice.php:157 actions/deleteuser.php:159
-#: actions/groupblock.php:185
+#: actions/block.php:161 actions/deleteapplication.php:164
+#: actions/deletegroup.php:227 actions/deletenotice.php:162
+#: actions/deleteuser.php:161 actions/groupblock.php:194
 msgctxt "BUTTON"
 msgid "Yes"
 msgstr "Sim"
 
 #. TRANS: Submit button title for 'Yes' when blocking a user.
 #. TRANS: Description of the form to block a user.
-#: actions/block.php:164 lib/blockform.php:79
+#: actions/block.php:165 lib/blockform.php:79
 msgid "Block this user"
 msgstr "Bloquear este utilizador"
 
-#: actions/block.php:187
+#. TRANS: Server error displayed when blocking a user fails.
+#: actions/block.php:189
 msgid "Failed to save block information."
 msgstr "Não foi possível gravar informação do bloqueio."
 
-#. TRANS: Command exception text shown when a group is requested that does not exist.
-#. TRANS: Error text shown when trying to leave a group that does not exist.
-#: actions/blockedfromgroup.php:80 actions/blockedfromgroup.php:87
-#: actions/editgroup.php:100 actions/foafgroup.php:44 actions/foafgroup.php:62
-#: actions/foafgroup.php:69 actions/groupblock.php:86 actions/groupbyid.php:83
-#: actions/groupdesignsettings.php:100 actions/grouplogo.php:102
-#: actions/groupmembers.php:83 actions/groupmembers.php:90
-#: actions/grouprss.php:98 actions/grouprss.php:105
-#: actions/groupunblock.php:86 actions/joingroup.php:82
-#: actions/joingroup.php:93 actions/leavegroup.php:82
-#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:168
-#: lib/command.php:380
-msgid "No such group."
-msgstr "Grupo não foi encontrado."
-
-#: actions/blockedfromgroup.php:97
+#. TRANS: Title for first page with list of users blocked from a group.
+#. TRANS: %s is a group nickname.
+#: actions/blockedfromgroup.php:101
 #, php-format
 msgid "%s blocked profiles"
 msgstr "%s perfis bloqueados"
 
-#: actions/blockedfromgroup.php:100
+#. TRANS: Title for any but the first page with list of users blocked from a group.
+#. TRANS: %1$s is a group nickname, %2$d is a page number.
+#: actions/blockedfromgroup.php:106
 #, php-format
 msgid "%1$s blocked profiles, page %2$d"
 msgstr "Perfis bloqueados de %1$s, página %2$d"
 
-#: actions/blockedfromgroup.php:115
+#. TRANS: Instructions for list of users blocked from a group.
+#: actions/blockedfromgroup.php:122
 msgid "A list of the users blocked from joining this group."
 msgstr "Uma lista dos utilizadores com entrada bloqueada neste grupo."
 
-#: actions/blockedfromgroup.php:288
+#. TRANS: Form legend for unblocking a user from a group.
+#: actions/blockedfromgroup.php:291
 msgid "Unblock user from group"
 msgstr "Desbloquear utilizador do grupo"
 
-#. TRANS: Title for the form to unblock a user.
-#: actions/blockedfromgroup.php:320 lib/unblockform.php:70
+#. TRANS: Button text for unblocking a user from a group.
+#: actions/blockedfromgroup.php:323
+#, fuzzy
+msgctxt "BUTTON"
 msgid "Unblock"
 msgstr "Desbloquear"
 
+#. TRANS: Tooltip for button for unblocking a user from a group.
 #. TRANS: Description of the form to unblock a user.
-#: actions/blockedfromgroup.php:320 lib/unblockform.php:82
+#: actions/blockedfromgroup.php:327 lib/unblockform.php:78
 msgid "Unblock this user"
 msgstr "Desbloquear este utilizador"
 
 #. TRANS: Title for mini-posting window loaded from bookmarklet.
+#. TRANS: %s is the StatusNet site name.
 #: actions/bookmarklet.php:51
 #, php-format
 msgid "Post to %s"
 msgstr "Publicar em %s"
 
-#: actions/confirmaddress.php:75
+#. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action.
+#: actions/confirmaddress.php:74
 msgid "No confirmation code."
 msgstr "Sem código de confimação."
 
+#. TRANS: Client error displayed when providing a non-existing confirmation code in the contact address confirmation action.
 #: actions/confirmaddress.php:80
 msgid "Confirmation code not found."
 msgstr "Código de confirmação não encontrado"
 
-#: actions/confirmaddress.php:85
+#. TRANS: Client error displayed when not providing a confirmation code for another user in the contact address confirmation action.
+#: actions/confirmaddress.php:86
 msgid "That confirmation code is not for you!"
 msgstr "Esse código de confirmação não é para si!"
 
-#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
-#: actions/confirmaddress.php:91
+#. TRANS: Server error for a unknow address type %s, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:92
 #, php-format
 msgid "Unrecognized address type %s."
 msgstr "Tipo do endereço %s não reconhecido."
 
-#. TRANS: Client error for an already confirmed email/jabbel/sms address.
-#: actions/confirmaddress.php:96
+#. TRANS: Client error for an already confirmed email/jabber/sms address.
+#: actions/confirmaddress.php:97
 msgid "That address has already been confirmed."
 msgstr "Esse endereço já tinha sido confirmado."
 
-#. TRANS: Server error thrown on database error updating e-mail preferences.
-#. TRANS: Server error thrown on database error removing a registered e-mail address.
-#. TRANS: Server error thrown on database error updating IM preferences.
-#. TRANS: Server error thrown on database error removing a registered IM address.
-#. TRANS: Server error thrown on database error updating SMS preferences.
-#. TRANS: Server error thrown on database error removing a registered SMS phone number.
-#: actions/confirmaddress.php:116 actions/emailsettings.php:331
-#: actions/emailsettings.php:477 actions/imsettings.php:283
-#: actions/imsettings.php:442 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:308
-#: actions/smssettings.php:464
-msgid "Couldn't update user."
-msgstr "Não foi possível actualizar o utilizador."
-
-#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
-#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
-#: actions/confirmaddress.php:128 actions/emailsettings.php:437
-#: actions/smssettings.php:422
-msgid "Couldn't delete email confirmation."
-msgstr "Não foi possível apagar a confirmação do endereço electrónico."
+#. TRANS: Server error displayed when an address confirmation code deletion from the
+#. TRANS: database fails in the contact address confirmation action.
+#: actions/confirmaddress.php:132
+#, fuzzy
+msgid "Could not delete address confirmation."
+msgstr "Não foi possível apagar a confirmação do mensageiro instantâneo."
 
-#: actions/confirmaddress.php:146
+#. TRANS: Title for the contact address confirmation action.
+#: actions/confirmaddress.php:150
 msgid "Confirm address"
 msgstr "Confirmar endereço"
 
-#: actions/confirmaddress.php:161
+#. TRANS: Success message for the contact address confirmation action.
+#. TRANS: %s can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:166
+#, php-format
+msgid "The address \"%s\" has been confirmed for your account."
+msgstr "O endereço \"%s\" foi confirmado para a sua conta."
+
+#. TRANS: Title for page with a conversion (multiple notices in context).
+#: actions/conversation.php:96
+msgid "Conversation"
+msgstr "Conversação"
+
+#. TRANS: Header on conversation page. Hidden by default (h2).
+#. TRANS: Label for user statistics.
+#: actions/conversation.php:149 lib/noticelist.php:87
+#: lib/profileaction.php:246 lib/searchgroupnav.php:82
+msgid "Notices"
+msgstr "Notas"
+
+#. TRANS: Client exception displayed trying to delete a user account while not logged in.
+#: actions/deleteaccount.php:71
+#, fuzzy
+msgid "Only logged-in users can delete their account."
+msgstr "Só utilizadores com sessão iniciada podem repetir notas."
+
+#. TRANS: Client exception displayed trying to delete a user account without have the rights to do that.
+#: actions/deleteaccount.php:77
+#, fuzzy
+msgid "You cannot delete your account."
+msgstr "Não pode apagar utilizadores."
+
+#. TRANS: Confirmation text for user deletion. The user has to type this exactly the same, including punctuation.
+#: actions/deleteaccount.php:160 actions/deleteaccount.php:297
+msgid "I am sure."
+msgstr ""
+
+#. TRANS: Notification for user about the text that must be input to be able to delete a user account.
+#. TRANS: %s is the text that needs to be input.
+#: actions/deleteaccount.php:164
+#, php-format
+msgid "You must write \"%s\" exactly in the box."
+msgstr ""
+
+#. TRANS: Confirmation that a user account has been deleted.
+#: actions/deleteaccount.php:206
+#, fuzzy
+msgid "Account deleted."
+msgstr "Avatar apagado."
+
+#. TRANS: Page title for page on which a user account can be deleted.
+#. TRANS: Option in profile settings to delete the account of the currently logged in user.
+#: actions/deleteaccount.php:228 actions/profilesettings.php:475
+#, fuzzy
+msgid "Delete account"
+msgstr "Criar uma conta"
+
+#. TRANS: Form text for user deletion form.
+#: actions/deleteaccount.php:279
+msgid ""
+"This will <strong>permanently delete</strong> your account data from this "
+"server."
+msgstr ""
+
+#. TRANS: Additional form text for user deletion form shown if a user has account backup rights.
+#. TRANS: %s is a URL to the backup page.
+#: actions/deleteaccount.php:285
 #, php-format
-msgid "The address \"%s\" has been confirmed for your account."
-msgstr "O endereço \"%s\" foi confirmado para a sua conta."
+msgid ""
+"You are strongly advised to <a href=\"%s\">back up your data</a> before "
+"deletion."
+msgstr ""
 
-#: actions/conversation.php:99
-msgid "Conversation"
-msgstr "Conversação"
+#. TRANS: Field label for delete account confirmation entry.
+#. TRANS: Field label for password reset form where the password has to be typed again.
+#: actions/deleteaccount.php:300 actions/passwordsettings.php:112
+#: actions/recoverpassword.php:262 actions/register.php:440
+msgid "Confirm"
+msgstr "Confirmação"
 
-#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:229 lib/searchgroupnav.php:82
-msgid "Notices"
-msgstr "Notas"
+#. TRANS: Input title for the delete account field.
+#. TRANS: %s is the text that needs to be input.
+#: actions/deleteaccount.php:304
+#, fuzzy, php-format
+msgid "Enter \"%s\" to confirm that you want to delete your account."
+msgstr "Não pode apagar utilizadores."
+
+#. TRANS: Button title for user account deletion.
+#: actions/deleteaccount.php:323
+#, fuzzy
+msgid "Permanently delete your account"
+msgstr "Não pode apagar utilizadores."
 
-#: actions/deleteapplication.php:63
+#. TRANS: Client error displayed trying to delete an application while not logged in.
+#: actions/deleteapplication.php:62
 msgid "You must be logged in to delete an application."
 msgstr "Tem de iniciar uma sessão para eliminar uma aplicação."
 
+#. TRANS: Client error displayed trying to delete an application that does not exist.
 #: actions/deleteapplication.php:71
 msgid "Application not found."
 msgstr "Aplicação não foi encontrada."
 
-#: actions/deleteapplication.php:78 actions/editapplication.php:77
+#. TRANS: Client error displayed trying to delete an application the current user does not own.
+#. TRANS: Client error displayed trying to edit an application while not being its owner.
+#: actions/deleteapplication.php:79 actions/editapplication.php:78
 #: actions/showapplication.php:94
 msgid "You are not the owner of this application."
 msgstr "Não é o proprietário desta aplicação."
 
 #. TRANS: Client error text when there is a problem with the session token.
-#: actions/deleteapplication.php:102 actions/editapplication.php:127
-#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1307
+#: actions/deleteapplication.php:102 actions/editapplication.php:131
+#: actions/newapplication.php:112 actions/showapplication.php:118
+#: lib/action.php:1422
 msgid "There was a problem with your session token."
 msgstr "Ocorreu um problema com a sua sessão."
 
-#: actions/deleteapplication.php:123 actions/deleteapplication.php:147
+#. TRANS: Title for delete application page.
+#. TRANS: Fieldset legend on delete application page.
+#: actions/deleteapplication.php:124 actions/deleteapplication.php:149
 msgid "Delete application"
 msgstr "Apagar aplicação"
 
-#: actions/deleteapplication.php:149
+#. TRANS: Confirmation text on delete application page.
+#: actions/deleteapplication.php:152
 msgid ""
 "Are you sure you want to delete this application? This will clear all data "
 "about the application from the database, including all existing user "
@@ -1040,31 +1931,99 @@ msgstr ""
 "utilizadores em existência."
 
 #. TRANS: Submit button title for 'No' when deleting an application.
-#: actions/deleteapplication.php:158
+#: actions/deleteapplication.php:161
 msgid "Do not delete this application"
 msgstr "Não apagar esta aplicação"
 
 #. TRANS: Submit button title for 'Yes' when deleting an application.
-#: actions/deleteapplication.php:164
+#: actions/deleteapplication.php:167
 msgid "Delete this application"
 msgstr "Apagar esta aplicação"
 
+#. TRANS: Client error when trying to delete group while not logged in.
+#: actions/deletegroup.php:64
+#, fuzzy
+msgid "You must be logged in to delete a group."
+msgstr "Tem de iniciar uma sessão para deixar um grupo."
+
+#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group.
+#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID.
+#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID.
+#: actions/deletegroup.php:94 actions/joingroup.php:89
+#: actions/leavegroup.php:89
+msgid "No nickname or ID."
+msgstr "Nenhum utilizador ou ID."
+
+#. TRANS: Client error when trying to delete a group without having the rights to delete it.
+#: actions/deletegroup.php:107
+#, fuzzy
+msgid "You are not allowed to delete this group."
+msgstr "Não é membro deste grupo."
+
+#. TRANS: Server error displayed if a group could not be deleted.
+#. TRANS: %s is the name of the group that could not be deleted.
+#: actions/deletegroup.php:150
+#, fuzzy, php-format
+msgid "Could not delete group %s."
+msgstr "Não foi possível actualizar o grupo."
+
+#. TRANS: Message given after deleting a group.
+#. TRANS: %s is the deleted group's name.
+#: actions/deletegroup.php:159
+#, fuzzy, php-format
+msgid "Deleted group %s"
+msgstr "%1$s deixou o grupo %2$s"
+
+#. TRANS: Title of delete group page.
+#. TRANS: Form legend for deleting a group.
+#: actions/deletegroup.php:176 actions/deletegroup.php:202
+#, fuzzy
+msgid "Delete group"
+msgstr "Apagar utilizador"
+
+#. TRANS: Warning in form for deleleting a group.
+#: actions/deletegroup.php:206
+#, fuzzy
+msgid ""
+"Are you sure you want to delete this group? This will clear all data about "
+"the group from the database, without a backup. Public posts to this group "
+"will still appear in individual timelines."
+msgstr ""
+"Tem a certeza de que quer apagar este utilizador? Todos os dados do "
+"utilizador serão eliminados da base de dados, sem haver cópias."
+
+#. TRANS: Submit button title for 'No' when deleting a group.
+#: actions/deletegroup.php:224
+#, fuzzy
+msgid "Do not delete this group"
+msgstr "Não apagar esta nota"
+
+#. TRANS: Submit button title for 'Yes' when deleting a group.
+#: actions/deletegroup.php:231
+#, fuzzy
+msgid "Delete this group"
+msgstr "Apagar este utilizador"
+
+#. TRANS: Error message displayed trying to delete a notice while not logged in.
+#. TRANS: Client error displayed when trying to remove a favorite while not logged in.
+#. TRANS: Client error displayed when trying to mark a notice as favorite without being logged in.
+#. TRANS: Client error displayed trying to block a user from a group while not logged in.
+#. TRANS: Client error displayed when trying to unblock a user from a group while not logged in.
+#. TRANS: Client error displayed trying a change a subscription while not logged in.
 #. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
-#: actions/deletenotice.php:50 actions/disfavor.php:61 actions/favor.php:62
-#: actions/groupblock.php:61 actions/groupunblock.php:61 actions/logout.php:69
-#: actions/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
-#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
+#. TRANS: Client error displayed when trying to change user options while not logged in.
+#: actions/deletenotice.php:52 actions/disfavor.php:61 actions/favor.php:62
+#: actions/groupblock.php:60 actions/groupunblock.php:60 actions/logout.php:69
+#: actions/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:88
+#: actions/nudge.php:63 actions/subedit.php:33 actions/subscribe.php:96
 #: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:71 lib/profileformaction.php:64
+#: lib/adminpanelaction.php:71 lib/profileformaction.php:63
 #: lib/settingsaction.php:72
 msgid "Not logged in."
 msgstr "Não iniciou sessão."
 
-#: actions/deletenotice.php:74
-msgid "Can't delete this notice."
-msgstr "Nota não pode ser apagada."
-
-#: actions/deletenotice.php:106
+#. TRANS: Instructions for deleting a notice.
+#: actions/deletenotice.php:110
 msgid ""
 "You are about to permanently delete a notice. Once this is done, it cannot "
 "be undone."
@@ -1072,37 +2031,51 @@ msgstr ""
 "Está prestes a apagar permamentemente uma nota. Esta acção não pode ser "
 "desfeita."
 
-#: actions/deletenotice.php:112 actions/deletenotice.php:144
+#. TRANS: Page title when deleting a notice.
+#. TRANS: Fieldset legend for the delete notice form.
+#: actions/deletenotice.php:117 actions/deletenotice.php:148
 msgid "Delete notice"
 msgstr "Apagar nota"
 
-#: actions/deletenotice.php:147
+#. TRANS: Message for the delete notice form.
+#: actions/deletenotice.php:152
 msgid "Are you sure you want to delete this notice?"
 msgstr "Tem a certeza de que quer apagar esta nota?"
 
 #. TRANS: Submit button title for 'No' when deleting a notice.
-#: actions/deletenotice.php:154
+#: actions/deletenotice.php:159
 msgid "Do not delete this notice"
 msgstr "Não apagar esta nota"
 
 #. TRANS: Submit button title for 'Yes' when deleting a notice.
-#: actions/deletenotice.php:161 lib/noticelist.php:667
+#: actions/deletenotice.php:166 lib/noticelist.php:673
 msgid "Delete this notice"
 msgstr "Apagar esta nota"
 
-#: actions/deleteuser.php:67
+#. TRANS: Client error displayed when trying to delete a user without having the right to delete users.
+#: actions/deleteuser.php:66
 msgid "You cannot delete users."
 msgstr "Não pode apagar utilizadores."
 
+#. TRANS: Client error displayed when trying to delete a non-local user.
 #: actions/deleteuser.php:74
 msgid "You can only delete local users."
 msgstr "Só pode apagar utilizadores locais."
 
-#: actions/deleteuser.php:110 actions/deleteuser.php:133
+#. TRANS: Title of delete user page.
+#: actions/deleteuser.php:110
+#, fuzzy
+msgctxt "TITLE"
+msgid "Delete user"
+msgstr "Apagar utilizador"
+
+#. TRANS: Fieldset legend on delete user page.
+#: actions/deleteuser.php:134
 msgid "Delete user"
 msgstr "Apagar utilizador"
 
-#: actions/deleteuser.php:136
+#. TRANS: Information text to request if a user is certain that the described action has to be performed.
+#: actions/deleteuser.php:138
 msgid ""
 "Are you sure you want to delete this user? This will clear all data about "
 "the user from the database, without a backup."
@@ -1110,70 +2083,106 @@ msgstr ""
 "Tem a certeza de que quer apagar este utilizador? Todos os dados do "
 "utilizador serão eliminados da base de dados, sem haver cópias."
 
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/deleteuser.php:158
+#, fuzzy
+msgid "Do not delete this user"
+msgstr "Não apagar esta nota"
+
 #. TRANS: Submit button title for 'Yes' when deleting a user.
-#: actions/deleteuser.php:163 lib/deleteuserform.php:77
+#. TRANS: Description of form for deleting a user.
+#: actions/deleteuser.php:165 lib/deleteuserform.php:75
 msgid "Delete this user"
 msgstr "Apagar este utilizador"
 
 #. TRANS: Message used as title for design settings for the site.
 #. TRANS: Link description in user account settings menu.
-#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:134
+#: actions/designadminpanel.php:60 lib/accountsettingsaction.php:134
 msgid "Design"
 msgstr "Estilo"
 
-#: actions/designadminpanel.php:74
+#. TRANS: Instructions for design adminsitration panel.
+#: actions/designadminpanel.php:71
 msgid "Design settings for this StatusNet site"
 msgstr ""
 
-#: actions/designadminpanel.php:331
+#. TRANS: Client error displayed when a logo URL does is not valid.
+#: actions/designadminpanel.php:327
 msgid "Invalid logo URL."
 msgstr "URL do logotipo inválida."
 
-#: actions/designadminpanel.php:335
+#. TRANS: Client error displayed when an SSL logo URL is invalid.
+#: actions/designadminpanel.php:333
+#, fuzzy
+msgid "Invalid SSL logo URL."
+msgstr "URL do logotipo inválida."
+
+#. TRANS: Client error displayed when a theme is submitted through the form that is not in the theme list.
+#. TRANS: %s is the chosen unavailable theme.
+#: actions/designadminpanel.php:339
 #, php-format
 msgid "Theme not available: %s."
 msgstr "Tema não está disponível: %s."
 
-#: actions/designadminpanel.php:439
+#. TRANS: Fieldset legend for form to change logo.
+#: actions/designadminpanel.php:437
 msgid "Change logo"
 msgstr "Alterar logotipo"
 
+#. TRANS: Field label for StatusNet site logo.
 #: actions/designadminpanel.php:444
 msgid "Site logo"
 msgstr "Logotipo do site"
 
-#: actions/designadminpanel.php:456
+#. TRANS: Field label for SSL StatusNet site logo.
+#: actions/designadminpanel.php:452
+#, fuzzy
+msgid "SSL logo"
+msgstr "Logotipo do site"
+
+#. TRANS: Fieldset legend for form change StatusNet site's theme.
+#: actions/designadminpanel.php:467
 msgid "Change theme"
 msgstr "Alterar tema"
 
-#: actions/designadminpanel.php:473
+#. TRANS: Field label for dropdown to choose site theme.
+#: actions/designadminpanel.php:485
 msgid "Site theme"
 msgstr "Tema do site"
 
-#: actions/designadminpanel.php:474
+#. TRANS: Title for field label for dropdown to choose site theme.
+#: actions/designadminpanel.php:487
 msgid "Theme for the site."
 msgstr "O tema para o site."
 
-#: actions/designadminpanel.php:480
+#. TRANS: Field label for uploading a cutom theme.
+#: actions/designadminpanel.php:494
 msgid "Custom theme"
 msgstr "Tema personalizado"
 
-#: actions/designadminpanel.php:484
+#. TRANS: Form instructions for uploading a cutom StatusNet theme.
+#: actions/designadminpanel.php:499
 msgid "You can upload a custom StatusNet theme as a .ZIP archive."
 msgstr ""
 "Pode fazer o upload de um tema personalizado para o StatusNet, na forma de "
 "um arquivo .ZIP."
 
-#: actions/designadminpanel.php:499 lib/designsettings.php:101
+#. TRANS: Fieldset legend for theme background image.
+#. TRANS: Fieldset legend on profile design page.
+#: actions/designadminpanel.php:515 lib/designsettings.php:98
 msgid "Change background image"
 msgstr "Alterar imagem de fundo"
 
-#: actions/designadminpanel.php:504 actions/designadminpanel.php:587
-#: lib/designsettings.php:178
+#. TRANS: Field label for background image on theme designer page.
+#. TRANS: Field label for background color selector.
+#. TRANS: Label on profile design page for setting a profile page background colour.
+#: actions/designadminpanel.php:525 actions/designadminpanel.php:609
+#: lib/designsettings.php:183
 msgid "Background"
 msgstr "Fundo"
 
-#: actions/designadminpanel.php:509
+#. TRANS: Form guide for background image upload form on theme designer page.
+#: actions/designadminpanel.php:531
 #, php-format
 msgid ""
 "You can upload a background image for the site. The maximum file size is %1"
@@ -1183,234 +2192,289 @@ msgstr ""
 "é %1$s."
 
 #. TRANS: Used as radio button label to add a background image.
-#: actions/designadminpanel.php:540 lib/designsettings.php:139
+#: actions/designadminpanel.php:558
 msgid "On"
 msgstr "Ligar"
 
 #. TRANS: Used as radio button label to not add a background image.
-#: actions/designadminpanel.php:557 lib/designsettings.php:155
+#: actions/designadminpanel.php:575
 msgid "Off"
 msgstr "Desligar"
 
-#: actions/designadminpanel.php:558 lib/designsettings.php:156
+#. TRANS: Form guide for turning background image on or off on theme designer page.
+#. TRANS: Form guide for a set of radio buttons on the profile design page that will enable or disable
+#. TRANS: use of the uploaded profile image.
+#: actions/designadminpanel.php:577 lib/designsettings.php:159
 msgid "Turn background image on or off."
 msgstr "Ligar ou desligar a imagem de fundo."
 
-#: actions/designadminpanel.php:563 lib/designsettings.php:161
+#. TRANS: Checkbox label to title background image on theme designer page.
+#. TRANS: Checkbox label on profile design page that will cause the profile image to be tiled.
+#: actions/designadminpanel.php:583 lib/designsettings.php:165
 msgid "Tile background image"
 msgstr "Repetir imagem de fundo em mosaico"
 
-#: actions/designadminpanel.php:577 lib/designsettings.php:170
-msgid "Change colours"
+#. TRANS: Fieldset legend for theme colors.
+#: actions/designadminpanel.php:598
+#, fuzzy
+msgid "Change colors"
 msgstr "Alterar cores"
 
-#: actions/designadminpanel.php:600 lib/designsettings.php:191
+#. TRANS: Field label for content color selector.
+#. TRANS: Label on profile design page for setting a profile page content colour.
+#: actions/designadminpanel.php:623 lib/designsettings.php:197
 msgid "Content"
 msgstr "Conteúdo"
 
-#: actions/designadminpanel.php:613 lib/designsettings.php:204
+#. TRANS: Field label for sidebar color selector.
+#. TRANS: Label on profile design page for setting a profile page sidebar colour.
+#: actions/designadminpanel.php:637 lib/designsettings.php:211
 msgid "Sidebar"
 msgstr "Barra"
 
-#: actions/designadminpanel.php:626 lib/designsettings.php:217
+#. TRANS: Field label for text color selector.
+#. TRANS: Label on profile design page for setting a profile page text colour.
+#: actions/designadminpanel.php:651 lib/designsettings.php:225
 msgid "Text"
 msgstr "Texto"
 
-#: actions/designadminpanel.php:639 lib/designsettings.php:230
+#. TRANS: Field label for link color selector.
+#. TRANS: Label on profile design page for setting a profile page links colour.
+#: actions/designadminpanel.php:665 lib/designsettings.php:239
 msgid "Links"
 msgstr "Links"
 
-#: actions/designadminpanel.php:664
+#. TRANS: Fieldset legend for advanced theme design settings.
+#: actions/designadminpanel.php:691
 msgid "Advanced"
 msgstr "Avançado"
 
-#: actions/designadminpanel.php:668
+#. TRANS: Field label for custom CSS.
+#: actions/designadminpanel.php:696
 msgid "Custom CSS"
 msgstr "CSS personalizado"
 
-#: actions/designadminpanel.php:689 lib/designsettings.php:247
+#. TRANS: Button text for resetting theme settings.
+#: actions/designadminpanel.php:718
+#, fuzzy
+msgctxt "BUTTON"
 msgid "Use defaults"
 msgstr "Usar predefinições"
 
-#: actions/designadminpanel.php:690 lib/designsettings.php:248
+#. TRANS: Title for button for resetting theme settings.
+#. TRANS: Title for button on profile design page to reset all colour settings to default.
+#: actions/designadminpanel.php:720 lib/designsettings.php:259
 msgid "Restore default designs"
 msgstr "Repor estilos predefinidos"
 
-#: actions/designadminpanel.php:696 lib/designsettings.php:254
+#. TRANS: Title for button for resetting theme settings.
+#. TRANS: Title for button on profile design page to reset all colour settings to default without saving.
+#: actions/designadminpanel.php:728 lib/designsettings.php:267
 msgid "Reset back to default"
 msgstr "Repor predefinição"
 
-#. TRANS: Submit button title.
-#: actions/designadminpanel.php:698 actions/licenseadminpanel.php:319
-#: actions/othersettings.php:126 actions/pathsadminpanel.php:351
-#: actions/profilesettings.php:174 actions/sessionsadminpanel.php:199
-#: actions/siteadminpanel.php:292 actions/sitenoticeadminpanel.php:195
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:226
-#: actions/tagother.php:154 actions/useradminpanel.php:295
-#: lib/applicationeditform.php:357 lib/designsettings.php:256
-#: lib/groupeditform.php:202
-msgid "Save"
-msgstr "Gravar"
-
-#: actions/designadminpanel.php:699 lib/designsettings.php:257
+#. TRANS: Title for button for saving theme settings.
+#. TRANS: Title for button on profile design page to save settings.
+#: actions/designadminpanel.php:736 lib/designsettings.php:272
 msgid "Save design"
 msgstr "Gravar o estilo"
 
-#: actions/disfavor.php:81
+#. TRANS: Client error displayed when trying to remove favorite status for a notice that is not a favorite.
+#: actions/disfavor.php:83
 msgid "This notice is not a favorite!"
 msgstr "Esta nota não é uma favorita!"
 
-#: actions/disfavor.php:94
+#. TRANS: Title for page on which favorites can be added.
+#: actions/disfavor.php:98
 msgid "Add to favorites"
 msgstr "Adicionar às favoritas"
 
-#: actions/doc.php:158
-#, php-format
-msgid "No such document \"%s\""
+#. TRANS: Client exception thrown when requesting a document from the documentation that does not exist.
+#. TRANS: %s is the non-existing document.
+#: actions/doc.php:155
+#, fuzzy, php-format
+msgid "No such document \"%s\"."
 msgstr "Documento \"%s\" não foi encontrado"
 
-#: actions/editapplication.php:54
-msgid "Edit Application"
-msgstr "Editar Aplicação"
+#. TRANS: Title for "Edit application" form.
+#. TRANS: Form legend.
+#: actions/editapplication.php:54 lib/applicationeditform.php:129
+msgid "Edit application"
+msgstr "Editar aplicação"
 
+#. TRANS: Client error displayed trying to edit an application while not logged in.
 #: actions/editapplication.php:66
 msgid "You must be logged in to edit an application."
 msgstr "Tem de iniciar uma sessão para editar uma aplicação."
 
-#: actions/editapplication.php:81 actions/oauthconnectionssettings.php:166
-#: actions/showapplication.php:87
+#. TRANS: Client error displayed trying to edit an application that does not exist.
+#: actions/editapplication.php:83 actions/showapplication.php:87
 msgid "No such application."
 msgstr "Aplicação não foi encontrada."
 
-#: actions/editapplication.php:161
+#. TRANS: Instructions for "Edit application" form.
+#: actions/editapplication.php:167
 msgid "Use this form to edit your application."
 msgstr "Use este formulário para editar a sua aplicação."
 
-#: actions/editapplication.php:177 actions/newapplication.php:159
+#. TRANS: Validation error shown when not providing a name in the "Edit application" form.
+#. TRANS: Validation error shown when not providing a name in the "New application" form.
+#: actions/editapplication.php:184 actions/newapplication.php:164
 msgid "Name is required."
 msgstr "Nome é obrigatório."
 
-#: actions/editapplication.php:180 actions/newapplication.php:165
-msgid "Name is too long (max 255 chars)."
+#. TRANS: Validation error shown when providing too long a name in the "Edit application" form.
+#. TRANS: Validation error shown when providing too long a name in the "New application" form.
+#: actions/editapplication.php:188 actions/newapplication.php:172
+#, fuzzy
+msgid "Name is too long (maximum 255 characters)."
 msgstr "Nome é demasiado longo (máx. 255 caracteres)."
 
-#: actions/editapplication.php:183 actions/newapplication.php:162
+#. TRANS: Validation error shown when providing a name for an application that already exists in the "Edit application" form.
+#. TRANS: Validation error shown when providing a name for an application that already exists in the "New application" form.
+#: actions/editapplication.php:192 actions/newapplication.php:168
 msgid "Name already in use. Try another one."
 msgstr "Nome já é usado. Tente outro."
 
-#: actions/editapplication.php:186 actions/newapplication.php:168
+#. TRANS: Validation error shown when not providing a description in the "Edit application" form.
+#. TRANS: Validation error shown when not providing a description in the "New application" form.
+#: actions/editapplication.php:196 actions/newapplication.php:176
 msgid "Description is required."
 msgstr "Descrição é obrigatória."
 
-#: actions/editapplication.php:194
+#. TRANS: Validation error shown when providing too long a source URL in the "Edit application" form.
+#: actions/editapplication.php:209
 msgid "Source URL is too long."
 msgstr "URL de origem é demasiado longa."
 
-#: actions/editapplication.php:200 actions/newapplication.php:185
+#. TRANS: Validation error shown when providing an invalid source URL in the "Edit application" form.
+#. TRANS: Validation error shown when providing an invalid source URL in the "New application" form.
+#: actions/editapplication.php:216 actions/newapplication.php:199
 msgid "Source URL is not valid."
 msgstr "A URL de origem é inválida."
 
-#: actions/editapplication.php:203 actions/newapplication.php:188
+#. TRANS: Validation error shown when not providing an organisation in the "Edit application" form.
+#. TRANS: Validation error shown when not providing an organisation in the "New application" form.
+#: actions/editapplication.php:220 actions/newapplication.php:203
 msgid "Organization is required."
 msgstr "Organização é obrigatória."
 
-#: actions/editapplication.php:206 actions/newapplication.php:191
-msgid "Organization is too long (max 255 chars)."
+#. TRANS: Validation error shown when providing too long an arganisation name in the "Edit application" form.
+#: actions/editapplication.php:224 actions/newapplication.php:207
+#, fuzzy
+msgid "Organization is too long (maximum 255 characters)."
 msgstr "Organização é demasiado longa (máx. 255 caracteres)."
 
-#: actions/editapplication.php:209 actions/newapplication.php:194
+#. TRANS: Form validation error show when an organisation name has not been provided in the edit application form.
+#. TRANS: Form validation error show when an organisation name has not been provided in the new application form.
+#: actions/editapplication.php:228 actions/newapplication.php:211
 msgid "Organization homepage is required."
 msgstr "Página da organização é obrigatória."
 
-#: actions/editapplication.php:218 actions/newapplication.php:206
+#. TRANS: Validation error shown when providing too long a callback URL in the "Edit application" form.
+#. TRANS: Validation error shown when providing too long a callback URL in the "New application" form.
+#: actions/editapplication.php:239 actions/newapplication.php:225
 msgid "Callback is too long."
 msgstr "Callback é demasiado longo."
 
-#: actions/editapplication.php:225 actions/newapplication.php:215
+#. TRANS: Validation error shown when providing an invalid callback URL in the "Edit application" form.
+#. TRANS: Validation error shown when providing an invalid callback URL in the "New application" form.
+#: actions/editapplication.php:247 actions/newapplication.php:235
 msgid "Callback URL is not valid."
 msgstr "A URL de callback é inválida."
 
-#: actions/editapplication.php:261
+#. TRANS: Server error occuring when an application could not be updated from the "Edit application" form.
+#: actions/editapplication.php:284
 msgid "Could not update application."
 msgstr "Não foi possível actualizar a aplicação."
 
-#: actions/editgroup.php:56
+#. TRANS: Title for form to edit a group. %s is a group nickname.
+#: actions/editgroup.php:55
 #, php-format
 msgid "Edit %s group"
 msgstr "Editar grupo %s"
 
-#: actions/editgroup.php:68 actions/grouplogo.php:70 actions/newgroup.php:65
+#. TRANS: Client error displayed trying to edit a group while not logged in.
+#. TRANS: Client error displayed when trying to create a group while not logged in.
+#. TRANS: Client error displayed trying to create a group while not logged in.
+#: actions/editgroup.php:68 actions/grouplogo.php:69 actions/newgroup.php:65
 msgid "You must be logged in to create a group."
 msgstr "Tem de iniciar uma sessão para criar o grupo."
 
-#: actions/editgroup.php:107 actions/editgroup.php:172
-#: actions/groupdesignsettings.php:107 actions/grouplogo.php:109
+#. TRANS: Client error displayed trying to edit a group while not being a group admin.
+#. TRANS: Client error displayed trying to change group design settings without being a (group) admin.
+#. TRANS: Client error displayed when trying to change group logo settings while not being a group admin.
+#: actions/editgroup.php:110 actions/editgroup.php:176
+#: actions/groupdesignsettings.php:109 actions/grouplogo.php:111
 msgid "You must be an admin to edit the group."
 msgstr "Tem de ser administrador para editar o grupo."
 
-#: actions/editgroup.php:158
+#. TRANS: Form instructions for group edit form.
+#: actions/editgroup.php:161
 msgid "Use this form to edit the group."
 msgstr "Use este formulário para editar o grupo."
 
-#: actions/editgroup.php:205 actions/newgroup.php:145
-#, php-format
-msgid "description is too long (max %d chars)."
-msgstr "descrição é demasiada extensa (máx. %d caracteres)."
-
-#: actions/editgroup.php:228 actions/newgroup.php:168
+#. TRANS: Group edit form validation error.
+#. TRANS: Group create form validation error.
+#. TRANS: %s is the invalid alias.
+#: actions/editgroup.php:241 actions/newgroup.php:188
 #, php-format
 msgid "Invalid alias: \"%s\""
 msgstr "Nome alternativo inválido: \"%s\""
 
-#: actions/editgroup.php:258
+#. TRANS: Server error displayed when editing a group fails.
+#: actions/editgroup.php:274
 msgid "Could not update group."
 msgstr "Não foi possível actualizar o grupo."
 
+#. TRANS: Server error displayed when group aliases could not be added.
 #. TRANS: Server exception thrown when creating group aliases failed.
-#: actions/editgroup.php:264 classes/User_group.php:513
+#: actions/editgroup.php:281 classes/User_group.php:540
 msgid "Could not create aliases."
 msgstr "Não foi possível criar os nomes alternativos."
 
-#: actions/editgroup.php:280
+#. TRANS: Group edit form success message.
+#: actions/editgroup.php:301
 msgid "Options saved."
 msgstr "Opções gravadas."
 
 #. TRANS: Title for e-mail settings.
-#: actions/emailsettings.php:61
+#: actions/emailsettings.php:59
 msgid "Email settings"
 msgstr "Configurações do correio electrónico"
 
 #. TRANS: E-mail settings page instructions.
 #. TRANS: %%site.name%% is the name of the site.
-#: actions/emailsettings.php:76
+#: actions/emailsettings.php:73
 #, php-format
 msgid "Manage how you get email from %%site.name%%."
 msgstr "Defina como receberá mensagens electrónicas de %%site.name%%."
 
 #. TRANS: Form legend for e-mail settings form.
 #. TRANS: Field label for e-mail address input in e-mail settings form.
-#: actions/emailsettings.php:106 actions/emailsettings.php:132
+#: actions/emailsettings.php:103 actions/emailsettings.php:129
 msgid "Email address"
 msgstr "Endereço de correio electrónico"
 
 #. TRANS: Form note in e-mail settings form.
-#: actions/emailsettings.php:112
+#: actions/emailsettings.php:109
 msgid "Current confirmed email address."
 msgstr "Endereço de correio já confirmado."
 
 #. TRANS: Button label to remove a confirmed e-mail address.
 #. TRANS: Button label for removing a set sender e-mail address to post notices from.
-#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed Instant Messaging address.
 #. TRANS: Button label to remove a confirmed SMS address.
 #. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
-#: actions/emailsettings.php:115 actions/emailsettings.php:162
-#: actions/imsettings.php:116 actions/smssettings.php:124
-#: actions/smssettings.php:180
+#: actions/emailsettings.php:112 actions/emailsettings.php:179
+#: actions/imsettings.php:112 actions/smssettings.php:120
+#: actions/smssettings.php:176
 msgctxt "BUTTON"
 msgid "Remove"
 msgstr "Remover"
 
-#: actions/emailsettings.php:122
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:119
 msgid ""
 "Awaiting confirmation on this address. Check your inbox (and spam box!) for "
 "a message with further instructions."
@@ -1418,145 +2482,144 @@ msgstr ""
 "A aguardar a confirmação deste endereço. Procure na sua caixa de entrada (ou "
 "na caixa de spam!) uma mensagem com mais instruções."
 
-#. TRANS: Button label to cancel an e-mail address confirmation procedure.
-#. TRANS: Button label to cancel an IM address confirmation procedure.
-#. TRANS: Button label to cancel a SMS address confirmation procedure.
-#. TRANS: Button label in the "Edit application" form.
-#: actions/emailsettings.php:127 actions/imsettings.php:131
-#: actions/smssettings.php:137 lib/applicationeditform.php:351
-msgctxt "BUTTON"
-msgid "Cancel"
-msgstr "Cancelar"
-
 #. TRANS: Instructions for e-mail address input form. Do not translate
 #. TRANS: "example.org". It is one of the domain names reserved for
 #. TRANS: use in examples by http://www.rfc-editor.org/rfc/rfc2606.txt.
 #. TRANS: Any other domain may be owned by a legitimate person or
 #. TRANS: organization.
-#: actions/emailsettings.php:139
+#: actions/emailsettings.php:136
 msgid "Email address, like \"UserName@example.org\""
 msgstr ""
 "Endereço de correio electrónico, por ex. \"nomedeutilizador@exemplo.pt\""
 
 #. TRANS: Button label for adding an e-mail address in e-mail settings form.
-#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding an Instant Messaging address in Instant Messaging settings form.
 #. TRANS: Button label for adding a SMS phone number in SMS settings form.
-#: actions/emailsettings.php:143 actions/imsettings.php:151
-#: actions/smssettings.php:162
+#: actions/emailsettings.php:140 actions/imsettings.php:147
+#: actions/smssettings.php:158
 msgctxt "BUTTON"
 msgid "Add"
 msgstr "Adicionar"
 
 #. TRANS: Form legend for incoming e-mail settings form.
 #. TRANS: Form legend for incoming SMS settings form.
-#: actions/emailsettings.php:151 actions/smssettings.php:171
+#: actions/emailsettings.php:148 actions/smssettings.php:167
 msgid "Incoming email"
 msgstr "Correio recebido"
 
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:154
+msgid "I want to post notices by email."
+msgstr "Quero publicar notas por correio electrónico."
+
 #. TRANS: Form instructions for incoming e-mail form in e-mail settings.
 #. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
-#: actions/emailsettings.php:159 actions/smssettings.php:178
+#: actions/emailsettings.php:176 actions/smssettings.php:174
 msgid "Send email to this address to post new notices."
 msgstr "Envie mensagens electrónicas para este endereço para publicar notas."
 
-#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming e-mail address input form, when an address has already been assigned.
 #. TRANS: Instructions for incoming SMS e-mail address input form.
-#: actions/emailsettings.php:168 actions/smssettings.php:186
+#: actions/emailsettings.php:185 actions/smssettings.php:182
 msgid "Make a new email address for posting to; cancels the old one."
 msgstr "Crie um endereço electrónico novo para publicações; cancela o antigo."
 
+#. TRANS: Instructions for incoming e-mail address input form.
+#: actions/emailsettings.php:189
+msgid ""
+"To send notices via email, we need to create a unique email address for you "
+"on this server:"
+msgstr ""
+
 #. TRANS: Button label for adding an e-mail address to send notices from.
 #. TRANS: Button label for adding an SMS e-mail address to send notices from.
-#: actions/emailsettings.php:172 actions/smssettings.php:189
+#: actions/emailsettings.php:195 actions/smssettings.php:185
 msgctxt "BUTTON"
 msgid "New"
 msgstr "Novo"
 
 #. TRANS: Form legend for e-mail preferences form.
-#: actions/emailsettings.php:178
+#: actions/emailsettings.php:204
 msgid "Email preferences"
 msgstr "Preferências de correio electrónico"
 
 #. TRANS: Checkbox label in e-mail preferences form.
-#: actions/emailsettings.php:184
+#: actions/emailsettings.php:212
 msgid "Send me notices of new subscriptions through email."
 msgstr "Enviem-me notificação electrónica das novas subscrições."
 
 #. TRANS: Checkbox label in e-mail preferences form.
-#: actions/emailsettings.php:190
+#: actions/emailsettings.php:218
 msgid "Send me email when someone adds my notice as a favorite."
 msgstr ""
 "Enviem-me notificação electrónica quando uma nota minha é adicionada às "
 "favoritas."
 
 #. TRANS: Checkbox label in e-mail preferences form.
-#: actions/emailsettings.php:197
+#: actions/emailsettings.php:225
 msgid "Send me email when someone sends me a private message."
 msgstr ""
 "Enviem-me notificação electrónica quando me enviarem uma mensagem privada."
 
 #. TRANS: Checkbox label in e-mail preferences form.
-#: actions/emailsettings.php:203
+#: actions/emailsettings.php:231
 msgid "Send me email when someone sends me an \"@-reply\"."
 msgstr ""
 "Enviem-me notificação electrónica quando me enviarem uma \"resposta-@\"."
 
 #. TRANS: Checkbox label in e-mail preferences form.
-#: actions/emailsettings.php:209
+#: actions/emailsettings.php:237
 msgid "Allow friends to nudge me and send me an email."
 msgstr "Permitir que amigos me toquem e enviem mensagens electrónicas."
 
 #. TRANS: Checkbox label in e-mail preferences form.
-#: actions/emailsettings.php:216
-msgid "I want to post notices by email."
-msgstr "Quero publicar notas por correio electrónico."
-
-#. TRANS: Checkbox label in e-mail preferences form.
-#: actions/emailsettings.php:223
+#: actions/emailsettings.php:243
 msgid "Publish a MicroID for my email address."
 msgstr "Publicar um MicroID para o meu endereço electrónico."
 
 #. TRANS: Confirmation message for successful e-mail preferences save.
-#: actions/emailsettings.php:338
+#: actions/emailsettings.php:361
 msgid "Email preferences saved."
 msgstr "Preferências de correio electrónico foram gravadas."
 
 #. TRANS: Message given saving e-mail address without having provided one.
-#: actions/emailsettings.php:357
+#: actions/emailsettings.php:380
 msgid "No email address."
 msgstr "Sem endereço de correio electrónico."
 
 #. TRANS: Message given saving e-mail address that cannot be normalised.
-#: actions/emailsettings.php:365
-msgid "Cannot normalize that email address"
+#: actions/emailsettings.php:388
+#, fuzzy
+msgid "Cannot normalize that email address."
 msgstr "Não é possível normalizar esse endereço electrónico"
 
 #. TRANS: Message given saving e-mail address that not valid.
-#: actions/emailsettings.php:370 actions/register.php:208
+#: actions/emailsettings.php:393 actions/register.php:212
 #: actions/siteadminpanel.php:144
 msgid "Not a valid email address."
 msgstr "Correio electrónico é inválido."
 
 #. TRANS: Message given saving e-mail address that is already set.
-#: actions/emailsettings.php:374
+#: actions/emailsettings.php:397
 msgid "That is already your email address."
 msgstr "Esse já é o seu endereço electrónico."
 
 #. TRANS: Message given saving e-mail address that is already set for another user.
-#: actions/emailsettings.php:378
+#: actions/emailsettings.php:401
 msgid "That email address already belongs to another user."
 msgstr "Esse endereço electrónico já pertence a outro utilizador."
 
 #. TRANS: Server error thrown on database error adding e-mail confirmation code.
-#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding Instant Messaging confirmation code.
 #. TRANS: Server error thrown on database error adding SMS confirmation code.
-#: actions/emailsettings.php:395 actions/imsettings.php:351
-#: actions/smssettings.php:373
-msgid "Couldn't insert confirmation code."
+#: actions/emailsettings.php:418 actions/imsettings.php:343
+#: actions/smssettings.php:365
+#, fuzzy
+msgid "Could not insert confirmation code."
 msgstr "Não foi possível inserir o código de confirmação."
 
 #. TRANS: Message given saving valid e-mail address that is to be confirmed.
-#: actions/emailsettings.php:402
+#: actions/emailsettings.php:425
 msgid ""
 "A confirmation code was sent to the email address you added. Check your "
 "inbox (and spam box!) for the code and instructions on how to use it."
@@ -1566,82 +2629,100 @@ msgstr ""
 "respectivas instruções de utilização."
 
 #. TRANS: Message given canceling e-mail address confirmation that is not pending.
-#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling Instant Messaging address confirmation that is not pending.
 #. TRANS: Message given canceling SMS phone number confirmation that is not pending.
-#: actions/emailsettings.php:423 actions/imsettings.php:386
-#: actions/smssettings.php:408
+#: actions/emailsettings.php:445 actions/imsettings.php:377
+#: actions/smssettings.php:399
 msgid "No pending confirmation to cancel."
 msgstr "Nenhuma confirmação pendente para cancelar."
 
 #. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
-#: actions/emailsettings.php:428
+#: actions/emailsettings.php:450
 msgid "That is the wrong email address."
 msgstr "Esse endereço de correio electrónico está errado."
 
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/emailsettings.php:459 actions/smssettings.php:413
+#, fuzzy
+msgid "Could not delete email confirmation."
+msgstr "Não foi possível apagar a confirmação do endereço electrónico."
+
 #. TRANS: Message given after successfully canceling e-mail address confirmation.
-#: actions/emailsettings.php:442
+#: actions/emailsettings.php:464
 msgid "Email confirmation cancelled."
 msgstr "Confirmação de correio electrónico cancelada."
 
 #. TRANS: Message given trying to remove an e-mail address that is not
 #. TRANS: registered for the active user.
-#: actions/emailsettings.php:462
+#: actions/emailsettings.php:483
 msgid "That is not your email address."
 msgstr "Esse não é o seu endereço electrónico."
 
 #. TRANS: Message given after successfully removing a registered e-mail address.
-#: actions/emailsettings.php:483
+#: actions/emailsettings.php:504
 msgid "The email address was removed."
 msgstr "O endereço de correio electrónico foi removido."
 
-#: actions/emailsettings.php:497 actions/smssettings.php:568
+#. TRANS: Form validation error displayed when trying to remove an incoming e-mail address while no address has been set.
+#: actions/emailsettings.php:518 actions/smssettings.php:555
 msgid "No incoming email address."
 msgstr "Sem endereço electrónico de entrada."
 
 #. TRANS: Server error thrown on database error removing incoming e-mail address.
 #. TRANS: Server error thrown on database error adding incoming e-mail address.
-#: actions/emailsettings.php:508 actions/emailsettings.php:532
-#: actions/smssettings.php:578 actions/smssettings.php:602
-msgid "Couldn't update user record."
+#: actions/emailsettings.php:530 actions/emailsettings.php:554
+#: actions/smssettings.php:565 actions/smssettings.php:588
+#, fuzzy
+msgid "Could not update user record."
 msgstr "Não foi possível actualizar o registo do utilizador."
 
 #. TRANS: Message given after successfully removing an incoming e-mail address.
-#: actions/emailsettings.php:512 actions/smssettings.php:581
+#: actions/emailsettings.php:534 actions/smssettings.php:568
 msgid "Incoming email address removed."
 msgstr "Endereço electrónico de entrada foi removido."
 
 #. TRANS: Message given after successfully adding an incoming e-mail address.
-#: actions/emailsettings.php:536 actions/smssettings.php:605
+#: actions/emailsettings.php:558 actions/smssettings.php:591
 msgid "New incoming email address added."
 msgstr "Adicionado endereço electrónico de entrada novo."
 
-#: actions/favor.php:79
+#. TRANS: Client error displayed when trying to mark a notice as favorite that already is a favorite.
+#: actions/favor.php:80
 msgid "This notice is already a favorite!"
 msgstr "Esta nota já é uma favorita!"
 
-#: actions/favor.php:92 lib/disfavorform.php:144
+#. TRANS: Page title for page on which favorite notices can be unfavourited.
+#: actions/favor.php:95
 msgid "Disfavor favorite"
 msgstr "Retirar das favoritas"
 
-#: actions/favorited.php:65 lib/popularnoticesection.php:91
+#. TRANS: Page title for first page of favorited notices.
+#. TRANS: Title for favourited notices section.
+#: actions/favorited.php:65 lib/popularnoticesection.php:62
 #: lib/publicgroupnav.php:93
 msgid "Popular notices"
 msgstr "Notas populares"
 
-#: actions/favorited.php:67
+#. TRANS: Page title for all but first page of favorited notices.
+#. TRANS: %d is the page number being displayed.
+#: actions/favorited.php:69
 #, php-format
 msgid "Popular notices, page %d"
 msgstr "Notas populares, página %d"
 
-#: actions/favorited.php:79
+#. TRANS: Description on page displaying favorited notices.
+#: actions/favorited.php:81
 msgid "The most popular notices on the site right now."
 msgstr "As notas mais populares agora."
 
-#: actions/favorited.php:150
+#. TRANS: Text displayed instead of a list when a site does not yet have any favourited notices.
+#: actions/favorited.php:149
 msgid "Favorite notices appear on this page but no one has favorited one yet."
 msgstr ""
 "As notas favoritas aparecem nesta página, mas ninguém elegeu nenhuma ainda."
 
+#. TRANS: Additional text displayed instead of a list when a site does not yet have any favourited notices for logged in users.
 #: actions/favorited.php:153
 msgid ""
 "Be the first to add a notice to your favorites by clicking the fave button "
@@ -1650,7 +2731,9 @@ msgstr ""
 "Seja a primeira pessoa a adicionar uma nota às favoritas, clicando o botão "
 "de marcação correspondente a uma nota de que goste."
 
-#: actions/favorited.php:156
+#. TRANS: Additional text displayed instead of a list when a site does not yet have any favourited notices for not logged in users.
+#. TRANS: %%action.register%% is a registration link. "[link text](link)" is Mark Down. Do not change the formatting.
+#: actions/favorited.php:158
 #, php-format
 msgid ""
 "Why not [register an account](%%action.register%%) and be the first to add a "
@@ -1659,138 +2742,186 @@ msgstr ""
 "Podia [registar uma conta](%%action.register%%) e ser o primeiro a adicionar "
 "uma nota às favoritas!"
 
-#: actions/favoritesrss.php:111 actions/showfavorites.php:77
-#: lib/personalgroupnav.php:115
+#. TRANS: Title of RSS feed with favourite notices of a user.
+#. TRANS: %s is a user's nickname.
+#. TRANS: Title for first page of favourite notices of a user.
+#. TRANS: %s is the user for whom the favourite notices are displayed.
+#. TRANS: Tooltip for personal group navigation menu option when logged in for viewing own favourited notices.
+#: actions/favoritesrss.php:111 actions/showfavorites.php:76
+#: lib/personalgroupnav.php:122
 #, php-format
 msgid "%s's favorite notices"
 msgstr "Notas favoritas de %s"
 
-#: actions/favoritesrss.php:115
+#. TRANS: Desciption of RSS feed with favourite notices of a user.
+#. TRANS: %1$s is a user's nickname, %2$s is the name of the StatusNet site.
+#: actions/favoritesrss.php:117
 #, php-format
 msgid "Updates favored by %1$s on %2$s!"
 msgstr "Actualizações marcadas por %1$s em %2$s!"
 
+#. TRANS: Page title for first page of featured users.
+#. TRANS: Title for featured users section.
 #: actions/featured.php:69 lib/featureduserssection.php:87
 #: lib/publicgroupnav.php:89
 msgid "Featured users"
 msgstr "Utilizadores em destaque"
 
-#: actions/featured.php:71
+#. TRANS: Page title for all but first page of featured users.
+#. TRANS: %d is the page number being displayed.
+#: actions/featured.php:73
 #, php-format
 msgid "Featured users, page %d"
 msgstr "utilizadores em destaque, página %d"
 
-#: actions/featured.php:99
-#, php-format
-msgid "A selection of some great users on %s"
+#. TRANS: Description on page displaying featured users.
+#: actions/featured.php:102
+#, fuzzy, php-format
+msgid "A selection of some great users on %s."
 msgstr "Uma selecção dos melhores utilizadores no %s"
 
-#: actions/file.php:34
+#. TRANS: Client error displayed when no notice ID was given trying do display a file.
+#: actions/file.php:36
 msgid "No notice ID."
 msgstr "Sem identificação de nota."
 
-#: actions/file.php:38
+#. TRANS: Client error displayed when an invalid notice ID was given trying do display a file.
+#: actions/file.php:41
 msgid "No notice."
 msgstr "Sem nota."
 
-#: actions/file.php:42
+#. TRANS: Client error displayed when trying do display a file for a notice without a file attachement.
+#: actions/file.php:46
 msgid "No attachments."
 msgstr "Sem anexos."
 
-#: actions/file.php:51
+#. TRANS: Client error displayed when trying do display a file for a notice with file attachements
+#. TRANS: that could not be found.
+#: actions/file.php:58
 msgid "No uploaded attachments."
 msgstr "Sem anexos carregados."
 
+#. TRANS: Client error displayed when subscribing to a remote profile and an unexpected response is received.
 #: actions/finishremotesubscribe.php:69
 msgid "Not expecting this response!"
 msgstr "Não esperava esta resposta!"
 
-#: actions/finishremotesubscribe.php:80
+#. TRANS: Client error displayed when subscribing to a remote profile that does not exist.
+#: actions/finishremotesubscribe.php:81
 msgid "User being listened to does not exist."
 msgstr "O utilizador que está a escutar não existe."
 
-#: actions/finishremotesubscribe.php:87 actions/remotesubscribe.php:59
+#. TRANS: Client error displayed when subscribing to a remote profile that is a local profile.
+#: actions/finishremotesubscribe.php:89 actions/remotesubscribe.php:58
 msgid "You can use the local subscription!"
 msgstr "Pode usar a subscrição local!"
 
-#: actions/finishremotesubscribe.php:99
+#. TRANS: Client error displayed when subscribing to a remote profile that is blocked form subscribing to.
+#: actions/finishremotesubscribe.php:102
 msgid "That user has blocked you from subscribing."
 msgstr "Esse utilizador bloqueou-o, impedindo que o subscreva."
 
-#: actions/finishremotesubscribe.php:110
+#. TRANS: Client error displayed when subscribing to a remote profile without providing an authorised token.
+#: actions/finishremotesubscribe.php:114
 msgid "You are not authorized."
 msgstr "Não tem autorização."
 
-#: actions/finishremotesubscribe.php:113
+#. TRANS: Client error displayed when subscribing to a remote profile and conversion of the request token to access token fails.
+#: actions/finishremotesubscribe.php:118
 msgid "Could not convert request token to access token."
 msgstr "Não foi possível converter a chave de pedido numa chave de acesso."
 
-#: actions/finishremotesubscribe.php:118
+#. TRANS: Client error displayed when subscribing to a remote profile fails because of an unsupported version of the OMB protocol.
+#: actions/finishremotesubscribe.php:124
 msgid "Remote service uses unknown version of OMB protocol."
 msgstr "Serviço remoto usa uma versão desconhecida do protocolo OMB."
 
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
+#. TRANS: Server error displayed when subscribing to a remote profile fails because the remote profile could not be updated.
+#: actions/finishremotesubscribe.php:145 lib/oauthstore.php:317
 msgid "Error updating remote profile."
 msgstr "Erro ao actualizar o perfil remoto."
 
-#: actions/getfile.php:79
+#. TRANS: Client error displayed when requesting a non-existent file.
+#: actions/getfile.php:77
 msgid "No such file."
 msgstr "Ficheiro não foi encontrado."
 
-#: actions/getfile.php:83
+#. TRANS: Client error displayed when requesting a file without having read access to it.
+#: actions/getfile.php:82
 msgid "Cannot read file."
 msgstr "Não foi possível ler o ficheiro."
 
-#: actions/grantrole.php:62 actions/revokerole.php:62
+#. TRANS: Client error displayed when trying to assign an invalid role to a user.
+#: actions/grantrole.php:61 actions/revokerole.php:62
 msgid "Invalid role."
 msgstr "Função inválida."
 
+#. TRANS: Client error displayed when trying to assign an reserved role to a user.
 #: actions/grantrole.php:66 actions/revokerole.php:66
 msgid "This role is reserved and cannot be set."
 msgstr "Esta função está reservada e não pode ser activada."
 
-#: actions/grantrole.php:75
+#. TRANS: Client error displayed when trying to assign a role to a user while not being allowed to set roles.
+#: actions/grantrole.php:76
 msgid "You cannot grant user roles on this site."
 msgstr "Não pode atribuir funções aos utilizadores neste site."
 
-#: actions/grantrole.php:82
+#. TRANS: Client error displayed when trying to assign a role to a user that already has that role.
+#: actions/grantrole.php:84
 msgid "User already has this role."
 msgstr "O utilizador já tem esta função."
 
+#. TRANS: Client error displayed trying to block a user from a group while not specifying a to be blocked user profile.
+#. TRANS: Client error displayed when trying to unblock a user from a group without providing a profile.
+#. TRANS: Client error displayed trying a change a subscription without providing a profile.
+#. TRANS: Client error displayed when trying to change user options without specifying a user to work on.
 #: actions/groupblock.php:71 actions/groupunblock.php:71
-#: actions/makeadmin.php:71 actions/subedit.php:46
+#: actions/makeadmin.php:71 actions/subedit.php:49
 #: lib/profileformaction.php:79
 msgid "No profile specified."
 msgstr "Não foi especificado um perfil."
 
-#: actions/groupblock.php:76 actions/groupunblock.php:76
-#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:86
+#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing profile.
+#. TRANS: Client error displayed when trying to unblock a user from a group without providing an existing profile.
+#. TRANS: Client error displayed trying a change a subscription for a non-existant profile ID.
+#. TRANS: Client error displayed when trying to change user options without specifying an existing user to work on.
+#: actions/groupblock.php:77 actions/groupunblock.php:77
+#: actions/makeadmin.php:76 actions/subedit.php:57 actions/tagother.php:46
+#: actions/unsubscribe.php:84 lib/profileformaction.php:87
 msgid "No profile with that ID."
 msgstr "Não foi encontrado um perfil com essa identificação."
 
-#: actions/groupblock.php:81 actions/groupunblock.php:81
+#. TRANS: Client error displayed trying to block a user from a group while not specifying a group to block a profile from.
+#. TRANS: Client error displayed when trying to unblock a user from a group without providing a group.
+#: actions/groupblock.php:83 actions/groupunblock.php:83
 #: actions/makeadmin.php:81
 msgid "No group specified."
 msgstr "Não foi especificado um grupo."
 
-#: actions/groupblock.php:91
+#. TRANS: Client error displayed trying to block a user from a group while not being an admin user.
+#: actions/groupblock.php:95
 msgid "Only an admin can block group members."
 msgstr "Só um gestor pode bloquear membros de um grupo."
 
-#: actions/groupblock.php:95
+#. TRANS: Client error displayed trying to block a user from a group while user is already blocked from the given group.
+#: actions/groupblock.php:100
 msgid "User is already blocked from group."
 msgstr "Acesso do utilizador ao grupo já foi bloqueado."
 
-#: actions/groupblock.php:100
+#. TRANS: Client error displayed trying to block a user from a group while user is not a member of given group.
+#: actions/groupblock.php:106
 msgid "User is not a member of group."
 msgstr "Utilizador não é membro do grupo."
 
-#: actions/groupblock.php:134 actions/groupmembers.php:364
+#. TRANS: Title for block user from group page.
+#. TRANS: Form legend for form to block user from a group.
+#: actions/groupblock.php:141 actions/groupmembers.php:364
 msgid "Block user from group"
 msgstr "Bloquear acesso do utilizador ao grupo"
 
-#: actions/groupblock.php:160
+#. TRANS: Explanatory text for block user from group form before setting the block.
+#. TRANS: %1$s is that to be blocked user, %2$s is the group the user will be blocked from.
+#: actions/groupblock.php:169
 #, php-format
 msgid ""
 "Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1802,32 +2933,37 @@ msgstr ""
 "impossibilitado de subscrever o grupo no futuro."
 
 #. TRANS: Submit button title for 'No' when blocking a user from a group.
-#: actions/groupblock.php:182
+#: actions/groupblock.php:191
 msgid "Do not block this user from this group"
 msgstr "Não bloquear acesso deste utilizador a este grupo"
 
 #. TRANS: Submit button title for 'Yes' when blocking a user from a group.
-#: actions/groupblock.php:189
+#: actions/groupblock.php:198
 msgid "Block this user from this group"
 msgstr "Bloquear acesso deste utilizador a este grupo"
 
-#: actions/groupblock.php:206
+#. TRANS: Server error displayed when trying to block a user from a group fails because of an application error.
+#: actions/groupblock.php:215
 msgid "Database error blocking user from group."
 msgstr "Erro na base de dados ao bloquear acesso do utilizador ao grupo."
 
-#: actions/groupbyid.php:74 actions/userbyid.php:70
+#. TRANS: Client error displayed referring to a group's permalink without providing a group ID.
+#: actions/groupbyid.php:73 actions/userbyid.php:70
 msgid "No ID."
 msgstr "Sem ID."
 
-#: actions/groupdesignsettings.php:68
+#. TRANS: Client error displayed trying to change group design settings while not logged in.
+#: actions/groupdesignsettings.php:67
 msgid "You must be logged in to edit a group."
 msgstr "Tem de iniciar uma sessão para editar um grupo."
 
-#: actions/groupdesignsettings.php:144
+#. TRANS: Title group design settings page.
+#: actions/groupdesignsettings.php:146
 msgid "Group design"
 msgstr "Estilo do grupo"
 
-#: actions/groupdesignsettings.php:155
+#. TRANS: Instructions for group design settings page.
+#: actions/groupdesignsettings.php:157
 msgid ""
 "Customize the way your group looks with a background image and a colour "
 "palette of your choice."
@@ -1835,20 +2971,26 @@ msgstr ""
 "Personalize o aspecto do seu grupo com uma imagem de fundo e uma paleta de "
 "cores à sua escolha."
 
-#: actions/groupdesignsettings.php:266 actions/userdesignsettings.php:186
-#: lib/designsettings.php:391 lib/designsettings.php:413
-msgid "Couldn't update your design."
-msgstr "Não foi possível actualizar o estilo."
+#. TRANS: Form validation error displayed when group design settings could not be updated because of an application issue.
+#: actions/groupdesignsettings.php:262
+#, fuzzy
+msgid "Unable to update your design settings."
+msgstr "Não foi possível gravar as configurações do estilo."
 
-#: actions/groupdesignsettings.php:311 actions/userdesignsettings.php:231
+#. TRANS: Form text to confirm saved group design settings.
+#: actions/groupdesignsettings.php:307 actions/userdesignsettings.php:222
 msgid "Design preferences saved."
 msgstr "Preferências de estilo foram gravadas."
 
-#: actions/grouplogo.php:142 actions/grouplogo.php:195
+#. TRANS: Title for group logo settings page.
+#. TRANS: Group logo form legend.
+#: actions/grouplogo.php:144 actions/grouplogo.php:199
 msgid "Group logo"
 msgstr "Logotipo do grupo"
 
-#: actions/grouplogo.php:153
+#. TRANS: Instructions for group logo page.
+#. TRANS: %s is the maximum file size for that site.
+#: actions/grouplogo.php:156
 #, php-format
 msgid ""
 "You can upload a logo image for your group. The maximum file size is %s."
@@ -1856,101 +2998,116 @@ msgstr ""
 "Pode carregar uma imagem para logotipo do seu grupo. O tamanho máximo do "
 "ficheiro é %s."
 
-#: actions/grouplogo.php:365
+#. TRANS: Submit button for uploading a group logo.
+#: actions/grouplogo.php:243
+msgid "Upload"
+msgstr "Carregar"
+
+#. TRANS: Button text for cropping an uploaded group logo.
+#: actions/grouplogo.php:299
+msgid "Crop"
+msgstr "Cortar"
+
+#. TRANS: Form instructions on the group logo page.
+#: actions/grouplogo.php:376
 msgid "Pick a square area of the image to be the logo."
 msgstr "Escolha uma área quadrada da imagem para ser o logotipo."
 
-#: actions/grouplogo.php:399
+#. TRANS: Form success message after updating a group logo.
+#: actions/grouplogo.php:411
 msgid "Logo updated."
 msgstr "Logotipo actualizado."
 
-#: actions/grouplogo.php:401
+#. TRANS: Form failure message after failing to update a group logo.
+#: actions/grouplogo.php:414
 msgid "Failed updating logo."
 msgstr "Não foi possível actualizar o logotipo."
 
 #. TRANS: Title of the page showing group members.
 #. TRANS: %s is the name of the group.
-#: actions/groupmembers.php:102
+#: actions/groupmembers.php:104
 #, php-format
 msgid "%s group members"
 msgstr "Membros do grupo %s"
 
 #. TRANS: Title of the page showing group members.
 #. TRANS: %1$s is the name of the group, %2$d is the page number of the members list.
-#: actions/groupmembers.php:107
+#: actions/groupmembers.php:109
 #, php-format
 msgid "%1$s group members, page %2$d"
 msgstr "Membros do grupo %1$s, página %2$d"
 
-#: actions/groupmembers.php:122
+#. TRANS: Page notice for group members page.
+#: actions/groupmembers.php:125
 msgid "A list of the users in this group."
 msgstr "Uma lista dos utilizadores neste grupo."
 
-#: actions/groupmembers.php:186
+#. TRANS: Indicator in group members list that this user is a group administrator.
+#: actions/groupmembers.php:190
 msgid "Admin"
 msgstr "Gestor"
 
 #. TRANS: Button text for the form that will block a user from a group.
-#: actions/groupmembers.php:399
+#: actions/groupmembers.php:397
 msgctxt "BUTTON"
 msgid "Block"
 msgstr "Bloquear"
 
 #. TRANS: Submit button title.
-#: actions/groupmembers.php:403
+#: actions/groupmembers.php:401
 msgctxt "TOOLTIP"
 msgid "Block this user"
 msgstr ""
 
-#: actions/groupmembers.php:498
+#. TRANS: Form legend for form to make a user a group admin.
+#: actions/groupmembers.php:488
 msgid "Make user an admin of the group"
 msgstr "Tornar utilizador o gestor do grupo"
 
 #. TRANS: Button text for the form that will make a user administrator.
-#: actions/groupmembers.php:533
+#: actions/groupmembers.php:521
 msgctxt "BUTTON"
 msgid "Make Admin"
 msgstr "Tornar Gestor"
 
 #. TRANS: Submit button title.
-#: actions/groupmembers.php:537
+#: actions/groupmembers.php:525
 msgctxt "TOOLTIP"
 msgid "Make this user an admin"
 msgstr "Tornar este utilizador um gestor"
 
-#. TRANS: Message is used as link title. %s is a user nickname.
-#. TRANS: Title in atom group notice feed. %s is a group name.
-#. TRANS: Title in atom user notice feed. %s is a user name.
-#: actions/grouprss.php:139 actions/userrss.php:94
-#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:68
-#, php-format
-msgid "%s timeline"
-msgstr "Notas de %s"
-
 #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
-#: actions/grouprss.php:142
+#: actions/grouprss.php:141
 #, php-format
 msgid "Updates from members of %1$s on %2$s!"
 msgstr "Actualizações dos membros de %1$s em %2$s!"
 
-#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
-#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
+#. TRANS: Title for first page of the groups list.
+#: actions/groups.php:62
+#, fuzzy
+msgctxt "TITLE"
 msgid "Groups"
 msgstr "Grupos"
 
-#: actions/groups.php:64
-#, php-format
+#. TRANS: Title for all but the first page of the groups list.
+#. TRANS: %d is the page number.
+#: actions/groups.php:66
+#, fuzzy, php-format
+msgctxt "TITLE"
 msgid "Groups, page %d"
 msgstr "Grupos, página %d"
 
-#: actions/groups.php:90
-#, php-format
+#. TRANS: Page notice of group list. %%%%site.name%%%% is the StatusNet site name,
+#. TRANS: %%%%action.groupsearch%%%% and %%%%action.newgroup%%%% are URLs. Do not change them.
+#. TRANS: This message contains Markdown links in the form [link text](link).
+#: actions/groups.php:95
+#, fuzzy, php-format
 msgid ""
 "%%%%site.name%%%% groups let you find and talk with people of similar "
 "interests. After you join a group you can send messages to all other members "
 "using the syntax \"!groupname\". Don't see a group you like? Try [searching "
-"for one](%%%%action.groupsearch%%%%) or [start your own!](%%%%action.newgroup"
-"%%%%)"
+"for one](%%%%action.groupsearch%%%%) or [start your own](%%%%action.newgroup%"
+"%%%)!"
 msgstr ""
 "Os grupos no site %%site.name%% permitem-lhe encontrar e falar com pessoas "
 "que têm interesses semelhantes aos seus. Após juntar-se a um grupo, pode "
@@ -1958,11 +3115,13 @@ msgstr ""
 "encontra nenhum grupo de que gosta? Tente [pesquisar um grupo](%%action."
 "groupsearch%%) ou [crie o seu!](%%action.newgroup%%)"
 
-#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
+#. TRANS: Link to create a new group on the group list page.
+#: actions/groups.php:113 actions/usergroups.php:126 lib/groupeditform.php:115
 msgid "Create a new group"
 msgstr "Criar um grupo novo"
 
-#: actions/groupsearch.php:52
+#. TRANS: Instructions for page where groups can be searched. %%site.name%% is the name of the StatusNet site.
+#: actions/groupsearch.php:53
 #, php-format
 msgid ""
 "Search for groups on %%site.name%% by their name, location, or description. "
@@ -1971,25 +3130,31 @@ msgstr ""
 "Procure grupos neste site pesquisando o nome, localização ou descrição. Os "
 "termos de busca devem ter 3 ou mais caracteres e estar separados por espaços."
 
-#: actions/groupsearch.php:58
+#. TRANS: Title for page where groups can be searched.
+#: actions/groupsearch.php:60
 msgid "Group search"
 msgstr "Pesquisa de grupos"
 
-#: actions/groupsearch.php:79 actions/noticesearch.php:117
+#. TRANS: Text on page where groups can be searched if no results were found for a query.
+#: actions/groupsearch.php:82 actions/noticesearch.php:117
 #: actions/peoplesearch.php:83
 msgid "No results."
 msgstr "Sem resultados."
 
-#: actions/groupsearch.php:82
-#, php-format
+#. TRANS: Additional text on page where groups can be searched if no results were found for a query for a logged in user.
+#. TRANS: This message contains Markdown links in the form [link text](link).
+#: actions/groupsearch.php:87
+#, fuzzy, php-format
 msgid ""
-"If you can't find the group you're looking for, you can [create it](%%action."
-"newgroup%%) yourself."
+"If you cannot find the group you're looking for, you can [create it](%%"
+"action.newgroup%%) yourself."
 msgstr ""
 "Se não encontra o grupo que procura, pode [criá-lo](%%action.newgroup%%) "
 "você mesmo."
 
-#: actions/groupsearch.php:85
+#. TRANS: Additional text on page where groups can be searched if no results were found for a query for a not logged in user.
+#. TRANS: This message contains Markdown links in the form [link text](link).
+#: actions/groupsearch.php:92
 #, php-format
 msgid ""
 "Why not [register an account](%%action.register%%) and [create the group](%%"
@@ -1998,135 +3163,146 @@ msgstr ""
 "Podia [registar uma conta](%%action.register%%) e [criar o grupo](%%action."
 "newgroup%%) você mesmo!"
 
-#: actions/groupunblock.php:91
+#. TRANS: Client error displayed when trying to unblock a user from a group without being an administrator for the group.
+#: actions/groupunblock.php:95
 msgid "Only an admin can unblock group members."
 msgstr "Só um gestor pode desbloquear membros de um grupo."
 
-#: actions/groupunblock.php:95
+#. TRANS: Client error displayed when trying to unblock a non-blocked user from a group.
+#: actions/groupunblock.php:100
 msgid "User is not blocked from group."
 msgstr "Acesso do utilizador ao grupo não foi bloqueado."
 
-#: actions/groupunblock.php:128 actions/unblock.php:86
+#. TRANS: Server error displayed when unblocking a user from a group fails because of an unknown error.
+#: actions/groupunblock.php:132 actions/unblock.php:86
 msgid "Error removing the block."
 msgstr "Erro ao remover o bloqueio."
 
-#. TRANS: Title for instance messaging settings.
-#: actions/imsettings.php:60
+#. TRANS: Title for Instant Messaging settings.
+#: actions/imsettings.php:58
 msgid "IM settings"
 msgstr "Configurações do IM"
 
 #. TRANS: Instant messaging settings page instructions.
 #. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
 #. TRANS: the order and formatting of link text and link should remain unchanged.
-#: actions/imsettings.php:74
-#, php-format
+#: actions/imsettings.php:71
+#, fuzzy, php-format
 msgid ""
-"You can send and receive notices through Jabber/GTalk [instant messages](%%"
-"doc.im%%). Configure your address and settings below."
+"You can send and receive notices through Jabber/Google Talk [instant "
+"messages](%%doc.im%%). Configure your address and settings below."
 msgstr ""
 "Pode enviar e receber notas através de [mensagens instantâneas](%%doc.im%%) "
 "Jabber/GTalk. Configure o seu endereço e outras definições abaixo."
 
-#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
-#: actions/imsettings.php:94
+#. TRANS: Message given in the Instant Messaging settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:90
 msgid "IM is not available."
 msgstr "MI não está disponível."
 
-#. TRANS: Form legend for IM settings form.
-#. TRANS: Field label for IM address input in IM settings form.
-#: actions/imsettings.php:106 actions/imsettings.php:136
+#. TRANS: Form legend for Instant Messaging settings form.
+#. TRANS: Field label for Instant Messaging address input in Instant Messaging settings form.
+#: actions/imsettings.php:102 actions/imsettings.php:132
 msgid "IM address"
 msgstr "Endereço IM"
 
-#: actions/imsettings.php:113
-msgid "Current confirmed Jabber/GTalk address."
+#: actions/imsettings.php:109
+#, fuzzy
+msgid "Current confirmed Jabber/Google Talk address."
 msgstr "Endereço do Jabber/GTalk já confirmado."
 
-#. TRANS: Form note in IM settings form.
-#. TRANS: %s is the IM address set for the site.
-#: actions/imsettings.php:124
-#, php-format
+#. TRANS: Form note in Instant Messaging settings form.
+#. TRANS: %s is the Instant Messaging address set for the site.
+#: actions/imsettings.php:120
+#, fuzzy, php-format
 msgid ""
-"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
-"message with further instructions. (Did you add %s to your buddy list?)"
+"Awaiting confirmation on this address. Check your Jabber/Google Talk account "
+"for a message with further instructions. (Did you add %s to your buddy list?)"
 msgstr ""
 "A aguardar confirmação deste endereço. Verifique as instruções que foram "
 "enviadas para a sua conta de Jabber/GTalk. (Adicionou %s à sua lista de "
 "amigos?)"
 
-#. TRANS: IM address input field instructions in IM settings form.
-#. TRANS: %s is the IM address set for the site.
+#. TRANS: IM address input field instructions in Instant Messaging settings form.
+#. TRANS: %s is the Instant Messaging address set for the site.
 #. TRANS: Do not translate "example.org". It is one of the domain names reserved for use in examples by
 #. TRANS: http://www.rfc-editor.org/rfc/rfc2606.txt. Any other domain may be owned by a legitimate
 #. TRANS: person or organization.
-#: actions/imsettings.php:143
-#, php-format
+#: actions/imsettings.php:139
+#, fuzzy, php-format
 msgid ""
-"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
-"add %s to your buddy list in your IM client or on GTalk."
+"Jabber or Google Talk address, like \"UserName@example.org\". First, make "
+"sure to add %s to your buddy list in your IM client or on Google Talk."
 msgstr ""
 "Endereço Jabber ou GTalk, por exemplo \"NomeDeUtilizador@exemplo.pt\". "
 "Primeiro, certifique-se de que adicionou %s à sua lista de amigos no cliente "
 "MI ou no GTalk."
 
-#. TRANS: Form legend for IM preferences form.
-#: actions/imsettings.php:158
+#. TRANS: Form legend for Instant Messaging preferences form.
+#: actions/imsettings.php:154
 msgid "IM preferences"
 msgstr "Preferências de MI"
 
-#. TRANS: Checkbox label in IM preferences form.
-#: actions/imsettings.php:163
-msgid "Send me notices through Jabber/GTalk."
+#. TRANS: Checkbox label in Instant Messaging preferences form.
+#: actions/imsettings.php:159
+#, fuzzy
+msgid "Send me notices through Jabber/Google Talk."
 msgstr "Enviar-me notas via Jabber/GTalk."
 
-#. TRANS: Checkbox label in IM preferences form.
-#: actions/imsettings.php:169
-msgid "Post a notice when my Jabber/GTalk status changes."
+#. TRANS: Checkbox label in Instant Messaging preferences form.
+#: actions/imsettings.php:165
+#, fuzzy
+msgid "Post a notice when my Jabber/Google Talk status changes."
 msgstr "Publicar uma nota quando o meu estado no Jabber/GTalk se altera."
 
-#. TRANS: Checkbox label in IM preferences form.
-#: actions/imsettings.php:175
-msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
+#. TRANS: Checkbox label in Instant Messaging preferences form.
+#: actions/imsettings.php:171
+#, fuzzy
+msgid ""
+"Send me replies through Jabber/Google Talk from people I'm not subscribed to."
 msgstr "Enviar-me via Jabber/GTalk respostas de pessoas que não subscrevo."
 
-#. TRANS: Checkbox label in IM preferences form.
-#: actions/imsettings.php:182
-msgid "Publish a MicroID for my Jabber/GTalk address."
+#. TRANS: Checkbox label in Instant Messaging preferences form.
+#: actions/imsettings.php:178
+#, fuzzy
+msgid "Publish a MicroID for my Jabber/Google Talk address."
 msgstr "Publicar um MicroID para o meu endereço Jabber/GTalk."
 
-#. TRANS: Confirmation message for successful IM preferences save.
-#: actions/imsettings.php:290 actions/othersettings.php:180
+#. TRANS: Confirmation message for successful Instant Messaging preferences save.
+#: actions/imsettings.php:283 actions/othersettings.php:192
 msgid "Preferences saved."
 msgstr "Preferências gravadas."
 
-#. TRANS: Message given saving IM address without having provided one.
-#: actions/imsettings.php:312
+#. TRANS: Message given saving Instant Messaging address without having provided one.
+#: actions/imsettings.php:304
 msgid "No Jabber ID."
 msgstr "Não introduziu o Jabber ID."
 
-#. TRANS: Message given saving IM address that cannot be normalised.
-#: actions/imsettings.php:320
-msgid "Cannot normalize that Jabber ID"
+#. TRANS: Message given saving Instant Messaging address that cannot be normalised.
+#: actions/imsettings.php:312
+#, fuzzy
+msgid "Cannot normalize that Jabber ID."
 msgstr "Não é possível normalizar esse Jabber ID"
 
-#. TRANS: Message given saving IM address that not valid.
-#: actions/imsettings.php:325
-msgid "Not a valid Jabber ID"
+#. TRANS: Message given saving Instant Messaging address that not valid.
+#: actions/imsettings.php:317
+#, fuzzy
+msgid "Not a valid Jabber ID."
 msgstr "Jabber ID não é válido"
 
-#. TRANS: Message given saving IM address that is already set.
-#: actions/imsettings.php:329
+#. TRANS: Message given saving Instant Messaging address that is already set.
+#: actions/imsettings.php:321
 msgid "That is already your Jabber ID."
 msgstr "Esse já é o seu Jabber ID."
 
-#. TRANS: Message given saving IM address that is already set for another user.
-#: actions/imsettings.php:333
+#. TRANS: Message given saving Instant Messaging address that is already set for another user.
+#: actions/imsettings.php:325
 msgid "Jabber ID already belongs to another user."
 msgstr "O Jabber ID introduzido já pertence a outro utilizador."
 
-#. TRANS: Message given saving valid IM address that is to be confirmed.
-#. TRANS: %s is the IM address set for the site.
-#: actions/imsettings.php:361
+#. TRANS: Message given saving valid Instant Messaging address that is to be confirmed.
+#. TRANS: %s is the Instant Messaging address set for the site.
+#: actions/imsettings.php:353
 #, php-format
 msgid ""
 "A confirmation code was sent to the IM address you added. You must approve %"
@@ -2135,94 +3311,131 @@ msgstr ""
 "Um código de confirmação foi enviado para o endereço fornecido. Tem que "
 "aprovar que %s envie mensagens para si."
 
-#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
-#: actions/imsettings.php:391
+#. TRANS: Message given canceling Instant Messaging address confirmation for the wrong IM address.
+#: actions/imsettings.php:382
 msgid "That is the wrong IM address."
 msgstr "Esse endereço de mensagens instantâneas está errado."
 
-#. TRANS: Server error thrown on database error canceling IM address confirmation.
-#: actions/imsettings.php:400
-msgid "Couldn't delete IM confirmation."
+#. TRANS: Server error thrown on database error canceling Instant Messaging address confirmation.
+#: actions/imsettings.php:391
+#, fuzzy
+msgid "Could not delete IM confirmation."
 msgstr "Não foi possível apagar a confirmação do mensageiro instantâneo."
 
-#. TRANS: Message given after successfully canceling IM address confirmation.
-#: actions/imsettings.php:405
+#. TRANS: Message given after successfully canceling Instant Messaging address confirmation.
+#: actions/imsettings.php:396
 msgid "IM confirmation cancelled."
 msgstr "Confirmação do mensageiro instantâneo cancelada."
 
-#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: Message given trying to remove an Instant Messaging address that is not
 #. TRANS: registered for the active user.
-#: actions/imsettings.php:427
+#: actions/imsettings.php:417
 msgid "That is not your Jabber ID."
 msgstr "Esse não é o seu Jabber ID."
 
-#. TRANS: Message given after successfully removing a registered IM address.
-#: actions/imsettings.php:450
+#. TRANS: Message given after successfully removing a registered Instant Messaging address.
+#: actions/imsettings.php:440
 msgid "The IM address was removed."
 msgstr "O endereço do mensageiro instantâneo foi removido."
 
+#. TRANS: Title for all but the first page of the inbox page.
+#. TRANS: %1$s is the user's nickname, %2$s is the page number.
 #: actions/inbox.php:59
 #, php-format
 msgid "Inbox for %1$s - page %2$d"
 msgstr "Caixa de entrada de %s - página %2$d"
 
-#: actions/inbox.php:62
+#. TRANS: Title for the first page of the inbox page.
+#. TRANS: %s is the user's nickname.
+#: actions/inbox.php:64
 #, php-format
 msgid "Inbox for %s"
 msgstr "Caixa de entrada de %s"
 
-#: actions/inbox.php:115
+#. TRANS: Instructions for user inbox page.
+#: actions/inbox.php:106
 msgid "This is your inbox, which lists your incoming private messages."
 msgstr ""
 "Esta é a sua caixa de entrada, que apresenta as mensagens privadas que "
 "recebeu."
 
-#: actions/invite.php:39
+#. TRANS: Client error displayed when trying to sent invites while they have been disabled.
+#: actions/invite.php:41
 msgid "Invites have been disabled."
 msgstr "Convites foram desabilitados."
 
-#: actions/invite.php:41
+#. TRANS: Client error displayed when trying to sent invites while not logged in.
+#. TRANS: %s is the StatusNet site name.
+#: actions/invite.php:45
 #, php-format
 msgid "You must be logged in to invite other users to use %s."
 msgstr ""
 "Tem de iniciar uma sessão para convidar outros utilizadores a usarem o site %"
 "s."
 
-#: actions/invite.php:72
-#, php-format
-msgid "Invalid email address: %s"
+#. TRANS: Form validation message when providing an e-mail address that does not validate.
+#. TRANS: %s is an invalid e-mail address.
+#: actions/invite.php:78
+#, fuzzy, php-format
+msgid "Invalid email address: %s."
 msgstr "Endereço electrónico inválido: %s"
 
-#: actions/invite.php:110
-msgid "Invitation(s) sent"
+#. TRANS: Page title when invitations have been sent.
+#: actions/invite.php:117
+#, fuzzy
+msgid "Invitations sent"
 msgstr "Convite(s) enviado(s)"
 
-#: actions/invite.php:112
+#. TRANS: Page title when inviting potential users.
+#: actions/invite.php:120
 msgid "Invite new users"
 msgstr "Convidar novos utilizadores"
 
-#: actions/invite.php:128
-msgid "You are already subscribed to these users:"
-msgstr "Já subscreveu estes utilizadores:"
-
-#. TRANS: Whois output.
-#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:426
-#, php-format
+#. TRANS: Message displayed inviting users to use a StatusNet site while the inviting user
+#. TRANS: is already subscribed to one or more users with the given e-mail address(es).
+#. TRANS: Plural form is based on the number of reported already subscribed e-mail addresses.
+#. TRANS: Followed by a bullet list.
+#: actions/invite.php:140
+#, fuzzy
+msgid "You are already subscribed to this user:"
+msgid_plural "You are already subscribed to these users:"
+msgstr[0] "Já subscreveu estes utilizadores:"
+msgstr[1] "Já subscreveu estes utilizadores:"
+
+#. TRANS: Used as list item for already subscribed users (%1$s is nickname, %2$s is e-mail address).
+#. TRANS: Used as list item for already registered people (%1$s is nickname, %2$s is e-mail address).
+#: actions/invite.php:146 actions/invite.php:160
+#, fuzzy, php-format
+msgctxt "INVITE"
 msgid "%1$s (%2$s)"
 msgstr "%1$s (%2$s)"
 
-#: actions/invite.php:136
-msgid ""
+#. TRANS: Message displayed inviting users to use a StatusNet site while the invited user
+#. TRANS: already uses a this StatusNet site. Plural form is based on the number of
+#. TRANS: reported already present people. Followed by a bullet list.
+#: actions/invite.php:154
+#, fuzzy
+msgid "This person is already a user and you were automatically subscribed:"
+msgid_plural ""
 "These people are already users and you were automatically subscribed to them:"
-msgstr ""
+msgstr[0] ""
+"Estas pessoas já são utilizadores e foram automaticamente subscritos por si:"
+msgstr[1] ""
 "Estas pessoas já são utilizadores e foram automaticamente subscritos por si:"
 
-#: actions/invite.php:144
-msgid "Invitation(s) sent to the following people:"
-msgstr "Convite(s) enviado(s) para as seguintes pessoas:"
-
-#: actions/invite.php:150
+#. TRANS: Message displayed inviting users to use a StatusNet site. Plural form is
+#. TRANS: based on the number of invitations sent. Followed by a bullet list of
+#. TRANS: e-mail addresses to which invitations were sent.
+#: actions/invite.php:168
+#, fuzzy
+msgid "Invitation sent to the following person:"
+msgid_plural "Invitations sent to the following people:"
+msgstr[0] "Convite(s) enviado(s) para as seguintes pessoas:"
+msgstr[1] "Convite(s) enviado(s) para as seguintes pessoas:"
+
+#. TRANS: Generic message displayed after sending out one or more invitations to
+#. TRANS: people to join a StatusNet site.
+#: actions/invite.php:178
 msgid ""
 "You will be notified when your invitees accept the invitation and register "
 "on the site. Thanks for growing the community!"
@@ -2230,42 +3443,54 @@ msgstr ""
 "Receberá uma notificação quando os seus convidados aceitarem o convite e se "
 "registarem no site. Obrigado por aumentar a comunidade!"
 
-#: actions/invite.php:162
+#. TRANS: Form instructions.
+#: actions/invite.php:191
 msgid ""
 "Use this form to invite your friends and colleagues to use this service."
 msgstr ""
 "Use este formulário para convidar amigos e colegas a usar este serviço."
 
-#: actions/invite.php:187
+#. TRANS: Field label for a list of e-mail addresses.
+#: actions/invite.php:218
 msgid "Email addresses"
 msgstr "Endereços de correio electrónico"
 
-#: actions/invite.php:189
-msgid "Addresses of friends to invite (one per line)"
+#. TRANS: Tooltip for field label for a list of e-mail addresses.
+#: actions/invite.php:221
+#, fuzzy
+msgid "Addresses of friends to invite (one per line)."
 msgstr "Endereços dos amigos a convidar (um por linha)"
 
-#: actions/invite.php:192
+#. TRANS: Field label for a personal message to send to invitees.
+#: actions/invite.php:225
 msgid "Personal message"
 msgstr "Mensagem pessoal"
 
-#: actions/invite.php:194
+#. TRANS: Tooltip for field label for a personal message to send to invitees.
+#: actions/invite.php:228
 msgid "Optionally add a personal message to the invitation."
 msgstr "Pode optar por acrescentar uma mensagem pessoal ao convite"
 
 #. TRANS: Send button for inviting friends
-#: actions/invite.php:198
+#: actions/invite.php:232
 msgctxt "BUTTON"
 msgid "Send"
 msgstr "Enviar"
 
-#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
-#: actions/invite.php:228
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral
+#. TRANS: singular 3rd-person pronoun in English. %1$s is the inviting user, $2$s is
+#. TRANS: the StatusNet sitename.
+#: actions/invite.php:264
 #, php-format
 msgid "%1$s has invited you to join them on %2$s"
 msgstr "%1$s convidou-o a juntar-se a ele no %2$s"
 
-#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
-#: actions/invite.php:231
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral
+#. TRANS: singular 3rd-person pronoun in English. %1$s is the inviting user, %2$s is the
+#. TRANS: StatusNet sitename, %3$s is the site URL, %4$s is the personal message from the
+#. TRANS: inviting user, %s%5 a link to the timeline for the inviting user, %s$6 is a link
+#. TRANS: to register with the StatusNet site.
+#: actions/invite.php:271
 #, php-format
 msgid ""
 "%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2321,134 +3546,145 @@ msgstr ""
 "\n"
 "Sinceramente, %2$s\n"
 
-#: actions/joingroup.php:60
+#. TRANS: Client error displayed when trying to join a group while not logged in.
+#: actions/joingroup.php:59
 msgid "You must be logged in to join a group."
 msgstr "Tem de iniciar uma sessão para se juntar a um grupo."
 
-#: actions/joingroup.php:88 actions/leavegroup.php:88
-msgid "No nickname or ID."
-msgstr "Nenhum utilizador ou ID."
-
-#: actions/joingroup.php:141
-#, php-format
+#. TRANS: Title for join group page after joining.
+#: actions/joingroup.php:147
+#, fuzzy, php-format
+msgctxt "TITLE"
 msgid "%1$s joined group %2$s"
 msgstr "%1$s juntou-se ao grupo %2$s"
 
-#: actions/leavegroup.php:60
+#. TRANS: Client error displayed when trying to leave a group while not logged in.
+#: actions/leavegroup.php:59
 msgid "You must be logged in to leave a group."
 msgstr "Tem de iniciar uma sessão para deixar um grupo."
 
+#. TRANS: Client error displayed when trying to join a group while already a member.
 #. TRANS: Error text shown when trying to leave an existing group the user is not a member of.
-#: actions/leavegroup.php:100 lib/command.php:386
+#: actions/leavegroup.php:103 lib/command.php:386
 msgid "You are not a member of that group."
 msgstr "Não é um membro desse grupo."
 
-#: actions/leavegroup.php:137
-#, php-format
+#. TRANS: Title for leave group page after leaving.
+#: actions/leavegroup.php:142
+#, fuzzy, php-format
+msgctxt "TITLE"
 msgid "%1$s left group %2$s"
 msgstr "%1$s deixou o grupo %2$s"
 
 #. TRANS: User admin panel title
-#: actions/licenseadminpanel.php:56
+#: actions/licenseadminpanel.php:55
 msgctxt "TITLE"
 msgid "License"
 msgstr ""
 
-#: actions/licenseadminpanel.php:67
+#: actions/licenseadminpanel.php:65
 msgid "License for this StatusNet site"
 msgstr ""
 
-#: actions/licenseadminpanel.php:139
+#: actions/licenseadminpanel.php:134
 msgid "Invalid license selection."
 msgstr ""
 
-#: actions/licenseadminpanel.php:149
+#: actions/licenseadminpanel.php:144
 msgid ""
 "You must specify the owner of the content when using the All Rights Reserved "
 "license."
 msgstr ""
 
-#: actions/licenseadminpanel.php:156
-msgid "Invalid license title. Max length is 255 characters."
-msgstr ""
+#: actions/licenseadminpanel.php:151
+#, fuzzy
+msgid "Invalid license title. Maximum length is 255 characters."
+msgstr "Texto de boas-vindas inválido. Tamanho máx. é 255 caracteres."
 
-#: actions/licenseadminpanel.php:168
+#: actions/licenseadminpanel.php:163
 msgid "Invalid license URL."
 msgstr ""
 
-#: actions/licenseadminpanel.php:171
+#: actions/licenseadminpanel.php:166
 msgid "Invalid license image URL."
 msgstr ""
 
-#: actions/licenseadminpanel.php:179
+#: actions/licenseadminpanel.php:174
 msgid "License URL must be blank or a valid URL."
 msgstr ""
 
-#: actions/licenseadminpanel.php:187
+#: actions/licenseadminpanel.php:182
 msgid "License image must be blank or valid URL."
 msgstr ""
 
-#: actions/licenseadminpanel.php:239
+#: actions/licenseadminpanel.php:232
 msgid "License selection"
 msgstr ""
 
-#: actions/licenseadminpanel.php:245
+#: actions/licenseadminpanel.php:238
 msgid "Private"
 msgstr "Privado"
 
-#: actions/licenseadminpanel.php:246
+#: actions/licenseadminpanel.php:239
 msgid "All Rights Reserved"
 msgstr ""
 
-#: actions/licenseadminpanel.php:247
+#: actions/licenseadminpanel.php:240
 msgid "Creative Commons"
 msgstr ""
 
-#: actions/licenseadminpanel.php:252
+#: actions/licenseadminpanel.php:245
 msgid "Type"
 msgstr ""
 
-#: actions/licenseadminpanel.php:254
+#: actions/licenseadminpanel.php:247
 msgid "Select license"
 msgstr ""
 
-#: actions/licenseadminpanel.php:268
+#: actions/licenseadminpanel.php:261
 msgid "License details"
 msgstr ""
 
-#: actions/licenseadminpanel.php:274
+#: actions/licenseadminpanel.php:267
 msgid "Owner"
 msgstr ""
 
-#: actions/licenseadminpanel.php:275
+#: actions/licenseadminpanel.php:268
 msgid "Name of the owner of the site's content (if applicable)."
 msgstr ""
 
-#: actions/licenseadminpanel.php:283
+#: actions/licenseadminpanel.php:276
 msgid "License Title"
 msgstr ""
 
-#: actions/licenseadminpanel.php:284
+#: actions/licenseadminpanel.php:277
 msgid "The title of the license."
 msgstr ""
 
-#: actions/licenseadminpanel.php:292
+#: actions/licenseadminpanel.php:285
 msgid "License URL"
 msgstr ""
 
-#: actions/licenseadminpanel.php:293
+#: actions/licenseadminpanel.php:286
 msgid "URL for more information about the license."
 msgstr ""
 
-#: actions/licenseadminpanel.php:300
+#: actions/licenseadminpanel.php:293
 msgid "License Image URL"
 msgstr ""
 
-#: actions/licenseadminpanel.php:301
+#: actions/licenseadminpanel.php:294
 msgid "URL for an image to display with the license."
 msgstr ""
 
-#: actions/licenseadminpanel.php:319
+#. TRANS: Submit button title.
+#: actions/licenseadminpanel.php:311 actions/sessionsadminpanel.php:199
+#: actions/siteadminpanel.php:292 actions/snapshotadminpanel.php:245
+#: actions/tagother.php:154 lib/applicationeditform.php:357
+msgid "Save"
+msgstr "Gravar"
+
+#: actions/licenseadminpanel.php:311
 msgid "Save license settings"
 msgstr ""
 
@@ -2464,7 +3700,7 @@ msgstr "Nome de utilizador ou senha incorrectos."
 msgid "Error setting user. You are probably not authorized."
 msgstr "Erro ao preparar o utilizador. Provavelmente não está autorizado."
 
-#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263
 msgid "Login"
 msgstr "Entrar"
 
@@ -2472,11 +3708,11 @@ msgstr "Entrar"
 msgid "Login to site"
 msgstr "Iniciar sessão no site"
 
-#: actions/login.php:258 actions/register.php:485
+#: actions/login.php:258 actions/register.php:490
 msgid "Remember me"
 msgstr "Lembrar-me neste computador"
 
-#: actions/login.php:259 actions/register.php:487
+#: actions/login.php:259 actions/register.php:492
 msgid "Automatically login in the future; not for shared computers!"
 msgstr ""
 "De futuro, iniciar sessão automaticamente. Não usar em computadores "
@@ -2527,72 +3763,92 @@ msgstr "Não é possível tornar %1$s administrador do grupo %2$s."
 msgid "No current status."
 msgstr "Sem estado actual."
 
+#. TRANS: This is the title of the form for adding a new application.
 #: actions/newapplication.php:52
-msgid "New Application"
+#, fuzzy
+msgid "New application"
 msgstr "Aplicação Nova"
 
+#. TRANS: Client error displayed trying to add a new application while not logged in.
 #: actions/newapplication.php:64
 msgid "You must be logged in to register an application."
 msgstr "Tem de iniciar uma sessão para registar uma aplicação."
 
-#: actions/newapplication.php:143
+#. TRANS: Form instructions for registering a new application.
+#: actions/newapplication.php:147
 msgid "Use this form to register a new application."
 msgstr "Use este formulário para registar uma nova aplicação."
 
-#: actions/newapplication.php:176
+#. TRANS: Validation error shown when not providing a source URL in the "New application" form.
+#: actions/newapplication.php:189
 msgid "Source URL is required."
 msgstr "É necessária a URL de origem."
 
-#: actions/newapplication.php:258 actions/newapplication.php:267
+#. TRANS: Server error displayed when an application could not be registered in the database through the "New application" form.
+#: actions/newapplication.php:279 actions/newapplication.php:289
 msgid "Could not create application."
 msgstr "Não foi possível criar a aplicação."
 
+#. TRANS: Title for form to create a group.
 #: actions/newgroup.php:53
 msgid "New group"
 msgstr "Grupo novo"
 
-#: actions/newgroup.php:110
+#. TRANS: Client exception thrown when a user tries to create a group while banned.
+#: actions/newgroup.php:73 classes/User_group.php:485
+#, fuzzy
+msgid "You are not allowed to create groups on this site."
+msgstr "Não é membro deste grupo."
+
+#. TRANS: Form instructions for group create form.
+#: actions/newgroup.php:117
 msgid "Use this form to create a new group."
 msgstr "Use este formulário para criar um grupo novo."
 
-#: actions/newmessage.php:71 actions/newmessage.php:231
+#. TRANS: Group create form validation error.
+#: actions/newgroup.php:200
+#, fuzzy
+msgid "Alias cannot be the same as nickname."
+msgstr "Um nome alternativo não pode ser igual ao nome do utilizador."
+
+#: actions/newmessage.php:71 actions/newmessage.php:234
 msgid "New message"
 msgstr "Mensagem nova"
 
 #. TRANS: Error text shown when trying to send a direct message to a user without a mutual subscription (each user must be subscribed to the other).
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:499
+#: actions/newmessage.php:121 actions/newmessage.php:164 lib/command.php:501
 msgid "You can't send a message to this user."
 msgstr "Não pode enviar uma mensagem a este utilizador."
 
 #. TRANS: Command exception text shown when trying to send a direct message to another user without content.
 #. TRANS: Command exception text shown when trying to reply to a notice without providing content for the reply.
-#: actions/newmessage.php:144 actions/newnotice.php:138 lib/command.php:478
-#: lib/command.php:579
+#: actions/newmessage.php:144 actions/newnotice.php:140 lib/command.php:478
+#: lib/command.php:581
 msgid "No content!"
 msgstr "Sem conteúdo!"
 
-#: actions/newmessage.php:158
+#: actions/newmessage.php:161
 msgid "No recipient specified."
 msgstr "Não especificou um destinatário."
 
 #. TRANS: Error text shown when trying to send a direct message to self.
-#: actions/newmessage.php:164 lib/command.php:503
+#: actions/newmessage.php:167 lib/command.php:505
 msgid ""
 "Don't send a message to yourself; just say it to yourself quietly instead."
 msgstr "Não auto-envie uma mensagem; basta lê-la baixinho a si próprio."
 
-#: actions/newmessage.php:181
+#: actions/newmessage.php:184
 msgid "Message sent"
 msgstr "Mensagem enviada"
 
 #. TRANS: Message given have sent a direct message to another user.
 #. TRANS: %s is the name of the other user.
-#: actions/newmessage.php:185 lib/command.php:511
+#: actions/newmessage.php:188 lib/command.php:513
 #, php-format
 msgid "Direct message to %s sent."
 msgstr "Mensagem directa para %s foi enviada."
 
-#: actions/newmessage.php:210 actions/newnotice.php:261
+#: actions/newmessage.php:213 actions/newnotice.php:264
 msgid "Ajax Error"
 msgstr "Erro do Ajax"
 
@@ -2600,7 +3856,7 @@ msgstr "Erro do Ajax"
 msgid "New notice"
 msgstr "Nota nova"
 
-#: actions/newnotice.php:227
+#: actions/newnotice.php:230
 msgid "Notice posted"
 msgstr "Nota publicada"
 
@@ -2651,8 +3907,10 @@ msgid "Updates matching search term \"%1$s\" on %2$s!"
 msgstr "Actualizações que contêm o termo \"%1$s\" em %2$s!"
 
 #: actions/nudge.php:85
+#, fuzzy
 msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set their email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email "
+"address yet."
 msgstr ""
 "Este utilizador não aceita toques ou ainda não confirmou ou forneceu um "
 "correio electrónico."
@@ -2665,73 +3923,97 @@ msgstr "Toque enviado"
 msgid "Nudge sent!"
 msgstr "Toque enviado!"
 
-#: actions/oauthappssettings.php:59
+#. TRANS: Message displayed to an anonymous user trying to view OAuth application list.
+#: actions/oauthappssettings.php:60
 msgid "You must be logged in to list your applications."
 msgstr "Tem de iniciar uma sessão para listar as suas aplicações."
 
-#: actions/oauthappssettings.php:74
+#. TRANS: Page title for OAuth applications
+#: actions/oauthappssettings.php:76
 msgid "OAuth applications"
 msgstr "Aplicações OAuth"
 
-#: actions/oauthappssettings.php:85
+#. TRANS: Page instructions for OAuth applications
+#: actions/oauthappssettings.php:88
 msgid "Applications you have registered"
 msgstr "Aplicações que registou"
 
-#: actions/oauthappssettings.php:135
+#. TRANS: Empty list message on page with OAuth applications.
+#: actions/oauthappssettings.php:141
 #, php-format
 msgid "You have not registered any applications yet."
 msgstr "Ainda não registou nenhuma aplicação."
 
-#: actions/oauthconnectionssettings.php:72
+#. TRANS: Title for OAuth connection settings.
+#: actions/oauthconnectionssettings.php:71
 msgid "Connected applications"
 msgstr "Aplicações ligadas"
 
+#. TRANS: Instructions for OAuth connection settings.
 #: actions/oauthconnectionssettings.php:83
-msgid "You have allowed the following applications to access your account."
+msgid "The following connections exist for your account."
 msgstr ""
 
-#: actions/oauthconnectionssettings.php:175
+#. TRANS: Client error when trying to revoke access for an application while not being a user of it.
+#: actions/oauthconnectionssettings.php:168
 msgid "You are not a user of that application."
 msgstr "Não é utilizador dessa aplicação."
 
-#: actions/oauthconnectionssettings.php:186
-#, php-format
-msgid "Unable to revoke access for app: %s."
+#. TRANS: Client error when revoking access has failed for some reason.
+#. TRANS: %s is the application ID revoking access failed for.
+#: actions/oauthconnectionssettings.php:183
+#, fuzzy, php-format
+msgid "Unable to revoke access for application: %s."
 msgstr "Não foi possível retirar acesso da aplicação: %s"
 
-#: actions/oauthconnectionssettings.php:198
+#. TRANS: Success message after revoking access for an application.
+#. TRANS: %1$s is the application name, %2$s is the first part of the user token.
+#: actions/oauthconnectionssettings.php:202
+#, php-format
+msgid ""
+"You have successfully revoked access for %1$s and the access token starting "
+"with %2$s."
+msgstr ""
+
+#. TRANS: Empty list message when no applications have been authorised yet.
+#: actions/oauthconnectionssettings.php:213
 msgid "You have not authorized any applications to use your account."
 msgstr "Não permitiu que nenhuma aplicação use a sua conta."
 
-#: actions/oauthconnectionssettings.php:211
-msgid "Developers can edit the registration settings for their applications "
+#. TRANS: Note for developers in the OAuth connection settings form.
+#. TRANS: This message contains a Markdown link. Do not separate "](".
+#. TRANS: %s is the URL to the OAuth settings.
+#: actions/oauthconnectionssettings.php:233
+#, php-format
+msgid ""
+"Are you a developer? [Register an OAuth client application](%s) to use with "
+"this instance of StatusNet."
 msgstr ""
-"Programadores podem editar as configurações de inscrição das suas aplicações "
 
 #: actions/oembed.php:80 actions/shownotice.php:100
 msgid "Notice has no profile."
 msgstr "Nota não tem perfil."
 
-#: actions/oembed.php:87 actions/shownotice.php:176
+#: actions/oembed.php:83 actions/shownotice.php:172
 #, php-format
 msgid "%1$s's status on %2$s"
 msgstr "Estado de %1$s em %2$s"
 
 #. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
-#: actions/oembed.php:159
+#: actions/oembed.php:168
 #, php-format
 msgid "Content type %s not supported."
 msgstr "O tipo de conteúdo %s não é suportado."
 
 #. TRANS: Error message displaying attachments. %s is the site's base URL.
-#: actions/oembed.php:163
+#: actions/oembed.php:172
 #, php-format
 msgid "Only %s URLs over plain HTTP please."
 msgstr "Só URLs %s sobre HTTP simples, por favor."
 
 #. TRANS: Client error on an API request with an unsupported data format.
-#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1200
-#: lib/apiaction.php:1227 lib/apiaction.php:1350
+#: actions/oembed.php:193 actions/oembed.php:212 lib/apiaction.php:1205
+#: lib/apiaction.php:1232 lib/apiaction.php:1367
 msgid "Not a supported data format."
 msgstr "Formato de dados não suportado."
 
@@ -2743,36 +4025,48 @@ msgstr "Pesquisa de Pessoas"
 msgid "Notice Search"
 msgstr "Pesquisa de Notas"
 
-#: actions/othersettings.php:60
+#: actions/othersettings.php:59
 msgid "Other settings"
 msgstr "Outras configurações"
 
+#. TRANS: Instructions for tab "Other" in user profile settings.
 #: actions/othersettings.php:71
 msgid "Manage various other options."
 msgstr "Gerir várias outras opções."
 
-#: actions/othersettings.php:108
+#. TRANS: Used as a suffix for free URL shorteners in a dropdown list in the tab "Other" of a
+#. TRANS: user's profile settings. Use of "free" is as in "open", indicating that the
+#. TRANS: information on the shortener site is freely distributable.
+#. TRANS: This message has one space at the beginning. Use your language's word separator
+#. TRANS: here if it has one (most likely a single space).
+#: actions/othersettings.php:113
 msgid " (free service)"
 msgstr " (serviço gratuito)"
 
-#: actions/othersettings.php:116
+#. TRANS: Label for dropdown with URL shortener services.
+#: actions/othersettings.php:122
 msgid "Shorten URLs with"
 msgstr "Encurtar URLs com"
 
-#: actions/othersettings.php:117
+#. TRANS: Tooltip for for dropdown with URL shortener services.
+#: actions/othersettings.php:124
 msgid "Automatic shortening service to use."
 msgstr "Serviço de encurtamento que será usado automaticamente"
 
-#: actions/othersettings.php:122
+#. TRANS: Label for checkbox.
+#: actions/othersettings.php:130
 msgid "View profile designs"
 msgstr "Ver estilos para o perfil"
 
-#: actions/othersettings.php:123
+#. TRANS: Tooltip for checkbox.
+#: actions/othersettings.php:132
 msgid "Show or hide profile designs."
 msgstr "Mostrar ou esconder estilos para o perfil."
 
-#: actions/othersettings.php:153
-msgid "URL shortening service is too long (max 50 chars)."
+#. TRANS: Form validation error for form "Other settings" in user profile.
+#: actions/othersettings.php:164
+#, fuzzy
+msgid "URL shortening service is too long (maximum 50 characters)."
 msgstr "Serviço de encurtamento de URLs demasiado extenso (máx. 50 caracteres)"
 
 #: actions/otp.php:69
@@ -2805,7 +4099,7 @@ msgstr "Caixa de saída de %s - página %2$d"
 msgid "Outbox for %s"
 msgstr "Caixa de saída de %s"
 
-#: actions/outbox.php:116
+#: actions/outbox.php:104
 msgid "This is your outbox, which lists private messages you have sent."
 msgstr ""
 "Esta é a sua caixa de saída, que apresenta as mensagens privadas que enviou."
@@ -2818,7 +4112,8 @@ msgstr "Modificar senha"
 msgid "Change your password."
 msgstr "Modificar a sua senha."
 
-#: actions/passwordsettings.php:96 actions/recoverpassword.php:231
+#. TRANS: Fieldset legend for password reset form.
+#: actions/passwordsettings.php:96 actions/recoverpassword.php:251
 msgid "Password change"
 msgstr "Mudança da senha"
 
@@ -2826,7 +4121,8 @@ msgstr "Mudança da senha"
 msgid "Old password"
 msgstr "Antiga"
 
-#: actions/passwordsettings.php:108 actions/recoverpassword.php:235
+#. TRANS: Field label for password reset form.
+#: actions/passwordsettings.php:108 actions/recoverpassword.php:256
 msgid "New password"
 msgstr "Nova"
 
@@ -2834,12 +4130,7 @@ msgstr "Nova"
 msgid "6 or more characters"
 msgstr "6 ou mais caracteres"
 
-#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:440
-msgid "Confirm"
-msgstr "Confirmação"
-
-#: actions/passwordsettings.php:113 actions/recoverpassword.php:240
+#: actions/passwordsettings.php:113
 msgid "Same as password above"
 msgstr "Repita a senha nova"
 
@@ -2847,11 +4138,11 @@ msgstr "Repita a senha nova"
 msgid "Change"
 msgstr "Modificar"
 
-#: actions/passwordsettings.php:154 actions/register.php:237
+#: actions/passwordsettings.php:154 actions/register.php:238
 msgid "Password must be 6 or more characters."
 msgstr "Senha tem de ter 6 ou mais caracteres."
 
-#: actions/passwordsettings.php:157 actions/register.php:240
+#: actions/passwordsettings.php:157 actions/register.php:241
 msgid "Passwords don't match."
 msgstr "Senhas não coincidem."
 
@@ -2863,164 +4154,300 @@ msgstr "Senha antiga incorrecta."
 msgid "Error saving user; invalid."
 msgstr "Erro ao guardar utilizador; inválido."
 
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
+#: actions/passwordsettings.php:186
 msgid "Can't save new password."
 msgstr "Não é possível guardar a nova senha."
 
-#: actions/passwordsettings.php:192 actions/recoverpassword.php:211
+#. TRANS: Title for password recovery page in password saved mode.
+#: actions/passwordsettings.php:192 actions/recoverpassword.php:229
 msgid "Password saved."
 msgstr "Senha gravada."
 
+#. TRANS: Title for Paths admin panel.
 #. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:371
+#: actions/pathsadminpanel.php:58 lib/adminpanelaction.php:371
 msgid "Paths"
 msgstr "Localizações"
 
-#: actions/pathsadminpanel.php:70
+#. TRANS: Form instructions for Path admin panel.
+#: actions/pathsadminpanel.php:69
 msgid "Path and server settings for this StatusNet site"
 msgstr ""
 
-#: actions/pathsadminpanel.php:157
+#. TRANS: Client error in Paths admin panel.
+#. TRANS: %s is the directory that could not be read from.
+#: actions/pathsadminpanel.php:155
 #, php-format
 msgid "Theme directory not readable: %s."
 msgstr "Sem acesso de leitura do directório do tema: %s."
 
+#. TRANS: Client error in Paths admin panel.
+#. TRANS: %s is the avatar directory that could not be written to.
 #: actions/pathsadminpanel.php:163
 #, php-format
 msgid "Avatar directory not writable: %s."
 msgstr "Sem acesso de escrita no directório do avatar: %s."
 
-#: actions/pathsadminpanel.php:169
+#. TRANS: Client error in Paths admin panel.
+#. TRANS: %s is the background directory that could not be written to.
+#: actions/pathsadminpanel.php:171
 #, php-format
 msgid "Background directory not writable: %s."
 msgstr "Sem acesso de escrita no directório do fundo: %s."
 
-#: actions/pathsadminpanel.php:177
+#. TRANS: Client error in Paths admin panel.
+#. TRANS: %s is the locales directory that could not be read from.
+#: actions/pathsadminpanel.php:181
 #, php-format
 msgid "Locales directory not readable: %s."
 msgstr "Sem acesso de leitura ao directório das línguas: %s."
 
-#: actions/pathsadminpanel.php:183
+#. TRANS: Client error in Paths admin panel.
+#. TRANS: %s is the SSL server URL that is too long.
+#: actions/pathsadminpanel.php:189
 msgid "Invalid SSL server. The maximum length is 255 characters."
 msgstr "Servidor SSL inválido. O tamanho máximo é 255 caracteres."
 
-#: actions/pathsadminpanel.php:234 actions/siteadminpanel.php:58
+#. TRANS: Fieldset legend in Paths admin panel.
+#: actions/pathsadminpanel.php:235 actions/siteadminpanel.php:58
 msgid "Site"
 msgstr "Site"
 
-#: actions/pathsadminpanel.php:238
+#. TRANS: Field label in Paths admin panel.
+#: actions/pathsadminpanel.php:241 actions/pathsadminpanel.php:279
+#: actions/pathsadminpanel.php:370 actions/pathsadminpanel.php:425
 msgid "Server"
 msgstr "Servidor"
 
-#: actions/pathsadminpanel.php:238
+#: actions/pathsadminpanel.php:242
 msgid "Site's server hostname."
 msgstr "Nome do servidor do site."
 
-#: actions/pathsadminpanel.php:242
+#. TRANS: Field label in Paths admin panel.
+#: actions/pathsadminpanel.php:248 actions/pathsadminpanel.php:288
+#: actions/pathsadminpanel.php:379 actions/pathsadminpanel.php:434
 msgid "Path"
 msgstr "Localização"
 
-#: actions/pathsadminpanel.php:242
-msgid "Site path"
+#: actions/pathsadminpanel.php:249
+#, fuzzy
+msgid "Site path."
 msgstr "Localização do site"
 
-#: actions/pathsadminpanel.php:246
-msgid "Path to locales"
-msgstr "Localização das línguas"
+#. TRANS: Field label in Paths admin panel.
+#: actions/pathsadminpanel.php:255
+#, fuzzy
+msgid "Locale directory"
+msgstr "Directório do tema"
 
-#: actions/pathsadminpanel.php:246
-msgid "Directory path to locales"
+#: actions/pathsadminpanel.php:256
+#, fuzzy
+msgid "Directory path to locales."
 msgstr "Localização do directório das línguas"
 
-#: actions/pathsadminpanel.php:250
+#. TRANS: Checkbox label in Paths admin panel.
+#: actions/pathsadminpanel.php:263
 msgid "Fancy URLs"
 msgstr "URLs bonitas"
 
-#: actions/pathsadminpanel.php:252
+#: actions/pathsadminpanel.php:265
 msgid "Use fancy (more readable and memorable) URLs?"
 msgstr "Usar URLs bonitas (mais legíveis e memoráveis)"
 
-#: actions/pathsadminpanel.php:259
-msgid "Theme"
-msgstr "Tema"
+#: actions/pathsadminpanel.php:272
+msgid "Theme"
+msgstr "Tema"
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:281
+#, fuzzy
+msgid "Server for themes."
+msgstr "O tema para o site."
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:290
+msgid "Web path to themes."
+msgstr ""
+
+#. TRANS: Field label in Paths admin panel.
+#: actions/pathsadminpanel.php:297 actions/pathsadminpanel.php:388
+#: actions/pathsadminpanel.php:443 actions/pathsadminpanel.php:495
+msgid "SSL server"
+msgstr "Servidor SSL"
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:299
+msgid "SSL server for themes (default: SSL server)."
+msgstr ""
 
-#: actions/pathsadminpanel.php:264
-msgid "Theme server"
-msgstr "Servidor do tema"
+#. TRANS: Field label in Paths admin panel.
+#: actions/pathsadminpanel.php:306 actions/pathsadminpanel.php:397
+#: actions/pathsadminpanel.php:452
+#, fuzzy
+msgid "SSL path"
+msgstr "Localização do site"
 
-#: actions/pathsadminpanel.php:268
-msgid "Theme path"
-msgstr "Localização do tema"
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:308
+msgid "SSL path to themes (default: /theme/)."
+msgstr ""
 
-#: actions/pathsadminpanel.php:272
-msgid "Theme directory"
+#. TRANS: Field label in Paths admin panel.
+#: actions/pathsadminpanel.php:315 actions/pathsadminpanel.php:406
+#: actions/pathsadminpanel.php:461
+#, fuzzy
+msgid "Directory"
 msgstr "Directório do tema"
 
-#: actions/pathsadminpanel.php:279
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:317
+#, fuzzy
+msgid "Directory where themes are located."
+msgstr "Localização do directório das línguas"
+
+#. TRANS: Fieldset legend in Paths admin panel.
+#: actions/pathsadminpanel.php:326
 msgid "Avatars"
 msgstr "Avatares"
 
-#: actions/pathsadminpanel.php:284
+#. TRANS: Field label in Paths admin panel.
+#: actions/pathsadminpanel.php:333
 msgid "Avatar server"
 msgstr "Servidor do avatar"
 
-#: actions/pathsadminpanel.php:288
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:335
+#, fuzzy
+msgid "Server for avatars."
+msgstr "O tema para o site."
+
+#. TRANS: Field label in Paths admin panel.
+#: actions/pathsadminpanel.php:342
 msgid "Avatar path"
 msgstr "Localização do avatar"
 
-#: actions/pathsadminpanel.php:292
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:344
+#, fuzzy
+msgid "Web path to avatars."
+msgstr "Falha ao actualizar avatar."
+
+#. TRANS: Field label in Paths admin panel.
+#: actions/pathsadminpanel.php:351
 msgid "Avatar directory"
 msgstr "Directório do avatar"
 
-#: actions/pathsadminpanel.php:301
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:353
+#, fuzzy
+msgid "Directory where avatars are located."
+msgstr "Localização do directório das línguas"
+
+#. TRANS: Fieldset legend in Paths admin panel.
+#: actions/pathsadminpanel.php:364
 msgid "Backgrounds"
 msgstr "Fundos"
 
-#: actions/pathsadminpanel.php:305
-msgid "Background server"
-msgstr "Servidor de fundos"
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:372
+#, fuzzy
+msgid "Server for backgrounds."
+msgstr "O tema para o site."
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:381
+msgid "Web path to backgrounds."
+msgstr ""
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:390
+msgid "Server for backgrounds on SSL pages."
+msgstr ""
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:399
+msgid "Web path to backgrounds on SSL pages."
+msgstr ""
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:408
+#, fuzzy
+msgid "Directory where backgrounds are located."
+msgstr "Localização do directório das línguas"
+
+#. TRANS: Fieldset legens in Paths admin panel.
+#. TRANS: DT element label in attachment list.
+#: actions/pathsadminpanel.php:419 lib/attachmentlist.php:98
+msgid "Attachments"
+msgstr "Anexos"
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:427
+#, fuzzy
+msgid "Server for attachments."
+msgstr "O tema para o site."
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:436
+#, fuzzy
+msgid "Web path to attachments."
+msgstr "Sem anexos."
+
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:445
+#, fuzzy
+msgid "Server for attachments on SSL pages."
+msgstr "O tema para o site."
 
-#: actions/pathsadminpanel.php:309
-msgid "Background path"
-msgstr "Localização dos fundos"
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:454
+msgid "Web path to attachments on SSL pages."
+msgstr ""
 
-#: actions/pathsadminpanel.php:313
-msgid "Background directory"
-msgstr "Directório dos fundos"
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:463
+#, fuzzy
+msgid "Directory where attachments are located."
+msgstr "Localização do directório das línguas"
 
-#: actions/pathsadminpanel.php:320
+#. TRANS: Fieldset legend in Paths admin panel.
+#: actions/pathsadminpanel.php:472
 msgid "SSL"
 msgstr "SSL"
 
-#: actions/pathsadminpanel.php:323 actions/snapshotadminpanel.php:202
+#. TRANS: Drop down option in Paths admin panel (option for "When to use SSL").
+#: actions/pathsadminpanel.php:477 actions/snapshotadminpanel.php:202
 msgid "Never"
 msgstr "Nunca"
 
-#: actions/pathsadminpanel.php:324
+#. TRANS: Drop down option in Paths admin panel (option for "When to use SSL").
+#: actions/pathsadminpanel.php:479
 msgid "Sometimes"
 msgstr "Às vezes"
 
-#: actions/pathsadminpanel.php:325
+#. TRANS: Drop down option in Paths admin panel (option for "When to use SSL").
+#: actions/pathsadminpanel.php:481
 msgid "Always"
 msgstr "Sempre"
 
-#: actions/pathsadminpanel.php:329
+#: actions/pathsadminpanel.php:485
 msgid "Use SSL"
 msgstr "Usar SSL"
 
-#: actions/pathsadminpanel.php:330
-msgid "When to use SSL"
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:487
+#, fuzzy
+msgid "When to use SSL."
 msgstr "Quando usar SSL"
 
-#: actions/pathsadminpanel.php:335
-msgid "SSL server"
-msgstr "Servidor SSL"
-
-#: actions/pathsadminpanel.php:336
-msgid "Server to direct SSL requests to"
+#. TRANS: Tooltip for field label in Paths admin panel.
+#: actions/pathsadminpanel.php:497
+#, fuzzy
+msgid "Server to direct SSL requests to."
 msgstr "Servidor para onde encaminhar pedidos SSL"
 
-#: actions/pathsadminpanel.php:352
+#. TRANS: Button title text to store form data in the Paths admin panel.
+#: actions/pathsadminpanel.php:514
 msgid "Save paths"
 msgstr "Gravar localizações"
 
@@ -3058,142 +4485,194 @@ msgid "Notice license ‘%1$s’ is not compatible with site license ‘%2$s’.
 msgstr ""
 "A licença ‘%1$s’ da nota não é compatível com a licença ‘%2$s’ do site."
 
-#: actions/profilesettings.php:60
+#. TRANS: Page title for profile settings.
+#: actions/profilesettings.php:59
 msgid "Profile settings"
 msgstr "Configurações do perfil"
 
-#: actions/profilesettings.php:71
+#. TRANS: Usage instructions for profile settings.
+#: actions/profilesettings.php:70
 msgid ""
 "You can update your personal profile info here so people know more about you."
 msgstr ""
 "Pode actualizar aqui a informação do seu perfil pessoal, para que as pessoas "
 "saibam mais sobre si."
 
-#: actions/profilesettings.php:99
+#. TRANS: Profile settings form legend.
+#: actions/profilesettings.php:98
 msgid "Profile information"
 msgstr "Informação do perfil"
 
-#: actions/profilesettings.php:108 lib/groupeditform.php:154
-msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
+#. TRANS: Tooltip for field label in form for profile settings.
+#: actions/profilesettings.php:109 actions/register.php:433
+#, fuzzy
+msgid "1-64 lowercase letters or numbers, no punctuation or spaces."
 msgstr "1-64 letras minúsculas ou números, sem pontuação ou espaços"
 
-#: actions/profilesettings.php:111 actions/register.php:455
-#: actions/showgroup.php:256 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:150
+#. TRANS: Field label in form for profile settings.
+#. TRANS: Label for full group name (dt). Text hidden by default.
+#. TRANS: DT for full name in a profile.
+#: actions/profilesettings.php:113 actions/register.php:455
+#: actions/showgroup.php:255 actions/tagother.php:104
+#: lib/groupeditform.php:150 lib/userprofile.php:156
 msgid "Full name"
 msgstr "Nome completo"
 
+#. TRANS: Field label in form for profile settings.
 #. TRANS: Form input field label.
-#: actions/profilesettings.php:115 actions/register.php:460
-#: lib/applicationeditform.php:236 lib/groupeditform.php:161
+#: actions/profilesettings.php:118 actions/register.php:460
+#: lib/applicationeditform.php:236 lib/groupeditform.php:154
 msgid "Homepage"
 msgstr "Página pessoal"
 
-#: actions/profilesettings.php:117 actions/register.php:462
-msgid "URL of your homepage, blog, or profile on another site"
+#. TRANS: Tooltip for field label in form for profile settings.
+#: actions/profilesettings.php:121
+#, fuzzy
+msgid "URL of your homepage, blog, or profile on another site."
 msgstr "URL da sua página pessoal, blogue ou perfil noutro site na internet"
 
-#: actions/profilesettings.php:122 actions/register.php:468
-#, php-format
-msgid "Describe yourself and your interests in %d chars"
-msgstr "Descreva-se e aos seus interesses (máx. 140 caracteres)"
+#. TRANS: Tooltip for field label in form for profile settings. Plural
+#. TRANS: is decided by the number of characters available for the
+#. TRANS: biography (%d).
+#: actions/profilesettings.php:129 actions/register.php:471
+#, fuzzy, php-format
+msgid "Describe yourself and your interests in %d character"
+msgid_plural "Describe yourself and your interests in %d characters"
+msgstr[0] "Descreva-se e aos seus interesses (máx. 140 caracteres)"
+msgstr[1] "Descreva-se e aos seus interesses (máx. 140 caracteres)"
 
-#: actions/profilesettings.php:125 actions/register.php:471
+#. TRANS: Tooltip for field label in form for profile settings.
+#: actions/profilesettings.php:135 actions/register.php:476
 msgid "Describe yourself and your interests"
 msgstr "Descreva-se e aos seus interesses"
 
-#: actions/profilesettings.php:127 actions/register.php:473
+#. TRANS: Text area label in form for profile settings where users can provide.
+#. TRANS: their biography.
+#: actions/profilesettings.php:139 actions/register.php:478
 msgid "Bio"
 msgstr "Biografia"
 
-#: actions/profilesettings.php:132 actions/register.php:478
+#. TRANS: Field label in form for profile settings.
+#. TRANS: Label for group location (dt). Text hidden by default.
+#. TRANS: DT for location in a profile.
+#: actions/profilesettings.php:145 actions/register.php:483
 #: actions/showgroup.php:265 actions/tagother.php:112
-#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:165
+#: actions/userauthorization.php:166 lib/groupeditform.php:173
+#: lib/userprofile.php:172
 msgid "Location"
 msgstr "Localidade"
 
-#: actions/profilesettings.php:134 actions/register.php:480
+#. TRANS: Tooltip for field label in form for profile settings.
+#: actions/profilesettings.php:148 actions/register.php:485
 msgid "Where you are, like \"City, State (or Region), Country\""
 msgstr "Onde está, por ex. \"Cidade, Região, País\""
 
-#: actions/profilesettings.php:138
+#. TRANS: Checkbox label in form for profile settings.
+#: actions/profilesettings.php:153
 msgid "Share my current location when posting notices"
 msgstr "Compartilhar a minha localização presente ao publicar notas"
 
-#: actions/profilesettings.php:145 actions/tagother.php:149
+#. TRANS: Field label in form for profile settings.
+#. TRANS: DT for tags in a profile.
+#: actions/profilesettings.php:161 actions/tagother.php:149
 #: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:210
+#: lib/subscriptionlist.php:108 lib/userprofile.php:220
 msgid "Tags"
 msgstr "Categorias"
 
-#: actions/profilesettings.php:147
+#. TRANS: Tooltip for field label in form for profile settings.
+#: actions/profilesettings.php:164
 msgid ""
 "Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated"
 msgstr ""
 "Categorias para si (letras, números, -, ., _), separadas por vírgulas ou "
 "espaços"
 
-#: actions/profilesettings.php:151
+#. TRANS: Dropdownlist label in form for profile settings.
+#: actions/profilesettings.php:169
 msgid "Language"
 msgstr "Língua"
 
-#: actions/profilesettings.php:152
+#. TRANS: Tooltip for dropdown list label in form for profile settings.
+#: actions/profilesettings.php:171
 msgid "Preferred language"
 msgstr "Língua preferida"
 
-#: actions/profilesettings.php:161
+#. TRANS: Dropdownlist label in form for profile settings.
+#: actions/profilesettings.php:181
 msgid "Timezone"
 msgstr "Fuso horário"
 
-#: actions/profilesettings.php:162
+#. TRANS: Tooltip for dropdown list label in form for profile settings.
+#: actions/profilesettings.php:183
 msgid "What timezone are you normally in?"
 msgstr "Em que fuso horário se encontra normalmente?"
 
-#: actions/profilesettings.php:167
+#. TRANS: Checkbox label in form for profile settings.
+#: actions/profilesettings.php:189
 msgid ""
 "Automatically subscribe to whoever subscribes to me (best for non-humans)"
 msgstr "Subscrever automaticamente quem me subscreva (óptimo para não-humanos)"
 
-#: actions/profilesettings.php:228 actions/register.php:230
-#, php-format
-msgid "Bio is too long (max %d chars)."
-msgstr "Biografia demasiado extensa (máx. %d caracteres)."
+#. TRANS: Validation error in form for profile settings.
+#. TRANS: Plural form is used based on the maximum number of allowed
+#. TRANS: characters for the biography (%d).
+#: actions/profilesettings.php:258 actions/register.php:229
+#, fuzzy, php-format
+msgid "Bio is too long (maximum %d character)."
+msgid_plural "Bio is too long (maximum %d characters)."
+msgstr[0] "Biografia demasiado extensa (máx. %d caracteres)."
+msgstr[1] "Biografia demasiado extensa (máx. %d caracteres)."
 
-#: actions/profilesettings.php:235 actions/siteadminpanel.php:151
+#. TRANS: Validation error in form for profile settings.
+#: actions/profilesettings.php:269 actions/siteadminpanel.php:151
 msgid "Timezone not selected."
 msgstr "Fuso horário não foi seleccionado."
 
-#: actions/profilesettings.php:241
-msgid "Language is too long (max 50 chars)."
+#. TRANS: Validation error in form for profile settings.
+#: actions/profilesettings.php:277
+#, fuzzy
+msgid "Language is too long (maximum 50 characters)."
 msgstr "Língua é demasiado extensa (máx. 50 caracteres)."
 
-#: actions/profilesettings.php:253 actions/tagother.php:178
+#. TRANS: Validation error in form for profile settings.
+#. TRANS: %s is an invalid tag.
+#: actions/profilesettings.php:291 actions/tagother.php:178
 #, php-format
 msgid "Invalid tag: \"%s\""
 msgstr "Categoria inválida: \"%s\""
 
-#: actions/profilesettings.php:306
-msgid "Couldn't update user for autosubscribe."
+#. TRANS: Server error thrown when user profile settings could not be updated to
+#. TRANS: automatically subscribe to any subscriber.
+#: actions/profilesettings.php:347
+#, fuzzy
+msgid "Could not update user for autosubscribe."
 msgstr "Não foi possível actualizar o utilizador para subscrição automática."
 
-#: actions/profilesettings.php:363
-msgid "Couldn't save location prefs."
+#. TRANS: Server error thrown when user profile location preference settings could not be updated.
+#: actions/profilesettings.php:405
+#, fuzzy
+msgid "Could not save location prefs."
 msgstr "Não foi possível gravar as preferências de localização."
 
-#: actions/profilesettings.php:375
-msgid "Couldn't save profile."
-msgstr "Não foi possível gravar o perfil."
-
-#: actions/profilesettings.php:383
-msgid "Couldn't save tags."
+#. TRANS: Server error thrown when user profile settings tags could not be saved.
+#: actions/profilesettings.php:427 actions/tagother.php:200
+msgid "Could not save tags."
 msgstr "Não foi possível gravar as categorias."
 
+#. TRANS: Confirmation shown when user profile settings are saved.
 #. TRANS: Message after successful saving of administrative settings.
-#: actions/profilesettings.php:391 lib/adminpanelaction.php:138
+#: actions/profilesettings.php:436 lib/adminpanelaction.php:138
 msgid "Settings saved."
 msgstr "Configurações gravadas."
 
+#. TRANS: Option in profile settings to restore the account of the currently logged in user from a backup.
+#. TRANS: Page title for page where a user account can be restored from backup.
+#: actions/profilesettings.php:483 actions/restoreaccount.php:60
+#, fuzzy
+msgid "Restore account"
+msgstr "Criar uma conta"
+
 #: actions/public.php:83
 #, php-format
 msgid "Beyond the page limit (%s)."
@@ -3269,25 +4748,38 @@ msgstr ""
 "wikipedia.org/wiki/Micro-blogging) baseado no programa de Software Livre "
 "[StatusNet](http://status.net/)."
 
+#. TRANS: Title for public tag cloud.
 #: actions/publictagcloud.php:57
 msgid "Public tag cloud"
 msgstr "Nuvem de categorias pública"
 
-#: actions/publictagcloud.php:63
-#, php-format
-msgid "These are most popular recent tags on %s "
+#. TRANS: Instructions (more used like an explanation/header).
+#. TRANS: %s is the StatusNet sitename.
+#: actions/publictagcloud.php:65
+#, fuzzy, php-format
+msgid "These are most popular recent tags on %s"
 msgstr "Estas são as categorias recentes mais populares em %s "
 
-#: actions/publictagcloud.php:69
+#. TRANS: This message contains a Markdown URL. The link description is between
+#. TRANS: square brackets, and the link between parentheses. Do not separate "]("
+#. TRANS: and do not change the URL part.
+#: actions/publictagcloud.php:74
 #, php-format
 msgid "No one has posted a notice with a [hashtag](%%doc.tags%%) yet."
 msgstr "Ainda ninguém publicou uma nota com uma [categoria](%%doc.tags%%)."
 
-#: actions/publictagcloud.php:72
+#. TRANS: Message shown to a logged in user for the public tag cloud
+#. TRANS: while no tags exist yet. "One" refers to the non-existing hashtag.
+#: actions/publictagcloud.php:79
 msgid "Be the first to post one!"
 msgstr "Seja a primeira pessoa a publicar uma!"
 
-#: actions/publictagcloud.php:75
+#. TRANS: Message shown to a anonymous user for the public tag cloud
+#. TRANS: while no tags exist yet. "One" refers to the non-existing hashtag.
+#. TRANS: This message contains a Markdown URL. The link description is between
+#. TRANS: square brackets, and the link between parentheses. Do not separate "]("
+#. TRANS: and do not change the URL part.
+#: actions/publictagcloud.php:87
 #, php-format
 msgid ""
 "Why not [register an account](%%action.register%%) and be the first to post "
@@ -3296,41 +4788,49 @@ msgstr ""
 "Podia [registar uma conta](%%action.register%%) e ser a primeira pessoa a "
 "publicar uma!"
 
-#: actions/publictagcloud.php:134
+#: actions/publictagcloud.php:146
 msgid "Tag cloud"
 msgstr "Nuvem de categorias"
 
-#: actions/recoverpassword.php:36
+#. TRANS: Client error displayed trying to recover password while already logged in.
+#: actions/recoverpassword.php:37
 msgid "You are already logged in!"
 msgstr "Já tem uma sessão iniciada!"
 
-#: actions/recoverpassword.php:62
+#. TRANS: Client error displayed when password recovery code is not correct.
+#: actions/recoverpassword.php:64
 msgid "No such recovery code."
 msgstr "Código de recuperação não foi encontrado."
 
-#: actions/recoverpassword.php:66
+#. TRANS: Client error displayed when no proper password recovery code was submitted.
+#: actions/recoverpassword.php:69
 msgid "Not a recovery code."
 msgstr "Não é um código de recuperação."
 
-#: actions/recoverpassword.php:73
+#. TRANS: Server error displayed trying to recover password without providing a user.
+#: actions/recoverpassword.php:77
 msgid "Recovery code for unknown user."
 msgstr "Código de recuperação para um utilizador desconhecido."
 
-#: actions/recoverpassword.php:86
+#. TRANS: Server error displayed removing a password recovery code from the database.
+#: actions/recoverpassword.php:91
 msgid "Error with confirmation code."
 msgstr "Erro no código de confirmação."
 
-#: actions/recoverpassword.php:97
+#. TRANS: Client error displayed trying to recover password with too old a recovery code.
+#: actions/recoverpassword.php:103
 msgid "This confirmation code is too old. Please start again."
 msgstr "Este código de confirmação é demasiado antigo. Por favor, recomece."
 
-#: actions/recoverpassword.php:111
+#. TRANS: Server error displayed when updating a user's e-mail address in the database fails while recovering a password.
+#: actions/recoverpassword.php:118
 msgid "Could not update user with confirmed email address."
 msgstr ""
 "Não foi possivel actualizar o utilizador com um correio electrónico "
 "confirmado."
 
-#: actions/recoverpassword.php:152
+#. TRANS: Page notice for password recovery page.
+#: actions/recoverpassword.php:160
 msgid ""
 "If you have forgotten or lost your password, you can get a new one sent to "
 "the email address you have stored in your account."
@@ -3338,69 +4838,102 @@ msgstr ""
 "Se perdeu ou se esqueceu da sua senha, podemos enviar-lhe uma nova para o "
 "correio electrónico registado na sua conta."
 
-#: actions/recoverpassword.php:158
-msgid "You have been identified. Enter a new password below. "
-msgstr "Identificação positiva. Introduza abaixo uma senha nova. "
+#: actions/recoverpassword.php:167
+msgid "You have been identified. Enter a new password below."
+msgstr "Identificação positiva. Introduza abaixo uma senha nova."
 
-#: actions/recoverpassword.php:188
+#. TRANS: Fieldset legend for password recovery page.
+#: actions/recoverpassword.php:198
 msgid "Password recovery"
 msgstr "Recuperação da senha"
 
-#: actions/recoverpassword.php:191
+#. TRANS: Field label on password recovery page.
+#: actions/recoverpassword.php:202
 msgid "Nickname or email address"
 msgstr "Utilizador ou endereço de correio electrónico"
 
-#: actions/recoverpassword.php:193
+#. TRANS: Title for field label on password recovery page.
+#: actions/recoverpassword.php:205
 msgid "Your nickname on this server, or your registered email address."
 msgstr ""
 "O seu utilizador neste servidor, ou o seu correio electrónico registado."
 
-#: actions/recoverpassword.php:199 actions/recoverpassword.php:200
+#. TRANS: Field label on password recovery page.
+#: actions/recoverpassword.php:212
+msgid "Recover"
+msgstr "Recuperar"
+
+#. TRANS: Button text on password recovery page.
+#: actions/recoverpassword.php:214
+#, fuzzy
+msgctxt "BUTTON"
 msgid "Recover"
 msgstr "Recuperar"
 
-#: actions/recoverpassword.php:208
+#. TRANS: Title for password recovery page in password reset mode.
+#: actions/recoverpassword.php:223
 msgid "Reset password"
 msgstr "Reiniciar senha"
 
-#: actions/recoverpassword.php:209
+#. TRANS: Title for password recovery page in password recover mode.
+#: actions/recoverpassword.php:225
 msgid "Recover password"
 msgstr "Recuperar senha"
 
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
+#. TRANS: Title for password recovery page in email sent mode.
+#. TRANS: Subject for password recovery e-mail.
+#: actions/recoverpassword.php:227 actions/recoverpassword.php:366
 msgid "Password recovery requested"
 msgstr "Solicitada recuperação da senha"
 
-#: actions/recoverpassword.php:213
+#. TRANS: Title for password recovery page when an unknown action has been specified.
+#: actions/recoverpassword.php:232
 msgid "Unknown action"
 msgstr "Acção desconhecida"
 
-#: actions/recoverpassword.php:236
-msgid "6 or more characters, and don't forget it!"
+#. TRANS: Title for field label for password reset form.
+#: actions/recoverpassword.php:258
+#, fuzzy
+msgid "6 or more characters, and do not forget it!"
 msgstr "6 ou mais caracteres, e não a esqueça!"
 
-#: actions/recoverpassword.php:243
+#. TRANS: Ttile for field label for password reset form where the password has to be typed again.
+#: actions/recoverpassword.php:264 actions/register.php:441
+#, fuzzy
+msgid "Same as password above."
+msgstr "Repita a senha nova"
+
+#. TRANS: Button text for password reset form.
+#. TRANS: Button text on profile design page to reset all colour settings to default without saving.
+#: actions/recoverpassword.php:268 lib/designsettings.php:264
+#, fuzzy
+msgctxt "BUTTON"
 msgid "Reset"
 msgstr "Reiniciar"
 
-#: actions/recoverpassword.php:252
+#. TRANS: Form instructions for password recovery form.
+#: actions/recoverpassword.php:278
 msgid "Enter a nickname or email address."
 msgstr "Introduza um utilizador ou um endereço de correio electrónico."
 
-#: actions/recoverpassword.php:282
+#. TRANS: Information on password recovery form if no known username or e-mail address was specified.
+#: actions/recoverpassword.php:309
 msgid "No user with that email address or username."
 msgstr ""
 "Não existe nenhum utilizador com esse correio electrónico nem com esse nome."
 
-#: actions/recoverpassword.php:299
+#. TRANS: Client error displayed on password recovery form if a user does not have a registered e-mail address.
+#: actions/recoverpassword.php:327
 msgid "No registered email address for that user."
 msgstr "Nenhum endereço de email registado para esse utilizador."
 
-#: actions/recoverpassword.php:313
+#. TRANS: Server error displayed if e-mail address confirmation fails in the database on the password recovery form.
+#: actions/recoverpassword.php:342
 msgid "Error saving address confirmation."
 msgstr "Erro ao guardar confirmação do endereço."
 
-#: actions/recoverpassword.php:338
+#. TRANS: User notification after an e-mail with instructions was sent from the password recovery form.
+#: actions/recoverpassword.php:370
 msgid ""
 "Instructions for recovering your password have been sent to the email "
 "address registered to your account."
@@ -3408,27 +4941,39 @@ msgstr ""
 "Instruções para recuperação da sua senha foram enviadas para o correio "
 "electrónico registado na sua conta."
 
-#: actions/recoverpassword.php:357
+#. TRANS: Client error displayed when trying to reset as password without providing a user.
+#: actions/recoverpassword.php:391
 msgid "Unexpected password reset."
 msgstr "Reinício inesperado da senha."
 
-#: actions/recoverpassword.php:365
-msgid "Password must be 6 chars or more."
+#. TRANS: Reset password form validation error message.
+#: actions/recoverpassword.php:400
+#, fuzzy
+msgid "Password must be 6 characters or more."
 msgstr "Senha tem de ter 6 ou mais caracteres."
 
-#: actions/recoverpassword.php:369
+#. TRANS: Reset password form validation error message.
+#: actions/recoverpassword.php:405
 msgid "Password and confirmation do not match."
 msgstr "A senha e a confirmação não coincidem."
 
-#: actions/recoverpassword.php:388 actions/register.php:255
+#. TRANS: Reset password form validation error message.
+#: actions/recoverpassword.php:418
+#, fuzzy
+msgid "Cannot save new password."
+msgstr "Não é possível guardar a nova senha."
+
+#. TRANS: Server error displayed when something does wrong with the user object during password reset.
+#: actions/recoverpassword.php:426 actions/register.php:256
 msgid "Error setting user."
 msgstr "Erro ao configurar utilizador."
 
-#: actions/recoverpassword.php:395
+#. TRANS: Success message for user after password reset.
+#: actions/recoverpassword.php:434
 msgid "New password successfully saved. You are now logged in."
 msgstr "A senha nova foi gravada com sucesso. Iniciou uma sessão."
 
-#: actions/register.php:92 actions/register.php:196 actions/register.php:412
+#: actions/register.php:92 actions/register.php:196 actions/register.php:413
 msgid "Sorry, only invited people can register."
 msgstr "Desculpe, só pessoas convidadas se podem registar."
 
@@ -3440,7 +4985,7 @@ msgstr "Desculpe, código de convite inválido."
 msgid "Registration successful"
 msgstr "Registo efectuado"
 
-#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:511
 msgid "Register"
 msgstr "Registar"
 
@@ -3448,19 +4993,19 @@ msgstr "Registar"
 msgid "Registration not allowed."
 msgstr "Registo não é permitido."
 
-#: actions/register.php:205
+#: actions/register.php:209
 msgid "You can't register if you don't agree to the license."
 msgstr "Não se pode registar se não aceita a licença."
 
-#: actions/register.php:219
+#: actions/register.php:218
 msgid "Email address already exists."
 msgstr "Correio electrónico já existe."
 
-#: actions/register.php:250 actions/register.php:272
+#: actions/register.php:251 actions/register.php:273
 msgid "Invalid username or password."
 msgstr "Nome de utilizador ou senha inválidos."
 
-#: actions/register.php:350
+#: actions/register.php:351
 msgid ""
 "With this form you can create a new account. You can then post notices and "
 "link up to friends and colleagues. "
@@ -3468,18 +5013,10 @@ msgstr ""
 "Com este formulário pode criar uma conta nova. Poderá então publicar notas e "
 "ligar-se a amigos e colegas. "
 
-#: actions/register.php:432
-msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
-msgstr ""
-"1-64 letras minúsculas ou números, sem pontuação ou espaços. Obrigatório."
-
 #: actions/register.php:437
-msgid "6 or more characters. Required."
-msgstr "6 ou mais caracteres. Obrigatório."
-
-#: actions/register.php:441
-msgid "Same as password above. Required."
-msgstr "Repita a senha acima. Obrigatório."
+#, fuzzy
+msgid "6 or more characters."
+msgstr "6 ou mais caracteres"
 
 #. TRANS: Link description in user account settings menu.
 #: actions/register.php:445 actions/register.php:449
@@ -3495,33 +5032,37 @@ msgstr "Usado apenas para actualizações, anúncios e recuperação da senha"
 msgid "Longer name, preferably your \"real\" name"
 msgstr "Nome mais longo, de preferência o seu nome \"verdadeiro\""
 
-#: actions/register.php:518
+#: actions/register.php:462
+msgid "URL of your homepage, blog, or profile on another site"
+msgstr "URL da sua página pessoal, blogue ou perfil noutro site na internet"
+
+#: actions/register.php:523
 #, php-format
 msgid ""
 "I understand that content and data of %1$s are private and confidential."
 msgstr ""
 "Compreendo que o conteúdo e dados do site %1$s são privados e confidenciais."
 
-#: actions/register.php:528
+#: actions/register.php:533
 #, php-format
 msgid "My text and files are copyright by %1$s."
 msgstr ""
 "Os meus textos e ficheiros estão protegidos pelos direitos de autor de %1$s."
 
 #. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
-#: actions/register.php:532
+#: actions/register.php:537
 msgid "My text and files remain under my own copyright."
 msgstr ""
 "Os meus textos e ficheiros permanecem protegidos pelos meus próprios "
 "direitos de autor."
 
 #. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
-#: actions/register.php:535
+#: actions/register.php:540
 msgid "All rights reserved."
 msgstr "Todos os direitos reservados."
 
 #. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
-#: actions/register.php:540
+#: actions/register.php:545
 #, php-format
 msgid ""
 "My text and files are available under %s except this private data: password, "
@@ -3531,7 +5072,7 @@ msgstr ""
 "estes dados privados: senha, endereço de correio electrónico, endereço de "
 "mensageiro instantâneo, número de telefone."
 
-#: actions/register.php:583
+#: actions/register.php:588
 #, php-format
 msgid ""
 "Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3564,7 +5105,7 @@ msgstr ""
 "\n"
 "Obrigado por se ter registado e esperamos que se divirta usando este serviço."
 
-#: actions/register.php:607
+#: actions/register.php:612
 msgid ""
 "(You should receive a message by email momentarily, with instructions on how "
 "to confirm your email address.)"
@@ -3572,7 +5113,7 @@ msgstr ""
 "(Deverá receber uma mensagem electrónica dentro de momentos, com instruções "
 "para confirmar o seu endereço de correio electrónico.)"
 
-#: actions/remotesubscribe.php:98
+#: actions/remotesubscribe.php:97
 #, php-format
 msgid ""
 "To subscribe, you can [login](%%action.login%%), or [register](%%action."
@@ -3584,79 +5125,84 @@ msgstr ""
 "microblogues compatível](%%doc.openmublog%%), introduza abaixo a URL do seu "
 "perfil lá."
 
-#: actions/remotesubscribe.php:112
+#: actions/remotesubscribe.php:111
 msgid "Remote subscribe"
 msgstr "Subscrição remota"
 
-#: actions/remotesubscribe.php:124
+#: actions/remotesubscribe.php:123
 msgid "Subscribe to a remote user"
 msgstr "Subscrever um utilizador remoto"
 
-#: actions/remotesubscribe.php:129
+#: actions/remotesubscribe.php:128
 msgid "User nickname"
 msgstr "Nome do utilizador"
 
-#: actions/remotesubscribe.php:130
+#: actions/remotesubscribe.php:129
 msgid "Nickname of the user you want to follow"
 msgstr "Nome do utilizador que pretende seguir"
 
-#: actions/remotesubscribe.php:133
+#: actions/remotesubscribe.php:132
 msgid "Profile URL"
 msgstr "URL do perfil"
 
-#: actions/remotesubscribe.php:134
+#: actions/remotesubscribe.php:133
 msgid "URL of your profile on another compatible microblogging service"
 msgstr "URL do seu perfil noutro serviço de microblogues compatível"
 
-#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:406
+#. TRANS: Link text for link that will subscribe to a remote profile.
+#: actions/remotesubscribe.php:136 lib/subscribeform.php:139
+#: lib/userprofile.php:431
 msgid "Subscribe"
 msgstr "Subscrever"
 
-#: actions/remotesubscribe.php:159
+#: actions/remotesubscribe.php:158
 msgid "Invalid profile URL (bad format)"
 msgstr "URL de perfil inválido (formato incorrecto)"
 
-#: actions/remotesubscribe.php:168
+#: actions/remotesubscribe.php:167
 msgid "Not a valid profile URL (no YADIS document or invalid XRDS defined)."
 msgstr ""
 "URL do perfil não é válida (não há um documento Yadis, ou foi definido um "
 "XRDS inválido)."
 
-#: actions/remotesubscribe.php:176
-msgid "That’s a local profile! Login to subscribe."
+#: actions/remotesubscribe.php:175
+#, fuzzy
+msgid "That is a local profile! Login to subscribe."
 msgstr "Esse perfil é local! Inicie uma sessão para o subscrever."
 
-#: actions/remotesubscribe.php:183
-msgid "Couldn’t get a request token."
+#: actions/remotesubscribe.php:182
+#, fuzzy
+msgid "Could not get a request token."
 msgstr "Não foi possível obter uma chave de pedido."
 
-#: actions/repeat.php:57
+#: actions/repeat.php:56
 msgid "Only logged-in users can repeat notices."
 msgstr "Só utilizadores com sessão iniciada podem repetir notas."
 
-#: actions/repeat.php:64 actions/repeat.php:71
+#: actions/repeat.php:63 actions/repeat.php:70
 msgid "No notice specified."
 msgstr "Nota não foi especificada."
 
-#: actions/repeat.php:76
-msgid "You can't repeat your own notice."
+#: actions/repeat.php:75
+#, fuzzy
+msgid "You cannot repeat your own notice."
 msgstr "Não pode repetir a sua própria nota."
 
-#: actions/repeat.php:90
+#: actions/repeat.php:89
 msgid "You already repeated that notice."
 msgstr "Já repetiu essa nota."
 
-#: actions/repeat.php:114 lib/noticelist.php:686
+#: actions/repeat.php:112 lib/noticelist.php:692
 msgid "Repeated"
 msgstr "Repetida"
 
-#: actions/repeat.php:119
+#: actions/repeat.php:117
 msgid "Repeated!"
 msgstr "Repetida!"
 
+#. TRANS: Tooltip for personal group navigation menu option when logged in for viewing @-replies.
 #: actions/replies.php:126 actions/repliesrss.php:68
-#: lib/personalgroupnav.php:105
+#: lib/personalgroupnav.php:109
 #, php-format
 msgid "Replies to %s"
 msgstr "Respostas a %s"
@@ -3712,6 +5258,97 @@ msgstr ""
 msgid "Replies to %1$s on %2$s!"
 msgstr "Respostas a %1$s em %2$s!"
 
+#. TRANS: Client exception displayed when trying to restore an account while not logged in.
+#: actions/restoreaccount.php:78
+#, fuzzy
+msgid "Only logged-in users can restore their account."
+msgstr "Só utilizadores com sessão iniciada podem repetir notas."
+
+#. TRANS: Client exception displayed when trying to restore an account without having restore rights.
+#: actions/restoreaccount.php:83
+#, fuzzy
+msgid "You may not restore your account."
+msgstr "Ainda não registou nenhuma aplicação."
+
+#. TRANS: Client exception displayed trying to restore an account while something went wrong uploading a file.
+#. TRANS: Client exception. No file; probably just a non-AJAX submission.
+#: actions/restoreaccount.php:121 actions/restoreaccount.php:146
+#, fuzzy
+msgid "No uploaded file."
+msgstr "Carregar ficheiro"
+
+#. TRANS: Client exception thrown when an uploaded file is larger than set in php.ini.
+#: actions/restoreaccount.php:129 lib/mediafile.php:194
+msgid "The uploaded file exceeds the upload_max_filesize directive in php.ini."
+msgstr "Ficheiro carregado excede a directiva upload_max_filesize no php.ini."
+
+#. TRANS: Client exception.
+#: actions/restoreaccount.php:135 lib/mediafile.php:200
+msgid ""
+"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in "
+"the HTML form."
+msgstr ""
+"Ficheiro carregado excede a directiva MAX_FILE_SIZE especificada no "
+"formulário HTML."
+
+#. TRANS: Client exception.
+#: actions/restoreaccount.php:141 lib/mediafile.php:206
+msgid "The uploaded file was only partially uploaded."
+msgstr "Ficheiro só foi parcialmente carregado."
+
+#. TRANS: Client exception thrown when a temporary folder is not present to store a file upload.
+#: actions/restoreaccount.php:150 lib/mediafile.php:214
+msgid "Missing a temporary folder."
+msgstr "Falta um directório temporário."
+
+#. TRANS: Client exception thrown when writing to disk is not possible during a file upload operation.
+#: actions/restoreaccount.php:154 lib/mediafile.php:218
+msgid "Failed to write file to disk."
+msgstr "Não foi possível gravar o ficheiro no disco."
+
+#. TRANS: Client exception thrown when a file upload operation has been stopped by an extension.
+#: actions/restoreaccount.php:158 lib/mediafile.php:222
+msgid "File upload stopped by extension."
+msgstr "Transferência do ficheiro interrompida pela extensão."
+
+#. TRANS: Client exception thrown when a file upload operation has failed with an unknown reason.
+#. TRANS: Exception thrown when uploading an image fails for an unknown reason.
+#. TRANS: Client exception thrown when a file upload operation has failed with an unknown reason.
+#: actions/restoreaccount.php:164 lib/imagefile.php:106 lib/mediafile.php:228
+msgid "System error uploading file."
+msgstr "Ocorreu um erro de sistema ao transferir o ficheiro."
+
+#. TRANS: Client exception thrown when a feed is not an Atom feed.
+#: actions/restoreaccount.php:207
+#, fuzzy
+msgid "Not an Atom feed."
+msgstr "Todos os membros"
+
+#. TRANS: Success message when a feed has been restored.
+#: actions/restoreaccount.php:241
+msgid ""
+"Feed has been restored. Your old posts should now appear in search and your "
+"profile page."
+msgstr ""
+
+#. TRANS: Message when a feed restore is in progress.
+#: actions/restoreaccount.php:245
+msgid "Feed will be restored. Please wait a few minutes for results."
+msgstr ""
+
+#. TRANS: Form instructions for feed restore.
+#: actions/restoreaccount.php:342
+msgid ""
+"You can upload a backed-up stream in <a href=\"http://activitystrea.ms/"
+"\">Activity Streams</a> format."
+msgstr ""
+
+#. TRANS: Title for submit button to confirm upload of a user backup file for account restore.
+#: actions/restoreaccount.php:373
+#, fuzzy
+msgid "Upload the file"
+msgstr "Carregar ficheiro"
+
 #: actions/revokerole.php:75
 msgid "You cannot revoke user roles on this site."
 msgstr "Não pode retirar funções aos utilizadores neste site."
@@ -3771,7 +5408,7 @@ msgid "Application profile"
 msgstr "Perfil da aplicação"
 
 #. TRANS: Form input field label for application icon.
-#: actions/showapplication.php:159 lib/applicationeditform.php:173
+#: actions/showapplication.php:159 lib/applicationeditform.php:177
 msgid "Icon"
 msgstr "Ícone"
 
@@ -3788,12 +5425,14 @@ msgstr "Organização"
 
 #. TRANS: Form input field label.
 #: actions/showapplication.php:187 actions/version.php:200
-#: lib/applicationeditform.php:208 lib/groupeditform.php:172
+#: lib/applicationeditform.php:208 lib/groupeditform.php:168
 msgid "Description"
 msgstr "Descrição"
 
-#: actions/showapplication.php:192 actions/showgroup.php:436
-#: lib/profileaction.php:187
+#. TRANS: Header for group statistics on a group page (h2).
+#. TRANS: H2 text for user statistics.
+#: actions/showapplication.php:192 actions/showgroup.php:460
+#: lib/profileaction.php:205
 msgid "Statistics"
 msgstr "Estatísticas"
 
@@ -3810,6 +5449,12 @@ msgstr "Operações da aplicação"
 msgid "Reset key & secret"
 msgstr "Reiniciar chave e segredo"
 
+#. TRANS: Title of form for deleting a user.
+#: actions/showapplication.php:252 lib/deletegroupform.php:121
+#: lib/deleteuserform.php:64 lib/noticelist.php:673
+msgid "Delete"
+msgstr "Apagar"
+
 #: actions/showapplication.php:261
 msgid "Application info"
 msgstr "Informação da aplicação"
@@ -3847,31 +5492,38 @@ msgid "Are you sure you want to reset your consumer key and secret?"
 msgstr ""
 "Tem a certeza de que quer reiniciar a sua chave e segredo de consumidor?"
 
-#: actions/showfavorites.php:79
+#. TRANS: Title for all but the first page of favourite notices of a user.
+#. TRANS: %1$s is the user for whom the favourite notices are displayed, %2$d is the page number.
+#: actions/showfavorites.php:80
 #, php-format
 msgid "%1$s's favorite notices, page %2$d"
 msgstr "Notas favoritas de %1$s, página %2$d"
 
-#: actions/showfavorites.php:132
+#. TRANS: Server error displayed when favourite notices could not be retrieved from the database.
+#: actions/showfavorites.php:134
 msgid "Could not retrieve favorite notices."
 msgstr "Não foi possível importar notas favoritas."
 
-#: actions/showfavorites.php:171
+#. TRANS: Feed link text. %s is a username.
+#: actions/showfavorites.php:172
 #, php-format
 msgid "Feed for favorites of %s (RSS 1.0)"
 msgstr "Fonte dos favoritos de %s (RSS 1.0)"
 
-#: actions/showfavorites.php:178
+#. TRANS: Feed link text. %s is a username.
+#: actions/showfavorites.php:180
 #, php-format
 msgid "Feed for favorites of %s (RSS 2.0)"
 msgstr "Fonte dos favoritos de %s (RSS 2.0)"
 
-#: actions/showfavorites.php:185
+#. TRANS: Feed link text. %s is a username.
+#: actions/showfavorites.php:188
 #, php-format
 msgid "Feed for favorites of %s (Atom)"
 msgstr "Fonte dos favoritos de %s (Atom)"
 
-#: actions/showfavorites.php:206
+#. TRANS: Text displayed instead of favourite notices for the current logged in user that has no favourites.
+#: actions/showfavorites.php:209
 msgid ""
 "You haven't chosen any favorite notices yet. Click the fave button on "
 "notices you like to bookmark them for later or shed a spotlight on them."
@@ -3880,7 +5532,9 @@ msgstr ""
 "notas de que goste, para marcá-las para mais tarde ou para lhes dar "
 "relevância."
 
-#: actions/showfavorites.php:208
+#. TRANS: Text displayed instead of favourite notices for a user that has no favourites while logged in.
+#. TRANS: %s is a username.
+#: actions/showfavorites.php:213
 #, php-format
 msgid ""
 "%s hasn't added any favorite notices yet. Post something interesting they "
@@ -3889,7 +5543,10 @@ msgstr ""
 "%s ainda não adicionou nenhuma nota às favoritas. Publique algo interessante "
 "que mude este estado de coisas :)"
 
-#: actions/showfavorites.php:212
+#. TRANS: Text displayed instead of favourite notices for a user that has no favourites while not logged in.
+#. TRANS: %s is a username, %%%%action.register%%%% is a link to the user registration page.
+#. TRANS: (link text)[link] is a Mark Down link.
+#: actions/showfavorites.php:220
 #, php-format
 msgid ""
 "%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
@@ -3900,81 +5557,116 @@ msgstr ""
 "conta](%%%%action.register%%%%) e publicar algo tão interessante que mude "
 "este estado de coisas :)"
 
-#: actions/showfavorites.php:243
+#. TRANS: Page notice for show favourites page.
+#: actions/showfavorites.php:251
 msgid "This is a way to share what you like."
 msgstr "Esta é uma forma de partilhar aquilo de que gosta."
 
-#: actions/showgroup.php:82
+#. TRANS: Page title for first group page. %s is a group name.
+#: actions/showgroup.php:75
 #, php-format
 msgid "%s group"
 msgstr "Grupo %s"
 
-#: actions/showgroup.php:84
+#. TRANS: Page title for any but first group page.
+#. TRANS: %1$s is a group name, $2$s is a page number.
+#: actions/showgroup.php:79
 #, php-format
 msgid "%1$s group, page %2$d"
 msgstr "Grupo %1$s, página %2$d"
 
-#: actions/showgroup.php:227
+#. TRANS: Group profile header (h2). Text hidden by default.
+#: actions/showgroup.php:223
 msgid "Group profile"
 msgstr "Perfil do grupo"
 
-#: actions/showgroup.php:272 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:178
+#. TRANS: Label for group URL (dt). Text hidden by default.
+#. TRANS: DT for URL in a profile.
+#: actions/showgroup.php:273 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:186
 msgid "URL"
 msgstr "URL"
 
-#: actions/showgroup.php:283 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:195
+#. TRANS: Label for group description or group note (dt). Text hidden by default.
+#. TRANS: DT for note in a profile.
+#: actions/showgroup.php:285 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:204
 msgid "Note"
 msgstr "Anotação"
 
-#: actions/showgroup.php:293 lib/groupeditform.php:184
+#. TRANS: Label for group aliases (dt). Text hidden by default.
+#: actions/showgroup.php:296 lib/groupeditform.php:180
 msgid "Aliases"
 msgstr "Nomes alternativos"
 
-#: actions/showgroup.php:302
+#. TRANS: Group actions header (h2). Text hidden by default.
+#: actions/showgroup.php:313
 msgid "Group actions"
 msgstr "Acções do grupo"
 
-#: actions/showgroup.php:338
+#. TRANS: Tooltip for feed link. %s is a group nickname.
+#: actions/showgroup.php:357
 #, php-format
 msgid "Notice feed for %s group (RSS 1.0)"
 msgstr "Fonte de notas do grupo %s (RSS 1.0)"
 
-#: actions/showgroup.php:344
+#. TRANS: Tooltip for feed link. %s is a group nickname.
+#: actions/showgroup.php:364
 #, php-format
 msgid "Notice feed for %s group (RSS 2.0)"
 msgstr "Fonte de notas do grupo %s (RSS 2.0)"
 
-#: actions/showgroup.php:350
+#. TRANS: Tooltip for feed link. %s is a group nickname.
+#: actions/showgroup.php:371
 #, php-format
 msgid "Notice feed for %s group (Atom)"
 msgstr "Fonte de notas do grupo %s (Atom)"
 
-#: actions/showgroup.php:355
+#. TRANS: Tooltip for feed link. %s is a group nickname.
+#: actions/showgroup.php:377
 #, php-format
 msgid "FOAF for %s group"
 msgstr "FOAF do grupo %s"
 
-#: actions/showgroup.php:393 actions/showgroup.php:445
+#. TRANS: Header for mini list of group members on a group page (h2).
+#: actions/showgroup.php:414
 msgid "Members"
 msgstr "Membros"
 
-#: actions/showgroup.php:398 lib/profileaction.php:117
-#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#. TRANS: Description for mini list of group members on a group page when the group has no members.
+#. TRANS: Text for user subscription statistics if the user has no subscriptions.
+#. TRANS: Text for user subscriber statistics if user has no subscribers.
+#. TRANS: Text for user user group membership statistics if user is not a member of any group.
+#: actions/showgroup.php:420 lib/profileaction.php:137
+#: lib/profileaction.php:174 lib/profileaction.php:298 lib/section.php:95
 #: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
 msgid "(None)"
 msgstr "(Nenhum)"
 
-#: actions/showgroup.php:404
+#. TRANS: Link to all group members from mini list of group members if group has more than n members.
+#: actions/showgroup.php:429
 msgid "All members"
 msgstr "Todos os membros"
 
-#: actions/showgroup.php:439
+#. TRANS: Label for creation date in statistics on group page.
+#: actions/showgroup.php:465
+#, fuzzy
+msgctxt "LABEL"
 msgid "Created"
 msgstr "Criado"
 
-#: actions/showgroup.php:455
+#. TRANS: Label for member count in statistics on group page.
+#: actions/showgroup.php:473
+#, fuzzy
+msgctxt "LABEL"
+msgid "Members"
+msgstr "Membros"
+
+#. TRANS: Notice on group pages for anonymous users for StatusNet sites that accept new registrations.
+#. TRANS: **%s** is the group alias, %%%%site.name%%%% is the site name,
+#. TRANS: %%%%action.register%%%% is the URL for registration, %%%%doc.help%%%% is a URL to help.
+#. TRANS: This message contains Markdown links. Ensure they are formatted correctly: [Description](link).
+#: actions/showgroup.php:488
 #, php-format
 msgid ""
 "**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3983,14 +5675,17 @@ msgid ""
 "their life and interests. [Join now](%%%%action.register%%%%) to become part "
 "of this group and many more! ([Read more](%%%%doc.help%%%%))"
 msgstr ""
-"**%s** é um grupo de utilizadores no site %%site.name%%, um serviço de "
+"**%s** é um grupo de utilizadores no site %%%%site.name%%%%, um serviço de "
 "[microblogues](http://en.wikipedia.org/wiki/Micro-blogging) baseado no "
 "programa de Software Livre [StatusNet](http://status.net/). Os membros deste "
 "grupo partilham mensagens curtas acerca das suas vidas e interesses. "
-"[Registe-se agora](%%action.register%%) para se juntar a este grupo e a "
-"muitos mais! ([Saber mais](%%doc.help%%))"
+"[Registe-se agora](%%%%action.register%%%%) para se juntar a este grupo e a "
+"muitos mais! ([Saber mais](%%%%doc.help%%%%))"
 
-#: actions/showgroup.php:461
+#. TRANS: Notice on group pages for anonymous users for StatusNet sites that accept no new registrations.
+#. TRANS: **%s** is the group alias, %%%%site.name%%%% is the site name,
+#. TRANS: This message contains Markdown links. Ensure they are formatted correctly: [Description](link).
+#: actions/showgroup.php:498
 #, php-format
 msgid ""
 "**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3998,28 +5693,35 @@ msgid ""
 "[StatusNet](http://status.net/) tool. Its members share short messages about "
 "their life and interests. "
 msgstr ""
-"**%s** é um grupo de utilizadores no site %%site.name%%, um serviço de "
+"**%s** é um grupo de utilizadores no site %%%%site.name%%%%, um serviço de "
 "[microblogues](http://en.wikipedia.org/wiki/Micro-blogging) baseado no "
 "programa de Software Livre [StatusNet](http://status.net/). Os membros deste "
 "grupo partilham mensagens curtas acerca das suas vidas e interesses. "
 
-#: actions/showgroup.php:489
+#. TRANS: Header for list of group administrators on a group page (h2).
+#: actions/showgroup.php:527
 msgid "Admins"
 msgstr "Gestores"
 
-#: actions/showmessage.php:81
+#. TRANS: Client error displayed requesting a single message that does not exist.
+#: actions/showmessage.php:76
 msgid "No such message."
 msgstr "Mensagem não foi encontrada."
 
-#: actions/showmessage.php:98
+#. TRANS: Client error displayed requesting a single direct message the requesting user was not a party in.
+#: actions/showmessage.php:86
 msgid "Only the sender and recipient may read this message."
 msgstr "Só o remetente e o destinatário podem ler esta mensagem."
 
-#: actions/showmessage.php:108
+#. TRANS: Page title for single direct message display when viewing user is the sender.
+#. TRANS: %1$s is the addressed user's nickname, $2$s is a timestamp.
+#: actions/showmessage.php:105
 #, php-format
 msgid "Message to %1$s on %2$s"
 msgstr "Mensagem para %1$s a %2$s"
 
+#. TRANS: Page title for single message display.
+#. TRANS: %1$s is the sending user's nickname, $2$s is a timestamp.
 #: actions/showmessage.php:113
 #, php-format
 msgid "Message from %1$s on %2$s"
@@ -4029,47 +5731,67 @@ msgstr "Mensagem de %1$s a %2$s"
 msgid "Notice deleted."
 msgstr "Avatar actualizado."
 
-#: actions/showstream.php:73
-#, php-format
-msgid " tagged %s"
-msgstr "  categorizou %s"
+#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag.
+#: actions/showstream.php:70
+#, fuzzy, php-format
+msgid "%1$s tagged %2$s"
+msgstr "%1$s, página %2$d"
 
-#: actions/showstream.php:79
+#. TRANS: Page title showing tagged notices in one user's stream.
+#. TRANS: %1$s is the username, %2$s is the hash tag, %1$d is the page number.
+#: actions/showstream.php:74
+#, fuzzy, php-format
+msgid "%1$s tagged %2$s, page %3$d"
+msgstr "Notas categorizadas com %1$s, página %2$d"
+
+#. TRANS: Extended page title showing tagged notices in one user's stream.
+#. TRANS: %1$s is the username, %2$d is the page number.
+#: actions/showstream.php:82
 #, php-format
 msgid "%1$s, page %2$d"
 msgstr "%1$s, página %2$d"
 
-#: actions/showstream.php:122
+#. TRANS: Title for link to notice feed.
+#. TRANS: %1$s is a user nickname, %2$s is a hashtag.
+#: actions/showstream.php:127
 #, php-format
 msgid "Notice feed for %1$s tagged %2$s (RSS 1.0)"
 msgstr "Fonte de notas de %1$s com a categoria %2$s (RSS 1.0)"
 
-#: actions/showstream.php:129
+#. TRANS: Title for link to notice feed.
+#. TRANS: %s is a user nickname.
+#: actions/showstream.php:136
 #, php-format
 msgid "Notice feed for %s (RSS 1.0)"
 msgstr "Fonte de notas para %s (RSS 1.0)"
 
-#: actions/showstream.php:136
+#. TRANS: Title for link to notice feed.
+#. TRANS: %s is a user nickname.
+#: actions/showstream.php:145
 #, php-format
 msgid "Notice feed for %s (RSS 2.0)"
 msgstr "Fonte de notas para %s (RSS 2.0)"
 
-#: actions/showstream.php:143
+#: actions/showstream.php:152
 #, php-format
 msgid "Notice feed for %s (Atom)"
 msgstr "Fonte de notas para %s (Atom)"
 
-#: actions/showstream.php:148
+#. TRANS: Title for link to notice feed. FOAF stands for Friend of a Friend.
+#. TRANS: More information at http://www.foaf-project.org. %s is a user nickname.
+#: actions/showstream.php:159
 #, php-format
 msgid "FOAF for %s"
 msgstr "FOAF para %s"
 
-#: actions/showstream.php:200
-#, php-format
-msgid "This is the timeline for %1$s but %2$s hasn't posted anything yet."
+#. TRANS: First sentence of empty list message for a stream. $1%s is a user nickname.
+#: actions/showstream.php:211
+#, fuzzy, php-format
+msgid "This is the timeline for %1$s, but %1$s hasn't posted anything yet."
 msgstr "Estas são as notas de %1$s, mas %2$s ainda não publicou nenhuma."
 
-#: actions/showstream.php:205
+#. TRANS: Second sentence of empty list message for a stream for the user themselves.
+#: actions/showstream.php:217
 msgid ""
 "Seen anything interesting recently? You haven't posted any notices yet, now "
 "would be a good time to start :)"
@@ -4077,7 +5799,9 @@ msgstr ""
 "Viu algo de interessante ultimamente? Como ainda não publicou nenhuma nota, "
 "esta seria uma óptima altura para começar :)"
 
-#: actions/showstream.php:207
+#. TRANS: Second sentence of empty  list message for a non-self stream. %1$s is a user nickname, %2$s is a part of a URL.
+#. TRANS: This message contains a Markdown link. Keep "](" together.
+#: actions/showstream.php:221
 #, php-format
 msgid ""
 "You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
@@ -4086,7 +5810,9 @@ msgstr ""
 "Pode tentar dar um toque em %1$s ou [endereçar-lhe uma nota](%%%%action."
 "newnotice%%%%?status_textarea=%2$s)."
 
-#: actions/showstream.php:246
+#. TRANS: Announcement for anonymous users showing a stream if site registrations are open.
+#. TRANS: This message contains a Markdown link. Keep "](" together.
+#: actions/showstream.php:264
 #, php-format
 msgid ""
 "**%s** has an account on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -4094,24 +5820,27 @@ msgid ""
 "[StatusNet](http://status.net/) tool. [Join now](%%%%action.register%%%%) to "
 "follow **%s**'s notices and many more! ([Read more](%%%%doc.help%%%%))"
 msgstr ""
-"**%s** tem uma conta no site %%site.name%%, um serviço de [microblogues]"
+"**%s** tem uma conta no site %%%%site.name%%%%, um serviço de [microblogues]"
 "(http://en.wikipedia.org/wiki/Micro-blogging) baseado no programa de "
-"Software Livre [StatusNet](http://status.net/). [Registe-se agora](%%action."
-"register%%) para seguir as notas de **%s** e de muitos mais! ([Saber mais](%%"
-"doc.help%%))"
+"Software Livre [StatusNet](http://status.net/). [Registe-se agora](%%%%"
+"action.register%%%%) para seguir as notas de **%s** e de muitos mais! "
+"([Saber mais](%%%%doc.help%%%%))"
 
-#: actions/showstream.php:251
+#. TRANS: Announcement for anonymous users showing a stream if site registrations are closed or invite only.
+#. TRANS: This message contains a Markdown link. Keep "](" together.
+#: actions/showstream.php:271
 #, php-format
 msgid ""
 "**%s** has an account on %%%%site.name%%%%, a [micro-blogging](http://en."
 "wikipedia.org/wiki/Micro-blogging) service based on the Free Software "
 "[StatusNet](http://status.net/) tool. "
 msgstr ""
-"**%s** tem uma conta no site %%site.name%%, um serviço de [microblogues]"
+"**%s** tem uma conta no site %%%%site.name%%%%, um serviço de [microblogues]"
 "(http://en.wikipedia.org/wiki/Micro-blogging) baseado no programa de "
 "Software Livre [StatusNet](http://status.net/). "
 
-#: actions/showstream.php:308
+#. TRANS: Link to the author of a repeated notice. %s is a linked nickname.
+#: actions/showstream.php:328
 #, php-format
 msgid "Repeat of %s"
 msgstr "Repetições de %s"
@@ -4225,99 +5954,108 @@ msgstr ""
 "Quanto tempo os utilizadores terão de esperar (em segundos) para publicar a "
 "mesma coisa outra vez."
 
-#: actions/sitenoticeadminpanel.php:56
+#. TRANS: Page title for site-wide notice tab in admin panel.
+#: actions/sitenoticeadminpanel.php:55
 msgid "Site Notice"
 msgstr "Aviso do Site"
 
-#: actions/sitenoticeadminpanel.php:67
+#. TRANS: Instructions for site-wide notice tab in admin panel.
+#: actions/sitenoticeadminpanel.php:66
 msgid "Edit site-wide message"
 msgstr "Editar mensagem do site"
 
-#: actions/sitenoticeadminpanel.php:103
+#. TRANS: Server error displayed when saving a site-wide notice was impossible.
+#: actions/sitenoticeadminpanel.php:101
 msgid "Unable to save site notice."
 msgstr "Não foi possível gravar o aviso do site."
 
-#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars."
+#. TRANS: Client error displayed when a site-wide notice was longer than allowed.
+#: actions/sitenoticeadminpanel.php:112
+#, fuzzy
+msgid "Maximum length for the site-wide notice is 255 characters."
 msgstr "Tamanho máximo do aviso do site é 255 caracteres."
 
+#. TRANS: Label for site-wide notice text field in admin panel.
 #: actions/sitenoticeadminpanel.php:176
 msgid "Site notice text"
 msgstr "Texto do aviso do site"
 
-#: actions/sitenoticeadminpanel.php:178
-msgid "Site-wide notice text (255 chars max; HTML okay)"
+#. TRANS: Tooltip for site-wide notice text field in admin panel.
+#: actions/sitenoticeadminpanel.php:179
+#, fuzzy
+msgid "Site-wide notice text (255 characters maximum; HTML allowed)"
 msgstr "Texto do aviso do site (máx. 255 caracteres; pode usar HTML)"
 
-#: actions/sitenoticeadminpanel.php:198
+#. TRANS: Title for button to save site notice in admin panel.
+#: actions/sitenoticeadminpanel.php:201
 msgid "Save site notice"
 msgstr "Gravar aviso do site"
 
 #. TRANS: Title for SMS settings.
-#: actions/smssettings.php:59
+#: actions/smssettings.php:57
 msgid "SMS settings"
 msgstr "Configurações de SMS"
 
 #. TRANS: SMS settings page instructions.
 #. TRANS: %%site.name%% is the name of the site.
-#: actions/smssettings.php:74
+#: actions/smssettings.php:71
 #, php-format
 msgid "You can receive SMS messages through email from %%site.name%%."
 msgstr "Pode receber SMSs do site %%site.name%% por correio electrónico."
 
 #. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
-#: actions/smssettings.php:97
+#: actions/smssettings.php:93
 msgid "SMS is not available."
 msgstr "SMS não está disponível."
 
 #. TRANS: Form legend for SMS settings form.
-#: actions/smssettings.php:111
+#: actions/smssettings.php:107
 msgid "SMS address"
 msgstr "Endereço SMS"
 
 #. TRANS: Form guide in SMS settings form.
-#: actions/smssettings.php:120
+#: actions/smssettings.php:116
 msgid "Current confirmed SMS-enabled phone number."
 msgstr "Número de telefone com serviço SMS activo já confirmado."
 
 #. TRANS: Form guide in IM settings form.
-#: actions/smssettings.php:133
+#: actions/smssettings.php:129
 msgid "Awaiting confirmation on this phone number."
 msgstr "A aguardar confirmação deste número de telefone."
 
 #. TRANS: Field label for SMS address input in SMS settings form.
-#: actions/smssettings.php:142
+#: actions/smssettings.php:138
 msgid "Confirmation code"
 msgstr "Código de confirmação"
 
 #. TRANS: Form field instructions in SMS settings form.
-#: actions/smssettings.php:144
+#: actions/smssettings.php:140
 msgid "Enter the code you received on your phone."
 msgstr "Introduza o código que recebeu no seu telefone."
 
 #. TRANS: Button label to confirm SMS confirmation code in SMS settings.
-#: actions/smssettings.php:148
+#: actions/smssettings.php:144
 msgctxt "BUTTON"
 msgid "Confirm"
 msgstr "Confirmar"
 
 #. TRANS: Field label for SMS phone number input in SMS settings form.
-#: actions/smssettings.php:153
+#: actions/smssettings.php:149
 msgid "SMS phone number"
 msgstr "Número de telefone para SMS"
 
 #. TRANS: SMS phone number input field instructions in SMS settings form.
-#: actions/smssettings.php:156
+#: actions/smssettings.php:152
 msgid "Phone number, no punctuation or spaces, with area code"
 msgstr "Número de telefone, sem pontuação ou espaços, com código de área"
 
 #. TRANS: Form legend for SMS preferences form.
-#: actions/smssettings.php:195
+#: actions/smssettings.php:191
 msgid "SMS preferences"
 msgstr "Preferências de SMS"
 
 #. TRANS: Checkbox label in SMS preferences form.
-#: actions/smssettings.php:201
+#: actions/smssettings.php:197
 msgid ""
 "Send me notices through SMS; I understand I may incur exorbitant charges "
 "from my carrier."
@@ -4326,32 +6064,32 @@ msgstr ""
 "me montantes exorbitantes."
 
 #. TRANS: Confirmation message for successful SMS preferences save.
-#: actions/smssettings.php:315
+#: actions/smssettings.php:308
 msgid "SMS preferences saved."
 msgstr "Preferências de SMS gravadas."
 
 #. TRANS: Message given saving SMS phone number without having provided one.
-#: actions/smssettings.php:338
+#: actions/smssettings.php:330
 msgid "No phone number."
 msgstr "Nenhum número de telefone."
 
 #. TRANS: Message given saving SMS phone number without having selected a carrier.
-#: actions/smssettings.php:344
+#: actions/smssettings.php:336
 msgid "No carrier selected."
 msgstr "Operador não foi seleccionado."
 
 #. TRANS: Message given saving SMS phone number that is already set.
-#: actions/smssettings.php:352
+#: actions/smssettings.php:344
 msgid "That is already your phone number."
 msgstr "Esse já é o seu número de telefone."
 
 #. TRANS: Message given saving SMS phone number that is already set for another user.
-#: actions/smssettings.php:356
+#: actions/smssettings.php:348
 msgid "That phone number already belongs to another user."
 msgstr "Esse número de telefone já pertence a outro utilizador."
 
 #. TRANS: Message given saving valid SMS phone number that is to be confirmed.
-#: actions/smssettings.php:384
+#: actions/smssettings.php:376
 msgid ""
 "A confirmation code was sent to the phone number you added. Check your phone "
 "for the code and instructions on how to use it."
@@ -4361,39 +6099,39 @@ msgstr ""
 "utilização."
 
 #. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
-#: actions/smssettings.php:413
+#: actions/smssettings.php:404
 msgid "That is the wrong confirmation number."
 msgstr "Esse número de confirmação está errado."
 
 #. TRANS: Message given after successfully canceling SMS phone number confirmation.
-#: actions/smssettings.php:427
+#: actions/smssettings.php:418
 msgid "SMS confirmation cancelled."
 msgstr "Confirmação de SMS cancelada."
 
 #. TRANS: Message given trying to remove an SMS phone number that is not
 #. TRANS: registered for the active user.
-#: actions/smssettings.php:448
+#: actions/smssettings.php:438
 msgid "That is not your phone number."
 msgstr "Esse número de telefone não é o seu."
 
 #. TRANS: Message given after successfully removing a registered SMS phone number.
-#: actions/smssettings.php:470
+#: actions/smssettings.php:460
 msgid "The SMS phone number was removed."
 msgstr "Número de telefone para SMS foi removido."
 
 #. TRANS: Label for mobile carrier dropdown menu in SMS settings.
-#: actions/smssettings.php:511
+#: actions/smssettings.php:499
 msgid "Mobile carrier"
 msgstr "Operador móvel"
 
 #. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
-#: actions/smssettings.php:516
+#: actions/smssettings.php:504
 msgid "Select a carrier"
 msgstr "Seleccione um operador"
 
 #. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
 #. TRANS: %s is an administrative contact's e-mail address.
-#: actions/smssettings.php:525
+#: actions/smssettings.php:513
 #, php-format
 msgid ""
 "Mobile carrier for your phone. If you know a carrier that accepts SMS over "
@@ -4404,8 +6142,9 @@ msgstr ""
 "para %s."
 
 #. TRANS: Message given saving SMS phone number confirmation code without having provided one.
-#: actions/smssettings.php:548
-msgid "No code entered"
+#: actions/smssettings.php:535
+#, fuzzy
+msgid "No code entered."
 msgstr "Nenhum código introduzido"
 
 #. TRANS: Menu item for site administration
@@ -4466,12 +6205,14 @@ msgstr "Instantâneos serão enviados para esta URL"
 msgid "Save snapshot settings"
 msgstr "Gravar configurações do instantâneo"
 
-#: actions/subedit.php:70
+#. TRANS: Client error displayed trying a change a subscription for a non-subscribed profile.
+#: actions/subedit.php:75
 msgid "You are not subscribed to that profile."
 msgstr "Não subscreveu esse perfil."
 
+#. TRANS: Server error displayed when updating a subscription fails with a database error.
 #. TRANS: Exception thrown when a subscription could not be stored on the server.
-#: actions/subedit.php:83 classes/Subscription.php:136
+#: actions/subedit.php:89 classes/Subscription.php:141
 msgid "Could not save subscription."
 msgstr "Não foi possível gravar a subscrição."
 
@@ -4479,10 +6220,6 @@ msgstr "Não foi possível gravar a subscrição."
 msgid "This action only accepts POST requests."
 msgstr "Esta operação só aceita pedidos POST."
 
-#: actions/subscribe.php:107
-msgid "No such profile."
-msgstr "Perfil não foi encontrado."
-
 #: actions/subscribe.php:117
 msgid "You cannot subscribe to an OMB 0.1 remote profile with this action."
 msgstr "Não pode subscrever um perfil remoto OMB 0.1 com esta operação."
@@ -4491,39 +6228,56 @@ msgstr "Não pode subscrever um perfil remoto OMB 0.1 com esta operação."
 msgid "Subscribed"
 msgstr "Subscrito"
 
-#: actions/subscribers.php:50
+#. TRANS: Header for list of subscribers for a user (first page).
+#. TRANS: %s is the user's nickname.
+#: actions/subscribers.php:51
 #, php-format
 msgid "%s subscribers"
 msgstr "Subscritores de %s"
 
-#: actions/subscribers.php:52
+#. TRANS: Header for list of subscribers for a user (not first page).
+#. TRANS: %1$s is the user's nickname, $2$d is the page number.
+#: actions/subscribers.php:55
 #, php-format
 msgid "%1$s subscribers, page %2$d"
 msgstr "Subscritores de %1$s, página %2$d"
 
-#: actions/subscribers.php:63
+#. TRANS: Page notice for page with an overview of all subscribers
+#. TRANS: of the logged in user's own profile.
+#: actions/subscribers.php:68
 msgid "These are the people who listen to your notices."
 msgstr "Estas são as pessoas que escutam as suas notas."
 
-#: actions/subscribers.php:67
+#. TRANS: Page notice for page with an overview of all subscribers of a user other
+#. TRANS: than the logged in user. %s is the user nickname.
+#: actions/subscribers.php:74
 #, php-format
 msgid "These are the people who listen to %s's notices."
 msgstr "Estas são as pessoas que escutam as notas de %s."
 
-#: actions/subscribers.php:108
+#. TRANS: Subscriber list text when the logged in user has no subscribers.
+#: actions/subscribers.php:114
+#, fuzzy
 msgid ""
 "You have no subscribers. Try subscribing to people you know and they might "
-"return the favor"
+"return the favor."
 msgstr ""
 "Não tem subscritores. Tente subscrever pessoas que conhece e talvez elas lhe "
 "façam o mesmo favor"
 
-#: actions/subscribers.php:110
+#. TRANS: Subscriber list text when looking at the subscribers for a of a user other
+#. TRANS: than the logged in user that has no subscribers. %s is the user nickname.
+#: actions/subscribers.php:118
 #, php-format
 msgid "%s has no subscribers. Want to be the first?"
 msgstr "%s não tem subscritores. Quer ser o primeiro?"
 
-#: actions/subscribers.php:114
+#. TRANS: Subscriber list text when looking at the subscribers for a of a user that has none
+#. TRANS: as an anonymous user. %s is the user nickname.
+#. TRANS: This message contains a Markdown URL. The link description is between
+#. TRANS: square brackets, and the link between parentheses. Do not separate "]("
+#. TRANS: and do not change the URL part.
+#: actions/subscribers.php:127
 #, php-format
 msgid ""
 "%s has no subscribers. Why not [register an account](%%%%action.register%%%"
@@ -4532,26 +6286,31 @@ msgstr ""
 "%s não tem subscritores. Quer [registar uma conta](%%action.register%%) e "
 "ser o primeiro?"
 
-#: actions/subscriptions.php:52
-#, php-format
-msgid "%s subscriptions"
-msgstr "Subscrições de %s"
-
-#: actions/subscriptions.php:54
+#. TRANS: Header for subscriptions overview for a user (not first page).
+#. TRANS: %1$s is a user nickname, %2$d is the page number.
+#: actions/subscriptions.php:55
 #, php-format
 msgid "%1$s subscriptions, page %2$d"
 msgstr "Subscrições de %1$s, página %2$d"
 
-#: actions/subscriptions.php:65
+#. TRANS: Page notice for page with an overview of all subscriptions
+#. TRANS: of the logged in user's own profile.
+#: actions/subscriptions.php:68
 msgid "These are the people whose notices you listen to."
 msgstr "Estas são as pessoas cujas notas está a escutar."
 
-#: actions/subscriptions.php:69
+#. TRANS: Page notice for page with an overview of all subscriptions of a user other
+#. TRANS: than the logged in user. %s is the user nickname.
+#: actions/subscriptions.php:74
 #, php-format
 msgid "These are the people whose notices %s listens to."
 msgstr "Estas são as pessoas cujas notas %s está a escutar."
 
-#: actions/subscriptions.php:126
+#. TRANS: Subscription list text when the logged in user has no subscriptions.
+#. TRANS: This message contains Markdown URLs. The link description is between
+#. TRANS: square brackets, and the link between parentheses. Do not separate "]("
+#. TRANS: and do not change the URL part.
+#: actions/subscriptions.php:133
 #, php-format
 msgid ""
 "You're not listening to anyone's notices right now, try subscribing to "
@@ -4567,16 +6326,28 @@ msgstr ""
 "twittersettings%%) pode subscrever automaticamente as pessoas que já segue "
 "lá."
 
-#: actions/subscriptions.php:128 actions/subscriptions.php:132
+#. TRANS: Subscription list text when looking at the subscriptions for a of a user other
+#. TRANS: than the logged in user that has no subscriptions. %s is the user nickname.
+#. TRANS: Subscription list text when looking at the subscriptions for a of a user that has none
+#. TRANS: as an anonymous user. %s is the user nickname.
+#: actions/subscriptions.php:141 actions/subscriptions.php:147
 #, php-format
 msgid "%s is not listening to anyone."
 msgstr "%s não está a ouvir ninguém."
 
-#: actions/subscriptions.php:208
+#. TRANS: Atom feed title. %s is a profile nickname.
+#: actions/subscriptions.php:176
+#, fuzzy, php-format
+msgid "Subscription feed for %s (Atom)"
+msgstr "Fonte de notas para %s (Atom)"
+
+#. TRANS: Checkbox label for enabling Jabber messages for a profile in a subscriptions list.
+#: actions/subscriptions.php:239
 msgid "Jabber"
 msgstr "Jabber"
 
-#: actions/subscriptions.php:222
+#. TRANS: Checkbox label for enabling SMS messages for a profile in a subscriptions list.
+#: actions/subscriptions.php:254
 msgid "SMS"
 msgstr "SMS"
 
@@ -4609,12 +6380,14 @@ msgstr "Argumento de identificação (ID) em falta."
 msgid "Tag %s"
 msgstr "Categoria %s"
 
+#. TRANS: H2 for user profile information.
 #: actions/tagother.php:77 lib/userprofile.php:76
 msgid "User profile"
 msgstr "Perfil"
 
+#. TRANS: DT element in area for user avatar.
 #: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:103
+#: lib/userprofile.php:108
 msgid "Photo"
 msgstr "Foto"
 
@@ -4635,10 +6408,6 @@ msgid ""
 "You can only tag people you are subscribed to or who are subscribed to you."
 msgstr "Só pode categorizar pessoas que subscreve ou os seus subscritores."
 
-#: actions/tagother.php:200
-msgid "Could not save tags."
-msgstr "Não foi possível gravar as categorias."
-
 #: actions/tagother.php:236
 msgid "Use this form to add tags to your subscribers or subscriptions."
 msgstr ""
@@ -4678,75 +6447,92 @@ msgstr ""
 "site."
 
 #. TRANS: User admin panel title
-#: actions/useradminpanel.php:60
+#: actions/useradminpanel.php:58
 msgctxt "TITLE"
 msgid "User"
 msgstr "Utilizador"
 
-#: actions/useradminpanel.php:71
+#. TRANS: Instruction for user admin panel.
+#: actions/useradminpanel.php:69
 msgid "User settings for this StatusNet site"
 msgstr ""
 
-#: actions/useradminpanel.php:150
+#. TRANS: Form validation error in user admin panel when a non-numeric character limit was set.
+#: actions/useradminpanel.php:147
 msgid "Invalid bio limit. Must be numeric."
 msgstr "Limite da biografia inválido. Tem de ser numérico."
 
-#: actions/useradminpanel.php:156
-msgid "Invalid welcome text. Max length is 255 characters."
+#. TRANS: Form validation error in user admin panel when welcome text is too long.
+#: actions/useradminpanel.php:154
+#, fuzzy
+msgid "Invalid welcome text. Maximum length is 255 characters."
 msgstr "Texto de boas-vindas inválido. Tamanho máx. é 255 caracteres."
 
+#. TRANS: Client error displayed when trying to set a non-existing user as default subscription for new
+#. TRANS: users in user admin panel. %1$s is the invalid nickname.
 #: actions/useradminpanel.php:166
-#, php-format
-msgid "Invalid default subscripton: '%1$s' is not user."
+#, fuzzy, php-format
+msgid "Invalid default subscripton: '%1$s' is not user."
 msgstr "Subscrição predefinida é inválida: '%1$s' não é utilizador."
 
 #. TRANS: Link description in user account settings menu.
-#: actions/useradminpanel.php:219 lib/accountsettingsaction.php:106
-#: lib/personalgroupnav.php:109
+#: actions/useradminpanel.php:215 lib/accountsettingsaction.php:106
 msgid "Profile"
 msgstr "Perfil"
 
-#: actions/useradminpanel.php:223
+#. TRANS: Field label in user admin panel for setting the character limit for the bio field.
+#: actions/useradminpanel.php:220
 msgid "Bio Limit"
 msgstr "Limite da Biografia"
 
-#: actions/useradminpanel.php:224
+#. TRANS: Tooltip in user admin panel for setting the character limit for the bio field.
+#: actions/useradminpanel.php:222
 msgid "Maximum length of a profile bio in characters."
 msgstr "Tamanho máximo de uma biografia em caracteres."
 
-#: actions/useradminpanel.php:232
+#. TRANS: Form legend in user admin panel.
+#: actions/useradminpanel.php:231
 msgid "New users"
 msgstr "Utilizadores novos"
 
+#. TRANS: Field label in user admin panel for setting new user welcome text.
 #: actions/useradminpanel.php:236
 msgid "New user welcome"
 msgstr "Boas-vindas a utilizadores novos"
 
-#: actions/useradminpanel.php:237
-msgid "Welcome text for new users (Max 255 chars)."
+#. TRANS: Tooltip in user admin panel for setting new user welcome text.
+#: actions/useradminpanel.php:238
+#, fuzzy
+msgid "Welcome text for new users (maximum 255 characters)."
 msgstr "Texto de boas-vindas a utilizadores novos (máx. 255 caracteres)."
 
-#: actions/useradminpanel.php:242
+#. TRANS: Field label in user admin panel for setting default subscription for new users.
+#: actions/useradminpanel.php:244
 msgid "Default subscription"
 msgstr "Subscrição predefinida"
 
-#: actions/useradminpanel.php:243
+#. TRANS: Tooltip in user admin panel for setting default subscription for new users.
+#: actions/useradminpanel.php:246
 msgid "Automatically subscribe new users to this user."
 msgstr "Novos utilizadores subscrevem automaticamente este utilizador."
 
-#: actions/useradminpanel.php:252
+#. TRANS: Form legend in user admin panel.
+#: actions/useradminpanel.php:256
 msgid "Invitations"
 msgstr "Convites"
 
-#: actions/useradminpanel.php:257
+#. TRANS: Field label for checkbox in user admin panel for allowing users to invite friend using site e-mail.
+#: actions/useradminpanel.php:262
 msgid "Invitations enabled"
 msgstr "Convites habilitados"
 
-#: actions/useradminpanel.php:259
+#. TRANS: Tooltip for checkbox in user admin panel for allowing users to invite friend using site e-mail.
+#: actions/useradminpanel.php:265
 msgid "Whether to allow users to invite new users."
 msgstr "Permitir, ou não, que utilizadores convidem utilizadores novos."
 
-#: actions/useradminpanel.php:295
+#. TRANS: Title for button to save user settings in user admin panel.
+#: actions/useradminpanel.php:302
 msgid "Save user settings"
 msgstr ""
 
@@ -4854,11 +6640,13 @@ msgstr "Não é possível ler a URL do avatar ‘%s’."
 msgid "Wrong image type for avatar URL ‘%s’."
 msgstr "Tipo de imagem incorrecto para o avatar da URL ‘%s’."
 
-#: actions/userdesignsettings.php:76 lib/designsettings.php:65
+#. TRANS: Page title for profile design page.
+#: actions/userdesignsettings.php:74 lib/designsettings.php:63
 msgid "Profile design"
 msgstr "Estilo do perfil"
 
-#: actions/userdesignsettings.php:87 lib/designsettings.php:76
+#. TRANS: Instructions for profile design page.
+#: actions/userdesignsettings.php:84 lib/designsettings.php:74
 msgid ""
 "Customize the way your profile looks with a background image and a colour "
 "palette of your choice."
@@ -4866,7 +6654,7 @@ msgstr ""
 "Personalize o estilo do seu perfil com uma imagem de fundo e uma paleta de "
 "cores à sua escolha."
 
-#: actions/userdesignsettings.php:282
+#: actions/userdesignsettings.php:272
 msgid "Enjoy your hotdog!"
 msgstr "Disfrute do seu cachorro-quente!"
 
@@ -4896,7 +6684,7 @@ msgstr "Tente [pesquisar grupos](%%action.groupsearch%%) e juntar-se a eles."
 #. TRANS: Message is used as a subtitle in atom user notice feed.
 #. TRANS: %1$s is a user name, %2$s is a site name.
 #: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
-#: lib/atomusernoticefeed.php:75
+#: lib/atomusernoticefeed.php:95
 #, php-format
 msgid "Updates from %1$s on %2$s!"
 msgstr "Actualizações de %1#s a %2$s!"
@@ -4956,7 +6744,7 @@ msgid "Plugins"
 msgstr "Plugins"
 
 #. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
-#: actions/version.php:198 lib/action.php:802
+#: actions/version.php:198 lib/action.php:898
 msgid "Version"
 msgstr "Versão"
 
@@ -4965,96 +6753,110 @@ msgid "Author(s)"
 msgstr "Autores"
 
 #. TRANS: Activity title when marking a notice as favorite.
-#: classes/Fave.php:148 lib/favorform.php:143
+#: classes/Fave.php:164
 msgid "Favor"
 msgstr "Eleger como favorita"
 
 #. TRANS: Ntofication given when a user marks a notice as favorite.
 #. TRANS: %1$s is a user nickname or full name, %2$s is a notice URI.
-#: classes/Fave.php:151
+#: classes/Fave.php:167
 #, fuzzy, php-format
 msgid "%1$s marked notice %2$s as a favorite."
 msgstr "%s (@%s) adicionou a sua nota às favoritas."
 
 #. TRANS: Server exception thrown when a URL cannot be processed.
-#: classes/File.php:142
+#: classes/File.php:162
 #, php-format
 msgid "Cannot process URL '%s'"
 msgstr "Não é possível processar a URL '$s'"
 
 #. TRANS: Server exception thrown when... Robin thinks something is impossible!
-#: classes/File.php:174
+#: classes/File.php:194
 msgid "Robin thinks something is impossible."
 msgstr "o Robin acha que algo é impossível."
 
 #. TRANS: Message given if an upload is larger than the configured maximum.
 #. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
-#: classes/File.php:189
-#, php-format
+#. TRANS: %1$s is used for plural.
+#: classes/File.php:210
+#, fuzzy, php-format
 msgid ""
+"No file may be larger than %1$d byte and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
+msgid_plural ""
 "No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
 "Try to upload a smaller version."
-msgstr ""
+msgstr[0] ""
+"Nenhum ficheiro pode ter mais de %1$d bytes e o que enviou tinha %2$d bytes. "
+"Tente enviar uma versão mais pequena."
+msgstr[1] ""
 "Nenhum ficheiro pode ter mais de %1$d bytes e o que enviou tinha %2$d bytes. "
 "Tente enviar uma versão mais pequena."
 
 #. TRANS: Message given if an upload would exceed user quota.
-#. TRANS: %d (number) is the user quota in bytes.
-#: classes/File.php:201
-#, php-format
-msgid "A file this large would exceed your user quota of %d bytes."
-msgstr ""
+#. TRANS: %d (number) is the user quota in bytes and is used for plural.
+#: classes/File.php:223
+#, fuzzy, php-format
+msgid "A file this large would exceed your user quota of %d byte."
+msgid_plural "A file this large would exceed your user quota of %d bytes."
+msgstr[0] ""
+"Um ficheiro desta dimensão excederia a sua quota de utilizador de %d bytes."
+msgstr[1] ""
 "Um ficheiro desta dimensão excederia a sua quota de utilizador de %d bytes."
 
 #. TRANS: Message given id an upload would exceed a user's monthly quota.
-#. TRANS: $d (number) is the monthly user quota in bytes.
-#: classes/File.php:210
-#, php-format
-msgid "A file this large would exceed your monthly quota of %d bytes."
-msgstr "Um ficheiro desta dimensão excederia a sua quota mensal de %d bytes."
+#. TRANS: $d (number) is the monthly user quota in bytes and is used for plural.
+#: classes/File.php:235
+#, fuzzy, php-format
+msgid "A file this large would exceed your monthly quota of %d byte."
+msgid_plural "A file this large would exceed your monthly quota of %d bytes."
+msgstr[0] ""
+"Um ficheiro desta dimensão excederia a sua quota mensal de %d bytes."
+msgstr[1] ""
+"Um ficheiro desta dimensão excederia a sua quota mensal de %d bytes."
 
 #. TRANS: Client exception thrown if a file upload does not have a valid name.
-#: classes/File.php:247 classes/File.php:262
+#: classes/File.php:282 classes/File.php:297
 msgid "Invalid filename."
 msgstr "Nome de ficheiro inválido."
 
 #. TRANS: Exception thrown when joining a group fails.
-#: classes/Group_member.php:42
+#: classes/Group_member.php:51
 msgid "Group join failed."
 msgstr "Entrada no grupo falhou."
 
 #. TRANS: Exception thrown when trying to leave a group the user is not a member of.
-#: classes/Group_member.php:55
+#: classes/Group_member.php:64
 msgid "Not part of group."
 msgstr "Não faz parte do grupo."
 
 #. TRANS: Exception thrown when trying to leave a group fails.
-#: classes/Group_member.php:63
+#: classes/Group_member.php:72
 msgid "Group leave failed."
 msgstr "Saída do grupo falhou."
 
 #. TRANS: Exception thrown providing an invalid profile ID.
 #. TRANS: %s is the invalid profile ID.
-#: classes/Group_member.php:76
+#: classes/Group_member.php:85
 #, php-format
 msgid "Profile ID %s is invalid."
 msgstr ""
 
 #. TRANS: Exception thrown providing an invalid group ID.
 #. TRANS: %s is the invalid group ID.
-#: classes/Group_member.php:89
+#: classes/Group_member.php:98
 #, fuzzy, php-format
 msgid "Group ID %s is invalid."
 msgstr "Erro ao guardar utilizador; inválido."
 
 #. TRANS: Activity title.
-#: classes/Group_member.php:113 lib/joinform.php:114
+#: classes/Group_member.php:147 lib/joinform.php:114
 msgid "Join"
 msgstr "Juntar-me"
 
 #. TRANS: Success message for subscribe to group attempt through OStatus.
 #. TRANS: %1$s is the member name, %2$s is the subscribed group's name.
-#: classes/Group_member.php:117
+#: classes/Group_member.php:151
 #, php-format
 msgid "%1$s has joined group %2$s."
 msgstr ""
@@ -5072,7 +6874,7 @@ msgid "Could not create login token for %s"
 msgstr "Não foi possível criar a chave de entrada para %s"
 
 #. TRANS: Exception thrown when database name or Data Source Name could not be found.
-#: classes/Memcached_DataObject.php:533
+#: classes/Memcached_DataObject.php:542
 msgid "No database name or DSN found anywhere."
 msgstr "Não foi encontrado nenhum nome de base de dados ou DSN."
 
@@ -5082,12 +6884,12 @@ msgid "You are banned from sending direct messages."
 msgstr "Está proibido de enviar mensagens directas."
 
 #. TRANS: Message given when a message could not be stored on the server.
-#: classes/Message.php:62
+#: classes/Message.php:69
 msgid "Could not insert message."
 msgstr "Não foi possível inserir a mensagem."
 
 #. TRANS: Message given when a message could not be updated on the server.
-#: classes/Message.php:73
+#: classes/Message.php:80
 msgid "Could not update message with new URI."
 msgstr "Não foi possível actualizar a mensagem com a nova URI."
 
@@ -5099,23 +6901,23 @@ msgid "No such profile (%1$d) for notice (%2$d)."
 msgstr "Não existe o perfil (%1$d) para a nota (%2$d)."
 
 #. TRANS: Server exception. %s are the error details.
-#: classes/Notice.php:193
+#: classes/Notice.php:199
 #, php-format
 msgid "Database error inserting hashtag: %s"
 msgstr "Erro na base de dados ao inserir o elemento criptográfico: %s"
 
 #. TRANS: Client exception thrown if a notice contains too many characters.
-#: classes/Notice.php:265
+#: classes/Notice.php:279
 msgid "Problem saving notice. Too long."
 msgstr "Problema na gravação da nota. Demasiado longa."
 
 #. TRANS: Client exception thrown when trying to save a notice for an unknown user.
-#: classes/Notice.php:270
+#: classes/Notice.php:284
 msgid "Problem saving notice. Unknown user."
 msgstr "Problema na gravação da nota. Utilizador desconhecido."
 
 #. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
-#: classes/Notice.php:276
+#: classes/Notice.php:290
 msgid ""
 "Too many notices too fast; take a breather and post again in a few minutes."
 msgstr ""
@@ -5123,7 +6925,7 @@ msgstr ""
 "alguns minutos."
 
 #. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
-#: classes/Notice.php:283
+#: classes/Notice.php:297
 msgid ""
 "Too many duplicate messages too quickly; take a breather and post again in a "
 "few minutes."
@@ -5132,43 +6934,51 @@ msgstr ""
 "publicar daqui a alguns minutos."
 
 #. TRANS: Client exception thrown when a user tries to post while being banned.
-#: classes/Notice.php:291
+#: classes/Notice.php:305
 msgid "You are banned from posting notices on this site."
 msgstr "Está proibido de publicar notas neste site."
 
 #. TRANS: Server exception thrown when a notice cannot be saved.
 #. TRANS: Server exception thrown when a notice cannot be updated.
-#: classes/Notice.php:358 classes/Notice.php:385
+#: classes/Notice.php:372 classes/Notice.php:399
 msgid "Problem saving notice."
 msgstr "Problema na gravação da nota."
 
 #. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
-#: classes/Notice.php:907
-msgid "Bad type provided to saveKnownGroups"
+#: classes/Notice.php:929
+#, fuzzy
+msgid "Bad type provided to saveKnownGroups."
 msgstr "O tipo fornecido ao método saveKnownGroups é incorrecto"
 
 #. TRANS: Server exception thrown when an update for a group inbox fails.
-#: classes/Notice.php:1006
+#: classes/Notice.php:1028
 msgid "Problem saving group inbox."
 msgstr "Problema na gravação da caixa de entrada do grupo."
 
 #. TRANS: Server exception thrown when a reply cannot be saved.
 #. TRANS: %1$d is a notice ID, %2$d is the ID of the mentioned user.
-#: classes/Notice.php:1120
+#: classes/Notice.php:1142
 #, fuzzy, php-format
 msgid "Could not save reply for %1$d, %2$d."
 msgstr "Não foi possível gravar a informação do grupo local."
 
 #. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
 #. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
-#: classes/Notice.php:1822
+#: classes/Notice.php:1661
 #, php-format
 msgid "RT @%1$s %2$s"
 msgstr "RT @%1$s %2$s"
 
+#. TRANS: Full name of a profile or group followed by nickname in parens
+#: classes/Profile.php:172 classes/User_group.php:242
+#, fuzzy, php-format
+msgctxt "FANCYNAME"
+msgid "%1$s (%2$s)"
+msgstr "%1$s (%2$s)"
+
 #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
 #. TRANS: %1$s is the role name, %2$s is the user ID (number).
-#: classes/Profile.php:785
+#: classes/Profile.php:771
 #, php-format
 msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
 msgstr ""
@@ -5176,7 +6986,7 @@ msgstr ""
 
 #. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
 #. TRANS: %1$s is the role name, %2$s is the user ID (number).
-#: classes/Profile.php:794
+#: classes/Profile.php:780
 #, php-format
 msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
 msgstr ""
@@ -5194,79 +7004,110 @@ msgid "Unable to save tag."
 msgstr "Não foi possível gravar a categoria."
 
 #. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
-#: classes/Subscription.php:75 lib/oauthstore.php:466
+#: classes/Subscription.php:77 lib/oauthstore.php:482
 msgid "You have been banned from subscribing."
 msgstr "Foi bloqueado de fazer subscrições"
 
 #. TRANS: Exception thrown when trying to subscribe while already subscribed.
-#: classes/Subscription.php:80
+#: classes/Subscription.php:82
 msgid "Already subscribed!"
 msgstr "Já subscrito!"
 
 #. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
-#: classes/Subscription.php:85
+#: classes/Subscription.php:87
 msgid "User has blocked you."
 msgstr "O utilizador bloqueou-o."
 
 #. TRANS: Exception thrown when trying to unsibscribe without a subscription.
-#: classes/Subscription.php:171
+#: classes/Subscription.php:176
 msgid "Not subscribed!"
 msgstr "Não subscrito!"
 
 #. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
-#: classes/Subscription.php:178
+#: classes/Subscription.php:183
 msgid "Could not delete self-subscription."
 msgstr "Não foi possível apagar a auto-subscrição."
 
 #. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
-#: classes/Subscription.php:206
+#: classes/Subscription.php:211
 msgid "Could not delete subscription OMB token."
 msgstr "Não foi possível apagar a chave OMB da subscrição."
 
 #. TRANS: Exception thrown when a subscription could not be deleted on the server.
-#: classes/Subscription.php:218
+#: classes/Subscription.php:223
 msgid "Could not delete subscription."
 msgstr "Não foi possível apagar a subscrição."
 
 #. TRANS: Activity tile when subscribing to another person.
-#: classes/Subscription.php:255
+#: classes/Subscription.php:265
 msgid "Follow"
 msgstr ""
 
 #. TRANS: Notification given when one person starts following another.
 #. TRANS: %1$s is the subscriber, %2$s is the subscribed.
-#: classes/Subscription.php:258
+#: classes/Subscription.php:268
 #, fuzzy, php-format
 msgid "%1$s is now following %2$s."
 msgstr "%1$s está agora a ouvir as suas notas em %2$s."
 
 #. TRANS: Notice given on user registration.
 #. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
-#: classes/User.php:384
+#: classes/User.php:395
 #, php-format
 msgid "Welcome to %1$s, @%2$s!"
 msgstr "%1$s dá-lhe as boas-vindas, @%2$s!"
 
+#. TRANS: Server exception.
+#: classes/User.php:918
+msgid "No single user defined for single-user mode."
+msgstr "Nenhum utilizador único definido para o modo de utilizador único."
+
+#. TRANS: Server exception.
+#: classes/User.php:922
+msgid "Single-user mode code called when not enabled."
+msgstr ""
+
 #. TRANS: Server exception thrown when creating a group failed.
-#: classes/User_group.php:495
+#: classes/User_group.php:522
 msgid "Could not create group."
 msgstr "Não foi possível criar o grupo."
 
 #. TRANS: Server exception thrown when updating a group URI failed.
-#: classes/User_group.php:505
+#: classes/User_group.php:532
 msgid "Could not set group URI."
 msgstr "Não foi possível configurar a URI do grupo."
 
 #. TRANS: Server exception thrown when setting group membership failed.
-#: classes/User_group.php:528
+#: classes/User_group.php:555
 msgid "Could not set group membership."
 msgstr "Não foi possível configurar membros do grupo."
 
 #. TRANS: Server exception thrown when saving local group information failed.
-#: classes/User_group.php:543
+#: classes/User_group.php:570
 msgid "Could not save local group info."
 msgstr "Não foi possível gravar a informação do grupo local."
 
+#. TRANS: Exception thrown when an account could not be located when it should be moved.
+#. TRANS: %s is the remote site.
+#: lib/accountmover.php:65
+#, fuzzy, php-format
+msgid "Cannot locate account %s."
+msgstr "Não pode apagar utilizadores."
+
+#. TRANS: Exception thrown when a service document could not be located account move.
+#. TRANS: %s is the remote site.
+#: lib/accountmover.php:106
+#, php-format
+msgid "Cannot find XRD for %s."
+msgstr ""
+
+#. TRANS: Exception thrown when an account could not be located when it should be moved.
+#. TRANS: %s is the remote site.
+#: lib/accountmover.php:131
+#, php-format
+msgid "No AtomPub API service for %s."
+msgstr ""
+
 #. TRANS: Link title attribute in user account settings menu.
 #: lib/accountsettingsaction.php:104
 msgid "Change your profile settings"
@@ -5303,196 +7144,214 @@ msgid "Other"
 msgstr "Outras"
 
 #. TRANS: Page title. %1$s is the title, %2$s is the site name.
-#: lib/action.php:148
+#: lib/action.php:161
 #, php-format
 msgid "%1$s - %2$s"
 msgstr "%1$s - %2$s"
 
 #. TRANS: Page title for a page without a title set.
-#: lib/action.php:164
+#: lib/action.php:177
 msgid "Untitled page"
 msgstr "Página sem título"
 
+#. TRANS: Localized tooltip for '...' expansion button on overlong remote messages.
+#: lib/action.php:325
+msgctxt "TOOLTIP"
+msgid "Show more"
+msgstr ""
+
 #. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
-#: lib/action.php:448
+#: lib/action.php:544
 msgid "Primary site navigation"
 msgstr "Navegação primária deste site"
 
-#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:454
+#. TRANS: Tooltip for main menu option "Personal".
+#: lib/action.php:550
 msgctxt "TOOLTIP"
 msgid "Personal profile and friends timeline"
 msgstr "Perfil pessoal e notas dos amigos"
 
-#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
-#: lib/action.php:457
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline.
+#. TRANS: Personal group navigation menu option when logged in for viewing timeline of self and friends.
+#: lib/action.php:553 lib/personalgroupnav.php:100
 msgctxt "MENU"
 msgid "Personal"
 msgstr "Pessoal"
 
-#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:459
+#. TRANS: Tooltip for main menu option "Account".
+#: lib/action.php:555
 msgctxt "TOOLTIP"
 msgid "Change your email, avatar, password, profile"
 msgstr "Altere o seu endereço electrónico, avatar, senha, perfil"
 
-#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:464
+#. TRANS: Main menu option when logged in for access to user settings.
+#: lib/action.php:558
+msgid "Account"
+msgstr "Conta"
+
+#. TRANS: Tooltip for main menu option "Services".
+#: lib/action.php:560
 msgctxt "TOOLTIP"
 msgid "Connect to services"
 msgstr "Ligar aos serviços"
 
-#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
-#: lib/action.php:467
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services.
+#: lib/action.php:563
 msgid "Connect"
 msgstr "Ligar"
 
-#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:470
+#. TRANS: Tooltip for menu option "Admin".
+#: lib/action.php:566
 msgctxt "TOOLTIP"
 msgid "Change site configuration"
 msgstr "Alterar a configuração do site"
 
-#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#. TRANS: Main menu option when logged in and site admin for access to site configuration.
 #. TRANS: Menu item in the group navigation page. Only shown for group administrators.
-#: lib/action.php:473 lib/groupnav.php:117
+#: lib/action.php:569 lib/groupnav.php:117
 msgctxt "MENU"
 msgid "Admin"
 msgstr "Gestor"
 
-#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:477
+#. TRANS: Tooltip for main menu option "Invite".
+#: lib/action.php:573
 #, php-format
 msgctxt "TOOLTIP"
 msgid "Invite friends and colleagues to join you on %s"
 msgstr "Convidar amigos e colegas para se juntarem a si em %s"
 
-#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
-#: lib/action.php:480
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users.
+#: lib/action.php:576
 msgctxt "MENU"
 msgid "Invite"
 msgstr "Convidar"
 
 #. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:486
+#: lib/action.php:582
 msgctxt "TOOLTIP"
 msgid "Logout from the site"
 msgstr "Terminar esta sessão"
 
-#. TRANS: Main menu option when logged in to log out the current user
-#: lib/action.php:489
+#. TRANS: Main menu option when logged in to log out the current user.
+#: lib/action.php:585
 msgctxt "MENU"
 msgid "Logout"
 msgstr "Sair"
 
-#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:494
+#. TRANS: Tooltip for main menu option "Register".
+#: lib/action.php:590
 msgctxt "TOOLTIP"
 msgid "Create an account"
 msgstr "Criar uma conta"
 
-#. TRANS: Main menu option when not logged in to register a new account
-#: lib/action.php:497
+#. TRANS: Main menu option when not logged in to register a new account.
+#. TRANS: Menu item for registering with the StatusNet site.
+#: lib/action.php:593 lib/logingroupnav.php:85
 msgctxt "MENU"
 msgid "Register"
 msgstr "Registar"
 
-#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:500
+#. TRANS: Tooltip for main menu option "Login".
+#: lib/action.php:596
 msgctxt "TOOLTIP"
 msgid "Login to the site"
 msgstr "Iniciar uma sessão"
 
-#: lib/action.php:503
+#. TRANS: Main menu option when not logged in to log in.
+#. TRANS: Menu item for logging in to the StatusNet site.
+#: lib/action.php:599 lib/logingroupnav.php:77
 msgctxt "MENU"
 msgid "Login"
 msgstr "Entrar"
 
-#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:506
+#. TRANS: Tooltip for main menu option "Help".
+#: lib/action.php:602
 msgctxt "TOOLTIP"
 msgid "Help me!"
 msgstr "Ajudem-me!"
 
-#: lib/action.php:509
+#. TRANS: Main menu option for help on the StatusNet site.
+#: lib/action.php:605
 msgctxt "MENU"
 msgid "Help"
 msgstr "Ajuda"
 
-#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:512
+#. TRANS: Tooltip for main menu option "Search".
+#: lib/action.php:608
 msgctxt "TOOLTIP"
 msgid "Search for people or text"
 msgstr "Procurar pessoas ou pesquisar texto"
 
-#: lib/action.php:515
+#. TRANS: Main menu option when logged in or when the StatusNet instance is not private.
+#: lib/action.php:611
 msgctxt "MENU"
 msgid "Search"
 msgstr "Pesquisa"
 
 #. TRANS: DT element for site notice. String is hidden in default CSS.
 #. TRANS: Menu item for site administration
-#: lib/action.php:537 lib/adminpanelaction.php:387
+#: lib/action.php:633 lib/adminpanelaction.php:387
 msgid "Site notice"
 msgstr "Aviso do site"
 
 #. TRANS: DT element for local views block. String is hidden in default CSS.
-#: lib/action.php:604
+#: lib/action.php:700
 msgid "Local views"
 msgstr "Vistas locais"
 
 #. TRANS: DT element for page notice. String is hidden in default CSS.
-#: lib/action.php:674
+#: lib/action.php:770
 msgid "Page notice"
 msgstr "Aviso da página"
 
 #. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
-#: lib/action.php:775
+#: lib/action.php:871
 msgid "Secondary site navigation"
 msgstr "Navegação secundária deste site"
 
 #. TRANS: Secondary navigation menu option leading to help on StatusNet.
-#: lib/action.php:781
+#: lib/action.php:877
 msgid "Help"
 msgstr "Ajuda"
 
 #. TRANS: Secondary navigation menu option leading to text about StatusNet site.
-#: lib/action.php:784
+#: lib/action.php:880
 msgid "About"
 msgstr "Sobre"
 
 #. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
-#: lib/action.php:787
+#: lib/action.php:883
 msgid "FAQ"
 msgstr "FAQ"
 
 #. TRANS: Secondary navigation menu option leading to Terms of Service.
-#: lib/action.php:792
+#: lib/action.php:888
 msgid "TOS"
 msgstr "Termos"
 
 #. TRANS: Secondary navigation menu option leading to privacy policy.
-#: lib/action.php:796
+#: lib/action.php:892
 msgid "Privacy"
 msgstr "Privacidade"
 
-#. TRANS: Secondary navigation menu option.
-#: lib/action.php:799
+#. TRANS: Secondary navigation menu option. Leads to information about StatusNet and its license.
+#: lib/action.php:895
 msgid "Source"
 msgstr "Código fonte"
 
-#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
-#: lib/action.php:805
+#. TRANS: Secondary navigation menu option leading to e-mail contact information on the
+#. TRANS: StatusNet site, where to report bugs, ...
+#: lib/action.php:902
 msgid "Contact"
 msgstr "Contacto"
 
-#. TRANS: Secondary navigation menu option.
-#: lib/action.php:808
+#. TRANS: Secondary navigation menu option. Leads to information about embedding a timeline widget.
+#: lib/action.php:905
 msgid "Badge"
 msgstr "Emblema"
 
 #. TRANS: DT element for StatusNet software license.
-#: lib/action.php:837
+#: lib/action.php:934
 msgid "StatusNet software license"
 msgstr "Licença de software do StatusNet"
 
@@ -5500,7 +7359,7 @@ msgstr "Licença de software do StatusNet"
 #. TRANS: Text between [] is a link description, text between () is the link itself.
 #. TRANS: Make sure there is no whitespace between "]" and "(".
 #. TRANS: "%%site.broughtby%%" is the value of the variable site.broughtby
-#: lib/action.php:844
+#: lib/action.php:941
 #, php-format
 msgid ""
 "**%%site.name%%** is a microblogging service brought to you by [%%site."
@@ -5510,7 +7369,7 @@ msgstr ""
 "broughtby%%](%%site.broughtbyurl%%)."
 
 #. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
-#: lib/action.php:847
+#: lib/action.php:944
 #, php-format
 msgid "**%%site.name%%** is a microblogging service."
 msgstr "**%%site.name%%** é um serviço de microblogues."
@@ -5519,7 +7378,7 @@ msgstr "**%%site.name%%** é um serviço de microblogues."
 #. TRANS: Make sure there is no whitespace between "]" and "(".
 #. TRANS: Text between [] is a link description, text between () is the link itself.
 #. TRANS: %s is the version of StatusNet that is being used.
-#: lib/action.php:854
+#: lib/action.php:951
 #, php-format
 msgid ""
 "It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -5531,20 +7390,20 @@ msgstr ""
 "fsf.org/licensing/licenses/agpl-3.0.html)."
 
 #. TRANS: DT element for StatusNet site content license.
-#: lib/action.php:870
+#: lib/action.php:967
 msgid "Site content license"
 msgstr "Licença de conteúdos do site"
 
 #. TRANS: Content license displayed when license is set to 'private'.
 #. TRANS: %1$s is the site name.
-#: lib/action.php:877
+#: lib/action.php:974
 #, php-format
 msgid "Content and data of %1$s are private and confidential."
 msgstr "O conteúdo e dados do site %1$s são privados e confidenciais."
 
 #. TRANS: Content license displayed when license is set to 'allrightsreserved'.
 #. TRANS: %1$s is the copyright owner.
-#: lib/action.php:884
+#: lib/action.php:981
 #, php-format
 msgid "Content and data copyright by %1$s. All rights reserved."
 msgstr ""
@@ -5552,7 +7411,7 @@ msgstr ""
 "direitos reservados."
 
 #. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
-#: lib/action.php:888
+#: lib/action.php:985
 msgid "Content and data copyright by contributors. All rights reserved."
 msgstr ""
 "Direitos de autor sobre o conteúdo e dados detidos pelos contribuidores. "
@@ -5560,7 +7419,7 @@ msgstr ""
 
 #. TRANS: license message in footer.
 #. TRANS: %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
-#: lib/action.php:902
+#: lib/action.php:1017
 #, php-format
 msgid "All %1$s content and data are available under the %2$s license."
 msgstr ""
@@ -5568,29 +7427,104 @@ msgstr ""
 "licença %2$s."
 
 #. TRANS: DT element for pagination (previous/next, etc.).
-#: lib/action.php:1238
+#: lib/action.php:1353
 msgid "Pagination"
 msgstr "Paginação"
 
 #. TRANS: Pagination message to go to a page displaying information more in the
 #. TRANS: present than the currently displayed information.
-#: lib/action.php:1249
+#: lib/action.php:1364
 msgid "After"
 msgstr "Posteriores"
 
 #. TRANS: Pagination message to go to a page displaying information more in the
 #. TRANS: past than the currently displayed information.
-#: lib/action.php:1259
+#: lib/action.php:1374
 msgid "Before"
 msgstr "Anteriores"
 
 #. TRANS: Client exception thrown when a feed instance is a DOMDocument.
-#: lib/activity.php:120
+#: lib/activity.php:125
 msgid "Expecting a root feed element but got a whole XML document."
 msgstr ""
 "Era esperado um elemento raiz da fonte, mas foi recebido um documento XML "
 "inteiro."
 
+#. TRANS: Client exception thrown when using an unknown verb for the activity importer.
+#: lib/activityimporter.php:81
+#, fuzzy, php-format
+msgid "Unknown verb: \"%s\"."
+msgstr "Língua desconhecida \"%s\"."
+
+#. TRANS: Client exception thrown when trying to force a subscription for an untrusted user.
+#: lib/activityimporter.php:107
+msgid "Cannot force subscription for untrusted user."
+msgstr ""
+
+#. TRANS: Client exception thrown when trying to for a remote user to subscribe.
+#: lib/activityimporter.php:117
+#, fuzzy
+msgid "Cannot force remote user to subscribe."
+msgstr "Introduza o nome do utilizador para subscrever."
+
+#. TRANS: Client exception thrown when trying to subscribe to an unknown profile.
+#: lib/activityimporter.php:132
+#, fuzzy
+msgid "Unknown profile."
+msgstr "Tipo do ficheiro é desconhecido"
+
+#. TRANS: Client exception thrown when trying to import an event not related to the importing user.
+#: lib/activityimporter.php:138
+msgid "This activity seems unrelated to our user."
+msgstr ""
+
+#. TRANS: Client exception thrown when trying to join a remote group that is not a group.
+#: lib/activityimporter.php:154
+msgid "Remote profile is not a group!"
+msgstr ""
+
+#. TRANS: Client exception thrown when trying to join a group the importing user is already a member of.
+#: lib/activityimporter.php:163
+#, fuzzy
+msgid "User is already a member of this group."
+msgstr "Já é membro desse grupo."
+
+#. TRANS: Client exception thrown when trying to import a notice by another user.
+#. TRANS: %1$s is the source URI of the notice, %2$s is the URI of the author.
+#: lib/activityimporter.php:201
+#, php-format
+msgid "Already know about notice %1$s and  it has a different author %2$s."
+msgstr ""
+
+#. TRANS: Client exception thrown when trying to overwrite the author information for a non-trusted user during import.
+#: lib/activityimporter.php:207
+msgid "Not overwriting author info for non-trusted user."
+msgstr ""
+
+#. TRANS: Client exception thrown when trying to import a notice without content.
+#. TRANS: %s is the notice URI.
+#: lib/activityimporter.php:223
+#, fuzzy, php-format
+msgid "No content for notice %s."
+msgstr "Procurar no conteúdo das notas"
+
+#: lib/activitymover.php:84
+#, fuzzy, php-format
+msgid "No such user %s."
+msgstr "Utilizador não foi encontrado."
+
+#. TRANS: Client exception thrown when post to collection fails with a 400 status.
+#. TRANS: %1$s is a URL, %2$s is the status, %s$s is the fail reason.
+#. TRANS: Server exception thrown when post to collection fails with a 500 status.
+#. TRANS: %1$s is a URL, %2$s is the status, %s$s is the fail reason.
+#. TRANS: Exception thrown when post to collection fails with a status that is not handled.
+#. TRANS: %1$s is a URL, %2$s is the status, %s$s is the fail reason.
+#: lib/activitysink.php:163 lib/activitysink.php:167 lib/activitysink.php:172
+#, fuzzy, php-format
+msgctxt "URLSTATUSREASON"
+msgid "%1$s %2$s %3$s"
+msgstr "%1$s - %2$s"
+
 #. TRANS: Client exception thrown when there is no source attribute.
 #: lib/activityutils.php:200
 msgid "Can't handle remote content yet."
@@ -5661,7 +7595,7 @@ msgid "User configuration"
 msgstr "Configuração do utilizador"
 
 #. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:355 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:355 lib/personalgroupnav.php:122
 msgid "User"
 msgstr "Utilizador"
 
@@ -5701,43 +7635,71 @@ msgid "API resource requires read-write access, but you only have read access."
 msgstr "API requer acesso de leitura e escrita, mas só tem acesso de leitura."
 
 #. TRANS: OAuth exception thrown when no application is found for a given consumer key.
-#: lib/apiauth.php:175
+#: lib/apiauth.php:177
 msgid "No application for that consumer key."
 msgstr "Nenhuma aplicação para essa chave de consumidor."
 
 #. TRANS: OAuth exception given when an incorrect access token was given for a user.
-#: lib/apiauth.php:212
+#: lib/apiauth.php:219
 msgid "Bad access token."
 msgstr "Código de acesso incorrecto."
 
 #. TRANS: OAuth exception given when no user was found for a given token (no token was found).
-#: lib/apiauth.php:217
+#: lib/apiauth.php:224
 msgid "No user for that token."
 msgstr "Nenhum utilizador para esse código."
 
 #. TRANS: Client error thrown when authentication fails becaus a user clicked "Cancel".
 #. TRANS: Client error thrown when authentication fails.
-#: lib/apiauth.php:258 lib/apiauth.php:290
+#: lib/apiauth.php:266 lib/apiauth.php:293
 msgid "Could not authenticate you."
 msgstr "Não foi possível autenticá-lo."
 
+#. TRANS: Server error displayed when trying to create an anynymous OAuth consumer.
+#: lib/apioauthstore.php:45
+#, fuzzy
+msgid "Could not create anonymous consumer."
+msgstr "Não foi possível criar os nomes alternativos."
+
+#. TRANS: Server error displayed when trying to create an anynymous OAuth application.
+#: lib/apioauthstore.php:69
+#, fuzzy
+msgid "Could not create anonymous OAuth application."
+msgstr "Não foi possível criar a aplicação."
+
+#. TRANS: Exception thrown when no token association could be found.
+#: lib/apioauthstore.php:151
+msgid ""
+"Could not find a profile and application associated with the request token."
+msgstr ""
+
+#. TRANS: Exception thrown when no access token can be issued.
+#: lib/apioauthstore.php:209
+#, fuzzy
+msgid "Could not issue access token."
+msgstr "Não foi possível inserir a mensagem."
+
+#: lib/apioauthstore.php:317
+msgid "Database error inserting OAuth application user."
+msgstr "Erro na base de dados ao inserir o utilizador da aplicação OAuth."
+
+#: lib/apioauthstore.php:345
+#, fuzzy
+msgid "Database error updating OAuth application user."
+msgstr "Erro na base de dados ao inserir o utilizador da aplicação OAuth."
+
 #. TRANS: Exception thrown when an attempt is made to revoke an unknown token.
-#: lib/apioauthstore.php:178
+#: lib/apioauthstore.php:371
 msgid "Tried to revoke unknown token."
 msgstr "Tentou revogar um código desconhecido."
 
 #. TRANS: Exception thrown when an attempt is made to remove a revoked token.
-#: lib/apioauthstore.php:183
+#: lib/apioauthstore.php:376
 msgid "Failed to delete revoked token."
 msgstr "Falha ao eliminar código revogado."
 
-#. TRANS: Form legend.
-#: lib/applicationeditform.php:129
-msgid "Edit application"
-msgstr "Editar aplicação"
-
 #. TRANS: Form guide.
-#: lib/applicationeditform.php:178
+#: lib/applicationeditform.php:182
 msgid "Icon for this application"
 msgstr "Ícone para esta aplicação"
 
@@ -5815,44 +7777,56 @@ msgstr "Acesso por omissão para esta aplicação: leitura ou leitura e escrita"
 msgid "Cancel"
 msgstr "Cancelar"
 
+#: lib/applicationlist.php:247
+msgid " by "
+msgstr ""
+
 #. TRANS: Application access type
-#: lib/applicationlist.php:134
+#: lib/applicationlist.php:260
 msgid "read-write"
 msgstr "leitura e escrita"
 
 #. TRANS: Application access type
-#: lib/applicationlist.php:136
+#: lib/applicationlist.php:262
 msgid "read-only"
 msgstr "leitura"
 
 #. TRANS: Used in application list. %1$s is a modified date, %2$s is access type ("read-write" or "read-only")
-#: lib/applicationlist.php:142
+#: lib/applicationlist.php:268
 #, php-format
 msgid "Approved %1$s - \"%2$s\" access."
 msgstr "Aprovado a %1$s - acesso \"%2$s\"."
 
+#. TRANS: Access token in the application list.
+#. TRANS: %s are the first 7 characters of the access token.
+#: lib/applicationlist.php:282
+#, php-format
+msgid "Access token starting with: %s"
+msgstr ""
+
 #. TRANS: Button label
-#: lib/applicationlist.php:157
+#: lib/applicationlist.php:298
 msgctxt "BUTTON"
 msgid "Revoke"
 msgstr "Retirar"
 
-#: lib/atom10feed.php:112
-msgid "author element must contain a name element."
+#: lib/atom10feed.php:113
+msgid "Author element must contain a name element."
 msgstr ""
 
-#. TRANS: DT element label in attachment list.
-#: lib/attachmentlist.php:85
-msgid "Attachments"
-msgstr "Anexos"
+#. TRANS: Server exception thrown when using the method setActivitySubject() in the class Atom10Feed.
+#: lib/atom10feed.php:160
+#, fuzzy
+msgid "Do not use this method!"
+msgstr "Não apagar esta nota"
 
 #. TRANS: DT element label in attachment list item.
-#: lib/attachmentlist.php:256
+#: lib/attachmentlist.php:293
 msgid "Author"
 msgstr "Autor"
 
 #. TRANS: DT element label in attachment list item.
-#: lib/attachmentlist.php:270
+#: lib/attachmentlist.php:307
 msgid "Provider"
 msgstr "Fornecedor"
 
@@ -5895,7 +7869,7 @@ msgid "AJAX error"
 msgstr "Erro do Ajax"
 
 #. TRANS: E-mail subject when a command has completed.
-#: lib/channel.php:233 lib/mailhandler.php:142
+#: lib/channel.php:233 lib/mailhandler.php:143
 msgid "Command complete"
 msgstr "Comando terminado"
 
@@ -5911,7 +7885,7 @@ msgstr "Não existe nenhuma nota com essa identificação."
 
 #. TRANS: Command exception text shown when a last user notice is requested and it does not exist.
 #. TRANS: Error text shown when a last user notice is requested and it does not exist.
-#: lib/command.php:99 lib/command.php:626
+#: lib/command.php:99 lib/command.php:630
 msgid "User has no last notice."
 msgstr "Utilizador não tem nenhuma última nota."
 
@@ -5980,6 +7954,14 @@ msgstr "%1$s juntou-se ao grupo %2$s."
 msgid "%1$s left group %2$s."
 msgstr "%1$s deixou o grupo %2$s."
 
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: lib/command.php:426
+#, fuzzy, php-format
+msgctxt "WHOIS"
+msgid "%1$s (%2$s)"
+msgstr "%1$s (%2$s)"
+
 #. TRANS: Whois output. %s is the full name of the queried user.
 #: lib/command.php:430
 #, php-format
@@ -5987,15 +7969,17 @@ msgid "Fullname: %s"
 msgstr "Nome completo: %s"
 
 #. TRANS: Whois output. %s is the location of the queried user.
-#. TRANS: Profile info line in new-subscriber notification e-mail
-#: lib/command.php:434 lib/mail.php:268
+#. TRANS: Profile info line in new-subscriber notification e-mail.
+#. TRANS: %s is a location.
+#: lib/command.php:434 lib/mail.php:270
 #, php-format
 msgid "Location: %s"
 msgstr "Localidade: %s"
 
 #. TRANS: Whois output. %s is the homepage of the queried user.
-#. TRANS: Profile info line in new-subscriber notification e-mail
-#: lib/command.php:438 lib/mail.php:271
+#. TRANS: Profile info line in new-subscriber notification e-mail.
+#. TRANS: %s is a homepage.
+#: lib/command.php:438 lib/mail.php:274
 #, php-format
 msgid "Homepage: %s"
 msgstr "Página pessoal: %s"
@@ -6017,133 +8001,137 @@ msgstr ""
 "%s é um perfil remoto; só pode enviar mensagens directas a utilizadores no "
 "mesmo servidor."
 
-#. TRANS: Message given if content is too long.
+#. TRANS: Message given if content is too long. %1$sd is used for plural.
 #. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
-#: lib/command.php:488 lib/xmppmanager.php:403
-#, php-format
-msgid "Message too long - maximum is %1$d characters, you sent %2$d."
-msgstr "Mensagem demasiado extensa - máx. %1$d caracteres, enviou %2$d."
+#: lib/command.php:488
+#, fuzzy, php-format
+msgid "Message too long - maximum is %1$d character, you sent %2$d."
+msgid_plural "Message too long - maximum is %1$d characters, you sent %2$d."
+msgstr[0] "Mensagem demasiado extensa - máx. %1$d caracteres, enviou %2$d."
+msgstr[1] "Mensagem demasiado extensa - máx. %1$d caracteres, enviou %2$d."
 
 #. TRANS: Error text shown sending a direct message fails with an unknown reason.
-#: lib/command.php:514
+#: lib/command.php:516
 msgid "Error sending direct message."
 msgstr "Erro no envio da mensagem directa."
 
 #. TRANS: Message given having repeated a notice from another user.
 #. TRANS: %s is the name of the user for which the notice was repeated.
-#: lib/command.php:551
+#: lib/command.php:553
 #, php-format
 msgid "Notice from %s repeated."
 msgstr "Nota de %s repetida."
 
 #. TRANS: Error text shown when repeating a notice fails with an unknown reason.
-#: lib/command.php:554
+#: lib/command.php:556
 msgid "Error repeating notice."
 msgstr "Erro ao repetir nota."
 
-#. TRANS: Message given if content of a notice for a reply is too long.
+#. TRANS: Message given if content of a notice for a reply is too long. %1$d is used for plural.
 #. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
-#: lib/command.php:589
-#, php-format
-msgid "Notice too long - maximum is %1$d characters, you sent %2$d."
-msgstr "Nota demasiado extensa - máx. %1$d caracteres, enviou %2$d."
+#: lib/command.php:591
+#, fuzzy, php-format
+msgid "Notice too long - maximum is %1$d character, you sent %2$d."
+msgid_plural "Notice too long - maximum is %1$d characters, you sent %2$d."
+msgstr[0] "Nota demasiado extensa - máx. %1$d caracteres, enviou %2$d."
+msgstr[1] "Nota demasiado extensa - máx. %1$d caracteres, enviou %2$d."
 
 #. TRANS: Text shown having sent a reply to a notice successfully.
 #. TRANS: %s is the nickname of the user of the notice the reply was sent to.
-#: lib/command.php:600
+#: lib/command.php:604
 #, php-format
 msgid "Reply to %s sent."
 msgstr "Resposta a %s enviada."
 
 #. TRANS: Error text shown when a reply to a notice fails with an unknown reason.
-#: lib/command.php:603
+#: lib/command.php:607
 msgid "Error saving notice."
 msgstr "Erro ao gravar nota."
 
 #. TRANS: Error text shown when no username was provided when issuing a subscribe command.
-#: lib/command.php:650
+#: lib/command.php:654
 msgid "Specify the name of the user to subscribe to."
 msgstr "Introduza o nome do utilizador para subscrever."
 
 #. TRANS: Command exception text shown when trying to subscribe to an OMB profile using the subscribe command.
-#: lib/command.php:659
+#: lib/command.php:663
 msgid "Can't subscribe to OMB profiles by command."
 msgstr "Não pode subscrever perfis OMB por comando."
 
 #. TRANS: Text shown after having subscribed to another user successfully.
 #. TRANS: %s is the name of the user the subscription was requested for.
-#: lib/command.php:667
+#: lib/command.php:671
 #, php-format
 msgid "Subscribed to %s."
 msgstr "Subscreveu %s."
 
 #. TRANS: Error text shown when no username was provided when issuing an unsubscribe command.
 #. TRANS: Error text shown when no username was provided when issuing the command.
-#: lib/command.php:688 lib/command.php:799
+#: lib/command.php:692 lib/command.php:803
 msgid "Specify the name of the user to unsubscribe from."
 msgstr "Introduza o nome do utilizador para deixar de subscrever."
 
 #. TRANS: Text shown after having unsubscribed from another user successfully.
 #. TRANS: %s is the name of the user the unsubscription was requested for.
-#: lib/command.php:699
+#: lib/command.php:703
 #, php-format
 msgid "Unsubscribed from %s."
 msgstr "Deixou de subscrever %s."
 
 #. TRANS: Error text shown when issuing the command "off" with a setting which has not yet been implemented.
 #. TRANS: Error text shown when issuing the command "on" with a setting which has not yet been implemented.
-#: lib/command.php:719 lib/command.php:745
+#: lib/command.php:723 lib/command.php:749
 msgid "Command not yet implemented."
 msgstr "Comando ainda não implementado."
 
 #. TRANS: Text shown when issuing the command "off" successfully.
-#: lib/command.php:723
+#: lib/command.php:727
 msgid "Notification off."
 msgstr "Notificação desligada."
 
 #. TRANS: Error text shown when the command "off" fails for an unknown reason.
-#: lib/command.php:726
+#: lib/command.php:730
 msgid "Can't turn off notification."
 msgstr "Não foi possível desligar a notificação."
 
 #. TRANS: Text shown when issuing the command "on" successfully.
-#: lib/command.php:749
+#: lib/command.php:753
 msgid "Notification on."
 msgstr "Notificação ligada."
 
 #. TRANS: Error text shown when the command "on" fails for an unknown reason.
-#: lib/command.php:752
+#: lib/command.php:756
 msgid "Can't turn on notification."
 msgstr "Não foi possível ligar a notificação."
 
 #. TRANS: Error text shown when issuing the login command while login is disabled.
-#: lib/command.php:766
+#: lib/command.php:770
 msgid "Login command is disabled."
 msgstr "Comando para iniciar sessão foi desactivado."
 
 #. TRANS: Text shown after issuing the login command successfully.
 #. TRANS: %s is a logon link..
-#: lib/command.php:779
+#: lib/command.php:783
 #, php-format
 msgid "This link is useable only once and is valid for only 2 minutes: %s."
 msgstr "O link é utilizável uma única vez e só é válido durante 2 minutos: %s."
 
 #. TRANS: Text shown after issuing the lose command successfully (stop another user from following the current user).
 #. TRANS: %s is the name of the user the unsubscription was requested for.
-#: lib/command.php:808
+#: lib/command.php:812
 #, php-format
 msgid "Unsubscribed %s."
 msgstr "Subscrição de %s cancelada."
 
 #. TRANS: Text shown after requesting other users a user is subscribed to without having any subscriptions.
-#: lib/command.php:826
+#: lib/command.php:830
 msgid "You are not subscribed to anyone."
 msgstr "Não subscreveu ninguém."
 
 #. TRANS: Text shown after requesting other users a user is subscribed to.
 #. TRANS: This message supports plural forms. This message is followed by a
 #. TRANS: hard coded space and a comma separated list of subscribed users.
-#: lib/command.php:831
+#: lib/command.php:835
 msgid "You are subscribed to this person:"
 msgid_plural "You are subscribed to these people:"
 msgstr[0] "Subscreveu esta pessoa:"
@@ -6151,14 +8139,14 @@ msgstr[1] "Subscreveu estas pessoas:"
 
 #. TRANS: Text shown after requesting other users that are subscribed to a user
 #. TRANS: (followers) without having any subscribers.
-#: lib/command.php:853
+#: lib/command.php:857
 msgid "No one is subscribed to you."
 msgstr "Ninguém subscreve as suas notas."
 
 #. TRANS: Text shown after requesting other users that are subscribed to a user (followers).
 #. TRANS: This message supports plural forms. This message is followed by a
 #. TRANS: hard coded space and a comma separated list of subscribing users.
-#: lib/command.php:858
+#: lib/command.php:862
 msgid "This person is subscribed to you:"
 msgid_plural "These people are subscribed to you:"
 msgstr[0] "Esta pessoa subscreve as suas notas:"
@@ -6166,21 +8154,21 @@ msgstr[1] "Estas pessoas subscrevem as suas notas:"
 
 #. TRANS: Text shown after requesting groups a user is subscribed to without having
 #. TRANS: any group subscriptions.
-#: lib/command.php:880
+#: lib/command.php:884
 msgid "You are not a member of any groups."
 msgstr "Não está em nenhum grupo."
 
 #. TRANS: Text shown after requesting groups a user is subscribed to.
 #. TRANS: This message supports plural forms. This message is followed by a
 #. TRANS: hard coded space and a comma separated list of subscribed groups.
-#: lib/command.php:885
+#: lib/command.php:889
 msgid "You are a member of this group:"
 msgid_plural "You are a member of these groups:"
 msgstr[0] "Está no grupo:"
 msgstr[1] "Está nos grupos:"
 
 #. TRANS: Help text for commands. Do not translate the command names themselves; they are fixed strings.
-#: lib/command.php:900
+#: lib/command.php:904
 msgid ""
 "Commands:\n"
 "on - turn on notifications\n"
@@ -6261,24 +8249,26 @@ msgstr ""
 "tracking - ainda não implementado.\n"
 
 #. TRANS: Error message displayed when no configuration file was found for a StatusNet installation.
-#: lib/common.php:136
-msgid "No configuration file found. "
+#: lib/common.php:162
+#, fuzzy
+msgid "No configuration file found."
 msgstr "Ficheiro de configuração não encontrado. "
 
 #. TRANS: Error message displayed when no configuration file was found for a StatusNet installation.
 #. TRANS: Is followed by a list of directories (separated by HTML breaks).
-#: lib/common.php:139
-msgid "I looked for configuration files in the following places: "
+#: lib/common.php:165
+#, fuzzy
+msgid "I looked for configuration files in the following places:"
 msgstr "Procurei ficheiros de configuração nos seguintes sítios: "
 
 #. TRANS: Error message displayed when no configuration file was found for a StatusNet installation.
-#: lib/common.php:142
+#: lib/common.php:168
 msgid "You may wish to run the installer to fix this."
 msgstr "Talvez queira correr o instalador para resolver esta questão."
 
 #. TRANS: Error message displayed when no configuration file was found for a StatusNet installation.
 #. TRANS: The text is link text that leads to the installer page.
-#: lib/common.php:146
+#: lib/common.php:172
 msgid "Go to the installer."
 msgstr "Ir para o instalador."
 
@@ -6306,61 +8296,133 @@ msgstr "SMS"
 msgid "Updates by SMS"
 msgstr "Actualizações por SMS"
 
-#. TRANS: Menu item for OAth connection settings.
+#. TRANS: Menu item for OuAth connection settings.
 #: lib/connectsettingsaction.php:120
 #, fuzzy
 msgctxt "MENU"
 msgid "Connections"
 msgstr "Ligações"
 
-#. TRANS: Tooltip for connected applications (Connections through OAth) menu item.
+#. TRANS: Tooltip for connected applications (Connections through OAuth) menu item.
 #: lib/connectsettingsaction.php:122
 msgid "Authorized connected applications"
 msgstr "Aplicações ligadas autorizadas"
 
-#: lib/dberroraction.php:60
+#: lib/dberroraction.php:59
 msgid "Database error"
 msgstr "Erro de base de dados"
 
-#: lib/designsettings.php:105
+#. TRANS: Label in form on profile design page.
+#. TRANS: Field contains file name on user's computer that could be that user's custom profile background image.
+#: lib/designsettings.php:108
 msgid "Upload file"
 msgstr "Carregar ficheiro"
 
-#: lib/designsettings.php:109
+#. TRANS: Instructions for form on profile design page.
+#: lib/designsettings.php:113
 msgid ""
 "You can upload your personal background image. The maximum file size is 2MB."
 msgstr ""
 "Pode carregar uma imagem de fundo pessoal. O tamanho máximo do ficheiro é "
 "2MB."
 
-#: lib/designsettings.php:418
+#. TRANS: Radio button on profile design page that will enable use of the uploaded profile image.
+#: lib/designsettings.php:139
+#, fuzzy
+msgctxt "RADIO"
+msgid "On"
+msgstr "Ligar"
+
+#. TRANS: Radio button on profile design page that will disable use of the uploaded profile image.
+#: lib/designsettings.php:156
+#, fuzzy
+msgctxt "RADIO"
+msgid "Off"
+msgstr "Desligar"
+
+#. TRANS: Fieldset legend on profile design page to change profile page colours.
+#: lib/designsettings.php:175
+msgid "Change colours"
+msgstr "Alterar cores"
+
+#. TRANS: Button text on profile design page to immediately reset all colour settings to default.
+#: lib/designsettings.php:257
+msgid "Use defaults"
+msgstr "Usar predefinições"
+
+#. TRANS: Error message displayed if design settings could not be saved.
+#. TRANS: Error message displayed if design settings could not be saved after clicking "Use defaults".
+#: lib/designsettings.php:405 lib/designsettings.php:427
+msgid "Couldn't update your design."
+msgstr "Não foi possível actualizar o estilo."
+
+#. TRANS: Success message displayed if design settings were saved after clicking "Use defaults".
+#: lib/designsettings.php:433
 msgid "Design defaults restored."
 msgstr "Predefinições do estilo repostas"
 
-#: lib/disfavorform.php:114 lib/disfavorform.php:144
+#. TRANS: Exception. %s is an ID.
+#: lib/discovery.php:153
+#, fuzzy, php-format
+msgid "Unable to find services for %s."
+msgstr "Não foi possível retirar acesso da aplicação: %s"
+
+#. TRANS: Form legend for removing the favourite status for a favourite notice.
+#. TRANS: Title for button text for removing the favourite status for a favourite notice.
+#: lib/disfavorform.php:108 lib/disfavorform.php:140
 msgid "Disfavor this notice"
 msgstr "Retirar esta nota das favoritas"
 
-#: lib/favorform.php:114 lib/favorform.php:143
+#. TRANS: Button text for removing the favourite status for a favourite notice.
+#: lib/disfavorform.php:136
+#, fuzzy
+msgctxt "BUTTON"
+msgid "Disfavor favorite"
+msgstr "Retirar das favoritas"
+
+#. TRANS: Form legend for adding the favourite status to a notice.
+#. TRANS: Title for button text for adding the favourite status to a notice.
+#: lib/favorform.php:108 lib/favorform.php:139
 msgid "Favor this notice"
 msgstr "Eleger esta nota como favorita"
 
-#: lib/feed.php:85
+#. TRANS: Button text for adding the favourite status to a notice.
+#: lib/favorform.php:135
+#, fuzzy
+msgctxt "BUTTON"
+msgid "Favor"
+msgstr "Eleger como favorita"
+
+#: lib/feed.php:84
 msgid "RSS 1.0"
 msgstr "RSS 1.0"
 
-#: lib/feed.php:87
+#: lib/feed.php:86
 msgid "RSS 2.0"
 msgstr "RSS 2.0"
 
-#: lib/feed.php:89
+#: lib/feed.php:88
 msgid "Atom"
 msgstr "Atom"
 
-#: lib/feed.php:91
+#: lib/feed.php:90
 msgid "FOAF"
 msgstr "FOAF"
 
+#: lib/feedimporter.php:75
+#, fuzzy
+msgid "Not an atom feed."
+msgstr "Todos os membros"
+
+#: lib/feedimporter.php:82
+msgid "No author in the feed."
+msgstr ""
+
+#: lib/feedimporter.php:89
+msgid "Can't import without a user."
+msgstr ""
+
+#. TRANS: Header for feed links (h2).
 #: lib/feedlist.php:66
 msgid "Feeds"
 msgstr ""
@@ -6394,28 +8456,44 @@ msgstr "Prosseguir"
 msgid "Grant this user the \"%s\" role"
 msgstr "Atribuir a este utilizador a função \"%s\""
 
-#: lib/groupeditform.php:163
-msgid "URL of the homepage or blog of the group or topic"
+#: lib/groupeditform.php:147
+#, fuzzy
+msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
+msgstr "1-64 letras minúsculas ou números, sem pontuação ou espaços"
+
+#: lib/groupeditform.php:156
+#, fuzzy
+msgid "URL of the homepage or blog of the group or topic."
 msgstr "URL da página ou do blogue, deste grupo ou assunto"
 
-#: lib/groupeditform.php:168
+#: lib/groupeditform.php:161
 msgid "Describe the group or topic"
 msgstr "Descreva o grupo ou assunto"
 
-#: lib/groupeditform.php:170
-#, php-format
-msgid "Describe the group or topic in %d characters"
-msgstr "Descreva o grupo ou o assunto em %d caracteres"
+#: lib/groupeditform.php:163
+#, fuzzy, php-format
+msgid "Describe the group or topic in %d character or less"
+msgid_plural "Describe the group or topic in %d characters or less"
+msgstr[0] "Descreva o grupo ou o assunto em %d caracteres"
+msgstr[1] "Descreva o grupo ou o assunto em %d caracteres"
 
-#: lib/groupeditform.php:179
+#: lib/groupeditform.php:175
+#, fuzzy
 msgid ""
-"Location for the group, if any, like \"City, State (or Region), Country\""
+"Location for the group, if any, like \"City, State (or Region), Country\"."
 msgstr "Localidade do grupo, se aplicável, por ex. \"Cidade, Região, País\""
 
-#: lib/groupeditform.php:187
-#, php-format
-msgid "Extra nicknames for the group, comma- or space- separated, max %d"
-msgstr ""
+#: lib/groupeditform.php:183
+#, fuzzy, php-format
+msgid ""
+"Extra nicknames for the group, separated with commas or spaces. Maximum %d "
+"alias allowed."
+msgid_plural ""
+"Extra nicknames for the group, separated with commas or spaces. Maximum %d "
+"aliases allowed."
+msgstr[0] ""
+"Nomes adicionais para o grupo, separados por vírgulas ou espaços, máx. %d"
+msgstr[1] ""
 "Nomes adicionais para o grupo, separados por vírgulas ou espaços, máx. %d"
 
 #. TRANS: Menu item in the group navigation page.
@@ -6490,15 +8568,19 @@ msgctxt "TOOLTIP"
 msgid "Add or edit %s design"
 msgstr "Adicionar ou editar o design de %s"
 
+#. TRANS: Title for groups with the most members section.
 #: lib/groupsbymemberssection.php:71
 msgid "Groups with most members"
 msgstr "Grupos com mais membros"
 
+#. TRANS: Title for groups with the most posts section.
 #: lib/groupsbypostssection.php:71
 msgid "Groups with most posts"
 msgstr "Grupos com mais notas"
 
-#: lib/grouptagcloudsection.php:56
+#. TRANS: Title for group tag cloud section.
+#. TRANS: %s is a group name.
+#: lib/grouptagcloudsection.php:57
 #, php-format
 msgid "Tags in %s group's notices"
 msgstr "Categorias nas notas do grupo %s"
@@ -6508,43 +8590,62 @@ msgstr "Categorias nas notas do grupo %s"
 msgid "This page is not available in a media type you accept"
 msgstr "Esta página não está disponível num formato que você aceite"
 
-#: lib/imagefile.php:72
+#. TRANS: Exception thrown when trying to upload an unsupported image file format.
+#: lib/imagefile.php:73
 msgid "Unsupported image file format."
 msgstr "Formato do ficheiro da imagem não é suportado."
 
-#: lib/imagefile.php:88
+#. TRANS: Exception thrown when too large a file is uploaded.
+#. TRANS: %s is the maximum file size, for example "500b", "10kB" or "2MB".
+#: lib/imagefile.php:91
 #, php-format
 msgid "That file is too big. The maximum file size is %s."
 msgstr "Esse ficheiro é demasiado grande. O tamanho máximo de ficheiro é %s."
 
-#: lib/imagefile.php:93
+#. TRANS: Exception thrown when uploading an image and that action could not be completed.
+#: lib/imagefile.php:97
 msgid "Partial upload."
 msgstr "Transferência parcial."
 
-#. TRANS: Client exception thrown when a file upload operation has failed with an unknown reason.
-#: lib/imagefile.php:101 lib/mediafile.php:179
-msgid "System error uploading file."
-msgstr "Ocorreu um erro de sistema ao transferir o ficheiro."
-
-#: lib/imagefile.php:109
+#. TRANS: Exception thrown when uploading a file as image that is not an image or is a corrupt file.
+#: lib/imagefile.php:115
 msgid "Not an image or corrupt file."
 msgstr "Ficheiro não é uma imagem ou está corrompido."
 
-#: lib/imagefile.php:122
+#. TRANS: Exception thrown during resize when image has been registered as present, but is no longer there.
+#: lib/imagefile.php:178
 msgid "Lost our file."
 msgstr "Perdi o nosso ficheiro."
 
-#: lib/imagefile.php:163 lib/imagefile.php:224
+#. TRANS: Exception thrown when trying to resize an unknown file type.
+#. TRANS: Exception thrown when trying resize an unknown file type.
+#: lib/imagefile.php:216 lib/imagefile.php:257
 msgid "Unknown file type"
 msgstr "Tipo do ficheiro é desconhecido"
 
-#: lib/imagefile.php:244
-msgid "MB"
-msgstr "MB"
+#. TRANS: Number of megabytes. %d is the number.
+#: lib/imagefile.php:303
+#, fuzzy, php-format
+msgid "%dMB"
+msgid_plural "%dMB"
+msgstr[0] "MB"
+msgstr[1] "MB"
+
+#. TRANS: Number of kilobytes. %d is the number.
+#: lib/imagefile.php:307
+#, fuzzy, php-format
+msgid "%dkB"
+msgid_plural "%dkB"
+msgstr[0] "kB"
+msgstr[1] "kB"
 
-#: lib/imagefile.php:246
-msgid "kB"
-msgstr "kB"
+#. TRANS: Number of bytes. %d is the number.
+#: lib/imagefile.php:310
+#, php-format
+msgid "%dB"
+msgid_plural "%dB"
+msgstr[0] ""
+msgstr[1] ""
 
 #: lib/jabber.php:387
 #, php-format
@@ -6560,35 +8661,39 @@ msgstr "Origem da caixa de entrada desconhecida \"%s\"."
 msgid "Leave"
 msgstr "Afastar-me"
 
-#: lib/logingroupnav.php:80
+#. TRANS: Title for menu item for logging in to the StatusNet site.
+#: lib/logingroupnav.php:79
 msgid "Login with a username and password"
 msgstr "Iniciar sessão com um nome de utilizador e senha"
 
-#: lib/logingroupnav.php:86
+#. TRANS: Title for menu item for registering with the StatusNet site.
+#: lib/logingroupnav.php:87
 msgid "Sign up for a new account"
 msgstr "Registar uma conta nova"
 
-#. TRANS: Subject for address confirmation email
-#: lib/mail.php:174
+#. TRANS: Subject for address confirmation email.
+#: lib/mail.php:168
 msgid "Email address confirmation"
 msgstr "Confirmação do endereço electrónico"
 
 #. TRANS: Body for address confirmation email.
-#: lib/mail.php:177
-#, php-format
+#. TRANS: %1$s is the addressed user's nickname, %2$s is the StatusNet sitename,
+#. TRANS: %3$s is the URL to confirm at.
+#: lib/mail.php:173
+#, fuzzy, php-format
 msgid ""
-"Hey, %s.\n"
+"Hey, %1$s.\n"
 "\n"
-"Someone just entered this email address on %s.\n"
+"Someone just entered this email address on %2$s.\n"
 "\n"
 "If it was you, and you want to confirm your entry, use the URL below:\n"
 "\n"
-"\t%s\n"
+"\t%3$s\n"
 "\n"
 "If not, just ignore this message.\n"
 "\n"
 "Thanks for your time, \n"
-"%s\n"
+"%2$s\n"
 msgstr ""
 "Olá, %s.\n"
 "\n"
@@ -6603,13 +8708,16 @@ msgstr ""
 "Obrigado pelo tempo que dedicou,  \n"
 "%s\n"
 
-#. TRANS: Subject of new-subscriber notification e-mail
-#: lib/mail.php:243
+#. TRANS: Subject of new-subscriber notification e-mail.
+#. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename.
+#: lib/mail.php:238
 #, php-format
 msgid "%1$s is now listening to your notices on %2$s."
 msgstr "%1$s está agora a ouvir as suas notas em %2$s."
 
-#: lib/mail.php:248
+#. TRANS: This is a paragraph in a new-subscriber e-mail.
+#. TRANS: %s is a URL where the subscriber can be reported as abusive.
+#: lib/mail.php:245
 #, php-format
 msgid ""
 "If you believe this account is being used abusively, you can block them from "
@@ -6619,9 +8727,13 @@ msgstr ""
 "sua lista de subscritores e reportá-la como spam aos administradores do site "
 "em %s"
 
-#. TRANS: Main body of new-subscriber notification e-mail
-#: lib/mail.php:254
-#, php-format
+#. TRANS: Main body of new-subscriber notification e-mail.
+#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename,
+#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty)
+#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty)
+#. TRANS: %7$s is a link to the addressed user's e-mail settings.
+#: lib/mail.php:255
+#, fuzzy, php-format
 msgid ""
 "%1$s is now listening to your notices on %2$s.\n"
 "\n"
@@ -6629,10 +8741,10 @@ msgid ""
 "\n"
 "%4$s%5$s%6$s\n"
 "Faithfully yours,\n"
-"%7$s.\n"
+"%2$s.\n"
 "\n"
 "----\n"
-"Change your email address or notification options at %8$s\n"
+"Change your email address or notification options at %7$s\n"
 msgstr ""
 "%1$s está agora a ouvir as suas notas em %2$s.\n"
 "\n"
@@ -6646,21 +8758,25 @@ msgstr ""
 "Altere o seu endereço de correio electrónico ou as opções de notificação em %"
 "8$s\n"
 
-#. TRANS: Profile info line in new-subscriber notification e-mail
-#: lib/mail.php:274
+#. TRANS: Profile info line in new-subscriber notification e-mail.
+#. TRANS: %s is biographical information.
+#: lib/mail.php:278
 #, php-format
 msgid "Bio: %s"
 msgstr "Bio: %s"
 
-#. TRANS: Subject of notification mail for new posting email address
-#: lib/mail.php:304
+#. TRANS: Subject of notification mail for new posting email address.
+#. TRANS: %s is the StatusNet sitename.
+#: lib/mail.php:307
 #, php-format
 msgid "New email address for posting to %s"
 msgstr "Novo endereço electrónico para publicar no site %s"
 
-#. TRANS: Body of notification mail for new posting email address
-#: lib/mail.php:308
-#, php-format
+#. TRANS: Body of notification mail for new posting email address.
+#. TRANS: %1$s is the StatusNet sitename, %2$s is the e-mail address to send
+#. TRANS: to to post by e-mail, %3$s is a URL to more instructions.
+#: lib/mail.php:313
+#, fuzzy, php-format
 msgid ""
 "You have a new posting address on %1$s.\n"
 "\n"
@@ -6669,7 +8785,7 @@ msgid ""
 "More email instructions at %3$s.\n"
 "\n"
 "Faithfully yours,\n"
-"%4$s"
+"%1$s"
 msgstr ""
 "Tem um novo endereço electrónico para fazer publicações no site %1$s.\n"
 "\n"
@@ -6680,31 +8796,36 @@ msgstr ""
 "Melhores cumprimentos,\n"
 "%4$s"
 
-#. TRANS: Subject line for SMS-by-email notification messages
-#: lib/mail.php:433
+#. TRANS: Subject line for SMS-by-email notification messages.
+#. TRANS: %s is the posting user's nickname.
+#: lib/mail.php:434
 #, php-format
 msgid "%s status"
 msgstr "Estado de %s"
 
-#. TRANS: Subject line for SMS-by-email address confirmation message
+#. TRANS: Subject line for SMS-by-email address confirmation message.
 #: lib/mail.php:460
 msgid "SMS confirmation"
 msgstr "Confirmação SMS"
 
-#. TRANS: Main body heading for SMS-by-email address confirmation message
-#: lib/mail.php:463
+#. TRANS: Main body heading for SMS-by-email address confirmation message.
+#. TRANS: %s is the addressed user's nickname.
+#: lib/mail.php:464
 #, php-format
 msgid "%s: confirm you own this phone number with this code:"
 msgstr "%s: confirme que este número de telefone é seu com este código:"
 
-#. TRANS: Subject for 'nudge' notification email
-#: lib/mail.php:484
-#, php-format
-msgid "You've been nudged by %s"
+#. TRANS: Subject for 'nudge' notification email.
+#. TRANS: %s is the nudging user.
+#: lib/mail.php:485
+#, fuzzy, php-format
+msgid "You have been nudged by %s"
 msgstr "%s envia-lhe um toque"
 
-#. TRANS: Body for 'nudge' notification email
-#: lib/mail.php:489
+#. TRANS: Body for 'nudge' notification email.
+#. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname,
+#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename.
+#: lib/mail.php:492
 #, php-format
 msgid ""
 "%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -6731,14 +8852,18 @@ msgstr ""
 "Graciosamente,\n"
 "%4$s\n"
 
-#. TRANS: Subject for direct-message notification email
-#: lib/mail.php:536
+#. TRANS: Subject for direct-message notification email.
+#. TRANS: %s is the sending user's nickname.
+#: lib/mail.php:539
 #, php-format
 msgid "New private message from %s"
 msgstr "Nova mensagem privada de %s"
 
-#. TRANS: Body for direct-message notification email
-#: lib/mail.php:541
+#. TRANS: Body for direct-message notification email.
+#. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname,
+#. TRANS: %3$s is the message content, %4$s a URL to the message,
+#. TRANS: %5$s is the StatusNet sitename.
+#: lib/mail.php:547
 #, php-format
 msgid ""
 "%1$s (%2$s) sent you a private message:\n"
@@ -6771,14 +8896,19 @@ msgstr ""
 "Profusos cumprimentos,\n"
 "%5$s\n"
 
-#. TRANS: Subject for favorite notification email
-#: lib/mail.php:589
-#, php-format
-msgid "%s (@%s) added your notice as a favorite"
+#. TRANS: Subject for favorite notification e-mail.
+#. TRANS: %1$s is the adding user's long name, %2$s is the adding user's nickname.
+#: lib/mail.php:599
+#, fuzzy, php-format
+msgid "%1$s (@%2$s) added your notice as a favorite"
 msgstr "%s (@%s) adicionou a sua nota às favoritas."
 
-#. TRANS: Body for favorite notification email
-#: lib/mail.php:592
+#. TRANS: Body for favorite notification e-mail.
+#. TRANS: %1$s is the adding user's long name, $2$s is the date the notice was created,
+#. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text,
+#. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename,
+#. TRANS: %7$s is the adding user's nickname.
+#: lib/mail.php:606
 #, php-format
 msgid ""
 "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -6816,7 +8946,7 @@ msgstr ""
 "%6$s\n"
 
 #. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
-#: lib/mail.php:651
+#: lib/mail.php:664
 #, php-format
 msgid ""
 "The full conversation can be read here:\n"
@@ -6827,13 +8957,20 @@ msgstr ""
 "\n"
 "\t%s"
 
-#: lib/mail.php:657
-#, php-format
-msgid "%s (@%s) sent a notice to your attention"
+#. TRANS: E-mail subject for notice notification.
+#. TRANS: %1$s is the sending user's long name, %2$s is the adding user's nickname.
+#: lib/mail.php:672
+#, fuzzy, php-format
+msgid "%1$s (@%2$s) sent a notice to your attention"
 msgstr "%s (@%s) enviou uma nota à sua atenção"
 
 #. TRANS: Body of @-reply notification e-mail.
-#: lib/mail.php:660
+#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename,
+#. TRANS: %3$s is a URL to the notice, %4$s is the notice text,
+#. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty),
+#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user,
+#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname.
+#: lib/mail.php:680
 #, php-format
 msgid ""
 "%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -6883,11 +9020,11 @@ msgstr ""
 "\n"
 "P.S. Pode desligar estas notificações electrónicas aqui: %8$s\n"
 
-#: lib/mailbox.php:89
+#: lib/mailbox.php:87
 msgid "Only the user can read their own mailboxes."
 msgstr "Só o próprio utilizador pode ler a sua caixa de correio."
 
-#: lib/mailbox.php:139
+#: lib/mailbox.php:125
 msgid ""
 "You have no private messages. You can send private message to engage other "
 "users in conversation. People can send you messages for your eyes only."
@@ -6896,10 +9033,6 @@ msgstr ""
 "conversa com outros utilizadores. Outros podem enviar-lhe mensagens, a que "
 "só você terá acesso."
 
-#: lib/mailbox.php:228 lib/noticelist.php:516
-msgid "from"
-msgstr "a partir de"
-
 #: lib/mailhandler.php:37
 msgid "Could not parse message."
 msgstr "Não foi possível fazer a análise sintáctica da mensagem."
@@ -6916,73 +9049,39 @@ msgstr "Desculpe, esse não é o seu endereço para receber correio electrónico
 msgid "Sorry, no incoming email allowed."
 msgstr "Desculpe, não lhe é permitido receber correio electrónico."
 
-#: lib/mailhandler.php:228
+#: lib/mailhandler.php:229
 #, php-format
 msgid "Unsupported message type: %s"
 msgstr "Tipo de mensagem não suportado: %s"
 
 #. TRANS: Client exception thrown when a database error was thrown during a file upload operation.
-#: lib/mediafile.php:99 lib/mediafile.php:125
+#: lib/mediafile.php:102 lib/mediafile.php:174
 msgid "There was a database error while saving your file. Please try again."
 msgstr ""
 "Ocorreu um erro na base de dados ao gravar o seu ficheiro. Por favor, tente "
 "novamente."
 
-#. TRANS: Client exception thrown when an uploaded file is larger than set in php.ini.
-#: lib/mediafile.php:145
-msgid "The uploaded file exceeds the upload_max_filesize directive in php.ini."
-msgstr "Ficheiro carregado excede a directiva upload_max_filesize no php.ini."
-
-#. TRANS: Client exception.
-#: lib/mediafile.php:151
-msgid ""
-"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in "
-"the HTML form."
-msgstr ""
-"Ficheiro carregado excede a directiva MAX_FILE_SIZE especificada no "
-"formulário HTML."
-
-#. TRANS: Client exception.
-#: lib/mediafile.php:157
-msgid "The uploaded file was only partially uploaded."
-msgstr "Ficheiro só foi parcialmente carregado."
-
-#. TRANS: Client exception thrown when a temporary folder is not present to store a file upload.
-#: lib/mediafile.php:165
-msgid "Missing a temporary folder."
-msgstr "Falta um directório temporário."
-
-#. TRANS: Client exception thrown when writing to disk is not possible during a file upload operation.
-#: lib/mediafile.php:169
-msgid "Failed to write file to disk."
-msgstr "Não foi possível gravar o ficheiro no disco."
-
-#. TRANS: Client exception thrown when a file upload operation has been stopped by an extension.
-#: lib/mediafile.php:173
-msgid "File upload stopped by extension."
-msgstr "Transferência do ficheiro interrompida pela extensão."
-
 #. TRANS: Client exception thrown when a file upload operation would cause a user to exceed a set quota.
-#: lib/mediafile.php:189 lib/mediafile.php:232
+#: lib/mediafile.php:238 lib/mediafile.php:281
 msgid "File exceeds user's quota."
 msgstr "Ficheiro excede quota do utilizador."
 
 #. TRANS: Client exception thrown when a file upload operation fails because the file could
 #. TRANS: not be moved from the temporary folder to the permanent file location.
-#: lib/mediafile.php:209 lib/mediafile.php:251
+#: lib/mediafile.php:258 lib/mediafile.php:300
 msgid "File could not be moved to destination directory."
 msgstr "Não foi possível mover o ficheiro para o directório de destino."
 
 #. TRANS: Client exception thrown when a file upload operation has been stopped because the MIME
 #. TRANS: type of the uploaded file could not be determined.
-#: lib/mediafile.php:216 lib/mediafile.php:257
+#: lib/mediafile.php:265 lib/mediafile.php:306
 msgid "Could not determine file's MIME type."
 msgstr "Não foi possível determinar o tipo MIME do ficheiro."
 
 #. TRANS: Client exception thrown trying to upload a forbidden MIME type.
 #. TRANS: %1$s is the file type that was denied, %2$s is the application part of
 #. TRANS: the MIME type that was denied.
-#: lib/mediafile.php:340
+#: lib/mediafile.php:396
 #, php-format
 msgid ""
 "\"%1$s\" is not a supported file type on this server. Try using another %2$s "
@@ -6993,7 +9092,7 @@ msgstr ""
 
 #. TRANS: Client exception thrown trying to upload a forbidden MIME type.
 #. TRANS: %s is the file type that was denied.
-#: lib/mediafile.php:345
+#: lib/mediafile.php:401
 #, php-format
 msgid "\"%s\" is not a supported file type on this server."
 msgstr "\"%s\" não é um tipo de ficheiro suportado neste servidor."
@@ -7002,19 +9101,58 @@ msgstr "\"%s\" não é um tipo de ficheiro suportado neste servidor."
 msgid "Send a direct notice"
 msgstr "Enviar uma nota directa"
 
-#: lib/messageform.php:146
+#. TRANS Label entry in drop-down selection box in direct-message inbox/outbox. This is the default entry in the drop-down box, doubling as instructions and a brake against accidental submissions with the first user in the list.
+#: lib/messageform.php:137
+#, fuzzy
+msgid "Select recipient:"
+msgstr "Seleccione um operador"
+
+#. TRANS Entry in drop-down selection box in direct-message inbox/outbox when no one is available to message.
+#: lib/messageform.php:150
+#, fuzzy
+msgid "No mutual subscribers."
+msgstr "Não subscrito!"
+
+#: lib/messageform.php:153
 msgid "To"
 msgstr "Para"
 
-#: lib/messageform.php:159 lib/noticeform.php:186
+#: lib/messageform.php:166 lib/noticeform.php:186
 msgid "Available characters"
 msgstr "Caracteres disponíveis"
 
-#: lib/messageform.php:178 lib/noticeform.php:237
+#: lib/messageform.php:185 lib/noticeform.php:237
 msgctxt "Send button for sending notice"
 msgid "Send"
 msgstr "Enviar"
 
+#: lib/messagelist.php:77
+#, fuzzy
+msgid "Messages"
+msgstr "Mensagem"
+
+#: lib/messagelistitem.php:123 lib/noticelist.php:522
+msgid "from"
+msgstr "a partir de"
+
+#. TRANS: Validation error in form for registration, profile and group settings, etc.
+#: lib/nickname.php:165
+msgid "Nickname must have only lowercase letters and numbers and no spaces."
+msgstr "Utilizador só deve conter letras minúsculas e números. Sem espaços."
+
+#. TRANS: Validation error in form for registration, profile and group settings, etc.
+#: lib/nickname.php:178
+msgid "Nickname cannot be empty."
+msgstr ""
+
+#. TRANS: Validation error in form for registration, profile and group settings, etc.
+#: lib/nickname.php:191
+#, php-format
+msgid "Nickname cannot be more than %d character long."
+msgid_plural "Nickname cannot be more than %d characters long."
+msgstr[0] ""
+msgstr[1] ""
+
 #: lib/noticeform.php:160
 msgid "Send a notice"
 msgstr "Enviar uma nota"
@@ -7024,11 +9162,11 @@ msgstr "Enviar uma nota"
 msgid "What's up, %s?"
 msgstr "Novidades, %s?"
 
-#: lib/noticeform.php:193
+#: lib/noticeform.php:194
 msgid "Attach"
 msgstr "Anexar"
 
-#: lib/noticeform.php:197
+#: lib/noticeform.php:198
 msgid "Attach a file"
 msgstr "Anexar um ficheiro"
 
@@ -7049,55 +9187,55 @@ msgstr ""
 "tente novamente mais tarde"
 
 #. TRANS: Used in coordinates as abbreviation of north
-#: lib/noticelist.php:446
+#: lib/noticelist.php:452
 msgid "N"
 msgstr "N"
 
 #. TRANS: Used in coordinates as abbreviation of south
-#: lib/noticelist.php:448
+#: lib/noticelist.php:454
 msgid "S"
 msgstr "S"
 
 #. TRANS: Used in coordinates as abbreviation of east
-#: lib/noticelist.php:450
+#: lib/noticelist.php:456
 msgid "E"
 msgstr "E"
 
 #. TRANS: Used in coordinates as abbreviation of west
-#: lib/noticelist.php:452
+#: lib/noticelist.php:458
 msgid "W"
 msgstr "O"
 
-#: lib/noticelist.php:454
+#: lib/noticelist.php:460
 #, php-format
 msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
 msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
 
-#: lib/noticelist.php:463
+#: lib/noticelist.php:469
 msgid "at"
 msgstr "coords."
 
-#: lib/noticelist.php:512
+#: lib/noticelist.php:518
 msgid "web"
 msgstr "web"
 
-#: lib/noticelist.php:578
+#: lib/noticelist.php:584
 msgid "in context"
 msgstr "no contexto"
 
-#: lib/noticelist.php:613
+#: lib/noticelist.php:619
 msgid "Repeated by"
 msgstr "Repetida por"
 
-#: lib/noticelist.php:640
+#: lib/noticelist.php:646
 msgid "Reply to this notice"
 msgstr "Responder a esta nota"
 
-#: lib/noticelist.php:641
+#: lib/noticelist.php:647
 msgid "Reply"
 msgstr "Responder"
 
-#: lib/noticelist.php:685
+#: lib/noticelist.php:691
 msgid "Notice repeated"
 msgstr "Nota repetida"
 
@@ -7113,98 +9251,134 @@ msgstr "Tocar"
 msgid "Send a nudge to this user"
 msgstr "Enviar toque a este utilizador"
 
-#: lib/oauthstore.php:283
+#: lib/oauthstore.php:294
 msgid "Error inserting new profile."
 msgstr "Erro ao inserir perfil novo."
 
-#: lib/oauthstore.php:291
+#: lib/oauthstore.php:302
 msgid "Error inserting avatar."
 msgstr "Erro ao inserir avatar."
 
-#: lib/oauthstore.php:311
+#: lib/oauthstore.php:322
 msgid "Error inserting remote profile."
 msgstr "Erro ao inserir perfil remoto."
 
 #. TRANS: Exception thrown when a notice is denied because it has been sent before.
-#: lib/oauthstore.php:346
+#: lib/oauthstore.php:362
 msgid "Duplicate notice."
 msgstr "Nota duplicada."
 
-#: lib/oauthstore.php:491
+#: lib/oauthstore.php:507
 msgid "Couldn't insert new subscription."
 msgstr "Não foi possível inserir nova subscrição."
 
-#: lib/personalgroupnav.php:99
-msgid "Personal"
-msgstr "Pessoal"
-
-#: lib/personalgroupnav.php:104
+#. TRANS: Personal group navigation menu option when logged in for viewing @-replies.
+#: lib/personalgroupnav.php:107
+#, fuzzy
+msgctxt "MENU"
 msgid "Replies"
 msgstr "Respostas"
 
+#. TRANS: Personal group navigation menu option when logged in for seeing own profile.
 #: lib/personalgroupnav.php:114
+#, fuzzy
+msgctxt "MENU"
+msgid "Profile"
+msgstr "Perfil"
+
+#. TRANS: Personal group navigation menu option when logged in for viewing own favourited notices.
+#: lib/personalgroupnav.php:120
+#, fuzzy
+msgctxt "MENU"
 msgid "Favorites"
 msgstr "Favoritas"
 
-#: lib/personalgroupnav.php:125
+#. TRANS: Personal group navigation menu option when logged in for viewing recieved personal messages.
+#: lib/personalgroupnav.php:133
+#, fuzzy
+msgctxt "MENU"
 msgid "Inbox"
 msgstr "Recebidas"
 
-#: lib/personalgroupnav.php:126
+#. TRANS: Tooltip for personal group navigation menu option when logged in for viewing recieved personal messages.
+#: lib/personalgroupnav.php:135
 msgid "Your incoming messages"
 msgstr "Mensagens recebidas"
 
-#: lib/personalgroupnav.php:130
+#. TRANS: Personal group navigation menu option when logged in for viewing senet personal messages.
+#: lib/personalgroupnav.php:140
+#, fuzzy
+msgctxt "MENU"
 msgid "Outbox"
 msgstr "Enviadas"
 
-#: lib/personalgroupnav.php:131
+#. TRANS: Tooltip for personal group navigation menu option when logged in for viewing senet personal messages.
+#: lib/personalgroupnav.php:142
 msgid "Your sent messages"
 msgstr "Mensagens enviadas"
 
+#. TRANS: Title for personal tag cloud section. %s is a user nickname.
 #: lib/personaltagcloudsection.php:56
 #, php-format
 msgid "Tags in %s's notices"
 msgstr "Categorias nas notas de %s"
 
 #. TRANS: Displayed as version information for a plugin if no version information was found.
-#: lib/plugin.php:121
+#: lib/plugin.php:126
 msgid "Unknown"
 msgstr "Desconhecida"
 
-#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
+#. TRANS: H2 text for user subscription statistics.
+#. TRANS: Label for user statistics.
+#: lib/profileaction.php:127 lib/profileaction.php:225 lib/subgroupnav.php:82
 msgid "Subscriptions"
 msgstr "Subscrições"
 
-#: lib/profileaction.php:126
+#. TRANS: Text for user subscription statistics if user has more subscriptions than displayed.
+#: lib/profileaction.php:144
 msgid "All subscriptions"
 msgstr "Todas as subscrições"
 
-#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
+#. TRANS: H2 text for user subscriber statistics.
+#. TRANS: Label for user statistics.
+#: lib/profileaction.php:164 lib/profileaction.php:232 lib/subgroupnav.php:90
 msgid "Subscribers"
 msgstr "Subscritores"
 
-#: lib/profileaction.php:161
+#. TRANS: Text for user subscription statistics if user has more subscribers than displayed.
+#: lib/profileaction.php:181
 msgid "All subscribers"
 msgstr "Todos os subscritores"
 
-#: lib/profileaction.php:191
+#. TRANS: Label for user statistics.
+#: lib/profileaction.php:213
 msgid "User ID"
 msgstr "Número de identificação"
 
-#: lib/profileaction.php:196
+#. TRANS: Label for user statistics.
+#: lib/profileaction.php:219
 msgid "Member since"
 msgstr "Membro desde"
 
-#. TRANS: Average count of posts made per day since account registration
-#: lib/profileaction.php:235
+#. TRANS: Label for user statistics.
+#. TRANS: H2 text for user group membership statistics.
+#: lib/profileaction.php:239 lib/profileaction.php:290
+#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
+msgid "Groups"
+msgstr "Grupos"
+
+#. TRANS: Label for user statistics.
+#. TRANS: Average count of posts made per day since account registration.
+#: lib/profileaction.php:253
 msgid "Daily average"
 msgstr "Média diária"
 
-#: lib/profileaction.php:264
+#. TRANS: Text for user group membership statistics if user has more subscriptions than displayed.
+#: lib/profileaction.php:305
 msgid "All groups"
 msgstr "Todos os grupos"
 
+#. TRANS: Server error displayed when using an unimplemented method.
 #: lib/profileformaction.php:123
 msgid "Unimplemented method."
 msgstr "Método não implementado."
@@ -7250,9 +9424,11 @@ msgstr "Repetir esta nota"
 msgid "Revoke the \"%s\" role from this user"
 msgstr "Retirar a função \"%s\" a este utilizador"
 
-#: lib/router.php:711
-msgid "No single user defined for single-user mode."
-msgstr "Nenhum utilizador único definido para o modo de utilizador único."
+#. TRANS: Client error on action trying to visit a non-existing page.
+#: lib/router.php:974
+#, fuzzy
+msgid "Page not found."
+msgstr "Método da API não encontrado."
 
 #: lib/sandboxform.php:67
 msgid "Sandbox"
@@ -7263,16 +9439,17 @@ msgid "Sandbox this user"
 msgstr "Impedir que notas deste utilizador sejam públicas"
 
 #. TRANS: Fieldset legend for the search form.
-#: lib/searchaction.php:121
+#: lib/searchaction.php:120
 msgid "Search site"
 msgstr "Pesquisar site"
 
 #. TRANS: Used as a field label for the field where one or more keywords
 #. TRANS: for searching can be entered.
-#: lib/searchaction.php:129
+#: lib/searchaction.php:128
 msgid "Keyword(s)"
 msgstr "Categorias"
 
+#. TRANS: Button text for searching site.
 #: lib/searchaction.php:130
 msgctxt "BUTTON"
 msgid "Search"
@@ -7353,6 +9530,12 @@ msgstr "Nuvem da sua categorização das pessoas"
 msgid "None"
 msgstr "Nenhum"
 
+#. TRANS: Server exception displayed if a theme name was invalid.
+#: lib/theme.php:74
+#, fuzzy
+msgid "Invalid theme name."
+msgstr "Nome de ficheiro inválido."
+
 #: lib/themeuploader.php:50
 msgid "This server cannot handle theme uploads without ZIP support."
 msgstr ""
@@ -7363,8 +9546,8 @@ msgid "The theme file is missing or the upload failed."
 msgstr "O ficheiro do tema não foi localizado ou o upload falhou."
 
 #: lib/themeuploader.php:91 lib/themeuploader.php:102
-#: lib/themeuploader.php:278 lib/themeuploader.php:282
-#: lib/themeuploader.php:290 lib/themeuploader.php:297
+#: lib/themeuploader.php:279 lib/themeuploader.php:283
+#: lib/themeuploader.php:291 lib/themeuploader.php:298
 msgid "Failed saving theme."
 msgstr "Não foi possível gravar o tema."
 
@@ -7373,17 +9556,22 @@ msgid "Invalid theme: bad directory structure."
 msgstr "Tema inválido: estrutura de directórios incorrecta."
 
 #: lib/themeuploader.php:166
-#, php-format
-msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
-msgstr ""
+#, fuzzy, php-format
+msgid "Uploaded theme is too large; must be less than %d byte uncompressed."
+msgid_plural ""
+"Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr[0] ""
+"O tema carregado é demasiado grande; tem de ter menos de %d bytes "
+"descomprimido."
+msgstr[1] ""
 "O tema carregado é demasiado grande; tem de ter menos de %d bytes "
 "descomprimido."
 
-#: lib/themeuploader.php:178
+#: lib/themeuploader.php:179
 msgid "Invalid theme archive: missing file css/display.css"
 msgstr "Arquivo do tema inválido: falta o ficheiro css/display.css"
 
-#: lib/themeuploader.php:218
+#: lib/themeuploader.php:219
 msgid ""
 "Theme contains invalid file or folder name. Stick with ASCII letters, "
 "digits, underscore, and minus sign."
@@ -7391,16 +9579,16 @@ msgstr ""
 "Tema contém um nome de ficheiro ou de directório inválido. Use somente "
 "letras ASCII, algarismos, sublinhados e o sinal de menos."
 
-#: lib/themeuploader.php:224
+#: lib/themeuploader.php:225
 msgid "Theme contains unsafe file extension names; may be unsafe."
 msgstr "O tema contém extensões de ficheiro inseguras; pode não ser seguro."
 
-#: lib/themeuploader.php:241
+#: lib/themeuploader.php:242
 #, php-format
 msgid "Theme contains file of type '.%s', which is not allowed."
 msgstr "Tema contém um ficheiro do tipo '.%s', o que não é permitido."
 
-#: lib/themeuploader.php:259
+#: lib/themeuploader.php:260
 msgid "Error opening theme archive."
 msgstr "Ocorreu um erro ao abrir o arquivo do tema."
 
@@ -7408,6 +9596,13 @@ msgstr "Ocorreu um erro ao abrir o arquivo do tema."
 msgid "Top posters"
 msgstr "Quem mais publica"
 
+#. TRANS: Title for the form to unblock a user.
+#: lib/unblockform.php:67
+#, fuzzy
+msgctxt "TITLE"
+msgid "Unblock"
+msgstr "Desbloquear"
+
 #: lib/unsandboxform.php:69
 msgid "Unsandbox"
 msgstr "Permitir notas públicas"
@@ -7439,135 +9634,161 @@ msgstr "Abandonar"
 msgid "User %1$s (%2$d) has no profile record."
 msgstr "Utilizador não tem perfil."
 
-#: lib/userprofile.php:117
+#. TRANS: Link text for changeing the avatar of the logged in user.
+#: lib/userprofile.php:121
 msgid "Edit Avatar"
 msgstr "Editar Avatar"
 
-#: lib/userprofile.php:234 lib/userprofile.php:248
+#. TRANS: H2 for user actions in a profile.
+#. TRANS: H2 for entity actions in a profile.
+#: lib/userprofile.php:245 lib/userprofile.php:261
 msgid "User actions"
 msgstr "Acções do utilizador"
 
-#: lib/userprofile.php:237
+#. TRANS: Text shown in user profile of not yet compeltely deleted users.
+#: lib/userprofile.php:249
 msgid "User deletion in progress..."
 msgstr "A apagar o utilizador..."
 
-#: lib/userprofile.php:263
+#. TRANS: Link title for link on user profile.
+#: lib/userprofile.php:277
 msgid "Edit profile settings"
 msgstr "Editar configurações do perfil"
 
-#: lib/userprofile.php:264
+#. TRANS: Link text for link on user profile.
+#: lib/userprofile.php:279
 msgid "Edit"
 msgstr "Editar"
 
-#: lib/userprofile.php:287
+#. TRANS: Link title for link on user profile.
+#: lib/userprofile.php:303
 msgid "Send a direct message to this user"
 msgstr "Enviar mensagem directa a este utilizador"
 
-#: lib/userprofile.php:288
+#. TRANS: Link text for link on user profile.
+#: lib/userprofile.php:305
 msgid "Message"
 msgstr "Mensagem"
 
-#: lib/userprofile.php:326
+#. TRANS: Label text on user profile to select a user role.
+#: lib/userprofile.php:347
 msgid "Moderate"
 msgstr "Moderar"
 
-#: lib/userprofile.php:364
+#. TRANS: Label text on user profile to select a user role.
+#: lib/userprofile.php:386
 msgid "User role"
 msgstr "Função"
 
-#: lib/userprofile.php:366
+#. TRANS: Role that can be set for a user profile.
+#: lib/userprofile.php:389
 msgctxt "role"
 msgid "Administrator"
 msgstr "Gestor"
 
-#: lib/userprofile.php:367
+#. TRANS: Role that can be set for a user profile.
+#: lib/userprofile.php:391
 msgctxt "role"
 msgid "Moderator"
 msgstr "Moderador"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1153
+#: lib/util.php:1306
 msgid "a few seconds ago"
 msgstr "há alguns segundos"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1156
+#: lib/util.php:1309
 msgid "about a minute ago"
 msgstr "há cerca de um minuto"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1160
+#: lib/util.php:1313
 #, php-format
 msgid "about one minute ago"
 msgid_plural "about %d minutes ago"
-msgstr[0] "um minuto"
-msgstr[1] "%d minutos"
+msgstr[0] "há cerca de um minuto atrás"
+msgstr[1] "há cerca de %d minutos atrás"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1163
+#: lib/util.php:1316
 msgid "about an hour ago"
 msgstr "há cerca de uma hora"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1167
+#: lib/util.php:1320
 #, php-format
 msgid "about one hour ago"
 msgid_plural "about %d hours ago"
-msgstr[0] "uma hora"
-msgstr[1] "%d horas"
+msgstr[0] "há cerca de uma hora atrás"
+msgstr[1] "há cerca de %d horas atrás"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1170
+#: lib/util.php:1323
 msgid "about a day ago"
 msgstr "há cerca de um dia"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1174
+#: lib/util.php:1327
 #, php-format
 msgid "about one day ago"
 msgid_plural "about %d days ago"
-msgstr[0] "um dia"
-msgstr[1] "%d dias"
+msgstr[0] "há cerca de um dia atrás"
+msgstr[1] "há cerca de %d dias atrás"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1177
+#: lib/util.php:1330
 msgid "about a month ago"
 msgstr "há cerca de um mês"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1181
+#: lib/util.php:1334
 #, php-format
 msgid "about one month ago"
 msgid_plural "about %d months ago"
-msgstr[0] "um mês"
-msgstr[1] "%d meses"
+msgstr[0] "há cerca de um mês atrás"
+msgstr[1] "há cerca de %d meses atrás"
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1184
+#: lib/util.php:1337
 msgid "about a year ago"
 msgstr "há cerca de um ano"
 
-#: lib/webcolor.php:82
-#, php-format
-msgid "%s is not a valid color!"
-msgstr "%s não é uma cor válida!"
-
-#: lib/webcolor.php:123
-#, php-format
-msgid "%s is not a valid color! Use 3 or 6 hex chars."
+#. TRANS: Web color exception thrown when a hexadecimal color code does not validate.
+#. TRANS: %s is the provided (invalid) color code.
+#: lib/webcolor.php:81 lib/webcolor.php:121
+#, fuzzy, php-format
+msgid "%s is not a valid color! Use 3 or 6 hex characters."
 msgstr "%s não é uma cor válida! Use 3 ou 6 caracteres hexadecimais."
 
-#: scripts/restoreuser.php:82
+#. TRANS: %s is the URL to the StatusNet site's Instant Messaging settings.
+#: lib/xmppmanager.php:287
 #, php-format
-msgid "Backup file for user %s (%s)"
+msgid "Unknown user. Go to %s to add your address to your account"
 msgstr ""
 
-#: scripts/restoreuser.php:88
+#. TRANS: Response to XMPP source when it sent too long a message.
+#. TRANS: %1$d the maximum number of allowed characters (used for plural), %2$d is the sent number.
+#: lib/xmppmanager.php:406
+#, fuzzy, php-format
+msgid "Message too long. Maximum is %1$d character, you sent %2$d."
+msgid_plural "Message too long. Maximum is %1$d characters, you sent %2$d."
+msgstr[0] "Mensagem demasiado extensa - máx. %1$d caracteres, enviou %2$d."
+msgstr[1] "Mensagem demasiado extensa - máx. %1$d caracteres, enviou %2$d."
+
+#. TRANS: Exception.
+#: lib/xrd.php:63
 #, fuzzy
-msgid "No user specified; using backup user."
-msgstr "Não foi especificado um ID de utilizador."
+msgid "Invalid XML."
+msgstr "Tamanho inválido."
+
+#. TRANS: Exception.
+#: lib/xrd.php:68
+msgid "Invalid XML, missing XRD root."
+msgstr ""
 
-#: scripts/restoreuser.php:94
+#. TRANS: Commandline script output. %s is the filename that contains a backup for a user.
+#: scripts/restoreuser.php:62
 #, php-format
-msgid "%d entries in backup."
+msgid "Getting backup from file '%s'."
 msgstr ""