]> 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 3491a0a35f376a28c1d43004c0590e83ea60b48d..93aaccd378d4525d88df73f484f4455e079fb0ff 100644 (file)
@@ -1,11 +1,14 @@
 # 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
 # Author: Ipublicis
+# Author: McDutchie
+# Author: SandroHc
 # Author: Waldir
 # --
 # This file is distributed under the same license as the StatusNet package.
@@ -14,97 +17,80 @@ msgid ""
 msgstr ""
 "Project-Id-Version: StatusNet - Core\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-11-30 20:16+0000\n"
-"PO-Revision-Date: 2010-11-30 20:18:18+0000\n"
+"POT-Creation-Date: 2011-03-17 12:35+0000\n"
+"PO-Revision-Date: 2011-03-17 12:38:16+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 (r77503); Translate extension (2010-09-17)\n"
+"X-Generator: MediaWiki 1.18alpha (r84120); Translate extension (2011-03-11)\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-11-30 17:54:26+0000\n"
+"X-POT-Import-Date: 2011-03-17 10:19:27+0000\n"
 
 #. TRANS: Page title for Access admin panel that allows configuring site access.
 #. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:53 lib/adminpanelaction.php:363
 msgid "Access"
 msgstr "Acesso"
 
 #. 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:151
 msgid "Registration"
 msgstr "Registo"
 
 #. 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:157
 msgctxt "LABEL"
 msgid "Private"
 msgstr "Privado"
 
 #. 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:166
 msgid "Invite only"
 msgstr "Só por convite"
 
 #. 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:175
 msgid "Closed"
 msgstr "Fechado"
 
 #. 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 text for saving "Other settings" in profile.
+#. TRANS: Button text in the license admin panel.
 #. 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 for saving "Other settings" in profile.
 #. TRANS: Button text to save user settings in user admin panel.
 #. TRANS: Button label in the "Edit application" form.
 #. TRANS: Button text on profile design page to save settings.
-#: actions/accessadminpanel.php:193 actions/emailsettings.php:232
-#: actions/imsettings.php:187 actions/othersettings.php:134
-#: actions/pathsadminpanel.php:512 actions/profilesettings.php:201
-#: actions/sitenoticeadminpanel.php:197 actions/smssettings.php:209
-#: actions/subscriptions.php:246 actions/useradminpanel.php:298
-#: lib/applicationeditform.php:355 lib/designsettings.php:270
-#: lib/groupeditform.php:207
 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
 msgid "No such page."
 msgstr "Página não foi encontrada."
 
@@ -114,6 +100,8 @@ msgstr "Página não foi encontrada."
 #. 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.
@@ -121,6 +109,7 @@ msgstr "Página não foi encontrada."
 #. 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 not providing a user or an invalid user.
 #. 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.
@@ -129,34 +118,23 @@ msgstr "Página não foi encontrada."
 #. 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 trying to make a micro summary without providing a valid user.
+#. TRANS: Client error displayed trying to send a direct message to a non-existing user.
+#. TRANS: Client error displayed trying to use "one time password login" without using an existing user.
+#. TRANS: Client error displayed when providing a non-existing nickname in a RSS 1.0 action.
+#. TRANS: Client error displayed when trying to display favourite notices for a non-existing user.
+#. TRANS: Client error displayed trying to find a user by ID for a non-existing ID.
+#. TRANS: Client error displayed providing a non-existing nickname.
 #. TRANS: Error text shown when trying to send a direct message to a user that does not exist.
-#: 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:60
-#: actions/apiblockcreate.php:95 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: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/userxrd.php:59
-#: actions/xrds.php:71 lib/command.php:497 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.
 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:91
 #, php-format
 msgid "%1$s and friends, page %2$d"
 msgstr "%1$s e amigos, página %2$d"
@@ -165,33 +143,26 @@ msgstr "%1$s e amigos, página %2$d"
 #. TRANS: H1 text for page. %s is a user nickname.
 #. TRANS: Message is used as link title. %s is a user nickname.
 #. TRANS: Timeline title for user and friends. %s is a user nickname.
-#: actions/all.php:94 actions/all.php:191 actions/allrss.php:117
-#: actions/apitimelinefriends.php:207 actions/apitimelinehome.php:113
-#: lib/personalgroupnav.php:103
 #, php-format
 msgid "%s and friends"
 msgstr "%s e amigos"
 
 #. 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: %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: %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: 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."
@@ -200,7 +171,6 @@ msgstr ""
 
 #. 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 "
@@ -211,7 +181,6 @@ msgstr ""
 
 #. 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 "
@@ -224,7 +193,6 @@ msgstr ""
 #. 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 "
@@ -234,14 +202,11 @@ msgstr ""
 "%s ou endereçar-lhe uma nota."
 
 #. 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: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!"
@@ -260,53 +225,20 @@ msgstr "Actualizações de %1$s e amigos no %2$s!"
 #. 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 when using an unsupported API format.
 #. 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:151 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: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."
 
 #. 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."
@@ -314,7 +246,12 @@ msgstr ""
 "Tem de especificar um parâmetro 'aparelho' com um dos valores: sms, im, none."
 
 #. TRANS: Server error displayed when a user's delivery device cannot be updated.
-#: actions/apiaccountupdatedeliverydevice.php:130
+#. 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 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.
+#. TRANS: Server error displayed when "Other" settings in user profile could not be updated on the server.
 msgid "Could not update user."
 msgstr "Não foi possível actualizar o utilizador."
 
@@ -324,31 +261,21 @@ msgstr "Não foi possível actualizar o utilizador."
 #. 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.
-#: actions/apiaccountupdateprofile.php:111
-#: actions/apiaccountupdateprofilebackgroundimage.php:199
-#: actions/apiaccountupdateprofilecolors.php:183
-#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
-#: actions/avatarbynickname.php:85 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
-#: lib/profileaction.php:84
+#. 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.
 msgid "User has no profile."
 msgstr "Utilizador não tem perfil."
 
 #. TRANS: Server error displayed if a user profile could not be saved.
-#: actions/apiaccountupdateprofile.php:147
+#. TRANS: Server error thrown when user profile settings could not be saved.
 msgid "Could not save profile."
 msgstr "Não foi possível gravar o perfil."
 
 #. 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:125 actions/editapplication.php:121
-#: actions/newapplication.php:104 actions/newnotice.php:95
-#: lib/designsettings.php:298
-#, fuzzy, php-format
+#, php-format
 msgid ""
 "The server was unable to handle that much POST data (%s byte) due to its "
 "current configuration."
@@ -356,7 +283,7 @@ msgid_plural ""
 "The server was unable to handle that much POST data (%s bytes) due to its "
 "current configuration."
 msgstr[0] ""
-"O servidor não conseguiu processar tantos dados POST (%s bytes) devido à sua "
+"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 "
@@ -366,78 +293,82 @@ msgstr[1] ""
 #. 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.
-#: actions/apiaccountupdateprofilebackgroundimage.php:138
-#: actions/apiaccountupdateprofilebackgroundimage.php:149
-#: actions/apiaccountupdateprofilecolors.php:160
-#: actions/apiaccountupdateprofilecolors.php:171
-#: 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: Form validation error displayed when group design settings could not be saved because of an application issue.
 msgid "Unable to save your design settings."
 msgstr "Não foi possível gravar as configurações do estilo."
 
 #. 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
 msgid "Could not update your design."
 msgstr "Não foi possível actualizar o seu estilo."
 
-#: actions/apiatomservice.php:85
+#. TRANS: Title for Atom feed.
+msgctxt "ATOM"
 msgid "Main"
-msgstr ""
+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:92 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: 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.
+#, 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.
+#, php-format
+msgid "%s favorites"
+msgstr "Favoritas de %s"
+
+#. TRANS: Title for Atom feed with a user's memberships. %s is a user nickname.
+#, php-format
+msgid "%s memberships"
+msgstr "Membros do grupo %s"
+
 #. TRANS: Client error displayed when users try to block themselves.
-#: actions/apiblockcreate.php:104
 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:126
 msgid "Block user failed."
 msgstr "Bloqueio do utilizador falhou."
 
 #. TRANS: Server error displayed when unblocking a user has failed.
-#: actions/apiblockdestroy.php:113
 msgid "Unblock user failed."
 msgstr "Desbloqueio do utilizador falhou."
 
 #. 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"
 
 #. TRANS: Title. %s is a user nickname.
-#: actions/apidirectmessage.php:102
 #, php-format
 msgid "Direct messages to %s"
 msgstr "Mensagens directas para %s"
 
 #. 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"
 
 #. 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!"
 
@@ -445,27 +376,22 @@ msgstr "Mensagem não tem texto!"
 #. 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
+#, 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."
 
 #. 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."
+msgid "Cannot send direct messages to users who aren't your friend."
 msgstr ""
 "Não pode enviar mensagens directas a utilizadores que não sejam amigos."
 
 #. 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."
@@ -473,151 +399,127 @@ 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."
 
 #. 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
 msgid "Could not create favorite."
 msgstr "Não foi possível criar o favorito."
 
 #. 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."
 
 #. TRANS: Client error displayed when removing a favourite has failed.
-#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
+#. TRANS: Server error displayed when removing a favorite from the database fails.
 msgid "Could not delete favorite."
 msgstr "Não foi possível eliminar o favorito."
 
 #. 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."
 
 #. 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."
 
 #. 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."
 
 #. 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."
 
 #. 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."
 
 #. 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."
 
 #. TRANS: Client error trying to create a group with a nickname this is already in use.
+#. TRANS: API validation exception thrown when nickname is already used.
 #. 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:189
-#: actions/newgroup.php:129 actions/profilesettings.php:277
-#: actions/register.php:214
 msgid "Nickname already in use. Try another one."
 msgstr "Utilizador já é usado. Tente outro."
 
 #. TRANS: Client error in form for group creation.
+#. TRANS: API validation exception thrown when nickname does not validate.
 #. 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:193
-#: actions/newgroup.php:133 actions/profilesettings.php:247
-#: actions/register.php:216
 msgid "Not a valid nickname."
 msgstr "Utilizador não é válido."
 
 #. TRANS: Client error in form for group creation.
+#. TRANS: API validation exception thrown when homepage URL does not validate.
 #. 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:233
-#: actions/editgroup.php:200 actions/newapplication.php:211
-#: actions/newgroup.php:140 actions/profilesettings.php:252
-#: actions/register.php:223
 msgid "Homepage is not a valid URL."
 msgstr "Página de ínicio não é uma URL válida."
 
 #. TRANS: Client error in form for group creation.
+#. TRANS: API validation exception thrown when full name does not validate.
 #. 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:204
-#: actions/newgroup.php:144 actions/profilesettings.php:256
-#: actions/register.php:226
-#, fuzzy
 msgid "Full name is too long (maximum 255 characters)."
 msgstr "Nome completo demasiado longo (máx. 255 caracteres)."
 
 #. TRANS: Client error shown when providing too long a description during group creation.
 #. TRANS: %d is the maximum number of allowed characters.
+#. TRANS: API validation exception thrown when description does not validate.
+#. TRANS: %d is the maximum description length and used for plural.
 #. 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:201
-#: actions/editgroup.php:209 actions/newapplication.php:178
-#: actions/newgroup.php:149
-#, fuzzy, php-format
+#, 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: API validation exception thrown when location does not validate.
 #. 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:216
-#: actions/newgroup.php:156 actions/profilesettings.php:269
-#: actions/register.php:235
-#, fuzzy
 msgid "Location is too long (maximum 255 characters)."
 msgstr "Localidade demasiado longa (máx. 255 caracteres)."
 
 #. TRANS: Client error shown when providing too many aliases during group creation.
 #. TRANS: %d is the maximum number of allowed aliases.
+#. TRANS: API validation exception thrown when aliases do not validate.
+#. TRANS: %d is the maximum number of aliases and used for plural.
 #. 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:229
-#: actions/newgroup.php:169
-#, fuzzy, php-format
+#, 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."
@@ -625,26 +527,24 @@ msgstr[1] "Demasiados nomes alternativos! Máx. %d."
 
 #. TRANS: Client error shown when providing an invalid alias during group creation.
 #. TRANS: %s is the invalid alias.
-#: actions/apigroupcreate.php:253
+#. TRANS: API validation exception thrown when aliases does not validate.
+#. TRANS: %s is the invalid alias.
 #, php-format
 msgid "Invalid alias: \"%s\"."
 msgstr "Nome alternativo inválido: \"%s\""
 
 #. 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: API validation exception thrown when aliases is already used.
+#. TRANS: %s is the already used alias.
 #. TRANS: Group edit form validation error.
-#. TRANS: Group create form validation error.
-#: actions/apigroupcreate.php:264 actions/editgroup.php:244
-#: actions/newgroup.php:184
+#. TRANS: Group create form validation error. %s is the already used alias.
 #, php-format
 msgid "Alias \"%s\" already in use. Try another one."
 msgstr "Nome alternativo \"%s\" já em uso. Tente outro."
 
 #. 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.
-#. TRANS: Group create form validation error.
-#: actions/apigroupcreate.php:278 actions/editgroup.php:251
-#: actions/newgroup.php:191
 msgid "Alias can't be the same as nickname."
 msgstr "Um nome alternativo não pode ser igual ao nome do utilizador."
 
@@ -652,177 +552,168 @@ msgstr "Um nome alternativo não pode ser igual ao nome do utilizador."
 #. 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 not providing a group or an invalid 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:89
-#: 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:111 actions/joingroup.php:100 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
 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:142 actions/joingroup.php:134 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."
 
 #. 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:127 actions/leavegroup.php:129
-#: 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: 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: Used as subtitle in check for group membership. %1$s is a user name, %2$s is the site name.
-#: actions/apigrouplist.php:104
+#. TRANS: Used as subtitle in check for group membership. %1$s is the site name, %2$s is a user name.
 #, 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 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:88 actions/usergroups.php:63
 #, php-format
 msgid "%s groups"
 msgstr "Grupos de %s"
 
 #. 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"
 
+#. TRANS: Client error displayed when trying to edit a group without being an admin.
+#. 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.
+msgid "You must be an admin to edit the group."
+msgstr "Tem de ser administrador para editar o grupo."
+
+#. TRANS: Server error displayed when group update fails.
+#. TRANS: Server error displayed when editing a group fails.
+msgid "Could not update group."
+msgstr "Não foi possível actualizar o grupo."
+
+#. TRANS: Server error displayed when adding group aliases fails.
+#. TRANS: Server error displayed when group aliases could not be added.
+#. TRANS: Server exception thrown when creating group aliases failed.
+msgid "Could not create aliases."
+msgstr "Não foi possível criar os nomes alternativos."
+
+#. TRANS: API validation exception thrown when nickname does not validate.
+#. TRANS: Validation error in form for registration, profile and group settings, etc.
+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: API validation exception thrown when alias is the same as nickname.
+#. TRANS: Group create form validation error.
+msgid "Alias cannot be the same as nickname."
+msgstr "Um nome alternativo não pode ser igual ao nome do utilizador."
+
 #. TRANS: Client error displayed when uploading a media file has failed.
-#: actions/apimediaupload.php:101
 msgid "Upload failed."
 msgstr "O upload falhou."
 
 #. TRANS: Client error given from the OAuth API when the request token or verifier is invalid.
-#: actions/apioauthaccesstoken.php:101
-#, 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."
 
 #. 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."
 
 #. 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.
-#: actions/apioauthauthorize.php:147 actions/avatarsettings.php:280
-#: actions/deletenotice.php:177 actions/disfavor.php:74
-#: actions/emailsettings.php:275 actions/favor.php:75 actions/geocode.php:55
-#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:65 actions/imsettings.php:230
-#: actions/invite.php:59 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:153 actions/passwordsettings.php:138
-#: actions/profilesettings.php:221 actions/recoverpassword.php:350
-#: actions/register.php:172 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:40
-#: actions/subscribe.php:86 actions/tagother.php:166
-#: actions/unsubscribe.php:69 actions/userauthorization.php:52
-#: lib/designsettings.php:310
+#. 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.
+#. TRANS: Client error displayed when the session token is not okay.
 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."
 
 #. 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!"
 
 #. 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."
 
 #. 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.
 #. TRANS: Unknown form validation error in design settings form.
-#: actions/apioauthauthorize.php:294 actions/avatarsettings.php:294
-#: actions/designadminpanel.php:104 actions/editapplication.php:144
-#: actions/emailsettings.php:294 actions/grouplogo.php:322
-#: actions/imsettings.php:245 actions/newapplication.php:125
-#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:277 lib/designsettings.php:321
 msgid "Unexpected form submission."
 msgstr "Envio inesperado de formulário."
 
 #. 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"
 
 #. TRANS: Fieldset legend.
-#: actions/apioauthauthorize.php:404
 msgid "Allow or deny access"
 msgstr "Permitir ou negar acesso"
 
 #. 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
+#, 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 "
+"A aplicação <strong>%3$s</strong> por <strong>%4$s</strong> solicita "
+"permissão para <strong>%4$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 "
@@ -834,27 +725,18 @@ msgstr ""
 "permitir acesso à sua conta %4$s a terceiros da sua confiança."
 
 #. TRANS: Fieldset legend.
-#: actions/apioauthauthorize.php:455
-#, fuzzy
 msgctxt "LEGEND"
 msgid "Account"
 msgstr "Conta"
 
 #. TRANS: Field label on OAuth API authorisation form.
+#. TRANS: Field label on login page.
 #. TRANS: Field label in form for profile settings.
-#. TRANS: Label for group nickname (dt). Text hidden by default.
-#: actions/apioauthauthorize.php:459 actions/login.php:252
-#: actions/profilesettings.php:110 actions/register.php:432
-#: actions/showgroup.php:240 actions/tagother.php:94
-#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:134
 msgid "Nickname"
 msgstr "Utilizador"
 
 #. TRANS: Field label on OAuth API authorisation form.
-#. TRANS: Link description in user account settings menu.
-#: actions/apioauthauthorize.php:463 actions/login.php:255
-#: actions/register.php:437 lib/accountsettingsaction.php:120
+#. TRANS: Field label on login page.
 msgid "Password"
 msgstr "Senha"
 
@@ -864,47 +746,34 @@ msgstr "Senha"
 #. 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/apioauthauthorize.php:478 actions/emailsettings.php:127
-#: actions/imsettings.php:131 actions/smssettings.php:137
-#: lib/applicationeditform.php:351
 msgctxt "BUTTON"
 msgid "Cancel"
 msgstr "Cancelar"
 
 #. 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"
 
 #. 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."
 
 #. 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
+#, 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."
@@ -912,14 +781,12 @@ 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
+#, php-format
 msgid "You have successfully authorized %s"
-msgstr "Não tem autorização."
+msgstr "Não tem autorização %s"
 
 #. 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 "
@@ -928,94 +795,86 @@ 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."
 
 #. 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."
 
 #. 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/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: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:543
 msgid "Already repeated that notice."
 msgstr "Já repetiu essa nota."
 
-#: actions/apistatusesshow.php:117
-#, fuzzy
+#. 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.
 msgid "HTTP method not supported."
 msgstr "Método da API não encontrado."
 
-#: actions/apistatusesshow.php:141
-#, fuzzy, php-format
-msgid "Unsupported format: %s"
-msgstr "Formato não suportado."
+#. TRANS: Exception thrown requesting an unsupported notice output format.
+#. TRANS: %s is the requested output format.
+#, php-format
+msgid "Unsupported format: %s."
+msgstr "Formato não suportado: %s."
 
 #. TRANS: Client error displayed requesting a deleted status.
-#: actions/apistatusesshow.php:152
 msgid "Status deleted."
 msgstr "Estado apagado."
 
 #. TRANS: Client error displayed requesting a status with an invalid ID.
-#: actions/apistatusesshow.php:159
 msgid "No status with that ID found."
 msgstr "Não foi encontrado um estado com esse ID."
 
-#: actions/apistatusesshow.php:227
+#. TRANS: Client error displayed when trying to delete a notice not using the Atom format.
 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:234 actions/deletenotice.php:78
-msgid "Can't delete this notice."
+msgid "Cannot delete this notice."
 msgstr "Nota não pode ser apagada."
 
-#: actions/apistatusesshow.php:247
-#, fuzzy, php-format
+#. TRANS: Confirmation of notice deletion in API. %d is the ID (number) of the deleted notice.
+#, php-format
 msgid "Deleted notice %d"
-msgstr "Apagar nota"
+msgstr "Apagar nota %d"
 
 #. 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."
 
 #. 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
-#, fuzzy, php-format
+#, 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."
 
 #. 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."
 
 #. 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
+#, 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."
@@ -1023,13 +882,11 @@ 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."
 
 #. 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"
@@ -1037,21 +894,12 @@ msgstr "%1$s / Favoritas de %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
+#, php-format
 msgid "%1$s updates favorited by %2$s / %3$s."
-msgstr "%1$s actualizações preferidas por %2$s / %2$s."
-
-#. TRANS: Server error displayed when generating an Atom feed fails.
-#. TRANS: %s is the error.
-#: actions/apitimelinegroup.php:138
-#, fuzzy, php-format
-msgid "Could not generate feed for group - %s"
-msgstr "Não foi possível actualizar o grupo."
+msgstr "%1$s actualizações preferidas por %2$s / %3$s."
 
 #. 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"
@@ -1059,232 +907,408 @@ 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."
 
 #. TRANS: Title for site timeline. %s is the StatusNet sitename.
-#: actions/apitimelinepublic.php:193 actions/publicrss.php:103
+#. TRANS: Public RSS feed title. %s is the StatusNet site name.
 #, php-format
 msgid "%s public timeline"
 msgstr "Notas públicas de %s"
 
 #. 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!"
 
 #. 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"
 
+#, php-format
+msgid "%1$s notices that were to repeated to %2$s / %3$s."
+msgstr "%1$s actualizações em resposta a actualizações de %2$s / %3$s."
+
 #. 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"
 
+#, php-format
+msgid "%1$s notices that %2$s / %3$s has repeated."
+msgstr "%1$s avisos que %2$s / %3$s repetiu."
+
 #. TRANS: Title for timeline with lastest notices with a given tag.
 #. TRANS: %s is the tag.
-#: actions/apitimelinetag.php:101 actions/tag.php:67
+#. TRANS: Title for first page of notices with tags.
+#. TRANS: %s is the tag.
 #, php-format
 msgid "Notices tagged with %s"
 msgstr "Notas categorizadas com %s"
 
 #. 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/apitimelineuser.php:300
-#, fuzzy
+#. TRANS: Client error displayed trying to add a notice to another user's timeline.
 msgid "Only the user can add to their own timeline."
 msgstr "Só o próprio utilizador pode ler a sua caixa de correio."
 
-#: actions/apitimelineuser.php:306
-msgid "Only accept AtomPub for atom feeds."
+#. TRANS: Client error displayed when using another format than AtomPub.
+msgid "Only accept AtomPub for Atom feeds."
+msgstr ""
+
+#. TRANS: Client error displayed attempting to post an empty API notice.
+msgid "Atom post must not be empty."
+msgstr ""
+
+#. TRANS: Client error displayed attempting to post an API that is not well-formed XML.
+msgid "Atom post must be well-formed XML."
 msgstr ""
 
-#: actions/apitimelineuser.php:316
+#. TRANS: Client error displayed when not using an Atom entry.
 msgid "Atom post must be an Atom entry."
 msgstr ""
 
-#: actions/apitimelineuser.php:325
-msgid "Can only handle post activities."
+#. TRANS: Client error displayed when not using the POST verb. Do not translate POST.
+msgid "Can only handle POST activities."
 msgstr ""
 
-#: actions/apitimelineuser.php:334
+#. TRANS: Client error displayed when using an unsupported activity object type.
+#. TRANS: %s is the unsupported activity object type.
 #, php-format
-msgid "Cannot handle activity object type \"%s\""
+msgid "Cannot handle activity object type \"%s\"."
 msgstr ""
 
-#: actions/apitimelineuser.php:392
-#, fuzzy, php-format
-msgid "Notice with URI \"%s\" already exists."
-msgstr "Não existe nenhuma nota com essa identificação."
+#. TRANS: Client error displayed when posting a notice without content through the API.
+#. TRANS: %d is the notice ID (number).
+#, php-format
+msgid "No content for notice %d."
+msgstr "Nenhum conteúdo para a notícia %d."
 
-#: actions/apitimelineuser.php:423
+#. TRANS: Client error displayed when using another format than AtomPub.
+#. TRANS: %s is the notice URI.
 #, php-format
-msgid "AtomPub post with unknown attention URI %s"
-msgstr ""
+msgid "Notice with URI \"%s\" already exists."
+msgstr "Notícia com URI \"%s\" já existe."
 
 #. 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/apiusershow.php:94
-#, fuzzy
 msgid "User not found."
-msgstr "Método da API não encontrado."
+msgstr "Utilizador não encontrado."
+
+#. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile.
+#. TRANS: Client exception.
+#. TRANS: Client error displayed trying to subscribe to a non-existing profile.
+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.
+#, php-format
+msgid "Notices %1$s has favorited on %2$s"
+msgstr "Actualizações de %1$s têm favoritos em %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.
+msgid "Cannot add someone else's subscription."
+msgstr "Não é possível adicionar uma subscrição de outra pessoa."
+
+#. TRANS: Client exception thrown when trying use an incorrect activity verb for the Atom pub method.
+msgid "Can only handle favorite activities."
+msgstr "Só podes lidar com as tuas actividades favoritas."
+
+#. TRANS: Client exception thrown when trying favorite an object that is not a notice.
+msgid "Can only fave notices."
+msgstr "Só pode por actualizações nos favoritos."
+
+#. TRANS: Client exception thrown when trying favorite a notice without content.
+#, fuzzy
+msgid "Unknown notice."
+msgstr "Nota desconhecida."
+
+#. TRANS: Client exception thrown when trying favorite an already favorited notice.
+msgid "Already a favorite."
+msgstr "Já nos favoritos"
+
+#. TRANS: Title for group membership feed.
+#. TRANS: %s is a username.
+#, php-format
+msgid "%s group memberships"
+msgstr "%s membros do grupo"
+
+#. TRANS: Subtitle for group membership feed.
+#. TRANS: %1$s is a username, %2$s is the StatusNet sitename.
+#, php-format
+msgid "Groups %1$s is a member of on %2$s"
+msgstr "Os grupos %1$s são membros em %2$s"
+
+#. TRANS: Client exception thrown when trying subscribe someone else to a group.
+msgid "Cannot add someone else's membership."
+msgstr "Não é possível adicionar alguém já subscrito."
+
+#. TRANS: Client error displayed when not using the POST verb.
+#. TRANS: Do not translate POST.
+msgid "Can only handle join activities."
+msgstr "Só podes tratar de participar nas atividades."
+
+#. TRANS: Client exception thrown when trying to subscribe to a non-existing group.
+msgid "Unknown group."
+msgstr "Grupo desconhecido."
+
+#. TRANS: Client exception thrown when trying to subscribe to an already subscribed group.
+msgid "Already a member."
+msgstr "Já és um membro."
+
+#. TRANS: Client exception thrown when trying to subscribe to group while blocked from that group.
+msgid "Blocked by admin."
+msgstr "Bloqueado pelos administradores."
+
+#. TRANS: Client exception thrown when referencing a non-existing favorite.
+msgid "No such favorite."
+msgstr "Nenhum favorito encontrado."
+
+#. TRANS: Client exception thrown when trying to remove a favorite notice of another user.
+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 when providing an invalid group ID on the Make Admin page.
+#. 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.
+msgid "No such group."
+msgstr "Grupo não foi encontrado."
+
+#. TRANS: Client exception thrown when trying to show membership of a non-subscribed group
+msgid "Not a member."
+msgstr "Não é membro."
+
+#. TRANS: Client exception thrown when deleting someone else's membership.
+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.
+#, php-format
+msgid "No such profile id: %d."
+msgstr "Nenhum ID de perfil: %d."
+
+#. 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.
+#, php-format
+msgid "Profile %1$d not subscribed to profile %2$d."
+msgstr "O perfil %1$d não subscreveu o perfil %2$d."
+
+#. TRANS: Client exception thrown when trying to delete a subscription of another user.
+#, 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.
+#, php-format
+msgid "People %1$s has subscribed to on %2$s"
+msgstr "As pessoas %1$s subscreveram %2$s"
+
+#. TRANS: Client error displayed when not using the follow verb.
+msgid "Can only handle Follow activities."
+msgstr ""
+
+#. TRANS: Client exception thrown when subscribing to an object that is not a person.
+msgid "Can only follow people."
+msgstr "Só podes seguir pessoas."
+
+#. TRANS: Client exception thrown when subscribing to a non-existing profile.
+#. TRANS: %s is the unknown profile ID.
+#, php-format
+msgid "Unknown profile %s."
+msgstr "Tipo do ficheiro %s é 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.
+#, php-format
+msgid "Already subscribed to %s."
+msgstr "Já subscrito em %s."
 
 #. 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."
 
 #. 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:116
 msgid "No nickname."
 msgstr "Nome de utilizador não definido."
 
 #. 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."
 
 #. 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:66 actions/showgroup.php:224
-#: 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."
 
 #. TRANS: Server error displayed in avatar upload page when no matching profile can be found for a user.
-#: actions/avatarsettings.php:108 actions/avatarsettings.php:192
-#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
-#: actions/userauthorization.php:72 actions/userrss.php:108
+#. TRANS: Server error displayed coming across a request from a user without a profile.
+#. TRANS: Server error displayed when trying to authorise a remote subscription request
+#. TRANS: while the user has no profile.
 msgid "User without matching profile."
 msgstr "Utilizador sem perfil correspondente."
 
 #. TRANS: Avatar upload page form legend.
 #. TRANS: Avatar upload page crop form legend.
-#: actions/avatarsettings.php:122 actions/avatarsettings.php:205
-#: actions/grouplogo.php:254
+#. TRANS: Legend for group logo settings fieldset.
 msgid "Avatar settings"
 msgstr "Configurações do avatar"
 
 #. 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).
-#: actions/avatarsettings.php:131 actions/avatarsettings.php:214
-#: actions/grouplogo.php:202 actions/grouplogo.php:262
+#. TRANS: Uploaded original file in group logo form.
+#. TRANS: Header for originally uploaded file before a crop on the group logo page.
 msgid "Original"
 msgstr "Original"
 
 #. 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).
-#: actions/avatarsettings.php:147 actions/avatarsettings.php:227
-#: actions/grouplogo.php:213 actions/grouplogo.php:274
+#. TRANS: Header for preview of to be displayed group logo.
+#. TRANS: Header for the cropped group logo on the group logo page.
 msgid "Preview"
 msgstr "Antevisão"
 
 #. TRANS: Button on avatar upload page to delete current avatar.
-#: actions/avatarsettings.php:155
-#, fuzzy
+#. TRANS: Button text for user account deletion.
 msgctxt "BUTTON"
 msgid "Delete"
 msgstr "Apagar"
 
 #. TRANS: Button on avatar upload page to upload an avatar.
-#: actions/avatarsettings.php:173
-#, fuzzy
+#. TRANS: Submit button to confirm upload of a user backup file for account restore.
 msgctxt "BUTTON"
 msgid "Upload"
 msgstr "Carregar"
 
 #. 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"
 
 #. 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."
 
-#. TRANS: Avatar upload form unstruction after uploading a file.
-#: actions/avatarsettings.php:346
-msgid "Pick a square area of the image to be your avatar"
-msgstr "Escolha uma área quadrada da imagem para ser o seu avatar"
+#. TRANS: Avatar upload form instruction after uploading a file.
+msgid "Pick a square area of the image to be your avatar."
+msgstr "Escolhe uma área quadrada da imagem para ser o teu avatar."
 
 #. TRANS: Server error displayed if an avatar upload went wrong somehow server side.
-#: actions/avatarsettings.php:361 actions/grouplogo.php:380
+#. TRANS: Server error displayed trying to crop an uploaded group logo that is no longer present.
 msgid "Lost our file data."
 msgstr "Perdi os dados do nosso ficheiro."
 
 #. TRANS: Success message for having updated a user avatar.
-#: actions/avatarsettings.php:385
 msgid "Avatar updated."
 msgstr "Avatar actualizado."
 
 #. TRANS: Error displayed on the avatar upload page if the avatar could not be updated for an unknown reason.
-#: actions/avatarsettings.php:389
 msgid "Failed updating avatar."
 msgstr "Falha ao actualizar avatar."
 
 #. TRANS: Success message for deleting a user avatar.
-#: actions/avatarsettings.php:413
 msgid "Avatar deleted."
 msgstr "Avatar apagado."
 
+#. TRANS: Title for backup account page.
+#. TRANS: Option in profile settings to create a backup of the account of the currently logged in user.
+msgid "Backup account"
+msgstr "Backup da conta"
+
+#. TRANS: Client exception thrown when trying to backup an account while not logged in.
+msgid "Only logged-in users can backup their account."
+msgstr "Somente utilizadores registados podem fazer o backup da sua conta."
+
+#. TRANS: Client exception thrown when trying to backup an account without having backup rights.
+msgid "You may not backup your account."
+msgstr ""
+
+#. TRANS: Information displayed on the backup account page.
+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.
+msgctxt "BUTTON"
+msgid "Backup"
+msgstr "Backup"
+
+#. TRANS: Title for submit button to backup an account on the backup account page.
+msgid "Backup your account."
+msgstr "Backup da tua conta."
+
 #. 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."
 
 #. TRANS: Title for block user page.
 #. TRANS: Legend for block user form.
-#: actions/block.php:106 actions/block.php:136 actions/groupblock.php:158
+#. TRANS: Fieldset legend for block user from group form.
 msgid "Block user"
 msgstr "Bloquear utilizador"
 
 #. 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 "
@@ -1300,18 +1324,13 @@ msgstr ""
 #. 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:154 actions/deleteapplication.php:157
-#: actions/deletegroup.php:220 actions/deletenotice.php:155
-#: actions/deleteuser.php:152 actions/groupblock.php:178
 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:158 actions/deleteuser.php:156
-msgid "Do not block this user"
-msgstr "Não bloquear este utilizador"
+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.
@@ -1319,198 +1338,190 @@ msgstr "Não bloquear este utilizador"
 #. 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:161 actions/deleteapplication.php:164
-#: actions/deletegroup.php:227 actions/deletenotice.php:162
-#: actions/deleteuser.php:159 actions/groupblock.php:185
 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:165 lib/blockform.php:79
-msgid "Block this user"
-msgstr "Bloquear este utilizador"
+msgid "Block this user."
+msgstr "Bloquear este utilizador."
 
 #. 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: 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 trying to unblock a user from 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/blockedfromgroup.php:81 actions/blockedfromgroup.php:89
-#: actions/deletegroup.php:87 actions/deletegroup.php:100
-#: actions/editgroup.php:102 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:88 actions/joingroup.php:82
-#: actions/joingroup.php:93 actions/leavegroup.php:82
-#: actions/leavegroup.php:93 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: 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"
 
 #. 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"
 
 #. 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."
 
 #. 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: 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: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"
 
 #. 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"
 
 #. 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 a unknow address type %s, which can be 'email', 'jabber', or 'sms'.
-#: actions/confirmaddress.php:92
+#. TRANS: Server error for an unknown address type, which can be 'email', 'sms', or the name of an IM network (such as 'xmpp' or 'aim')
 #, php-format
-msgid "Unrecognized address type %s."
-msgstr "Tipo do endereço %s não reconhecido."
+msgid "Unrecognized address type %s"
+msgstr "Tipo do endereço %s não reconhecido"
 
 #. 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 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 IM preferences.
-#. TRANS: Server error thrown on database error removing a registered IM 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/confirmaddress.php:118 actions/emailsettings.php:337
-#: actions/emailsettings.php:486 actions/imsettings.php:283
-#: actions/imsettings.php:442 actions/othersettings.php:184
-#: actions/profilesettings.php:326 actions/smssettings.php:308
-#: actions/smssettings.php:464
 msgid "Couldn't update user."
 msgstr "Não foi possível actualizar o utilizador."
 
+msgid "Couldn't update user im preferences."
+msgstr "Não foi possível actualizar as preferências do utilizador."
+
+msgid "Couldn't insert user im preferences."
+msgstr "Não foi possível inserir as preferências do utilizador."
+
 #. 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."
+msgstr "Não foi possível excluir a confirmação do endereço."
 
 #. TRANS: Title for the contact address confirmation action.
-#: actions/confirmaddress.php:150
 msgid "Confirm address"
 msgstr "Confirmar endereço"
 
 #. 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).
-#: actions/conversation.php:149 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:229 lib/searchgroupnav.php:82
+#. TRANS: Label for user statistics.
 msgid "Notices"
 msgstr "Notas"
 
+#. TRANS: Client exception displayed trying to delete a user account while not logged in.
+msgid "Only logged-in users can delete their account."
+msgstr "Apenas utilizadores conectados podem apagar a sua conta."
+
+#. TRANS: Client exception displayed trying to delete a user account without have the rights to do that.
+msgid "You cannot delete your account."
+msgstr "Não podes apagar a tua conta."
+
+#. TRANS: Confirmation text for user deletion. The user has to type this exactly the same, including punctuation.
+msgid "I am sure."
+msgstr "Eu tenho certeza."
+
+#. 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.
+#, php-format
+msgid "You must write \"%s\" exactly in the box."
+msgstr "Deves escrever exactamente \"%s\" na caixa."
+
+#. TRANS: Confirmation that a user account has been deleted.
+msgid "Account deleted."
+msgstr "Conta apagada."
+
+#. 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.
+msgid "Delete account"
+msgstr "Apagar conta"
+
+#. TRANS: Form text for user deletion form.
+msgid ""
+"This will <strong>permanently delete</strong> your account data from this "
+"server."
+msgstr ""
+"Isso <strong>vai apagar</strong> os dados da tua conta a partir deste "
+"servidor."
+
+#. 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.
+#, php-format
+msgid ""
+"You are strongly advised to <a href=\"%s\">back up your data</a> before "
+"deletion."
+msgstr ""
+"Aconselhamos a <a href=\"%s\">fazer backup dos dados</a> antes de apagares."
+
+#. TRANS: Field label for delete account confirmation entry.
+#. TRANS: Field label for password reset form where the password has to be typed again.
+msgid "Confirm"
+msgstr "Confirmação"
+
+#. TRANS: Input title for the delete account field.
+#. TRANS: %s is the text that needs to be input.
+#, php-format
+msgid "Enter \"%s\" to confirm that you want to delete your account."
+msgstr "Coloca \"%s\" para confirmar que desejas apagar a tua conta."
+
+#. TRANS: Button title for user account deletion.
+msgid "Permanently delete your account"
+msgstr "Apagar permanentemente a tua conta"
+
 #. 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."
 
 #. 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:131
-#: actions/newapplication.php:114 actions/showapplication.php:118
-#: lib/action.php:1409
 msgid "There was a problem with your session token."
 msgstr "Ocorreu um problema com a sua sessão."
 
 #. 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"
 
 #. 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 "
@@ -1521,93 +1532,81 @@ msgstr ""
 "utilizadores em existência."
 
 #. TRANS: Submit button title for 'No' when deleting an application.
-#: actions/deleteapplication.php:161
-msgid "Do not delete this application"
-msgstr "Não apagar esta aplicação"
+msgid "Do not delete this application."
+msgstr "Não apagues essa aplicação."
 
 #. TRANS: Submit button title for 'Yes' when deleting an application.
-#: actions/deleteapplication.php:167
-msgid "Delete this application"
-msgstr "Apagar esta aplicação"
+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."
+msgstr "Precisas estar logado para excluir um grupo."
 
 #. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group.
-#: actions/deletegroup.php:94 actions/joingroup.php:88
-#: actions/leavegroup.php:88
+#. 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.
 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."
+msgstr "Não tens permissão para apagar este 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
+#, php-format
 msgid "Could not delete group %s."
-msgstr "Não foi possível actualizar o grupo."
+msgstr "Não foi possível apagar o grupo %s."
 
 #. TRANS: Message given after deleting a group.
 #. TRANS: %s is the deleted group's name.
-#: actions/deletegroup.php:159
-#, fuzzy, php-format
+#, php-format
 msgid "Deleted group %s"
-msgstr "%1$s deixou o grupo %2$s"
+msgstr "Grupo %s apagado"
 
 #. 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"
+msgstr "Apagar grupo"
 
 #. 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."
+"Tens certeza de que desejas apagar este grupo? Isto irá limpar todos os "
+"dados sobre o grupo do banco de dados sem um backup. Postagens públicas "
+"deste grupo ainda vão aparecer em cronogramas individuais."
 
 #. 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"
+msgid "Do not delete this group."
+msgstr "Não apagues este grupo."
 
 #. TRANS: Submit button title for 'Yes' when deleting a group.
-#: actions/deletegroup.php:231
-#, fuzzy
-msgid "Delete this group"
-msgstr "Apagar este utilizador"
+msgid "Delete this group."
+msgstr "Apagar este grupo."
 
 #. 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 to log out when not logged in.
+#. TRANS: Client error displayed when trying to access the "make admin" page while not logged in.
+#. TRANS: Client error displayed trying to create a new direct message while not logged in.
+#. TRANS: Client error displayed trying to send a notice while not logged in.
+#. TRANS: Client error displayed trying to nudge a user without being logged in.
+#. TRANS: Client error displayed when trying to enable or disable a plugin while not logged in.
 #. TRANS: Client error displayed trying a change a subscription while not logged in.
+#. TRANS: Client error displayed trying to subscribe when not logged in.
 #. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
-#: actions/deletenotice.php:52 actions/disfavor.php:61 actions/favor.php:62
-#: actions/groupblock.php:61 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/settingsaction.php:72
+#. TRANS: Client error displayed when trying to change user options while not logged in.
 msgid "Not logged in."
 msgstr "Não iniciou sessão."
 
 #. 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."
@@ -1617,38 +1616,39 @@ msgstr ""
 
 #. 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"
 
 #. 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:159
-msgid "Do not delete this notice"
-msgstr "Não apagar esta nota"
+msgid "Do not delete this notice."
+msgstr "Não apagues esta nota."
 
 #. TRANS: Submit button title for 'Yes' when deleting a notice.
-#: actions/deletenotice.php:166 lib/noticelist.php:672
-msgid "Delete this notice"
-msgstr "Apagar esta nota"
+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.
 msgid "You cannot delete users."
 msgstr "Não pode apagar utilizadores."
 
-#: actions/deleteuser.php:74
+#. TRANS: Client error displayed when trying to delete a non-local user.
 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.
+msgctxt "TITLE"
+msgid "Delete user"
+msgstr "Apagar utilizador"
+
+#. TRANS: Fieldset legend on delete user page.
 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.
 msgid ""
 "Are you sure you want to delete this user? This will clear all data about "
 "the user from the database, without a backup."
@@ -1656,82 +1656,81 @@ 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.
+msgid "Do not delete this user."
+msgstr "Não apagues este utilizador."
+
 #. TRANS: Submit button title for 'Yes' when deleting a user.
-#: actions/deleteuser.php:163 lib/deleteuserform.php:77
-msgid "Delete this user"
-msgstr "Apagar este utilizador"
+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
 msgid "Design"
 msgstr "Estilo"
 
-#: actions/designadminpanel.php:74
+#. TRANS: Instructions for design adminsitration panel.
 msgid "Design settings for this StatusNet site"
 msgstr ""
 
-#: actions/designadminpanel.php:335
+#. TRANS: Client error displayed when a logo URL does is not valid.
 msgid "Invalid logo URL."
 msgstr "URL do logotipo inválida."
 
-#: actions/designadminpanel.php:340
-#, fuzzy
+#. TRANS: Client error displayed when an SSL logo URL is invalid.
 msgid "Invalid SSL logo URL."
-msgstr "URL do logotipo inválida."
+msgstr "URL SSL do logotipo inválido."
 
-#: actions/designadminpanel.php:344
+#. 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.
 #, php-format
 msgid "Theme not available: %s."
 msgstr "Tema não está disponível: %s."
 
-#: actions/designadminpanel.php:448
+#. TRANS: Fieldset legend for form to change logo.
 msgid "Change logo"
 msgstr "Alterar logotipo"
 
-#: actions/designadminpanel.php:453
+#. TRANS: Field label for StatusNet site logo.
 msgid "Site logo"
 msgstr "Logotipo do site"
 
-#: actions/designadminpanel.php:457
-#, fuzzy
+#. TRANS: Field label for SSL StatusNet site logo.
 msgid "SSL logo"
-msgstr "Logotipo do site"
+msgstr "Logótipo SSL"
 
-#: actions/designadminpanel.php:469
+#. TRANS: Fieldset legend for form change StatusNet site's theme.
 msgid "Change theme"
 msgstr "Alterar tema"
 
-#: actions/designadminpanel.php:486
+#. TRANS: Field label for dropdown to choose site theme.
 msgid "Site theme"
 msgstr "Tema do site"
 
-#: actions/designadminpanel.php:487
+#. TRANS: Title for field label for dropdown to choose site theme.
 msgid "Theme for the site."
 msgstr "O tema para o site."
 
-#: actions/designadminpanel.php:493
+#. TRANS: Field label for uploading a cutom theme.
 msgid "Custom theme"
 msgstr "Tema personalizado"
 
-#: actions/designadminpanel.php:497
+#. TRANS: Form instructions for uploading a cutom StatusNet theme.
 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."
 
-#. TRANS: Fieldset legend on profile design page.
-#: actions/designadminpanel.php:512 lib/designsettings.php:98
+#. TRANS: Fieldset legend for theme background image.
 msgid "Change background image"
 msgstr "Alterar imagem de fundo"
 
+#. 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:517 actions/designadminpanel.php:600
-#: lib/designsettings.php:183
 msgid "Background"
 msgstr "Fundo"
 
-#: actions/designadminpanel.php:522
+#. TRANS: Form guide for background image upload form on theme designer page.
 #, php-format
 msgid ""
 "You can upload a background image for the site. The maximum file size is %1"
@@ -1741,248 +1740,204 @@ msgstr ""
 "é %1$s."
 
 #. TRANS: Used as radio button label to add a background image.
-#: actions/designadminpanel.php:553
 msgid "On"
 msgstr "Ligar"
 
 #. TRANS: Used as radio button label to not add a background image.
-#: actions/designadminpanel.php:570
 msgid "Off"
 msgstr "Desligar"
 
+#. 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:571 lib/designsettings.php:159
 msgid "Turn background image on or off."
 msgstr "Ligar ou desligar a imagem de fundo."
 
+#. 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:576 lib/designsettings.php:165
 msgid "Tile background image"
 msgstr "Repetir imagem de fundo em mosaico"
 
-#. TRANS: Fieldset legend on profile design page to change profile page colours.
-#: actions/designadminpanel.php:590 lib/designsettings.php:175
-msgid "Change colours"
+#. TRANS: Fieldset legend for theme colors.
+msgid "Change colors"
 msgstr "Alterar cores"
 
+#. TRANS: Field label for content color selector.
 #. TRANS: Label on profile design page for setting a profile page content colour.
-#: actions/designadminpanel.php:613 lib/designsettings.php:197
 msgid "Content"
 msgstr "Conteúdo"
 
+#. TRANS: Field label for sidebar color selector.
 #. TRANS: Label on profile design page for setting a profile page sidebar colour.
-#: actions/designadminpanel.php:626 lib/designsettings.php:211
 msgid "Sidebar"
 msgstr "Barra"
 
+#. TRANS: Field label for text color selector.
 #. TRANS: Label on profile design page for setting a profile page text colour.
-#: actions/designadminpanel.php:639 lib/designsettings.php:225
 msgid "Text"
 msgstr "Texto"
 
+#. TRANS: Field label for link color selector.
 #. TRANS: Label on profile design page for setting a profile page links colour.
-#: actions/designadminpanel.php:652 lib/designsettings.php:239
 msgid "Links"
 msgstr "Links"
 
-#: actions/designadminpanel.php:677
+#. TRANS: Fieldset legend for advanced theme design settings.
 msgid "Advanced"
 msgstr "Avançado"
 
-#: actions/designadminpanel.php:681
+#. TRANS: Field label for custom CSS.
 msgid "Custom CSS"
 msgstr "CSS personalizado"
 
-#. TRANS: Button text on profile design page to immediately reset all colour settings to default.
-#: actions/designadminpanel.php:702 lib/designsettings.php:257
+#. TRANS: Button text for resetting theme settings.
+msgctxt "BUTTON"
 msgid "Use defaults"
-msgstr "Usar predefinições"
-
-#. TRANS: Title for button on profile design page to reset all colour settings to default.
-#: actions/designadminpanel.php:703 lib/designsettings.php:259
-msgid "Restore default designs"
-msgstr "Repor estilos predefinidos"
+msgstr "Usar padrão"
 
-#. TRANS: Title for button on profile design page to reset all colour settings to default without saving.
-#: actions/designadminpanel.php:709 lib/designsettings.php:267
-msgid "Reset back to default"
-msgstr "Repor predefinição"
+#. TRANS: Title for button for resetting theme settings.
+msgid "Restore default designs."
+msgstr "Restaurar designs padrão."
 
-#. TRANS: Submit button title.
-#: actions/designadminpanel.php:711 actions/licenseadminpanel.php:319
-#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/snapshotadminpanel.php:245 actions/tagother.php:154
-#: lib/applicationeditform.php:357
-msgid "Save"
-msgstr "Gravar"
+#. TRANS: Title for button for resetting theme settings.
+msgid "Reset back to default."
+msgstr "Repor para o padrão."
 
-#. TRANS: Title for button on profile design page to save settings.
-#: actions/designadminpanel.php:712 lib/designsettings.php:272
-msgid "Save design"
-msgstr "Gravar o estilo"
+#. TRANS: Title for button for saving theme settings.
+msgid "Save design."
+msgstr "Salvar o design."
 
-#: actions/disfavor.php:81
+#. TRANS: Client error displayed when trying to remove favorite status for a notice that is not a favorite.
 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.
 msgid "Add to favorites"
 msgstr "Adicionar às favoritas"
 
-#: actions/doc.php:158
+#. TRANS: Client exception thrown when requesting a document from the documentation that does not exist.
+#. TRANS: %s is the non-existing document.
 #, php-format
-msgid "No such document \"%s\""
-msgstr "Documento \"%s\" não foi encontrado"
+msgid "No such document \"%s\"."
+msgstr "Documento \"%s\" não foi encontrado."
 
 #. 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."
 
 #. 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."
 
 #. 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."
 
 #. TRANS: Validation error shown when not providing a name in the "Edit application" form.
-#: actions/editapplication.php:184 actions/newapplication.php:163
+#. TRANS: Validation error shown when not providing a name in the "New application" form.
 msgid "Name is required."
 msgstr "Nome é obrigatório."
 
 #. TRANS: Validation error shown when providing too long a name in the "Edit application" form.
-#: actions/editapplication.php:188 actions/newapplication.php:169
-#, fuzzy
+#. TRANS: Validation error shown when providing too long a name in the "New application" form.
 msgid "Name is too long (maximum 255 characters)."
 msgstr "Nome é demasiado longo (máx. 255 caracteres)."
 
 #. TRANS: Validation error shown when providing a name for an application that already exists in the "Edit application" form.
-#: actions/editapplication.php:192 actions/newapplication.php:166
+#. TRANS: Validation error shown when providing a name for an application that already exists in the "New application" form.
 msgid "Name already in use. Try another one."
 msgstr "Nome já é usado. Tente outro."
 
 #. TRANS: Validation error shown when not providing a description in the "Edit application" form.
-#: actions/editapplication.php:196 actions/newapplication.php:172
+#. TRANS: Validation error shown when not providing a description in the "New application" form.
 msgid "Description is required."
 msgstr "Descrição é obrigatória."
 
 #. TRANS: Validation error shown when providing too long a source URL in the "Edit application" form.
-#: actions/editapplication.php:208
 msgid "Source URL is too long."
 msgstr "URL de origem é demasiado longa."
 
 #. TRANS: Validation error shown when providing an invalid source URL in the "Edit application" form.
-#: actions/editapplication.php:215 actions/newapplication.php:193
+#. TRANS: Validation error shown when providing an invalid source URL in the "New application" form.
 msgid "Source URL is not valid."
 msgstr "A URL de origem é inválida."
 
 #. TRANS: Validation error shown when not providing an organisation in the "Edit application" form.
-#: actions/editapplication.php:219 actions/newapplication.php:196
+#. TRANS: Validation error shown when not providing an organisation in the "New application" form.
 msgid "Organization is required."
 msgstr "Organização é obrigatória."
 
 #. TRANS: Validation error shown when providing too long an arganisation name in the "Edit application" form.
-#: actions/editapplication.php:223 actions/newapplication.php:199
 #, fuzzy
 msgid "Organization is too long (maximum 255 characters)."
 msgstr "Organização é demasiado longa (máx. 255 caracteres)."
 
-#: actions/editapplication.php:226 actions/newapplication.php:202
+#. 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.
 msgid "Organization homepage is required."
 msgstr "Página da organização é obrigatória."
 
 #. TRANS: Validation error shown when providing too long a callback URL in the "Edit application" form.
-#: actions/editapplication.php:237 actions/newapplication.php:214
+#. TRANS: Validation error shown when providing too long a callback URL in the "New application" form.
 msgid "Callback is too long."
 msgstr "Callback é demasiado longo."
 
 #. TRANS: Validation error shown when providing an invalid callback URL in the "Edit application" form.
-#: actions/editapplication.php:245 actions/newapplication.php:223
+#. TRANS: Validation error shown when providing an invalid callback URL in the "New application" form.
 msgid "Callback URL is not valid."
 msgstr "A URL de callback é inválida."
 
 #. TRANS: Server error occuring when an application could not be updated from the "Edit application" form.
-#: actions/editapplication.php:282
 msgid "Could not update application."
 msgstr "Não foi possível actualizar a aplicação."
 
 #. 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"
 
 #. 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:70 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."
 
-#. TRANS: Client error displayed trying to edit a group while not being a group admin.
-#: actions/editgroup.php:110 actions/editgroup.php:176
-#: actions/groupdesignsettings.php:107 actions/grouplogo.php:109
-msgid "You must be an admin to edit the group."
-msgstr "Tem de ser administrador para editar o grupo."
-
 #. 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."
 
 #. TRANS: Group edit form validation error.
 #. TRANS: Group create form validation error.
-#: actions/editgroup.php:239 actions/newgroup.php:179
+#. TRANS: %s is the invalid alias.
 #, php-format
 msgid "Invalid alias: \"%s\""
 msgstr "Nome alternativo inválido: \"%s\""
 
-#. TRANS: Server error displayed when editing a group fails.
-#: actions/editgroup.php:272
-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:279 classes/User_group.php:529
-msgid "Could not create aliases."
-msgstr "Não foi possível criar os nomes alternativos."
-
 #. TRANS: Group edit form success message.
-#: actions/editgroup.php:296
 msgid "Options saved."
 msgstr "Opções gravadas."
 
 #. TRANS: Title for e-mail settings.
-#: actions/emailsettings.php:61
 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
 #, 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
 msgid "Email address"
 msgstr "Endereço de correio electrónico"
 
 #. TRANS: Form note in e-mail settings form.
-#: actions/emailsettings.php:112
 msgid "Current confirmed email address."
 msgstr "Endereço de correio já confirmado."
 
@@ -1991,14 +1946,11 @@ msgstr "Endereço de correio já confirmado."
 #. TRANS: Button label to remove a confirmed IM 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
 msgctxt "BUTTON"
 msgid "Remove"
 msgstr "Remover"
 
-#: actions/emailsettings.php:122
+#. TRANS: Form note in e-mail settings form.
 msgid ""
 "Awaiting confirmation on this address. Check your inbox (and spam box!) for "
 "a message with further instructions."
@@ -2011,7 +1963,6 @@ msgstr ""
 #. 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
 msgid "Email address, like \"UserName@example.org\""
 msgstr ""
 "Endereço de correio electrónico, por ex. \"nomedeutilizador@exemplo.pt\""
@@ -2019,122 +1970,106 @@ msgstr ""
 #. 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 a SMS phone number in SMS settings form.
-#: actions/emailsettings.php:143 actions/imsettings.php:151
-#: actions/smssettings.php:162
 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
 msgid "Incoming email"
 msgstr "Correio recebido"
 
+#. TRANS: Checkbox label in e-mail preferences form.
+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
 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
 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.
+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
 msgctxt "BUTTON"
 msgid "New"
 msgstr "Novo"
 
 #. TRANS: Form legend for e-mail preferences form.
-#: actions/emailsettings.php:178
 msgid "Email preferences"
 msgstr "Preferências de correio electrónico"
 
 #. TRANS: Checkbox label in e-mail preferences form.
-#: actions/emailsettings.php:186
 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:192
 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:199
 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:205
 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:211
 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:218
-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:225
 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:346
 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:366
 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:374
-msgid "Cannot normalize that email address"
+#, 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:379 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:383
 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:387
 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:404 actions/imsettings.php:351
-#: actions/smssettings.php:373
-msgid "Couldn't insert confirmation code."
+#, 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:411
 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."
@@ -2144,89 +2079,83 @@ 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:432 actions/imsettings.php:386
-#: actions/smssettings.php:408
 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:437
 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:446 actions/smssettings.php:422
-msgid "Couldn't delete email confirmation."
+#, 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:451
 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:471
 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:492
 msgid "The email address was removed."
 msgstr "O endereço de correio electrónico foi removido."
 
-#: actions/emailsettings.php:506 actions/smssettings.php:568
+#. TRANS: Form validation error displayed when trying to remove an incoming e-mail address while no address has been set.
 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:517 actions/emailsettings.php:541
-#: actions/smssettings.php:578 actions/smssettings.php:602
-msgid "Couldn't update user record."
+#. TRANS: Server error displayed when the user could not be updated in SMS settings.
+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:521 actions/smssettings.php:581
+#. TRANS: Confirmation text after updating SMS settings.
 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:545 actions/smssettings.php:605
+#. TRANS: Confirmation text after updating SMS settings.
 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.
 msgid "This notice is already a favorite!"
 msgstr "Esta nota já é uma favorita!"
 
-#: actions/favor.php:92 lib/disfavorform.php:144
-msgid "Disfavor favorite"
-msgstr "Retirar das favoritas"
+#. TRANS: Page title for page on which favorite notices can be unfavourited.
+msgid "Disfavor favorite."
+msgstr "Retirar dos favoritos."
 
-#: actions/favorited.php:65 lib/popularnoticesection.php:62
-#: lib/publicgroupnav.php:93
+#. TRANS: Page title for first page of favorited notices.
+#. TRANS: Title for favourited notices section.
 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.
 #, php-format
 msgid "Popular notices, page %d"
 msgstr "Notas populares, página %d"
 
-#: actions/favorited.php:79
+#. TRANS: Description on page displaying favorited notices.
 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.
 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."
 
-#: actions/favorited.php:153
+#. TRANS: Additional text displayed instead of a list when a site does not yet have any favourited notices for logged in users.
 msgid ""
 "Be the first to add a notice to your favorites by clicking the fave button "
 "next to any notice you like."
@@ -2234,7 +2163,8 @@ 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.
 #, php-format
 msgid ""
 "Why not [register an account](%%action.register%%) and be the first to add a "
@@ -2243,142 +2173,150 @@ 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:118
+#. 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.
 #, 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.
 #, php-format
 msgid "Updates favored by %1$s on %2$s!"
 msgstr "Actualizações marcadas por %1$s em %2$s!"
 
-#: actions/featured.php:69 lib/featureduserssection.php:87
-#: lib/publicgroupnav.php:89
+#. TRANS: Page title for first page of featured users.
+#. TRANS: Title for featured users section.
 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.
 #, 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.
+#, 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.
 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.
 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.
 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.
 msgid "No uploaded attachments."
 msgstr "Sem anexos carregados."
 
-#: actions/finishremotesubscribe.php:69
+#. TRANS: Client error displayed when subscribing to a remote profile and an unexpected response is received.
 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.
 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.
 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.
 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.
 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.
 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.
 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:317
+#. TRANS: Server error displayed when subscribing to a remote profile fails because the remote profile could not be updated.
 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.
 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.
 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.
 msgid "Invalid role."
 msgstr "Função inválida."
 
-#: actions/grantrole.php:66 actions/revokerole.php:66
+#. TRANS: Client error displayed when trying to assign an reserved role to a user.
 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.
 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.
 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 when not providing a profile ID on the Make Admin page.
 #. TRANS: Client error displayed trying a change a subscription without providing a profile.
-#: actions/groupblock.php:71 actions/groupunblock.php:71
-#: actions/makeadmin.php:71 actions/subedit.php:49
-#: lib/profileformaction.php:79
+#. TRANS: Client error displayed when trying to change user options without specifying a user to work on.
 msgid "No profile specified."
 msgstr "Não foi especificado um perfil."
 
+#. 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 when specifying an invalid profile ID on the Make Admin page.
 #. TRANS: Client error displayed trying a change a subscription for a non-existant profile ID.
-#: actions/groupblock.php:76 actions/groupunblock.php:77
-#: actions/makeadmin.php:76 actions/subedit.php:57 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:86
+#. TRANS: Client error displayed when trying to change user options without specifying an existing user to work on.
 msgid "No profile with that ID."
 msgstr "Não foi encontrado um perfil com essa identificação."
 
-#: actions/groupblock.php:81 actions/groupunblock.php:82
-#: actions/makeadmin.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.
+#. TRANS: Client error displayed when not providing a group ID on the Make Admin page.
 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.
 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.
 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.
 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.
 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.
 #, php-format
 msgid ""
 "Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -2390,32 +2328,33 @@ 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
-msgid "Do not block this user from this group"
+#, fuzzy
+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
-msgid "Block this user from this group"
+#, fuzzy
+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.
 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.
+#. TRANS: Client error displayed trying to find a user by ID without providing an ID.
 msgid "No ID."
 msgstr "Sem ID."
 
-#: actions/groupdesignsettings.php:68
+#. TRANS: Client error displayed trying to change group design settings while not logged in.
 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.
 msgid "Group design"
 msgstr "Estilo do grupo"
 
-#: actions/groupdesignsettings.php:155
+#. TRANS: Instructions for group design settings page.
 msgid ""
 "Customize the way your group looks with a background image and a colour "
 "palette of your choice."
@@ -2423,22 +2362,22 @@ msgstr ""
 "Personalize o aspecto do seu grupo com uma imagem de fundo e uma paleta de "
 "cores à sua escolha."
 
-#. 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".
-#: actions/groupdesignsettings.php:266 actions/userdesignsettings.php:186
-#: lib/designsettings.php:405 lib/designsettings.php:427
-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.
+#, 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.
 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.
 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.
 #, php-format
 msgid ""
 "You can upload a logo image for your group. The maximum file size is %s."
@@ -2446,100 +2385,97 @@ msgstr ""
 "Pode carregar uma imagem para logotipo do seu grupo. O tamanho máximo do "
 "ficheiro é %s."
 
-#: actions/grouplogo.php:236
+#. TRANS: Submit button for uploading a group logo.
 msgid "Upload"
 msgstr "Carregar"
 
-#: actions/grouplogo.php:289
+#. TRANS: Button text for cropping an uploaded group logo.
 msgid "Crop"
 msgstr "Cortar"
 
-#: actions/grouplogo.php:365
+#. TRANS: Form instructions on the group logo page.
 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.
 msgid "Logo updated."
 msgstr "Logotipo actualizado."
 
-#: actions/grouplogo.php:401
+#. TRANS: Form failure message after failing to update a group logo.
 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
 #, 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
 #, 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.
 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.
 msgid "Admin"
 msgstr "Gestor"
 
 #. TRANS: Button text for the form that will block a user from a group.
-#: actions/groupmembers.php:399
 msgctxt "BUTTON"
 msgid "Block"
 msgstr "Bloquear"
 
 #. TRANS: Submit button title.
-#: actions/groupmembers.php:403
 msgctxt "TOOLTIP"
 msgid "Block this user"
-msgstr ""
+msgstr "Bloquear este utilizador"
 
-#: actions/groupmembers.php:498
+#. TRANS: Form legend for form to make a user a group admin.
 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
 msgctxt "BUTTON"
 msgid "Make Admin"
 msgstr "Tornar Gestor"
 
 #. TRANS: Submit button title.
-#: actions/groupmembers.php:537
 msgctxt "TOOLTIP"
 msgid "Make this user an admin"
 msgstr "Tornar este utilizador um gestor"
 
 #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
-#: actions/grouprss.php:142
 #, 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.
+msgctxt "TITLE"
 msgid "Groups"
 msgstr "Grupos"
 
-#: actions/groups.php:64
+#. TRANS: Title for all but the first page of the groups list.
+#. TRANS: %d is the page number.
 #, 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).
+#, 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 "
@@ -2547,11 +2483,11 @@ 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.
 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.
 #, php-format
 msgid ""
 "Search for groups on %%site.name%% by their name, location, or description. "
@@ -2560,25 +2496,28 @@ 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.
 msgid "Group search"
 msgstr "Pesquisa de grupos"
 
-#: actions/groupsearch.php:79 actions/noticesearch.php:117
-#: actions/peoplesearch.php:83
+#. TRANS: Text on page where groups can be searched if no results were found for a query.
+#. TRANS: Text for notice search results is the query had no results.
+#. TRANS: Message on the "People search" page where a query has no results.
 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).
+#, 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).
 #, php-format
 msgid ""
 "Why not [register an account](%%action.register%%) and [create the group](%%"
@@ -2588,195 +2527,174 @@ msgstr ""
 "newgroup%%) você mesmo!"
 
 #. TRANS: Client error displayed when trying to unblock a user from a group without being an administrator for the group.
-#: actions/groupunblock.php:94
 msgid "Only an admin can unblock group members."
 msgstr "Só um gestor pode desbloquear membros de um grupo."
 
 #. TRANS: Client error displayed when trying to unblock a non-blocked user from a group.
-#: actions/groupunblock.php:99
 msgid "User is not blocked from group."
 msgstr "Acesso do utilizador ao grupo não foi bloqueado."
 
 #. TRANS: Server error displayed when unblocking a user from a group fails because of an unknown error.
-#: actions/groupunblock.php:131 actions/unblock.php:86
+#. TRANS: Server error displayed when removing a user block.
 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.
 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
+#, 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 instant messaging [instant messages]"
+"(%%doc.im%%). Configure your addresses 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 IM settings if IM is not enabled on the site.
 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
-msgid "IM address"
-msgstr "Endereço IM"
-
-#: actions/imsettings.php:113
-msgid "Current confirmed Jabber/GTalk address."
-msgstr "Endereço do Jabber/GTalk já confirmado."
+#, fuzzy, php-format
+msgid "Current confirmed %s address."
+msgstr "Endereço de correio 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
+#, 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 %s 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: 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
+msgid "IM address"
+msgstr "Endereço IM"
+
 #, 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."
+msgid "%s screenname."
 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
-msgid "IM preferences"
-msgstr "Preferências de MI"
+#. TRANS: Header for IM preferences form.
+msgid "IM Preferences"
+msgstr "Preferências IM"
 
 #. TRANS: Checkbox label in IM preferences form.
-#: actions/imsettings.php:163
-msgid "Send me notices through Jabber/GTalk."
-msgstr "Enviar-me notas via Jabber/GTalk."
+msgid "Send me notices"
+msgstr "Enviar-me avisos"
 
 #. TRANS: Checkbox label in IM preferences form.
-#: actions/imsettings.php:169
-msgid "Post a notice when my Jabber/GTalk status changes."
+#, fuzzy
+msgid "Post a notice when my 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."
+#, fuzzy
+msgid "Send me replies 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."
-msgstr "Publicar um MicroID para o meu endereço Jabber/GTalk."
+#, fuzzy
+msgid "Publish a MicroID"
+msgstr "Publicar um MicroID para o meu endereço electrónico."
+
+#. TRANS: Server error thrown on database error updating IM preferences.
+#, fuzzy
+msgid "Couldn't update IM preferences."
+msgstr "Não foi possível actualizar o utilizador."
 
 #. TRANS: Confirmation message for successful IM preferences save.
-#: actions/imsettings.php:290 actions/othersettings.php:190
+#. TRANS: Confirmation message after saving preferences.
 msgid "Preferences saved."
 msgstr "Preferências gravadas."
 
 #. TRANS: Message given saving IM address without having provided one.
-#: actions/imsettings.php:312
-msgid "No Jabber ID."
-msgstr "Não introduziu o Jabber ID."
+#, fuzzy
+msgid "No screenname."
+msgstr "Nome de utilizador não definido."
+
+msgid "No transport."
+msgstr "Sem transporte."
 
 #. TRANS: Message given saving IM address that cannot be normalised.
-#: actions/imsettings.php:320
-msgid "Cannot normalize that Jabber ID"
+#, fuzzy
+msgid "Cannot normalize that screenname"
 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"
-msgstr "Jabber ID não é válido"
-
-#. TRANS: Message given saving IM address that is already set.
-#: actions/imsettings.php:329
-msgid "That is already your Jabber ID."
-msgstr "Esse já é o seu Jabber ID."
+#, fuzzy
+msgid "Not a valid screenname"
+msgstr "Utilizador não é válido."
 
 #. TRANS: Message given saving IM address that is already set for another user.
-#: actions/imsettings.php:333
-msgid "Jabber ID already belongs to another user."
+#, fuzzy
+msgid "Screenname 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
-#, php-format
-msgid ""
-"A confirmation code was sent to the IM address you added. You must approve %"
-"s for sending messages to you."
+#, fuzzy
+msgid "A confirmation code was sent to the IM address you added."
 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
 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."
+#, fuzzy
+msgid "Couldn't delete 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
 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: registered for the active user.
-#: actions/imsettings.php:427
-msgid "That is not your Jabber ID."
-msgstr "Esse não é o seu Jabber ID."
+#, fuzzy
+msgid "That is not your screenname."
+msgstr "Esse número de telefone não é o seu."
+
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#, fuzzy
+msgid "Couldn't update user im prefs."
+msgstr "Não foi possível actualizar o registo do utilizador."
 
-#. 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.
 msgid "The IM address was removed."
 msgstr "O endereço do mensageiro instantâneo foi removido."
 
-#: actions/inbox.php:59
+#. 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.
 #, 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.
 #, php-format
 msgid "Inbox for %s"
 msgstr "Caixa de entrada de %s"
 
-#: actions/inbox.php:115
+#. TRANS: Instructions for user inbox page.
 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."
 
 #. TRANS: Client error displayed when trying to sent invites while they have been disabled.
-#: actions/invite.php:40
 msgid "Invites have been disabled."
 msgstr "Convites foram desabilitados."
 
 #. TRANS: Client error displayed when trying to sent invites while not logged in.
 #. TRANS: %s is the StatusNet site name.
-#: actions/invite.php:44
 #, php-format
 msgid "You must be logged in to invite other users to use %s."
 msgstr ""
@@ -2785,19 +2703,15 @@ msgstr ""
 
 #. 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:77
 #, fuzzy, php-format
 msgid "Invalid email address: %s."
 msgstr "Endereço electrónico inválido: %s"
 
 #. TRANS: Page title when invitations have been sent.
-#: actions/invite.php:116
-#, fuzzy
 msgid "Invitations sent"
 msgstr "Convite(s) enviado(s)"
 
 #. TRANS: Page title when inviting potential users.
-#: actions/invite.php:119
 msgid "Invite new users"
 msgstr "Convidar novos utilizadores"
 
@@ -2805,17 +2719,14 @@ msgstr "Convidar novos utilizadores"
 #. 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:139
-#, 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:"
+msgstr[1] "Já subscreves-te a 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:145 actions/invite.php:159
-#, fuzzy, php-format
+#, php-format
 msgctxt "INVITE"
 msgid "%1$s (%2$s)"
 msgstr "%1$s (%2$s)"
@@ -2823,7 +2734,6 @@ msgstr "%1$s (%2$s)"
 #. 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:153
 #, fuzzy
 msgid "This person is already a user and you were automatically subscribed:"
 msgid_plural ""
@@ -2836,7 +2746,6 @@ msgstr[1] ""
 #. 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:167
 #, fuzzy
 msgid "Invitation sent to the following person:"
 msgid_plural "Invitations sent to the following people:"
@@ -2845,7 +2754,6 @@ 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:177
 msgid ""
 "You will be notified when your invitees accept the invitation and register "
 "on the site. Thanks for growing the community!"
@@ -2854,34 +2762,30 @@ msgstr ""
 "registarem no site. Obrigado por aumentar a comunidade!"
 
 #. TRANS: Form instructions.
-#: actions/invite.php:190
 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."
 
 #. TRANS: Field label for a list of e-mail addresses.
-#: actions/invite.php:217
 msgid "Email addresses"
 msgstr "Endereços de correio electrónico"
 
 #. TRANS: Tooltip for field label for a list of e-mail addresses.
-#: actions/invite.php:220
-msgid "Addresses of friends to invite (one per line)"
+#, fuzzy
+msgid "Addresses of friends to invite (one per line)."
 msgstr "Endereços dos amigos a convidar (um por linha)"
 
 #. TRANS: Field label for a personal message to send to invitees.
-#: actions/invite.php:224
 msgid "Personal message"
 msgstr "Mensagem pessoal"
 
 #. TRANS: Tooltip for field label for a personal message to send to invitees.
-#: actions/invite.php:227
 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:231
+#. TRANS: Button text for sending notice.
 msgctxt "BUTTON"
 msgid "Send"
 msgstr "Enviar"
@@ -2889,7 +2793,6 @@ msgstr "Enviar"
 #. 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:263
 #, 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"
@@ -2899,7 +2802,6 @@ msgstr "%1$s convidou-o a juntar-se a ele no %2$s"
 #. 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:270
 #, php-format
 msgid ""
 "%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2955,169 +2857,178 @@ msgstr ""
 "\n"
 "Sinceramente, %2$s\n"
 
-#: actions/joingroup.php:60
+#. TRANS: Client error displayed when trying to join a group while not logged in.
 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:141
+#. TRANS: Title for join group page after joining.
 #, 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.
 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
 msgid "You are not a member of that group."
 msgstr "Não é um membro desse grupo."
 
-#: actions/leavegroup.php:137
+#. TRANS: Title for leave group page after leaving.
 #, 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
 msgctxt "TITLE"
 msgid "License"
-msgstr ""
+msgstr "Licença"
 
-#: actions/licenseadminpanel.php:67
+#. TRANS: Form instructions for the site license admin panel.
 msgid "License for this StatusNet site"
 msgstr ""
 
-#: actions/licenseadminpanel.php:139
+#. TRANS: Client error displayed selecting an invalid license in the license admin panel.
 msgid "Invalid license selection."
 msgstr ""
 
-#: actions/licenseadminpanel.php:149
+#. TRANS: Client error displayed when not specifying an owner for the all rights reserved license in the license admin panel.
 msgid ""
 "You must specify the owner of the content when using the All Rights Reserved "
 "license."
 msgstr ""
 
-#: actions/licenseadminpanel.php:156
+#. TRANS: Client error displayed selecting a too long license title in the license admin panel.
 #, 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
+#. TRANS: Client error displayed specifying an invalid license URL in the license admin panel.
 msgid "Invalid license URL."
 msgstr ""
 
-#: actions/licenseadminpanel.php:171
+#. TRANS: Client error displayed specifying an invalid license image URL in the license admin panel.
 msgid "Invalid license image URL."
 msgstr ""
 
-#: actions/licenseadminpanel.php:179
+#. TRANS: Client error displayed specifying an invalid license URL in the license admin panel.
 msgid "License URL must be blank or a valid URL."
 msgstr ""
 
-#: actions/licenseadminpanel.php:187
+#. TRANS: Client error displayed specifying an invalid license image URL in the license admin panel.
 msgid "License image must be blank or valid URL."
 msgstr ""
 
-#: actions/licenseadminpanel.php:239
+#. TRANS: Form legend in the license admin panel.
 msgid "License selection"
 msgstr ""
 
-#: actions/licenseadminpanel.php:245
+#. TRANS: License option in the license admin panel.
 msgid "Private"
 msgstr "Privado"
 
-#: actions/licenseadminpanel.php:246
+#. TRANS: License option in the license admin panel.
 msgid "All Rights Reserved"
-msgstr ""
+msgstr "Todos os Direitos Reservados"
 
-#: actions/licenseadminpanel.php:247
+#. TRANS: License option in the license admin panel.
 msgid "Creative Commons"
 msgstr ""
 
-#: actions/licenseadminpanel.php:252
+#. TRANS: Dropdown field label in the license admin panel.
 msgid "Type"
-msgstr ""
+msgstr "Tipo"
 
-#: actions/licenseadminpanel.php:254
-msgid "Select license"
-msgstr ""
+#. TRANS: Dropdown field instructions in the license admin panel.
+msgid "Select a license."
+msgstr "Selecciona uma licença."
 
-#: actions/licenseadminpanel.php:268
+#. TRANS: Form legend in the license admin panel.
 msgid "License details"
-msgstr ""
+msgstr "Detalhes da licença"
 
-#: actions/licenseadminpanel.php:274
+#. TRANS: Field label in the license admin panel.
 msgid "Owner"
-msgstr ""
+msgstr "Proprietário"
 
-#: actions/licenseadminpanel.php:275
+#. TRANS: Field title in the license admin panel.
 msgid "Name of the owner of the site's content (if applicable)."
 msgstr ""
 
-#: actions/licenseadminpanel.php:283
+#. TRANS: Field label in the license admin panel.
 msgid "License Title"
-msgstr ""
+msgstr "Título da Licença"
 
-#: actions/licenseadminpanel.php:284
+#. TRANS: Field title in the license admin panel.
 msgid "The title of the license."
 msgstr ""
 
-#: actions/licenseadminpanel.php:292
+#. TRANS: Field label in the license admin panel.
 msgid "License URL"
 msgstr ""
 
-#: actions/licenseadminpanel.php:293
+#. TRANS: Field title in the license admin panel.
 msgid "URL for more information about the license."
 msgstr ""
 
-#: actions/licenseadminpanel.php:300
+#. TRANS: Field label in the license admin panel.
 msgid "License Image URL"
 msgstr ""
 
-#: actions/licenseadminpanel.php:301
+#. TRANS: Field title in the license admin panel.
 msgid "URL for an image to display with the license."
 msgstr ""
 
-#: actions/licenseadminpanel.php:319
-msgid "Save license settings"
-msgstr ""
+#. TRANS: Button title in the license admin panel.
+#, fuzzy
+msgid "Save license settings."
+msgstr "Gravar configurações do site"
 
-#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
+#. TRANS: Client error displayed when trying to log in while already logged in.
+#. TRANS: Client error displayed trying to use "one time password login" when already logged in.
 msgid "Already logged in."
 msgstr "Sessão já foi iniciada."
 
-#: actions/login.php:148
+#. TRANS: Form validation error displayed when trying to log in with incorrect credentials.
 msgid "Incorrect username or password."
 msgstr "Nome de utilizador ou senha incorrectos."
 
-#: actions/login.php:154 actions/otp.php:120
+#. TRANS: Server error displayed when during login a server error occurs.
+#. TRANS: Server error displayed when a user object could not be created trying to login using "one time password login".
 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
+#. TRANS: Page title for login page.
 msgid "Login"
 msgstr "Entrar"
 
-#: actions/login.php:249
+#. TRANS: Form legend on login page.
 msgid "Login to site"
 msgstr "Iniciar sessão no site"
 
-#: actions/login.php:258 actions/register.php:491
+#. TRANS: Checkbox label label on login page.
 msgid "Remember me"
 msgstr "Lembrar-me neste computador"
 
-#: actions/login.php:259 actions/register.php:493
+#. TRANS: Checkbox title on login page.
 msgid "Automatically login in the future; not for shared computers!"
 msgstr ""
 "De futuro, iniciar sessão automaticamente. Não usar em computadores "
 "partilhados!"
 
-#: actions/login.php:269
+#. TRANS: Button text for log in on login page.
+msgctxt "BUTTON"
+msgid "Login"
+msgstr "Iniciar sessão"
+
+#. TRANS: Link text for link to "reset password" on login page.
 msgid "Lost or forgotten password?"
 msgstr "Perdeu ou esqueceu-se da senha?"
 
-#: actions/login.php:288
+#. TRANS: Form instructions on login page before being able to change user settings.
 msgid ""
 "For security reasons, please re-enter your user name and password before "
 "changing your settings."
@@ -3125,122 +3036,138 @@ msgstr ""
 "Por razões de segurança, por favor re-introduza o seu nome de utilizador e "
 "senha antes de alterar as configurações."
 
-#: actions/login.php:292
+#. TRANS: Form instructions on login page.
 msgid "Login with your username and password."
 msgstr "Iniciar sessão com um nome de utilizador e senha."
 
-#: actions/login.php:295
+#. TRANS: Form instructions on login page. This message contains Markdown links in the form [Link text](Link).
+#. TRANS: %%action.register%% is a link to the registration page.
 #, php-format
 msgid ""
 "Don't have a username yet? [Register](%%action.register%%) a new account."
 msgstr "Ainda não está registado? [Registe](%%action.register%%) uma conta."
 
-#: actions/makeadmin.php:92
+#. TRANS: Client error displayed when trying to make another user admin on the Make Admin page while not an admin.
 msgid "Only an admin can make another user an admin."
 msgstr "Só um gestor pode tornar outro utilizador num gestor."
 
-#: actions/makeadmin.php:96
+#. TRANS: Client error displayed when trying to make another user admin on the Make Admin page who already is admin.
+#. TRANS: %1$s is the user that is already admin, %2$s is the group user is already admin for.
 #, php-format
 msgid "%1$s is already an admin for group \"%2$s\"."
 msgstr "%1$s já é um administrador do grupo \"%2$s\"."
 
-#: actions/makeadmin.php:133
+#. TRANS: Server error displayed when trying to make another user admin on the Make Admin page fails
+#. TRANS: because the group membership record could not be gotten.
+#. TRANS: %1$s is the to be admin user, %2$s is the group user should be admin for.
 #, php-format
 msgid "Can't get membership record for %1$s in group %2$s."
 msgstr "Não existe registo de %1$s ter entrado no grupo %2$s."
 
-#: actions/makeadmin.php:146
+#. TRANS: Server error displayed when trying to make another user admin on the Make Admin page fails
+#. TRANS: because the group adminship record coud not be saved properly.
+#. TRANS: %1$s is the to be admin user, %2$s is the group user is already admin for.
 #, php-format
 msgid "Can't make %1$s an admin for group %2$s."
 msgstr "Não é possível tornar %1$s administrador do grupo %2$s."
 
-#: actions/microsummary.php:69
+#. TRANS: Client error displayed trying to make a micro summary without providing a status.
 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
 #, fuzzy
 msgid "New application"
-msgstr "Aplicação Nova"
+msgstr "Nova aplicação"
 
 #. TRANS: Client error displayed trying to add a new application while not logged in.
-#: actions/newapplication.php:65
 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:147
+#. TRANS: Form instructions for registering a new application.
 msgid "Use this form to register a new application."
 msgstr "Use este formulário para registar uma nova aplicação."
 
-#: actions/newapplication.php:184
+#. TRANS: Validation error shown when not providing a source URL in the "New application" form.
 msgid "Source URL is required."
 msgstr "É necessária a URL de origem."
 
-#: actions/newapplication.php:266 actions/newapplication.php:275
+#. TRANS: Server error displayed when an application could not be registered in the database through the "New application" form.
 msgid "Could not create application."
 msgstr "Não foi possível criar a aplicação."
 
+#, fuzzy
+msgid "Invalid image."
+msgstr "Tamanho inválido."
+
 #. TRANS: Title for form to create a group.
-#: actions/newgroup.php:53
 msgid "New group"
 msgstr "Grupo novo"
 
+#. TRANS: Client exception thrown when a user tries to create a group while banned.
+#, 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:110
 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:234
+#. TRANS: Page title for new direct message page.
+#. TRANS: Page title on page for sending a direct message.
 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:164 lib/command.php:501
-msgid "You can't send a message to this user."
+#. TRANS: Client error displayed trying to send a direct message to a user while sender and
+#. TRANS: receiver are not subscribed to each other.
+#, fuzzy
+msgid "You cannot send a message to this user."
 msgstr "Não pode enviar uma mensagem a este utilizador."
 
+#. TRANS: Form validator error displayed trying to send a direct message without content.
+#. TRANS: Client error displayed trying to send a notice without content.
 #. 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:140 lib/command.php:478
-#: lib/command.php:581
 msgid "No content!"
 msgstr "Sem conteúdo!"
 
-#: actions/newmessage.php:161
+#. TRANS: Form validation error displayed trying to send a direct message without specifying a recipient.
 msgid "No recipient specified."
 msgstr "Não especificou um destinatário."
 
+#. TRANS: Client error displayed trying to send a direct message to self.
 #. TRANS: Error text shown when trying to send a direct message to self.
-#: 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:184
+#. TRANS: Page title after sending a direct message.
 msgid "Message sent"
 msgstr "Mensagem enviada"
 
+#. TRANS: Confirmation text after sending a direct message.
+#. TRANS: %s is the direct message recipient.
 #. TRANS: Message given have sent a direct message to another user.
 #. TRANS: %s is the name of the other user.
-#: 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:213 actions/newnotice.php:264
+#. TRANS: Page title after an AJAX error occurred on the "send direct message" page.
+#. TRANS: Page title after an AJAX error occurs on the send notice page.
 msgid "Ajax Error"
 msgstr "Erro do Ajax"
 
-#: actions/newnotice.php:69
+#. TRANS: Page title for sending a new notice.
 msgid "New notice"
 msgstr "Nota nova"
 
-#: actions/newnotice.php:230
+#. TRANS: Page title after sending a notice.
 msgid "Notice posted"
 msgstr "Nota publicada"
 
-#: actions/noticesearch.php:68
+#. TRANS: Instructions for Notice search page.
+#. TRANS: %%site.name%% is the name of the StatusNet site.
 #, php-format
 msgid ""
 "Search for notices on %%site.name%% by their contents. Separate search terms "
@@ -3249,16 +3176,18 @@ msgstr ""
 "Procure notas no %%site.name%%, pesquisando o seu conteúdo. Os termos de "
 "busca devem ter 3 ou mais caracteres e estar separados por espaços."
 
-#: actions/noticesearch.php:78
+#. TRANS: Title of the page where users can search for notices.
 msgid "Text search"
 msgstr "Pesquisa de texto"
 
-#: actions/noticesearch.php:91
+#. TRANS: Test in RSS notice search.
+#. TRANS: %1$s is the query, %2$s is the StatusNet site name.
 #, php-format
 msgid "Search results for \"%1$s\" on %2$s"
 msgstr "Resultados da pesquisa de \"%1$s\" em %2$s"
 
-#: actions/noticesearch.php:121
+#. TRANS: Text for logged in users making a query for notices without results.
+#. TRANS: This message contains a Markdown link.
 #, php-format
 msgid ""
 "Be the first to [post on this topic](%%%%action.newnotice%%%%?"
@@ -3267,7 +3196,8 @@ msgstr ""
 "Seja o primeiro a [publicar neste tópico](%%action.newnotice%%?"
 "status_textarea=%s)!"
 
-#: actions/noticesearch.php:124
+#. TRANS: Text for not logged in users making a query for notices without results.
+#. TRANS: This message contains Markdown links.
 #, php-format
 msgid ""
 "Why not [register an account](%%%%action.register%%%%) and be the first to "
@@ -3276,17 +3206,18 @@ msgstr ""
 "Podia [registar uma conta](%%action.register%%) e ser a primeira pessoa a "
 "[publicar neste tópico](%%action.newnotice%%?status_textarea=%s)!"
 
-#: actions/noticesearchrss.php:96
+#. TRANS: RSS notice search feed title. %s is the query.
 #, php-format
 msgid "Updates with \"%s\""
 msgstr "Actualizações com \"%s\""
 
-#: actions/noticesearchrss.php:98
+#. TRANS: RSS notice search feed description.
+#. TRANS: %1$s is the query, %2$s is the StatusNet site name.
 #, php-format
-msgid "Updates matching search term \"%1$s\" on %2$s!"
-msgstr "Actualizações que contêm o termo \"%1$s\" em %2$s!"
+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
+#. TRANS: Client error displayed trying to nudge a user that cannot be nudged.
 #, fuzzy
 msgid ""
 "This user doesn't allow nudges or hasn't confirmed or set their email "
@@ -3295,60 +3226,51 @@ msgstr ""
 "Este utilizador não aceita toques ou ainda não confirmou ou forneceu um "
 "correio electrónico."
 
-#: actions/nudge.php:94
+#. TRANS: Page title after sending a nudge.
 msgid "Nudge sent"
 msgstr "Toque enviado"
 
-#: actions/nudge.php:97
+#. TRANS: Confirmation text after sending a nudge.
 msgid "Nudge sent!"
 msgstr "Toque enviado!"
 
 #. 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."
 
 #. TRANS: Page title for OAuth applications
-#: actions/oauthappssettings.php:76
 msgid "OAuth applications"
 msgstr "Aplicações OAuth"
 
 #. TRANS: Page instructions for OAuth applications
-#: actions/oauthappssettings.php:88
 msgid "Applications you have registered"
 msgstr "Aplicações que registou"
 
 #. 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."
 
 #. 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 "The following connections exist for your account."
 msgstr ""
 
 #. 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."
 
 #. 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
+#, php-format
 msgid "Unable to revoke access for application: %s."
-msgstr "Não foi possível retirar acesso da aplicação: %s"
+msgstr "Não foi possível retirar acesso da aplicação: %s."
 
 #. 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 "
@@ -3356,482 +3278,416 @@ msgid ""
 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."
 
 #. 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 ""
 
-#: actions/oembed.php:80 actions/shownotice.php:100
+#. TRANS: Server error displayed in oEmbed action when path not found.
+#. TRANS: %s is a path.
+#, fuzzy, php-format
+msgid "\"%s\" not found."
+msgstr "Método da API não encontrado."
+
+#. TRANS: Server error displayed in oEmbed action when notice not found.
+#. TRANS: %s is a notice.
+#, fuzzy, php-format
+msgid "Notice %s not found."
+msgstr "Método da API não encontrado."
+
+#. TRANS: Server error displayed in oEmbed action when notice has not profile.
 msgid "Notice has no profile."
 msgstr "Nota não tem perfil."
 
-#: actions/oembed.php:83 actions/shownotice.php:172
+#. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date.
 #, php-format
 msgid "%1$s's status on %2$s"
 msgstr "Estado de %1$s em %2$s"
 
+#. TRANS: Server error displayed in oEmbed action when attachment not found.
+#. TRANS: %d is an attachment ID.
+#, fuzzy, php-format
+msgid "Attachment %s not found."
+msgstr "Destinatário não encontrado."
+
+#. TRANS: Server error displayed in oEmbed request when a path is not supported.
+#. TRANS: %s is a path.
+#, php-format
+msgid "\"%s\" not supported for oembed requests."
+msgstr ""
+
 #. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
-#: 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:172
 #, php-format
 msgid "Only %s URLs over plain HTTP please."
 msgstr "Só URLs %s sobre HTTP simples, por favor."
 
+#. TRANS: Server error displayed in oEmbed action when request specifies an unsupported data format.
 #. TRANS: Client error on an API request with an unsupported data format.
-#: actions/oembed.php:193 actions/oembed.php:212 lib/apiaction.php:1206
-#: lib/apiaction.php:1233 lib/apiaction.php:1362
 msgid "Not a supported data format."
 msgstr "Formato de dados não suportado."
 
-#: actions/opensearch.php:64
+#. TRANS: ShortName in the OpenSearch interface when trying to find users.
 msgid "People Search"
 msgstr "Pesquisa de Pessoas"
 
-#: actions/opensearch.php:67
+#. TRANS: ShortName in the OpenSearch interface when trying to find notices.
 msgid "Notice Search"
 msgstr "Pesquisa de Notas"
 
-#: 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."
-
-#. TRANS: Used as a suffix for free URL shorteners in a dropdown list in the tab "Other" of a
-#. TRANS: user's profile settings. This message has one space at the beginning. Use your
-#. TRANS: language's word separator here if it has one (most likely a single space).
-#: actions/othersettings.php:111
-msgid " (free service)"
-msgstr " (serviço gratuito)"
-
-#. TRANS: Label for dropdown with URL shortener services.
-#: actions/othersettings.php:120
-msgid "Shorten URLs with"
-msgstr "Encurtar URLs com"
-
-#. TRANS: Tooltip for for dropdown with URL shortener services.
-#: actions/othersettings.php:122
-msgid "Automatic shortening service to use."
-msgstr "Serviço de encurtamento que será usado automaticamente"
-
-#. TRANS: Label for checkbox.
-#: actions/othersettings.php:128
-msgid "View profile designs"
-msgstr "Ver estilos para o perfil"
-
-#. TRANS: Tooltip for checkbox.
-#: actions/othersettings.php:130
-msgid "Show or hide profile designs."
-msgstr "Mostrar ou esconder estilos para o perfil."
-
-#. TRANS: Form validation error for form "Other settings" in user profile.
-#: actions/othersettings.php:162
-#, 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
+#. TRANS: Client error displayed trying to use "one time password login" without specifying a user.
 msgid "No user ID specified."
 msgstr "Não foi especificado um ID de utilizador."
 
-#: actions/otp.php:83
+#. TRANS: Client error displayed trying to use "one time password login" without specifying a login token.
 msgid "No login token specified."
 msgstr "Chave de entrada não foi especificada."
 
-#: actions/otp.php:90
+#. TRANS: Client error displayed trying to use "one time password login" without requesting a login token.
 msgid "No login token requested."
 msgstr "Chave de entrada não foi pedida."
 
-#: actions/otp.php:95
+#. TRANS: Client error displayed trying to use "one time password login" while specifying an invalid login token.
 msgid "Invalid login token specified."
 msgstr "Chave de entrada especificada é inválida."
 
-#: actions/otp.php:104
+#. TRANS: Client error displayed trying to use "one time password login" while specifying an expired login token.
 msgid "Login token expired."
 msgstr "Chave de entrada expirou."
 
-#: actions/outbox.php:58
+#. TRANS: Title for outbox for any but the fist page.
+#. TRANS: %1$s is the user nickname, %2$d is the page number.
 #, php-format
 msgid "Outbox for %1$s - page %2$d"
 msgstr "Caixa de saída de %s - página %2$d"
 
-#: actions/outbox.php:61
+#. TRANS: Title for first page of outbox.
 #, php-format
 msgid "Outbox for %s"
 msgstr "Caixa de saída de %s"
 
-#: actions/outbox.php:116
+#. TRANS: Instructions for outbox.
 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."
 
-#: actions/passwordsettings.php:58
+#. TRANS: Title for page where to change password.
+#, fuzzy
+msgctxt "TITLE"
 msgid "Change password"
 msgstr "Modificar senha"
 
-#: actions/passwordsettings.php:69
+#. TRANS: Instructions for page where to change password.
 msgid "Change your password."
 msgstr "Modificar a sua senha."
 
-#: actions/passwordsettings.php:96 actions/recoverpassword.php:231
+#. TRANS: Fieldset legend on page where to change password.
+#. TRANS: Fieldset legend for password reset form.
 msgid "Password change"
 msgstr "Mudança da senha"
 
-#: actions/passwordsettings.php:104
+#. TRANS: Field label on page where to change password.
 msgid "Old password"
 msgstr "Antiga"
 
-#: actions/passwordsettings.php:108 actions/recoverpassword.php:235
+#. TRANS: Field label on page where to change password.
+#. TRANS: Field label for password reset form.
 msgid "New password"
 msgstr "Nova"
 
-#: actions/passwordsettings.php:109
-msgid "6 or more characters"
-msgstr "6 ou mais caracteres"
+#. TRANS: Field title on page where to change password.
+msgid "6 or more characters."
+msgstr "6 ou mais caracteres."
 
-#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:441
+#. TRANS: Field label on page where to change password. In this field the new password should be typed a second time.
+#, fuzzy
+msgctxt "LABEL"
 msgid "Confirm"
 msgstr "Confirmação"
 
-#: actions/passwordsettings.php:113 actions/recoverpassword.php:240
-msgid "Same as password above"
-msgstr "Repita a senha nova"
+#. TRANS: Field title on page where to change password.
+#. TRANS: Ttile for field label for password reset form where the password has to be typed again.
+msgid "Same as password above."
+msgstr "Repita a nova senha."
 
-#: actions/passwordsettings.php:117
+#. TRANS: Button text on page where to change password.
+#, fuzzy
+msgctxt "BUTTON"
 msgid "Change"
 msgstr "Modificar"
 
-#: actions/passwordsettings.php:154 actions/register.php:238
+#. TRANS: Form validation error on page where to change password.
 msgid "Password must be 6 or more characters."
 msgstr "Senha tem de ter 6 ou mais caracteres."
 
-#: actions/passwordsettings.php:157 actions/register.php:241
 msgid "Passwords don't match."
 msgstr "Senhas não coincidem."
 
-#: actions/passwordsettings.php:165
-msgid "Incorrect old password"
+#. TRANS: Form validation error on page where to change password.
+#, fuzzy
+msgid "Incorrect old password."
 msgstr "Senha antiga incorrecta."
 
-#: actions/passwordsettings.php:181
+#. TRANS: Form validation error on page where to change password.
 msgid "Error saving user; invalid."
 msgstr "Erro ao guardar utilizador; inválido."
 
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
-msgid "Can't save new password."
-msgstr "Não é possível guardar a nova senha."
+#. TRANS: Server error displayed on page where to change password when password change
+#. TRANS: could not be made because of a server error.
+#. TRANS: Reset password form validation error message.
+msgid "Cannot save new password."
+msgstr "Não é possível salvar a nova senha."
 
-#: actions/passwordsettings.php:192 actions/recoverpassword.php:211
+#. TRANS: Form validation notice on page where to change password.
 msgid "Password saved."
 msgstr "Senha gravada."
 
 #. TRANS: Title for Paths admin panel.
 #. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:58 lib/adminpanelaction.php:371
 msgid "Paths"
 msgstr "Localizações"
 
 #. TRANS: Form instructions for Path admin panel.
-#: actions/pathsadminpanel.php:69
 msgid "Path and server settings for this StatusNet site"
 msgstr ""
 
 #. 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."
 
 #. 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."
 
 #. 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."
 
 #. 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."
 
 #. TRANS: Fieldset legend in Paths admin panel.
-#: actions/pathsadminpanel.php:235 actions/siteadminpanel.php:58
 msgid "Site"
 msgstr "Site"
 
 #. 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:242
+#. TRANS: Field title in Paths admin panel.
 msgid "Site's server hostname."
 msgstr "Nome do servidor do site."
 
 #. 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:249
-#, fuzzy
+#. TRANS: Field title in Paths admin panel.
 msgid "Site path."
-msgstr "Localização do site"
+msgstr "Localização do site."
 
 #. TRANS: Field label in Paths admin panel.
-#: actions/pathsadminpanel.php:255
-#, fuzzy
 msgid "Locale directory"
-msgstr "Directório do tema"
+msgstr "Directório local"
 
-#: actions/pathsadminpanel.php:256
+#. TRANS: Field title in Paths admin panel.
 #, fuzzy
 msgid "Directory path to locales."
 msgstr "Localização do directório das línguas"
 
 #. TRANS: Checkbox label in Paths admin panel.
-#: actions/pathsadminpanel.php:263
 msgid "Fancy URLs"
 msgstr "URLs bonitas"
 
-#: actions/pathsadminpanel.php:265
-msgid "Use fancy (more readable and memorable) URLs?"
+#. TRANS: Field title in Paths admin panel.
+#, fuzzy
+msgid "Use fancy URLs (more readable and memorable)?"
 msgstr "Usar URLs bonitas (mais legíveis e memoráveis)"
 
-#: actions/pathsadminpanel.php:272
+#. TRANS: Fieldset legend in Paths admin panel.
+#, fuzzy
+msgctxt "LEGEND"
 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."
+msgstr "Servidor para temas."
 
 #. 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 ""
 
 #. 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"
+msgstr "Localização SSL"
 
 #. TRANS: Tooltip for field label in Paths admin panel.
-#: actions/pathsadminpanel.php:308
 msgid "SSL path to themes (default: /theme/)."
 msgstr ""
 
 #. 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"
 
 #. 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"
 
 #. TRANS: Field label in Paths admin panel.
-#: actions/pathsadminpanel.php:333
 msgid "Avatar server"
 msgstr "Servidor do avatar"
 
 #. 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"
 
 #. TRANS: Tooltip for field label in Paths admin panel.
-#: actions/pathsadminpanel.php:344
-#, fuzzy
 msgid "Web path to avatars."
-msgstr "Falha ao actualizar avatar."
+msgstr "Localização dos avatares na Web."
 
 #. TRANS: Field label in Paths admin panel.
-#: actions/pathsadminpanel.php:351
 msgid "Avatar directory"
 msgstr "Directório do avatar"
 
 #. 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"
 
 #. TRANS: Tooltip for field label in Paths admin panel.
-#: actions/pathsadminpanel.php:372
-#, fuzzy
 msgid "Server for backgrounds."
-msgstr "O tema para o site."
+msgstr "Servidor para os fundos."
 
 #. 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:99
 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."
+msgstr "Servidor para anexos nas páginas SSL."
 
 #. TRANS: Tooltip for field label in Paths admin panel.
-#: actions/pathsadminpanel.php:454
 msgid "Web path to attachments on SSL pages."
 msgstr ""
 
 #. 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"
 
 #. TRANS: Fieldset legend in Paths admin panel.
-#: actions/pathsadminpanel.php:472
+#, fuzzy
+msgctxt "LEGEND"
 msgid "SSL"
 msgstr "SSL"
 
 #. 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"
 
 #. TRANS: Drop down option in Paths admin panel (option for "When to use SSL").
-#: actions/pathsadminpanel.php:479
 msgid "Sometimes"
 msgstr "Às vezes"
 
 #. 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:485
 msgid "Use SSL"
 msgstr "Usar SSL"
 
 #. TRANS: Tooltip for field label in Paths admin panel.
-#: actions/pathsadminpanel.php:487
 #, fuzzy
 msgid "When to use SSL."
 msgstr "Quando usar SSL"
 
 #. 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"
 
 #. TRANS: Button title text to store form data in the Paths admin panel.
-#: actions/pathsadminpanel.php:514
 msgid "Save paths"
 msgstr "Gravar localizações"
 
-#: actions/peoplesearch.php:52
+#. TRANS: Instructions for the "People search" page.
+#. TRANS: %%site.name%% is the name of the StatusNet site.
 #, php-format
 msgid ""
 "Search for people on %%site.name%% by their name, location, or interests. "
@@ -3841,37 +3697,87 @@ msgstr ""
 "interesses. Os termos de busca devem ter 3 ou mais caracteres e estar "
 "separados por espaços."
 
-#: actions/peoplesearch.php:58
+#. TRANS: Title of a page where users can search for other users.
 msgid "People search"
 msgstr "Pesquisa de pessoas"
 
-#: actions/peopletag.php:68
+#. TRANS: Client error displayed when trying to tag a profile with an invalid tag.
+#. TRANS: %s is the invalid tag.
 #, php-format
 msgid "Not a valid people tag: %s."
 msgstr "Categoria de pessoas inválida: %s."
 
-#: actions/peopletag.php:142
+#. TRANS: Page title for users with a certain self-tag.
+#. TRANS: %1$s is the tag, %2$s is the page number.
 #, php-format
 msgid "Users self-tagged with %1$s - page %2$d"
 msgstr "Utilizadores auto-categorizados com %1$s - página %2$d"
 
-#: actions/postnotice.php:95
+#. TRANS: Page title for AJAX form return when a disabling a plugin.
+msgctxt "plugin"
+msgid "Disabled"
+msgstr "Desabilitado"
+
+#. TRANS: Client error displayed when trying to use another method than POST.
+#. TRANS: Do not translate POST.
+#. TRANS: Client error displayed trying to perform any request method other than POST.
+#. TRANS: Do not translate POST.
+msgid "This action only accepts POST requests."
+msgstr "Esta operação só aceita pedidos POST."
+
+#. TRANS: Client error displayed when trying to enable or disable a plugin without access rights.
+#, fuzzy
+msgid "You cannot administer plugins."
+msgstr "Não pode apagar utilizadores."
+
+#. TRANS: Client error displayed when trying to enable or disable a non-existing plugin.
+#, fuzzy
+msgid "No such plugin."
+msgstr "Página não foi encontrada."
+
+#. TRANS: Page title for AJAX form return when enabling a plugin.
+msgctxt "plugin"
+msgid "Enabled"
+msgstr "Habilitado"
+
+#. TRANS: Tab and title for plugins admin panel.
+#, fuzzy
+msgctxt "TITLE"
+msgid "Plugins"
+msgstr "Plugins"
+
+#. TRANS: Instructions at top of plugin admin page.
+msgid ""
+"Additional plugins can be enabled and configured manually. See the <a href="
+"\"http://status.net/wiki/Plugins\">online plugin documentation</a> for more "
+"details."
+msgstr ""
+
+#. TRANS: Admin form section header
+msgid "Default plugins"
+msgstr "Plugins padrão"
+
+#. TRANS: Text displayed on plugin admin page when no plugin are enabled.
+msgid ""
+"All default plugins have been disabled from the site's configuration file."
+msgstr ""
+
+#. TRANS: Client error displayed if the notice posted has too many characters.
 msgid "Invalid notice content."
 msgstr "Conteúdo da nota é inválido."
 
-#: actions/postnotice.php:101
-#, php-format
-msgid "Notice license ‘%1$s’ is not compatible with site license ‘%2$s’."
+#. TRANS: Exception thrown if a notice's license is not compatible with the StatusNet site license.
+#. TRANS: %1$s is the notice license, %2$s is the StatusNet site's license.
+#, fuzzy, php-format
+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."
 
 #. TRANS: Page title for profile settings.
-#: actions/profilesettings.php:61
 msgid "Profile settings"
 msgstr "Configurações do perfil"
 
 #. TRANS: Usage instructions for profile settings.
-#: actions/profilesettings.php:73
 msgid ""
 "You can update your personal profile info here so people know more about you."
 msgstr ""
@@ -3879,33 +3785,24 @@ msgstr ""
 "saibam mais sobre si."
 
 #. TRANS: Profile settings form legend.
-#: actions/profilesettings.php:102
 msgid "Profile information"
 msgstr "Informação do perfil"
 
 #. TRANS: Tooltip for field label in form for profile settings.
-#: actions/profilesettings.php:113
 #, 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"
 
 #. TRANS: Field label in form for profile settings.
-#. TRANS: Label for full group name (dt). Text hidden by default.
-#: actions/profilesettings.php:117 actions/register.php:456
-#: actions/showgroup.php:252 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:152
 msgid "Full name"
 msgstr "Nome completo"
 
 #. TRANS: Field label in form for profile settings.
 #. TRANS: Form input field label.
-#: actions/profilesettings.php:122 actions/register.php:461
-#: lib/applicationeditform.php:236 lib/groupeditform.php:161
 msgid "Homepage"
 msgstr "Página pessoal"
 
 #. TRANS: Tooltip for field label in form for profile settings.
-#: actions/profilesettings.php:125
 #, 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"
@@ -3913,7 +3810,6 @@ msgstr "URL da sua página pessoal, blogue ou perfil noutro site na internet"
 #. 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:133 actions/register.php:472
 #, fuzzy, php-format
 msgid "Describe yourself and your interests in %d character"
 msgid_plural "Describe yourself and your interests in %d characters"
@@ -3921,80 +3817,64 @@ msgstr[0] "Descreva-se e aos seus interesses (máx. 140 caracteres)"
 msgstr[1] "Descreva-se e aos seus interesses (máx. 140 caracteres)"
 
 #. TRANS: Tooltip for field label in form for profile settings.
-#: actions/profilesettings.php:139 actions/register.php:477
 msgid "Describe yourself and your interests"
 msgstr "Descreva-se e aos seus interesses"
 
 #. TRANS: Text area label in form for profile settings where users can provide.
 #. TRANS: their biography.
-#: actions/profilesettings.php:143 actions/register.php:479
 msgid "Bio"
 msgstr "Biografia"
 
 #. TRANS: Field label in form for profile settings.
-#. TRANS: Label for group location (dt). Text hidden by default.
-#: actions/profilesettings.php:149 actions/register.php:484
-#: actions/showgroup.php:262 actions/tagother.php:112
-#: actions/userauthorization.php:166 lib/groupeditform.php:180
-#: lib/userprofile.php:167
 msgid "Location"
 msgstr "Localidade"
 
 #. TRANS: Tooltip for field label in form for profile settings.
-#: actions/profilesettings.php:152 actions/register.php:486
 msgid "Where you are, like \"City, State (or Region), Country\""
 msgstr "Onde está, por ex. \"Cidade, Região, País\""
 
 #. TRANS: Checkbox label in form for profile settings.
-#: actions/profilesettings.php:157
 msgid "Share my current location when posting notices"
 msgstr "Compartilhar a minha localização presente ao publicar notas"
 
 #. TRANS: Field label in form for profile settings.
-#: actions/profilesettings.php:165 actions/tagother.php:149
-#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:212
 msgid "Tags"
 msgstr "Categorias"
 
 #. TRANS: Tooltip for field label in form for profile settings.
-#: actions/profilesettings.php:168
+#, fuzzy
 msgid ""
-"Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated"
+"Tags for yourself (letters, numbers, -, ., and _), comma- or space- "
+"separated."
 msgstr ""
 "Categorias para si (letras, números, -, ., _), separadas por vírgulas ou "
 "espaços"
 
 #. TRANS: Dropdownlist label in form for profile settings.
-#: actions/profilesettings.php:173
 msgid "Language"
 msgstr "Língua"
 
 #. TRANS: Tooltip for dropdown list label in form for profile settings.
-#: actions/profilesettings.php:175
-msgid "Preferred language"
-msgstr "Língua preferida"
+msgid "Preferred language."
+msgstr "Língua preferida."
 
 #. TRANS: Dropdownlist label in form for profile settings.
-#: actions/profilesettings.php:185
 msgid "Timezone"
 msgstr "Fuso horário"
 
 #. TRANS: Tooltip for dropdown list label in form for profile settings.
-#: actions/profilesettings.php:187
 msgid "What timezone are you normally in?"
 msgstr "Em que fuso horário se encontra normalmente?"
 
 #. TRANS: Checkbox label in form for profile settings.
-#: actions/profilesettings.php:193
+#, fuzzy
 msgid ""
-"Automatically subscribe to whoever subscribes to me (best for non-humans)"
+"Automatically subscribe to whoever subscribes to me (best for non-humans)."
 msgstr "Subscrever automaticamente quem me subscreva (óptimo para não-humanos)"
 
 #. 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:262 actions/register.php:229
 #, fuzzy, php-format
 msgid "Bio is too long (maximum %d character)."
 msgid_plural "Bio is too long (maximum %d characters)."
@@ -4002,81 +3882,81 @@ msgstr[0] "Biografia demasiado extensa (máx. %d caracteres)."
 msgstr[1] "Biografia demasiado extensa (máx. %d caracteres)."
 
 #. TRANS: Validation error in form for profile settings.
-#: actions/profilesettings.php:273 actions/siteadminpanel.php:151
 msgid "Timezone not selected."
 msgstr "Fuso horário não foi seleccionado."
 
 #. TRANS: Validation error in form for profile settings.
-#: actions/profilesettings.php:281
 #, fuzzy
 msgid "Language is too long (maximum 50 characters)."
 msgstr "Língua é demasiado extensa (máx. 50 caracteres)."
 
 #. TRANS: Validation error in form for profile settings.
 #. TRANS: %s is an invalid tag.
-#: actions/profilesettings.php:295 actions/tagother.php:178
-#, php-format
-msgid "Invalid tag: \"%s\""
+#. TRANS: Form validation error when entering an invalid tag.
+#. TRANS: %s is the invalid tag.
+#, fuzzy, php-format
+msgid "Invalid tag: \"%s\"."
 msgstr "Categoria inválida: \"%s\""
 
 #. TRANS: Server error thrown when user profile settings could not be updated to
 #. TRANS: automatically subscribe to any subscriber.
-#: actions/profilesettings.php:351
-msgid "Couldn't update user for autosubscribe."
+#, fuzzy
+msgid "Could not update user for autosubscribe."
 msgstr "Não foi possível actualizar o utilizador para subscrição automática."
 
 #. TRANS: Server error thrown when user profile location preference settings could not be updated.
-#: actions/profilesettings.php:409
-msgid "Couldn't save location prefs."
+#, fuzzy
+msgid "Could not save location prefs."
 msgstr "Não foi possível gravar as preferências de localização."
 
-#. TRANS: Server error thrown when user profile settings could not be saved.
-#: actions/profilesettings.php:422
-msgid "Couldn't save profile."
-msgstr "Não foi possível gravar o perfil."
-
 #. TRANS: Server error thrown when user profile settings tags could not be saved.
-#: actions/profilesettings.php:431
-msgid "Couldn't save tags."
+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:440 lib/adminpanelaction.php:138
 msgid "Settings saved."
 msgstr "Configurações gravadas."
 
-#: actions/public.php:83
+#. 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.
+#, fuzzy
+msgid "Restore account"
+msgstr "Criar uma conta"
+
+#. TRANS: Client error displayed when requesting a public timeline page beyond the page limit.
+#. TRANS: %s is the page limit.
 #, php-format
 msgid "Beyond the page limit (%s)."
 msgstr "Além do limite de página (%s)."
 
-#: actions/public.php:92
+#. TRANS: Server error displayed when a public timeline cannot be retrieved.
 msgid "Could not retrieve public stream."
 msgstr "Não foi possível importar as notas públicas."
 
-#: actions/public.php:130
+#. TRANS: Title for all public timeline pages but the first.
+#. TRANS: %d is the page number.
 #, php-format
 msgid "Public timeline, page %d"
 msgstr "Notas públicas, página %d"
 
-#: actions/public.php:132 lib/publicgroupnav.php:79
+#. TRANS: Title for the first public timeline page.
 msgid "Public timeline"
 msgstr "Notas públicas"
 
-#: actions/public.php:160
+#. TRANS: Link description for public timeline feed.
 msgid "Public Stream Feed (RSS 1.0)"
 msgstr "Fonte de Notas Públicas (RSS 1.0)"
 
-#: actions/public.php:164
+#. TRANS: Link description for public timeline feed.
 msgid "Public Stream Feed (RSS 2.0)"
 msgstr "Fonte de Notas Públicas (RSS 2.0)"
 
-#: actions/public.php:168
+#. TRANS: Link description for public timeline feed.
 msgid "Public Stream Feed (Atom)"
 msgstr "Fonte de Notas Públicas (Atom)"
 
-#: actions/public.php:188
+#. TRANS: Text displayed for public feed when there are no public notices.
 #, php-format
 msgid ""
 "This is the public timeline for %%site.name%% but no one has posted anything "
@@ -4085,11 +3965,11 @@ msgstr ""
 "Estas são as notas públicas do site %%site.name%% mas ninguém publicou nada "
 "ainda."
 
-#: actions/public.php:191
+#. TRANS: Additional text displayed for public feed when there are no public notices for a logged in user.
 msgid "Be the first to post!"
 msgstr "Seja a primeira pessoa a publicar!"
 
-#: actions/public.php:195
+#. TRANS: Additional text displayed for public feed when there are no public notices for a not logged in user.
 #, php-format
 msgid ""
 "Why not [register an account](%%action.register%%) and be the first to post!"
@@ -4097,7 +3977,8 @@ msgstr ""
 "Podia [registar uma conta](%%action.register%%) e ser a primeira pessoa a "
 "publicar!"
 
-#: actions/public.php:242
+#. TRANS: Message for not logged in users at an invite-only site trying to view the public feed of notices.
+#. TRANS: This message contains Markdown links. Please mind the formatting.
 #, php-format
 msgid ""
 "This is %%site.name%%, a [micro-blogging](http://en.wikipedia.org/wiki/Micro-"
@@ -4110,7 +3991,8 @@ msgstr ""
 "[StatusNet](http://status.net/). [Registe-se agora](%%action.register%%) "
 "para partilhar notas sobre si, família e amigos! ([Saber mais](%%doc.help%%))"
 
-#: actions/public.php:247
+#. TRANS: Message for not logged in users at a closed site trying to view the public feed of notices.
+#. TRANS: This message contains Markdown links. Please mind the formatting.
 #, php-format
 msgid ""
 "This is %%site.name%%, a [micro-blogging](http://en.wikipedia.org/wiki/Micro-"
@@ -4121,14 +4003,17 @@ msgstr ""
 "wikipedia.org/wiki/Micro-blogging) baseado no programa de Software Livre "
 "[StatusNet](http://status.net/)."
 
+#. TRANS: Public RSS feed description. %s is the StatusNet site name.
+#, fuzzy, php-format
+msgid "%s updates from everyone."
+msgstr "%s actualizações de todos."
+
 #. TRANS: Title for public tag cloud.
-#: actions/publictagcloud.php:57
 msgid "Public tag cloud"
 msgstr "Nuvem de categorias pública"
 
 #. 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 "
@@ -4136,14 +4021,12 @@ msgstr "Estas são as categorias recentes mais populares em %s "
 #. 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%%)."
 
 #. 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!"
 
@@ -4152,7 +4035,6 @@ msgstr "Seja a primeira pessoa a publicar uma!"
 #. 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 "
@@ -4161,41 +4043,37 @@ msgstr ""
 "Podia [registar uma conta](%%action.register%%) e ser a primeira pessoa a "
 "publicar uma!"
 
-#: 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.
 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.
 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.
 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.
 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.
 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.
 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.
 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.
 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."
@@ -4203,69 +4081,82 @@ 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. "
+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.
 msgid "Password recovery"
 msgstr "Recuperação da senha"
 
-#: actions/recoverpassword.php:191
+#. TRANS: Field label on password recovery page.
 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.
 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.
 msgid "Recover"
 msgstr "Recuperar"
 
-#: actions/recoverpassword.php:208
+#. TRANS: Button text on password recovery page.
+msgctxt "BUTTON"
+msgid "Recover"
+msgstr "Recuperar"
+
+#. TRANS: Title for password recovery page in password reset mode.
 msgid "Reset password"
 msgstr "Reiniciar senha"
 
-#: actions/recoverpassword.php:209
+#. TRANS: Title for password recovery page in password recover mode.
 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.
 msgid "Password recovery requested"
 msgstr "Solicitada recuperação da senha"
 
-#: actions/recoverpassword.php:213
+#. TRANS: Title for password recovery page in password saved mode.
+msgid "Password saved"
+msgstr "Senha gravada"
+
+#. TRANS: Title for password recovery page when an unknown action has been specified.
 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.
+#, 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: Button text for password reset form.
+#. TRANS: Button text on profile design page to reset all colour settings to default without saving.
+#, fuzzy
+msgctxt "BUTTON"
 msgid "Reset"
 msgstr "Reiniciar"
 
-#: actions/recoverpassword.php:252
+#. TRANS: Form instructions for password recovery form.
 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.
 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.
 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.
 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.
 msgid ""
 "Instructions for recovering your password have been sent to the email "
 "address registered to your account."
@@ -4273,125 +4164,105 @@ 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.
 msgid "Unexpected password reset."
 msgstr "Reinício inesperado da senha."
 
-#: actions/recoverpassword.php:365
+#. TRANS: Reset password form validation error message.
 #, 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.
 msgid "Password and confirmation do not match."
 msgstr "A senha e a confirmação não coincidem."
 
-#: actions/recoverpassword.php:388 actions/register.php:256
+#. TRANS: Server error displayed when something does wrong with the user object during password reset.
 msgid "Error setting user."
 msgstr "Erro ao configurar utilizador."
 
-#: actions/recoverpassword.php:395
+#. TRANS: Success message for user after password reset.
 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:413
+#, fuzzy
+msgid "No id parameter"
+msgstr "Argumento de identificação (ID) em falta."
+
+#, php-format
+msgid "No such file \"%d\""
+msgstr "O ficheiro \"%d\" não foi encontrado."
+
 msgid "Sorry, only invited people can register."
 msgstr "Desculpe, só pessoas convidadas se podem registar."
 
-#: actions/register.php:99
 msgid "Sorry, invalid invitation code."
 msgstr "Desculpe, código de convite inválido."
 
-#: actions/register.php:119
 msgid "Registration successful"
 msgstr "Registo efectuado"
 
-#: actions/register.php:121 actions/register.php:512 lib/logingroupnav.php:85
 msgid "Register"
 msgstr "Registar"
 
-#: actions/register.php:142
 msgid "Registration not allowed."
 msgstr "Registo não é permitido."
 
-#: actions/register.php:209
-msgid "You can't register if you don't agree to the license."
+#, fuzzy
+msgid "You cannot 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:218
 msgid "Email address already exists."
 msgstr "Correio electrónico já existe."
 
-#: actions/register.php:251 actions/register.php:273
 msgid "Invalid username or password."
 msgstr "Nome de utilizador ou senha inválidos."
 
-#: actions/register.php:351
+#, fuzzy
 msgid ""
 "With this form you can create a new account. You can then post notices and "
-"link up to friends and colleagues. "
+"link up to friends and colleagues."
 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:433
-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:438
-msgid "6 or more characters. Required."
-msgstr "6 ou mais caracteres. Obrigatório."
-
-#: actions/register.php:442
-msgid "Same as password above. Required."
-msgstr "Repita a senha acima. Obrigatório."
-
-#. TRANS: Link description in user account settings menu.
-#: actions/register.php:446 actions/register.php:450
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:127
 msgid "Email"
 msgstr "Correio"
 
-#: actions/register.php:447 actions/register.php:451
-msgid "Used only for updates, announcements, and password recovery"
+#, fuzzy
+msgid "Used only for updates, announcements, and password recovery."
 msgstr "Usado apenas para actualizações, anúncios e recuperação da senha"
 
-#: actions/register.php:458
-msgid "Longer name, preferably your \"real\" name"
+#, fuzzy
+msgid "Longer name, preferably your \"real\" name."
 msgstr "Nome mais longo, de preferência o seu nome \"verdadeiro\""
 
-#: actions/register.php:463
-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"
+#, fuzzy
+msgid "Where you are, like \"City, State (or Region), Country\"."
+msgstr "Onde está, por ex. \"Cidade, Região, País\""
 
-#: actions/register.php:524
 #, 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:534
 #, 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:538
 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:541
 msgid "All rights reserved."
 msgstr "Todos os direitos reservados."
 
 #. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
-#: actions/register.php:546
 #, php-format
 msgid ""
 "My text and files are available under %s except this private data: password, "
@@ -4401,7 +4272,6 @@ msgstr ""
 "estes dados privados: senha, endereço de correio electrónico, endereço de "
 "mensageiro instantâneo, número de telefone."
 
-#: actions/register.php:589
 #, php-format
 msgid ""
 "Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -4434,7 +4304,6 @@ msgstr ""
 "\n"
 "Obrigado por se ter registado e esperamos que se divirta usando este serviço."
 
-#: actions/register.php:613
 msgid ""
 "(You should receive a message by email momentarily, with instructions on how "
 "to confirm your email address.)"
@@ -4442,7 +4311,6 @@ 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
 #, php-format
 msgid ""
 "To subscribe, you can [login](%%action.login%%), or [register](%%action."
@@ -4454,104 +4322,87 @@ msgstr ""
 "microblogues compatível](%%doc.openmublog%%), introduza abaixo a URL do seu "
 "perfil lá."
 
-#: actions/remotesubscribe.php:112
 msgid "Remote subscribe"
 msgstr "Subscrição remota"
 
-#: actions/remotesubscribe.php:124
 msgid "Subscribe to a remote user"
 msgstr "Subscrever um utilizador remoto"
 
-#: actions/remotesubscribe.php:129
 msgid "User nickname"
 msgstr "Nome do utilizador"
 
-#: actions/remotesubscribe.php:130
-msgid "Nickname of the user you want to follow"
+#, fuzzy
+msgid "Nickname of the user you want to follow."
 msgstr "Nome do utilizador que pretende seguir"
 
-#: actions/remotesubscribe.php:133
 msgid "Profile URL"
 msgstr "URL do perfil"
 
-#: actions/remotesubscribe.php:134
-msgid "URL of your profile on another compatible microblogging service"
+#, fuzzy
+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:411
+#. TRANS: Link text for link that will subscribe to a remote profile.
 msgid "Subscribe"
 msgstr "Subscrever"
 
-#: actions/remotesubscribe.php:159
-msgid "Invalid profile URL (bad format)"
+#, fuzzy
+msgid "Invalid profile URL (bad format)."
 msgstr "URL de perfil inválido (formato incorrecto)"
 
-#: actions/remotesubscribe.php:168
 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 "Thats a local profile! Login to subscribe."
+#, 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."
+#, fuzzy
+msgid "Could not get a request token."
 msgstr "Não foi possível obter uma chave de pedido."
 
-#: actions/repeat.php:57
 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
 msgid "No notice specified."
 msgstr "Nota não foi especificada."
 
-#: actions/repeat.php:76
-msgid "You can't repeat your own notice."
+#, fuzzy
+msgid "You cannot repeat your own notice."
 msgstr "Não pode repetir a sua própria nota."
 
-#: actions/repeat.php:90
 msgid "You already repeated that notice."
 msgstr "Já repetiu essa nota."
 
-#: actions/repeat.php:114 lib/noticelist.php:691
 msgid "Repeated"
 msgstr "Repetida"
 
-#: actions/repeat.php:119
 msgid "Repeated!"
 msgstr "Repetida!"
 
-#: actions/replies.php:126 actions/repliesrss.php:68
-#: lib/personalgroupnav.php:108
+#. TRANS: RSS reply feed title. %s is a user nickname.
 #, php-format
 msgid "Replies to %s"
 msgstr "Respostas a %s"
 
-#: actions/replies.php:128
 #, php-format
 msgid "Replies to %1$s, page %2$d"
 msgstr "Respostas a %1$s, página %2$d"
 
-#: actions/replies.php:145
 #, php-format
 msgid "Replies feed for %s (RSS 1.0)"
 msgstr "Fonte de respostas a %s (RSS 1.0)"
 
-#: actions/replies.php:152
 #, php-format
 msgid "Replies feed for %s (RSS 2.0)"
 msgstr "Fonte de respostas a %s (RSS 2.0)"
 
-#: actions/replies.php:159
 #, php-format
 msgid "Replies feed for %s (Atom)"
 msgstr "Fonte de respostas a %s (Atom)"
 
-#: actions/replies.php:199
 #, php-format
 msgid ""
 "This is the timeline showing replies to %1$s but %2$s hasn't received a "
@@ -4559,7 +4410,6 @@ msgid ""
 msgstr ""
 "Estas são as respostas a %1$s, mas ainda nenhuma nota foi endereçada a %2$s."
 
-#: actions/replies.php:204
 #, php-format
 msgid ""
 "You can engage other users in a conversation, subscribe to more people or "
@@ -4568,7 +4418,6 @@ msgstr ""
 "Pode meter conversa com outros utilizadores, subscrever mais pessoas ou "
 "[juntar-se a grupos](%%action.groups%%)."
 
-#: actions/replies.php:206
 #, php-format
 msgid ""
 "You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
@@ -4577,140 +4426,151 @@ msgstr ""
 "Pode tentar [dar um toque em %1$s](../%2$s) ou [endereçar-lhe uma nota](%%%%"
 "action.newnotice%%%%?status_textarea=%3$s)."
 
-#: actions/repliesrss.php:72
+#. TRANS: RSS reply feed description.
+#. TRANS: %1$s is a user nickname, %2$s is the StatusNet site name.
 #, php-format
-msgid "Replies to %1$s on %2$s!"
-msgstr "Respostas a %1$s em %2$s!"
+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.
+#, 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.
+#, 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.
+msgid "No uploaded file."
+msgstr "Nenhum ficheiro carregado."
+
+#. TRANS: Client exception thrown when an uploaded file is larger than set in php.ini.
+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.
+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.
+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.
+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.
+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.
+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.
+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.
+#, fuzzy
+msgid "Not an Atom feed."
+msgstr "Todos os membros"
+
+#. TRANS: Success message when a feed has been restored.
+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.
+msgid "Feed will be restored. Please wait a few minutes for results."
+msgstr ""
+
+#. TRANS: Form instructions for feed restore.
+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.
+#, 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."
 
-#: actions/revokerole.php:82
 msgid "User doesn't have this role."
 msgstr "O utilizador não tem esta função."
 
-#: actions/rsd.php:146 actions/version.php:159
 msgid "StatusNet"
 msgstr "StatusNet"
 
-#: actions/sandbox.php:65 actions/unsandbox.php:65
 msgid "You cannot sandbox users on this site."
 msgstr "Não pode impedir notas públicas neste site."
 
-#: actions/sandbox.php:72
 msgid "User is already sandboxed."
 msgstr "Utilizador já está impedido de criar notas públicas."
 
 #. TRANS: Menu item for site administration
-#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:379
 msgid "Sessions"
 msgstr "Sessões"
 
-#: actions/sessionsadminpanel.php:65
 msgid "Session settings for this StatusNet site"
 msgstr ""
 
-#: actions/sessionsadminpanel.php:175
 msgid "Handle sessions"
 msgstr "Gerir sessões"
 
-#: actions/sessionsadminpanel.php:177
 msgid "Whether to handle sessions ourselves."
 msgstr "Se devemos gerir sessões nós próprios."
 
-#: actions/sessionsadminpanel.php:181
 msgid "Session debugging"
 msgstr "Depuração de sessões"
 
-#: actions/sessionsadminpanel.php:183
 msgid "Turn on debugging output for sessions."
 msgstr "Ligar a impressão de dados de depuração, para sessões."
 
-#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
+#. TRANS: Submit button title.
+msgid "Save"
+msgstr "Gravar"
+
 msgid "Save site settings"
 msgstr "Gravar configurações do site"
 
-#: actions/showapplication.php:82
 msgid "You must be logged in to view an application."
 msgstr "Tem de iniciar uma sessão para ver uma aplicação."
 
-#: actions/showapplication.php:157
 msgid "Application profile"
 msgstr "Perfil da aplicação"
 
-#. TRANS: Form input field label for application icon.
-#: actions/showapplication.php:159 lib/applicationeditform.php:173
-msgid "Icon"
-msgstr "Ícone"
-
-#. TRANS: Form input field label for application name.
-#: actions/showapplication.php:169 actions/version.php:197
-#: lib/applicationeditform.php:190
-msgid "Name"
-msgstr "Nome"
-
-#. TRANS: Form input field label.
-#: actions/showapplication.php:178 lib/applicationeditform.php:227
-msgid "Organization"
-msgstr "Organização"
-
-#. TRANS: Form input field label.
-#: actions/showapplication.php:187 actions/version.php:200
-#: lib/applicationeditform.php:208 lib/groupeditform.php:175
-msgid "Description"
-msgstr "Descrição"
-
-#. TRANS: Header for group statistics on a group page (h2).
-#: actions/showapplication.php:192 actions/showgroup.php:448
-#: lib/profileaction.php:187
-msgid "Statistics"
-msgstr "Estatísticas"
-
-#: actions/showapplication.php:203
 #, php-format
 msgid "Created by %1$s - %2$s access by default - %3$d users"
 msgstr "Criado por %1$s - acesso por omissão %2$s - %3$d utilizadores"
 
-#: actions/showapplication.php:213
 msgid "Application actions"
 msgstr "Operações da aplicação"
 
-#: actions/showapplication.php:236
 msgid "Reset key & secret"
 msgstr "Reiniciar chave e segredo"
 
-#: actions/showapplication.php:252 lib/deletegroupform.php:121
-#: lib/deleteuserform.php:66 lib/noticelist.php:672
+#. TRANS: Title of form for deleting a user.
 msgid "Delete"
 msgstr "Apagar"
 
-#: actions/showapplication.php:261
 msgid "Application info"
 msgstr "Informação da aplicação"
 
-#: actions/showapplication.php:263
-msgid "Consumer key"
-msgstr "Chave do consumidor"
-
-#: actions/showapplication.php:268
-msgid "Consumer secret"
-msgstr "Segredo do consumidor"
-
-#: actions/showapplication.php:273
-msgid "Request token URL"
-msgstr "URL da chave de pedido"
-
-#: actions/showapplication.php:278
-msgid "Access token URL"
-msgstr "URL da chave de acesso"
-
-#: actions/showapplication.php:283
-msgid "Authorize URL"
-msgstr "Autorizar URL"
-
-#: actions/showapplication.php:288
 msgid ""
 "Note: We support HMAC-SHA1 signatures. We do not support the plaintext "
 "signature method."
@@ -4718,36 +4578,36 @@ msgstr ""
 "Nota: Assinaturas HMAC-SHA1 são suportadas. O método de assinatura com texto "
 "simples não é suportado."
 
-#: actions/showapplication.php:309
 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.
 #, 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.
 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.
 #, 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.
 #, 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.
 #, 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.
 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."
@@ -4756,7 +4616,8 @@ 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.
 #, php-format
 msgid ""
 "%s hasn't added any favorite notices yet. Post something interesting they "
@@ -4765,7 +4626,9 @@ 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.
 #, php-format
 msgid ""
 "%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
@@ -4776,101 +4639,66 @@ 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.
 msgid "This is a way to share what you like."
 msgstr "Esta é uma forma de partilhar aquilo de que gosta."
 
 #. TRANS: Page title for first group page. %s is a group name.
-#: actions/showgroup.php:75
 #, php-format
 msgid "%s group"
 msgstr "Grupo %s"
 
 #. 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"
 
-#. TRANS: Group profile header (h2). Text hidden by default.
-#: actions/showgroup.php:220
-msgid "Group profile"
-msgstr "Perfil do grupo"
-
-#. TRANS: Label for group URL (dt). Text hidden by default.
-#: actions/showgroup.php:270 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:180
-msgid "URL"
-msgstr "URL"
-
-#. TRANS: Label for group description or group note (dt). Text hidden by default.
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:197
-msgid "Note"
-msgstr "Anotação"
-
-#. TRANS: Label for group aliases (dt). Text hidden by default.
-#: actions/showgroup.php:293 lib/groupeditform.php:187
-msgid "Aliases"
-msgstr "Nomes alternativos"
-
-#. TRANS: Group actions header (h2). Text hidden by default.
-#: actions/showgroup.php:304
-msgid "Group actions"
-msgstr "Acções do grupo"
-
 #. TRANS: Tooltip for feed link. %s is a group nickname.
-#: actions/showgroup.php:345
 #, php-format
 msgid "Notice feed for %s group (RSS 1.0)"
 msgstr "Fonte de notas do grupo %s (RSS 1.0)"
 
 #. TRANS: Tooltip for feed link. %s is a group nickname.
-#: actions/showgroup.php:352
 #, php-format
 msgid "Notice feed for %s group (RSS 2.0)"
 msgstr "Fonte de notas do grupo %s (RSS 2.0)"
 
 #. TRANS: Tooltip for feed link. %s is a group nickname.
-#: actions/showgroup.php:359
 #, php-format
 msgid "Notice feed for %s group (Atom)"
 msgstr "Fonte de notas do grupo %s (Atom)"
 
 #. TRANS: Tooltip for feed link. %s is a group nickname.
-#: actions/showgroup.php:365
 #, php-format
 msgid "FOAF for %s group"
 msgstr "FOAF do grupo %s"
 
 #. TRANS: Header for mini list of group members on a group page (h2).
-#: actions/showgroup.php:402
 msgid "Members"
 msgstr "Membros"
 
 #. TRANS: Description for mini list of group members on a group page when the group has no members.
-#: actions/showgroup.php:408 lib/profileaction.php:117
-#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
-#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
+#. 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.
 msgid "(None)"
 msgstr "(Nenhum)"
 
 #. TRANS: Link to all group members from mini list of group members if group has more than n members.
-#: actions/showgroup.php:417
 msgid "All members"
 msgstr "Todos os membros"
 
-#. TRANS: Label for creation date in statistics on group page.
-#: actions/showgroup.php:453
-#, fuzzy
+#. TRANS: Header for group statistics on a group page (h2).
+#. TRANS: H2 text for user statistics.
+msgid "Statistics"
+msgstr "Estatísticas"
+
 msgctxt "LABEL"
 msgid "Created"
 msgstr "Criado"
 
 #. TRANS: Label for member count in statistics on group page.
-#: actions/showgroup.php:461
-#, fuzzy
 msgctxt "LABEL"
 msgid "Members"
 msgstr "Membros"
@@ -4879,7 +4707,6 @@ msgstr "Membros"
 #. 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:476
 #, php-format
 msgid ""
 "**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -4898,7 +4725,6 @@ msgstr ""
 #. 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:486
 #, php-format
 msgid ""
 "**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -4912,99 +4738,87 @@ msgstr ""
 "grupo partilham mensagens curtas acerca das suas vidas e interesses. "
 
 #. TRANS: Header for list of group administrators on a group page (h2).
-#: actions/showgroup.php:515
 msgid "Admins"
 msgstr "Gestores"
 
 #. TRANS: Client error displayed requesting a single message that does not exist.
-#: actions/showmessage.php:79
 msgid "No such message."
 msgstr "Mensagem não foi encontrada."
 
 #. TRANS: Client error displayed requesting a single direct message the requesting user was not a party in.
-#: actions/showmessage.php:97
 msgid "Only the sender and recipient may read this message."
 msgstr "Só o remetente e o destinatário podem ler esta mensagem."
 
 #. 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:110
 #, 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:118
 #, php-format
 msgid "Message from %1$s on %2$s"
 msgstr "Mensagem de %1$s a %2$s"
 
-#: actions/shownotice.php:90
 msgid "Notice deleted."
 msgstr "Avatar actualizado."
 
+#, fuzzy
+msgid "Notice"
+msgstr "Notas"
+
 #. 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
+#, php-format
 msgid "%1$s tagged %2$s"
-msgstr "%1$s, página %2$d"
+msgstr "%1$s etiquetado como %2$s"
 
 #. 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
+#. TRANS: %1$s is the username, %2$s is the hash tag, %3$d is the page number.
 #, 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"
 
 #. 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)"
 
 #. 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)"
 
 #. 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:152
 #, php-format
 msgid "Notice feed for %s (Atom)"
 msgstr "Fonte de notas para %s (Atom)"
 
 #. 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"
 
 #. 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."
 
 #. 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 :)"
@@ -5014,7 +4828,6 @@ msgstr ""
 
 #. 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%%%"
@@ -5025,7 +4838,6 @@ msgstr ""
 
 #. 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."
@@ -5041,7 +4853,6 @@ msgstr ""
 
 #. 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."
@@ -5053,222 +4864,177 @@ msgstr ""
 "Software Livre [StatusNet](http://status.net/). "
 
 #. 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"
 
-#: actions/silence.php:65 actions/unsilence.php:65
 msgid "You cannot silence users on this site."
 msgstr "Não pode silenciar utilizadores neste site."
 
-#: actions/silence.php:72
 msgid "User is already silenced."
 msgstr "O utilizador já está silenciado."
 
-#: actions/siteadminpanel.php:69
 msgid "Basic settings for this StatusNet site"
 msgstr "Configurações básicas para este site StatusNet"
 
-#: actions/siteadminpanel.php:133
 msgid "Site name must have non-zero length."
 msgstr "Nome do site não pode ter comprimento zero."
 
-#: actions/siteadminpanel.php:141
 msgid "You must have a valid contact email address."
 msgstr "Tem de ter um endereço válido para o correio electrónico de contacto."
 
-#: actions/siteadminpanel.php:159
 #, php-format
 msgid "Unknown language \"%s\"."
 msgstr "Língua desconhecida \"%s\"."
 
-#: actions/siteadminpanel.php:165
 msgid "Minimum text limit is 0 (unlimited)."
 msgstr "O limite mínimo para o texto é 0 (sem limite)."
 
-#: actions/siteadminpanel.php:171
 msgid "Dupe limit must be one or more seconds."
 msgstr "O limite de duplicados tem de ser um ou mais segundos."
 
-#: actions/siteadminpanel.php:221
 msgid "General"
 msgstr "Geral"
 
-#: actions/siteadminpanel.php:224
 msgid "Site name"
 msgstr "Nome do site"
 
-#: actions/siteadminpanel.php:225
 msgid "The name of your site, like \"Yourcompany Microblog\""
 msgstr "O nome do seu site, por exemplo \"Microblogue NomeDaEmpresa\""
 
-#: actions/siteadminpanel.php:229
 msgid "Brought by"
 msgstr "Disponibilizado por"
 
-#: actions/siteadminpanel.php:230
 msgid "Text used for credits link in footer of each page"
 msgstr "Texto usado para a ligação de atribuição no rodapé de cada página"
 
-#: actions/siteadminpanel.php:234
 msgid "Brought by URL"
 msgstr "URL da atribuição"
 
-#: actions/siteadminpanel.php:235
 msgid "URL used for credits link in footer of each page"
 msgstr "URL usada para a ligação de atribuição no rodapé de cada página"
 
-#: actions/siteadminpanel.php:239
 msgid "Contact email address for your site"
 msgstr "Endereço de correio electrónico de contacto para o site"
 
-#: actions/siteadminpanel.php:245
 msgid "Local"
 msgstr "Local"
 
-#: actions/siteadminpanel.php:256
 msgid "Default timezone"
 msgstr "Fuso horário, por omissão"
 
-#: actions/siteadminpanel.php:257
 msgid "Default timezone for the site; usually UTC."
 msgstr "Fuso horário por omissão, para o site; normalmente, UTC."
 
-#: actions/siteadminpanel.php:262
 msgid "Default language"
 msgstr "Língua, por omissão"
 
-#: actions/siteadminpanel.php:263
 msgid "Site language when autodetection from browser settings is not available"
 msgstr ""
 "Língua do site quando a sua detecção na configuração do browser não é "
 "possível"
 
-#: actions/siteadminpanel.php:271
 msgid "Limits"
 msgstr "Limites"
 
-#: actions/siteadminpanel.php:274
 msgid "Text limit"
 msgstr "Limite de texto"
 
-#: actions/siteadminpanel.php:274
 msgid "Maximum number of characters for notices."
 msgstr "Número máximo de caracteres nas notas."
 
-#: actions/siteadminpanel.php:278
 msgid "Dupe limit"
 msgstr "Limite de duplicações"
 
-#: actions/siteadminpanel.php:278
 msgid "How long users must wait (in seconds) to post the same thing again."
 msgstr ""
 "Quanto tempo os utilizadores terão de esperar (em segundos) para publicar a "
 "mesma coisa outra vez."
 
 #. TRANS: Page title for site-wide notice tab in admin panel.
-#: actions/sitenoticeadminpanel.php:55
 msgid "Site Notice"
 msgstr "Aviso do Site"
 
 #. TRANS: Instructions for site-wide notice tab in admin panel.
-#: actions/sitenoticeadminpanel.php:66
 msgid "Edit site-wide message"
 msgstr "Editar mensagem do site"
 
 #. 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."
 
 #. 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"
 
 #. 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)"
 
 #. TRANS: Title for button to save site notice in admin panel.
-#: actions/sitenoticeadminpanel.php:201
-msgid "Save site notice"
+#, fuzzy
+msgid "Save site notice."
 msgstr "Gravar aviso do site"
 
 #. TRANS: Title for SMS settings.
-#: actions/smssettings.php:59
 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
 #, 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
 msgid "SMS is not available."
 msgstr "SMS não está disponível."
 
 #. TRANS: Form legend for SMS settings form.
-#: actions/smssettings.php:111
 msgid "SMS address"
 msgstr "Endereço SMS"
 
 #. TRANS: Form guide in SMS settings form.
-#: actions/smssettings.php:120
 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
 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
 msgid "Confirmation code"
 msgstr "Código de confirmação"
 
 #. TRANS: Form field instructions in SMS settings form.
-#: actions/smssettings.php:144
 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
 msgctxt "BUTTON"
 msgid "Confirm"
 msgstr "Confirmar"
 
 #. TRANS: Field label for SMS phone number input in SMS settings form.
-#: actions/smssettings.php:153
 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
-msgid "Phone number, no punctuation or spaces, with area code"
+#, fuzzy
+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
 msgid "SMS preferences"
 msgstr "Preferências de SMS"
 
 #. TRANS: Checkbox label in SMS preferences form.
-#: actions/smssettings.php:201
 msgid ""
 "Send me notices through SMS; I understand I may incur exorbitant charges "
 "from my carrier."
@@ -5277,32 +5043,26 @@ msgstr ""
 "me montantes exorbitantes."
 
 #. TRANS: Confirmation message for successful SMS preferences save.
-#: actions/smssettings.php:315
 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
 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
 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
 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
 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
 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."
@@ -5312,39 +5072,32 @@ msgstr ""
 "utilização."
 
 #. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
-#: actions/smssettings.php:413
 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
 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
 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
 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
 msgid "Mobile carrier"
 msgstr "Operador móvel"
 
 #. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
-#: actions/smssettings.php:516
 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
 #, php-format
 msgid ""
 "Mobile carrier for your phone. If you know a carrier that accepts SMS over "
@@ -5355,124 +5108,93 @@ msgstr ""
 "para %s."
 
 #. TRANS: Message given saving SMS phone number confirmation code without having provided one.
-#: actions/smssettings.php:548
-msgid "No code entered"
-msgstr "Nenhum código introduzido"
+msgid "No code entered."
+msgstr "Nenhum código introduzido."
 
 #. TRANS: Menu item for site administration
-#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:395
 msgid "Snapshots"
 msgstr "Instantâneos"
 
-#: actions/snapshotadminpanel.php:65
 msgid "Manage snapshot configuration"
 msgstr "Alterar a configuração do instantâneo"
 
-#: actions/snapshotadminpanel.php:127
 msgid "Invalid snapshot run value."
 msgstr "Valor de criação do instantâneo é inválido."
 
-#: actions/snapshotadminpanel.php:133
 msgid "Snapshot frequency must be a number."
 msgstr "Frequência dos instantâneos estatísticos tem de ser um número."
 
-#: actions/snapshotadminpanel.php:144
 msgid "Invalid snapshot report URL."
 msgstr "URL para onde enviar instantâneos é inválida"
 
-#: actions/snapshotadminpanel.php:200
 msgid "Randomly during web hit"
 msgstr "Aleatoriamente, durante o acesso pela internet"
 
-#: actions/snapshotadminpanel.php:201
 msgid "In a scheduled job"
 msgstr "Num processo agendado"
 
-#: actions/snapshotadminpanel.php:206
 msgid "Data snapshots"
 msgstr "Instantâneos dos dados"
 
-#: actions/snapshotadminpanel.php:208
 msgid "When to send statistical data to status.net servers"
 msgstr "Quando enviar dados estatísticos para os servidores do status.net"
 
-#: actions/snapshotadminpanel.php:217
 msgid "Frequency"
 msgstr "Frequência"
 
-#: actions/snapshotadminpanel.php:218
 msgid "Snapshots will be sent once every N web hits"
 msgstr "Instantâneos serão enviados uma vez a cada N acessos da internet"
 
-#: actions/snapshotadminpanel.php:226
 msgid "Report URL"
 msgstr "URL para relatórios"
 
-#: actions/snapshotadminpanel.php:227
 msgid "Snapshots will be sent to this URL"
 msgstr "Instantâneos serão enviados para esta URL"
 
-#: actions/snapshotadminpanel.php:248
 msgid "Save snapshot settings"
 msgstr "Gravar configurações do instantâneo"
 
 #. 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:89 classes/Subscription.php:136
 msgid "Could not save subscription."
 msgstr "Não foi possível gravar a subscrição."
 
-#: actions/subscribe.php:77
-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
+#. TRANS: Client error displayed trying to subscribe to an OMB 0.1 remote profile.
 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."
 
-#: actions/subscribe.php:145
+#. TRANS: Page title when subscription succeeded.
 msgid "Subscribed"
 msgstr "Subscrito"
 
 #. 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"
 
 #. 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"
 
 #. 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."
 
 #. 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."
 
 #. TRANS: Subscriber list text when the logged in user has no subscribers.
-#: actions/subscribers.php:116
 #, fuzzy
 msgid ""
 "You have no subscribers. Try subscribing to people you know and they might "
@@ -5483,7 +5205,6 @@ msgstr ""
 
 #. 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:120
 #, php-format
 msgid "%s has no subscribers. Want to be the first?"
 msgstr "%s não tem subscritores. Quer ser o primeiro?"
@@ -5493,7 +5214,6 @@ msgstr "%s não tem subscritores. Quer ser o primeiro?"
 #. 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:129
 #, php-format
 msgid ""
 "%s has no subscribers. Why not [register an account](%%%%action.register%%%"
@@ -5502,29 +5222,19 @@ msgstr ""
 "%s não tem subscritores. Quer [registar uma conta](%%action.register%%) e "
 "ser o primeiro?"
 
-#. TRANS: Header for subscriptions overview for a user (first page).
-#. TRANS: %s is a user nickname.
-#: actions/subscriptions.php:51
-#, php-format
-msgid "%s subscriptions"
-msgstr "Subscrições de %s"
-
 #. 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"
 
 #. 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."
 
 #. 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."
@@ -5533,7 +5243,6 @@ msgstr "Estas são as pessoas cujas notas %s está a escutar."
 #. 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:135
 #, php-format
 msgid ""
 "You're not listening to anyone's notices right now, try subscribing to "
@@ -5553,111 +5262,90 @@ msgstr ""
 #. 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:143 actions/subscriptions.php:149
 #, php-format
 msgid "%s is not listening to anyone."
 msgstr "%s não está a ouvir ninguém."
 
+#. TRANS: Atom feed title. %s is a profile nickname.
+#, 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:226
-msgid "Jabber"
-msgstr "Jabber"
+msgid "IM"
+msgstr "MI"
 
 #. TRANS: Checkbox label for enabling SMS messages for a profile in a subscriptions list.
-#: actions/subscriptions.php:241
 msgid "SMS"
 msgstr "SMS"
 
-#: actions/tag.php:69
+#. TRANS: Title for all but the first page of notices with tags.
+#. TRANS: %1$s is the tag, %2$d is the page number.
 #, php-format
 msgid "Notices tagged with %1$s, page %2$d"
 msgstr "Notas categorizadas com %1$s, página %2$d"
 
-#: actions/tag.php:87
 #, php-format
 msgid "Notice feed for tag %s (RSS 1.0)"
 msgstr "Fonte de notas para a categoria %s (RSS 1.0)"
 
-#: actions/tag.php:93
 #, php-format
 msgid "Notice feed for tag %s (RSS 2.0)"
 msgstr "Fonte de notas para a categoria %s (RSS 2.0)"
 
-#: actions/tag.php:99
 #, php-format
 msgid "Notice feed for tag %s (Atom)"
 msgstr "Fonte de notas para a categoria %s (Atom)"
 
-#: actions/tagother.php:39
 msgid "No ID argument."
 msgstr "Argumento de identificação (ID) em falta."
 
-#: actions/tagother.php:65
 #, php-format
 msgid "Tag %s"
 msgstr "Categoria %s"
 
-#: actions/tagother.php:77 lib/userprofile.php:76
 msgid "User profile"
 msgstr "Perfil"
 
-#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:107
-msgid "Photo"
-msgstr "Foto"
-
-#: actions/tagother.php:141
 msgid "Tag user"
 msgstr "Categorizar utilizador"
 
-#: actions/tagother.php:151
+#, fuzzy
 msgid ""
-"Tags for this user (letters, numbers, -, ., and _), comma- or space- "
-"separated"
+"Tags for this user (letters, numbers, -, ., and _), separated by commas or "
+"spaces."
 msgstr ""
 "Categorias para este utilizador (letras, números, ., _), separadas por "
 "vírgulas ou espaços"
 
-#: actions/tagother.php:193
 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 ""
 "Use este formulário para categorizar os seus subscritores ou os que "
 "subscreve."
 
-#: actions/tagrss.php:35
 msgid "No such tag."
 msgstr "Categoria não foi encontrada."
 
-#: actions/unblock.php:59
+#. TRANS: Client error displayed when trying to unblock a non-blocked user.
 msgid "You haven't blocked that user."
 msgstr "Não bloqueou esse utilizador."
 
-#: actions/unsandbox.php:72
 msgid "User is not sandboxed."
 msgstr "Utilizador não está impedido de criar notas públicas."
 
-#: actions/unsilence.php:72
 msgid "User is not silenced."
 msgstr "Utilizador não está silenciado."
 
-#: actions/unsubscribe.php:77
 msgid "No profile ID in request."
 msgstr "O pedido não tem a identificação do perfil."
 
-#: actions/unsubscribe.php:98
 msgid "Unsubscribed"
 msgstr "Subscrição cancelada"
 
-#: actions/updateprofile.php:64 actions/userauthorization.php:337
 #, php-format
 msgid ""
 "Listenee stream license ‘%1$s’ is not compatible with site license ‘%2$s’."
@@ -5665,143 +5353,178 @@ msgstr ""
 "Licença ‘%1$s’ da listenee stream não é compatível com a licença ‘%2$s’ do "
 "site."
 
+#, fuzzy
+msgid "URL settings"
+msgstr "Configurações do IM"
+
+#. TRANS: Instructions for tab "Other" in user profile settings.
+msgid "Manage various other options."
+msgstr "Gerir várias outras opções."
+
+#. TRANS: Used as a suffix for free URL shorteners in a dropdown list in the tab "Other" of a
+#. TRANS: user's profile settings. This message has one space at the beginning. Use your
+#. TRANS: language's word separator here if it has one (most likely a single space).
+msgid " (free service)"
+msgstr " (serviço livre)"
+
+msgid "[none]"
+msgstr "[nenhum]"
+
+msgid "[internal]"
+msgstr "[interno]"
+
+#. TRANS: Label for dropdown with URL shortener services.
+msgid "Shorten URLs with"
+msgstr "Encurtar URLs com"
+
+#. TRANS: Tooltip for for dropdown with URL shortener services.
+msgid "Automatic shortening service to use."
+msgstr "Serviço de encurtamento que será usado automaticamente"
+
+msgid "URL longer than"
+msgstr ""
+
+msgid "URLs longer than this will be shortened, 0 means always shorten."
+msgstr ""
+
+msgid "Text longer than"
+msgstr ""
+
+msgid ""
+"URLs in notices longer than this will be shortened, 0 means always shorten."
+msgstr ""
+
+#. TRANS: Form validation error for form "Other settings" in user profile.
+#, fuzzy
+msgid "URL shortening service is too long (maximum 50 characters)."
+msgstr "Serviço de encurtamento de URLs demasiado extenso (máx. 50 caracteres)"
+
+msgid "Invalid number for max url length."
+msgstr ""
+
+#, fuzzy
+msgid "Invalid number for max notice length."
+msgstr "Conteúdo da nota é inválido."
+
+msgid "Error saving user URL shortening preferences."
+msgstr ""
+
 #. TRANS: User admin panel title
-#: actions/useradminpanel.php:58
 msgctxt "TITLE"
 msgid "User"
 msgstr "Utilizador"
 
 #. TRANS: Instruction for user admin panel.
-#: actions/useradminpanel.php:69
 msgid "User settings for this StatusNet site"
 msgstr ""
 
 #. 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."
 
 #. 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
 #, fuzzy, php-format
-msgid "Invalid default subscripton: '%1$s' is not a user."
+msgid "Invalid default subscripton: \"%1$s\" is not a user."
 msgstr "Subscrição predefinida é inválida: '%1$s' não é utilizador."
 
-#. TRANS: Link description in user account settings menu.
-#: actions/useradminpanel.php:215 lib/accountsettingsaction.php:106
-#: lib/personalgroupnav.php:112
 msgid "Profile"
 msgstr "Perfil"
 
 #. 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"
 
 #. 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."
 
 #. 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"
 
 #. 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)."
 
 #. 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"
 
 #. 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."
 
 #. TRANS: Form legend in user admin panel.
-#: actions/useradminpanel.php:256
 msgid "Invitations"
 msgstr "Convites"
 
 #. 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"
 
 #. 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."
 
 #. TRANS: Title for button to save user settings in user admin panel.
-#: actions/useradminpanel.php:302
-msgid "Save user settings"
-msgstr ""
+#, fuzzy
+msgid "Save user settings."
+msgstr "Gravar configurações do site"
 
-#: actions/userauthorization.php:105
+#. TRANS: Page title.
 msgid "Authorize subscription"
 msgstr "Autorizar subscrição"
 
-#: actions/userauthorization.php:110
+#. TRANS: Page notice on "Auhtorize subscription" page.
+#, fuzzy
 msgid ""
 "Please check these details to make sure that you want to subscribe to this "
 "user’s notices. If you didn’t just ask to subscribe to someone’s notices, "
-"click “Reject”."
+"click \"Reject\"."
 msgstr ""
 "Por favor, verifique estes detalhes para se certificar de que deseja "
 "subscrever as notas deste utilizador. Se não fez um pedido para subscrever "
 "as notas de alguém, simplesmente clique \"Rejeitar\"."
 
-#. TRANS: Menu item for site administration
-#: actions/userauthorization.php:196 actions/version.php:167
-#: lib/adminpanelaction.php:403
-msgid "License"
-msgstr "Licença"
-
-#: actions/userauthorization.php:217
+#. TRANS: Button text on Authorise Subscription page.
+msgctxt "BUTTON"
 msgid "Accept"
 msgstr "Aceitar"
 
-#: actions/userauthorization.php:218 lib/subscribeform.php:115
-#: lib/subscribeform.php:139
-msgid "Subscribe to this user"
+#. TRANS: Title for button on Authorise Subscription page.
+#, fuzzy
+msgid "Subscribe to this user."
 msgstr "Subscrever este utilizador"
 
-#: actions/userauthorization.php:219
+#. TRANS: Button text on Authorise Subscription page.
+msgctxt "BUTTON"
 msgid "Reject"
 msgstr "Rejeitar"
 
-#: actions/userauthorization.php:220
-msgid "Reject this subscription"
+#. TRANS: Title for button on Authorise Subscription page.
+#, fuzzy
+msgid "Reject this subscription."
 msgstr "Rejeitar esta subscrição"
 
-#: actions/userauthorization.php:232
+#. TRANS: Client error displayed for an empty authorisation request.
 msgid "No authorization request!"
 msgstr "Não há pedido de autorização!"
 
-#: actions/userauthorization.php:254
+#. TRANS: Accept message header from Authorise subscription page.
 msgid "Subscription authorized"
 msgstr "Subscrição autorizada"
 
-#: actions/userauthorization.php:256
 msgid ""
 "The subscription has been authorized, but no callback URL was passed. Check "
 "with the site’s instructions for details on how to authorize the "
@@ -5811,11 +5534,10 @@ msgstr ""
 "Verifique as instruções do site para saber como autorizar a subscrição. A "
 "sua chave de subscrição é:"
 
-#: actions/userauthorization.php:266
+#. TRANS: Reject message header from Authorise subscription page.
 msgid "Subscription rejected"
 msgstr "Subscrição rejeitada"
 
-#: actions/userauthorization.php:268
 msgid ""
 "The subscription has been rejected, but no callback URL was passed. Check "
 "with the site’s instructions for details on how to fully reject the "
@@ -5825,48 +5547,63 @@ msgstr ""
 "Verifique as instruções do site para saber como rejeitar completamente a "
 "subscrição."
 
-#: actions/userauthorization.php:303
-#, php-format
-msgid "Listener URI ‘%s’ not found here."
+#. TRANS: Exception thrown when no valid user is found for an authorisation request.
+#. TRANS: %s is a listener URI.
+#, fuzzy, php-format
+msgid "Listener URI \"%s\" not found here."
 msgstr "A listener URI ‘%s’ não foi encontrada aqui."
 
-#: actions/userauthorization.php:308
-#, php-format
-msgid "Listenee URI ‘%s’ is too long."
+#. TRANS: Exception thrown when listenee URI is too long for an authorisation request.
+#. TRANS: %s is a listenee URI.
+#, fuzzy, php-format
+msgid "Listenee URI \"%s\" is too long."
 msgstr "URI do escutado ‘%s’ é demasiado longo."
 
-#: actions/userauthorization.php:314
-#, php-format
-msgid "Listenee URI ‘%s’ is a local user."
+#. TRANS: Exception thrown when listenee URI is a local user for an authorisation request.
+#. TRANS: %s is a listenee URI.
+#, fuzzy, php-format
+msgid "Listenee URI \"%s\" is a local user."
 msgstr "URI do ouvido ‘%s’ é um utilizador local."
 
-#: actions/userauthorization.php:329
-#, php-format
-msgid "Profile URL ‘%s’ is for a local user."
+#. TRANS: Exception thrown when profile URL is a local user for an authorisation request.
+#. TRANS: %s is a profile URL.
+#, fuzzy, php-format
+msgid "Profile URL \"%s\" is for a local user."
 msgstr "A URL ‘%s’ do perfil é de um utilizador local."
 
-#: actions/userauthorization.php:345
-#, php-format
-msgid "Avatar URL ‘%s’ is not valid."
+#. TRANS: Exception thrown when licenses are not compatible for an authorisation request.
+#. TRANS: %1$s is the license for the listenee, %2$s is the license for "this" StatusNet site.
+#, fuzzy, php-format
+msgid ""
+"Listenee stream license \"%1$s\" is not compatible with site license \"%2$s"
+"\"."
+msgstr ""
+"Licença ‘%1$s’ da listenee stream não é compatível com a licença ‘%2$s’ do "
+"site."
+
+#. TRANS: Exception thrown when avatar URL is invalid for an authorisation request.
+#. TRANS: %s is an avatar URL.
+#, fuzzy, php-format
+msgid "Avatar URL \"%s\" is not valid."
 msgstr "A URL ‘%s’ do avatar é inválida."
 
-#: actions/userauthorization.php:350
-#, php-format
-msgid "Can’t read avatar URL ‘%s’."
+#. TRANS: Exception thrown when avatar URL could not be read for an authorisation request.
+#. TRANS: %s is an avatar URL.
+#, fuzzy, php-format
+msgid "Cannot read avatar URL \"%s\"."
 msgstr "Não é possível ler a URL do avatar ‘%s’."
 
-#: actions/userauthorization.php:355
-#, php-format
-msgid "Wrong image type for avatar URL ‘%s’."
+#. TRANS: Exception thrown when avatar URL return an invalid image type for an authorisation request.
+#. TRANS: %s is an avatar URL.
+#, fuzzy, php-format
+msgid "Wrong image type for avatar URL \"%s\"."
 msgstr "Tipo de imagem incorrecto para o avatar da URL ‘%s’."
 
 #. TRANS: Page title for profile design page.
-#: actions/userdesignsettings.php:76 lib/designsettings.php:63
 msgid "Profile design"
 msgstr "Estilo do perfil"
 
 #. TRANS: Instructions for profile design page.
-#: actions/userdesignsettings.php:87 lib/designsettings.php:74
 msgid ""
 "Customize the way your profile looks with a background image and a colour "
 "palette of your choice."
@@ -5874,26 +5611,34 @@ msgstr ""
 "Personalize o estilo do seu perfil com uma imagem de fundo e uma paleta de "
 "cores à sua escolha."
 
-#: actions/userdesignsettings.php:282
 msgid "Enjoy your hotdog!"
 msgstr "Disfrute do seu cachorro-quente!"
 
-#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
-#: actions/usergroups.php:66
-#, php-format
-msgid "%1$s groups, page %2$d"
-msgstr "Grupos de %1$s, página %2$d"
-
-#: actions/usergroups.php:132
-msgid "Search for more groups"
-msgstr "Procurar mais grupos"
+#, fuzzy
+msgid "Design settings"
+msgstr "Gravar configurações do site"
+
+msgid "View profile designs"
+msgstr "Ver estilos para o perfil"
+
+msgid "Show or hide profile designs."
+msgstr "Mostrar ou esconder estilos para o perfil."
+
+msgid "Background file"
+msgstr "Ficheiro de fundo"
+
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#, php-format
+msgid "%1$s groups, page %2$d"
+msgstr "Grupos de %1$s, página %2$d"
+
+msgid "Search for more groups"
+msgstr "Procurar mais grupos"
 
-#: actions/usergroups.php:159
 #, php-format
 msgid "%s is not a member of any group."
 msgstr "%s não é membro de nenhum grupo."
 
-#: actions/usergroups.php:164
 #, php-format
 msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
 msgstr "Tente [pesquisar grupos](%%action.groupsearch%%) e juntar-se a eles."
@@ -5903,18 +5648,14 @@ msgstr "Tente [pesquisar grupos](%%action.groupsearch%%) e juntar-se a eles."
 #. TRANS: %1$s is a group name, %2$s is a site name.
 #. 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
 #, php-format
 msgid "Updates from %1$s on %2$s!"
 msgstr "Actualizações de %1#s a %2$s!"
 
-#: actions/version.php:75
 #, php-format
 msgid "StatusNet %s"
 msgstr "StatusNet %s"
 
-#: actions/version.php:155
 #, php-format
 msgid ""
 "This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
@@ -5923,11 +5664,13 @@ msgstr ""
 "Este site utiliza o %1$s versão %2$s, (c) 2008-2010 StatusNet, Inc. e "
 "colaboradores."
 
-#: actions/version.php:163
 msgid "Contributors"
 msgstr "Colaboradores"
 
-#: actions/version.php:170
+#. TRANS: Menu item for site administration
+msgid "License"
+msgstr "Licença"
+
 msgid ""
 "StatusNet is free software: you can redistribute it and/or modify it under "
 "the terms of the GNU Affero General Public License as published by the Free "
@@ -5939,7 +5682,6 @@ msgstr ""
 "Software Foundation, que na versão 3 da Licença, quer (por sua opção) "
 "qualquer versão posterior. "
 
-#: actions/version.php:176
 msgid ""
 "This program is distributed in the hope that it will be useful, but WITHOUT "
 "ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -5950,7 +5692,6 @@ msgstr ""
 "QUALQUER GARANTIA. Consulte a GNU Affero General Public License para mais "
 "informações. "
 
-#: actions/version.php:182
 #, php-format
 msgid ""
 "You should have received a copy of the GNU Affero General Public License "
@@ -5959,46 +5700,47 @@ msgstr ""
 "Juntamente com este programa deve ter recebido uma cópia da GNU Affero "
 "General Public License. Se não a tiver recebido, consulte %s."
 
-#: actions/version.php:191
+#. TRANS: Menu item for site administration
 msgid "Plugins"
 msgstr "Plugins"
 
+#. TRANS: Form input field label for application name.
+msgid "Name"
+msgstr "Nome"
+
 #. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
-#: actions/version.php:198 lib/action.php:885
 msgid "Version"
 msgstr "Versão"
 
-#: actions/version.php:199
 msgid "Author(s)"
 msgstr "Autores"
 
+#. TRANS: Form input field label.
+msgid "Description"
+msgstr "Descrição"
+
 #. TRANS: Activity title when marking a notice as favorite.
-#: classes/Fave.php:148 lib/favorform.php:143
 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
 #, 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:156
 #, 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:188
 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.
 #. TRANS: %1$s is used for plural.
-#: classes/File.php:204
 #, fuzzy, php-format
 msgid ""
 "No file may be larger than %1$d byte and the file you sent was %2$d bytes. "
@@ -6015,7 +5757,6 @@ msgstr[1] ""
 
 #. TRANS: Message given if an upload would exceed user quota.
 #. TRANS: %d (number) is the user quota in bytes and is used for plural.
-#: classes/File.php:217
 #, 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."
@@ -6026,7 +5767,6 @@ msgstr[1] ""
 
 #. TRANS: Message given id an upload would exceed a user's monthly quota.
 #. TRANS: $d (number) is the monthly user quota in bytes and is used for plural.
-#: classes/File.php:229
 #, 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."
@@ -6036,108 +5776,89 @@ 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:276 classes/File.php:291
 msgid "Invalid filename."
 msgstr "Nome de ficheiro inválido."
 
 #. TRANS: Exception thrown when joining a group fails.
-#: classes/Group_member.php:42
 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
 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
 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
 #, 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
 #, 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
 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
 #, php-format
 msgid "%1$s has joined group %2$s."
 msgstr ""
 
 #. TRANS: Server exception thrown when updating a local group fails.
-#: classes/Local_group.php:42
 msgid "Could not update local group."
 msgstr "Não foi possível actualizar o grupo local."
 
 #. TRANS: Exception thrown when trying creating a login token failed.
 #. TRANS: %s is the user nickname for which token creation failed.
-#: classes/Login_token.php:78
 #, php-format
 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
 msgid "No database name or DSN found anywhere."
 msgstr "Não foi encontrado nenhum nome de base de dados ou DSN."
 
 #. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
-#: classes/Message.php:45
 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
 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
 msgid "Could not update message with new URI."
 msgstr "Não foi possível actualizar a mensagem com a nova URI."
 
 #. TRANS: Server exception thrown when a user profile for a notice cannot be found.
 #. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
-#: classes/Notice.php:98
 #, php-format
 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
 #, 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
 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
 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
 msgid ""
 "Too many notices too fast; take a breather and post again in a few minutes."
 msgstr ""
@@ -6145,7 +5866,6 @@ 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
 msgid ""
 "Too many duplicate messages too quickly; take a breather and post again in a "
 "few minutes."
@@ -6154,43 +5874,36 @@ msgstr ""
 "publicar daqui a alguns minutos."
 
 #. TRANS: Client exception thrown when a user tries to post while being banned.
-#: classes/Notice.php:291
 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
 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:909
 #, 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:1008
 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:1122
 #, 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:1853
 #, 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:247
 #, fuzzy, php-format
 msgctxt "FANCYNAME"
 msgid "%1$s (%2$s)"
@@ -6198,7 +5911,6 @@ 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:845
 #, php-format
 msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
 msgstr ""
@@ -6206,7 +5918,6 @@ 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:854
 #, php-format
 msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
 msgstr ""
@@ -6214,348 +5925,174 @@ msgstr ""
 "de dados."
 
 #. TRANS: Exception thrown when a right for a non-existing user profile is checked.
-#: classes/Remote_profile.php:54
 msgid "Missing profile."
 msgstr "Perfil não existe."
 
 #. TRANS: Exception thrown when a tag cannot be saved.
-#: classes/Status_network.php:338
 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: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
 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
 msgid "User has blocked you."
 msgstr "O utilizador bloqueou-o."
 
 #. TRANS: Exception thrown when trying to unsibscribe without a subscription.
-#: classes/Subscription.php:171
 msgid "Not subscribed!"
 msgstr "Não subscrito!"
 
 #. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
-#: classes/Subscription.php:178
 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
 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
 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
 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
 #, 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: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:923
 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:927
 msgid "Single-user mode code called when not enabled."
 msgstr ""
 
 #. TRANS: Server exception thrown when creating a group failed.
-#: classes/User_group.php:511
 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:521
 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:544
 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:559
 msgid "Could not save local group info."
 msgstr "Não foi possível gravar a informação do grupo local."
 
-#. TRANS: Link title attribute in user account settings menu.
-#: lib/accountsettingsaction.php:104
-msgid "Change your profile settings"
-msgstr "Modificar as suas definições de perfil"
-
-#. TRANS: Link title attribute in user account settings menu.
-#: lib/accountsettingsaction.php:111
-msgid "Upload an avatar"
-msgstr "Carregar um avatar"
-
-#. TRANS: Link title attribute in user account settings menu.
-#: lib/accountsettingsaction.php:118
-msgid "Change your password"
-msgstr "Modificar a sua senha"
-
-#. TRANS: Link title attribute in user account settings menu.
-#: lib/accountsettingsaction.php:125
-msgid "Change email handling"
-msgstr "Alterar manuseamento de email"
-
-#. TRANS: Link title attribute in user account settings menu.
-#: lib/accountsettingsaction.php:132
-msgid "Design your profile"
-msgstr "Altere o estilo do seu perfil"
-
-#. TRANS: Link title attribute in user account settings menu.
-#: lib/accountsettingsaction.php:139
-msgid "Other options"
-msgstr "Outras opções"
-
-#. TRANS: Link description in user account settings menu.
-#: lib/accountsettingsaction.php:141
-msgid "Other"
-msgstr "Outras"
+#. TRANS: Exception thrown when an account could not be located when it should be moved.
+#. TRANS: %s is the remote site.
+#, fuzzy, php-format
+msgid "Cannot locate account %s."
+msgstr "Não pode apagar utilizadores."
 
-#. TRANS: Page title. %1$s is the title, %2$s is the site name.
-#: lib/action.php:148
+#. TRANS: Exception thrown when a service document could not be located account move.
+#. TRANS: %s is the remote site.
 #, 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
-msgid "Untitled page"
-msgstr "Página sem título"
+msgid "Cannot find XRD for %s."
+msgstr ""
 
-#. TRANS: Localized tooltip for '...' expansion button on overlong remote messages.
-#: lib/action.php:312
-msgctxt "TOOLTIP"
-msgid "Show more"
+#. TRANS: Exception thrown when an account could not be located when it should be moved.
+#. TRANS: %s is the remote site.
+#, php-format
+msgid "No AtomPub API service for %s."
 msgstr ""
 
-#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
-#: lib/action.php:531
-msgid "Primary site navigation"
-msgstr "Navegação primária deste site"
+#. TRANS: H2 for user actions in a profile.
+#. TRANS: H2 for entity actions in a profile.
+msgid "User actions"
+msgstr "Acções do utilizador"
 
-#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:537
-msgctxt "TOOLTIP"
-msgid "Personal profile and friends timeline"
-msgstr "Perfil pessoal e notas dos amigos"
+#. TRANS: Text shown in user profile of not yet compeltely deleted users.
+msgid "User deletion in progress..."
+msgstr "A apagar o utilizador..."
 
-#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
-#: lib/action.php:540
-msgctxt "MENU"
-msgid "Personal"
-msgstr "Pessoal"
+#. TRANS: Link title for link on user profile.
+msgid "Edit profile settings"
+msgstr "Editar configurações do perfil"
 
-#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:542
-msgctxt "TOOLTIP"
-msgid "Change your email, avatar, password, profile"
-msgstr "Altere o seu endereço electrónico, avatar, senha, perfil"
+#. TRANS: Link text for link on user profile.
+msgid "Edit"
+msgstr "Editar"
 
-#. TRANS: Main menu option when logged in for access to user settings
-#: lib/action.php:545
-msgid "Account"
-msgstr "Conta"
+#. TRANS: Link title for link on user profile.
+msgid "Send a direct message to this user"
+msgstr "Enviar mensagem directa a este utilizador"
 
-#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:547
-msgctxt "TOOLTIP"
-msgid "Connect to services"
-msgstr "Ligar aos serviços"
+#. TRANS: Link text for link on user profile.
+msgid "Message"
+msgstr "Mensagem"
 
-#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
-#: lib/action.php:550
-msgid "Connect"
-msgstr "Ligar"
+#. TRANS: Label text on user profile to select a user role.
+msgid "Moderate"
+msgstr "Moderar"
 
-#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:553
-msgctxt "TOOLTIP"
-msgid "Change site configuration"
-msgstr "Alterar a configuração do site"
+#. TRANS: Label text on user profile to select a user role.
+msgid "User role"
+msgstr "Função"
 
-#. 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:556 lib/groupnav.php:117
-msgctxt "MENU"
-msgid "Admin"
+#. TRANS: Role that can be set for a user profile.
+msgctxt "role"
+msgid "Administrator"
 msgstr "Gestor"
 
-#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:560
-#, 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:563
-msgctxt "MENU"
-msgid "Invite"
-msgstr "Convidar"
-
-#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:569
-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:572
-msgctxt "MENU"
-msgid "Logout"
-msgstr "Sair"
-
-#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:577
-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:580
-msgctxt "MENU"
-msgid "Register"
-msgstr "Registar"
-
-#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:583
-msgctxt "TOOLTIP"
-msgid "Login to the site"
-msgstr "Iniciar uma sessão"
-
-#. TRANS: Main menu option when not logged in to log in
-#: lib/action.php:586
-msgctxt "MENU"
-msgid "Login"
-msgstr "Entrar"
+#. TRANS: Role that can be set for a user profile.
+msgctxt "role"
+msgid "Moderator"
+msgstr "Moderador"
 
-#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:589
-msgctxt "TOOLTIP"
-msgid "Help me!"
-msgstr "Ajudem-me!"
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#, php-format
+msgid "%1$s - %2$s"
+msgstr "%1$s - %2$s"
 
-#. TRANS: Main menu option for help on the StatusNet site
-#: lib/action.php:592
-msgctxt "MENU"
-msgid "Help"
-msgstr "Ajuda"
+#. TRANS: Page title for a page without a title set.
+msgid "Untitled page"
+msgstr "Página sem título"
 
-#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:595
+#. TRANS: Localized tooltip for '...' expansion button on overlong remote messages.
 msgctxt "TOOLTIP"
-msgid "Search for people or text"
-msgstr "Procurar pessoas ou pesquisar texto"
-
-#. TRANS: Main menu option when logged in or when the StatusNet instance is not private
-#: lib/action.php:598
-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:620 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:687
-msgid "Local views"
-msgstr "Vistas locais"
-
-#. TRANS: DT element for page notice. String is hidden in default CSS.
-#: lib/action.php:757
-msgid "Page notice"
-msgstr "Aviso da página"
-
-#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
-#: lib/action.php:858
-msgid "Secondary site navigation"
-msgstr "Navegação secundária deste site"
-
-#. TRANS: Secondary navigation menu option leading to help on StatusNet.
-#: lib/action.php:864
-msgid "Help"
-msgstr "Ajuda"
-
-#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
-#: lib/action.php:867
-msgid "About"
-msgstr "Sobre"
-
-#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
-#: lib/action.php:870
-msgid "FAQ"
-msgstr "FAQ"
-
-#. TRANS: Secondary navigation menu option leading to Terms of Service.
-#: lib/action.php:875
-msgid "TOS"
-msgstr "Termos"
-
-#. TRANS: Secondary navigation menu option leading to privacy policy.
-#: lib/action.php:879
-msgid "Privacy"
-msgstr "Privacidade"
-
-#. TRANS: Secondary navigation menu option. Leads to information about StatusNet and its license.
-#: lib/action.php:882
-msgid "Source"
-msgstr "Código fonte"
+msgid "Show more"
+msgstr "Mostrar mais"
 
-#. TRANS: Secondary navigation menu option leading to e-mail contact information on the
-#. TRANS: StatusNet site, where to report bugs, ...
-#: lib/action.php:889
-msgid "Contact"
-msgstr "Contacto"
+#. TRANS: Inline reply form submit button: submits a reply comment.
+#, fuzzy
+msgctxt "BUTTON"
+msgid "Reply"
+msgstr "Responder"
 
-#. TRANS: Secondary navigation menu option. Leads to information about embedding a timeline widget.
-#: lib/action.php:892
-msgid "Badge"
-msgstr "Emblema"
+#. TRANS: Placeholder text for inline reply form. Clicking in this box will turn it into a mini notice form.
+msgid "Write a reply..."
+msgstr "Escrever uma resposta..."
 
-#. TRANS: DT element for StatusNet software license.
-#: lib/action.php:921
-msgid "StatusNet software license"
-msgstr "Licença de software do StatusNet"
+#, fuzzy
+msgid "Status"
+msgstr "StatusNet"
 
 #. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
 #. 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:928
 #, php-format
 msgid ""
 "**%%site.name%%** is a microblogging service brought to you by [%%site."
@@ -6565,7 +6102,6 @@ msgstr ""
 "broughtby%%](%%site.broughtbyurl%%)."
 
 #. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
-#: lib/action.php:931
 #, php-format
 msgid "**%%site.name%%** is a microblogging service."
 msgstr "**%%site.name%%** é um serviço de microblogues."
@@ -6574,7 +6110,6 @@ 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:938
 #, php-format
 msgid ""
 "It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -6585,21 +6120,14 @@ msgstr ""
 "disponibilizado nos termos da [GNU Affero General Public License](http://www."
 "fsf.org/licensing/licenses/agpl-3.0.html)."
 
-#. TRANS: DT element for StatusNet site content license.
-#: lib/action.php:954
-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:961
 #, 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:968
 #, php-format
 msgid "Content and data copyright by %1$s. All rights reserved."
 msgstr ""
@@ -6607,7 +6135,6 @@ msgstr ""
 "direitos reservados."
 
 #. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
-#: lib/action.php:972
 msgid "Content and data copyright by contributors. All rights reserved."
 msgstr ""
 "Direitos de autor sobre o conteúdo e dados detidos pelos contribuidores. "
@@ -6615,214 +6142,254 @@ 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:1004
 #, php-format
 msgid "All %1$s content and data are available under the %2$s license."
 msgstr ""
 "Todo o conteúdo e dados do site %1$s são disponibilizados nos termos da "
 "licença %2$s."
 
-#. TRANS: DT element for pagination (previous/next, etc.).
-#: lib/action.php:1340
-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:1351
 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:1361
 msgid "Before"
 msgstr "Anteriores"
 
 #. TRANS: Client exception thrown when a feed instance is a DOMDocument.
-#: lib/activity.php:120
 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.
+#, 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.
+msgid "Cannot force subscription for untrusted user."
+msgstr ""
+
+#. TRANS: Client exception thrown when trying to for a remote user to subscribe.
+#, 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.
+#, 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.
+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.
+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.
+msgid "User is already a member of this group."
+msgstr "O utilizador já é membro deste 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.
+#, 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.
+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.
+#, fuzzy, php-format
+msgid "No content for notice %s."
+msgstr "Procurar no conteúdo das notas"
+
+#, php-format
+msgid "No such user %s."
+msgstr "Utilizador %s 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.
+#, 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."
 msgstr "Ainda não é possível processar conteúdos remotos."
 
 #. TRANS: Client exception thrown when there embedded XML content is found that cannot be processed yet.
-#: lib/activityutils.php:237
 msgid "Can't handle embedded XML content yet."
 msgstr "Ainda não é possível processar conteúdo XML embutido."
 
 #. TRANS: Client exception thrown when base64 encoded content is found that cannot be processed yet.
-#: lib/activityutils.php:242
 msgid "Can't handle embedded Base64 content yet."
 msgstr "Ainda não é possível processar conteúdo Base64 embutido."
 
 #. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
-#: lib/adminpanelaction.php:96
 msgid "You cannot make changes to this site."
 msgstr "Não pode fazer alterações a este site."
 
 #. TRANS: Client error message throw when a certain panel's settings cannot be changed.
-#: lib/adminpanelaction.php:108
 msgid "Changes to that panel are not allowed."
 msgstr "Não são permitidas alterações a esse painel."
 
 #. TRANS: Client error message.
-#: lib/adminpanelaction.php:222
 msgid "showForm() not implemented."
 msgstr "showForm() não implementado."
 
 #. TRANS: Client error message
-#: lib/adminpanelaction.php:250
 msgid "saveSettings() not implemented."
 msgstr "saveSettings() não implementado."
 
 #. TRANS: Client error message thrown if design settings could not be deleted in
 #. TRANS: the admin panel Design.
-#: lib/adminpanelaction.php:274
 msgid "Unable to delete design setting."
 msgstr "Não foi possível apagar a configuração do estilo."
 
+msgid "Home"
+msgstr "Página pessoal"
+
 #. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:337
 msgid "Basic site configuration"
 msgstr "Configuração básica do site"
 
 #. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:339
 msgctxt "MENU"
 msgid "Site"
 msgstr "Site"
 
 #. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:345
 msgid "Design configuration"
 msgstr "Configuração do estilo"
 
 #. TRANS: Menu item for site administration
 #. TRANS: Menu item in the group navigation page. Only shown for group administrators.
-#: lib/adminpanelaction.php:347 lib/groupnav.php:135
 msgctxt "MENU"
 msgid "Design"
 msgstr "Estilo"
 
 #. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:353
 msgid "User configuration"
 msgstr "Configuração do utilizador"
 
 #. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:355 lib/personalgroupnav.php:118
 msgid "User"
 msgstr "Utilizador"
 
 #. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:361
 msgid "Access configuration"
 msgstr "Configuração de acesso"
 
 #. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:369
 msgid "Paths configuration"
 msgstr "Configuração das localizações"
 
 #. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:377
 msgid "Sessions configuration"
 msgstr "Configuração das sessões"
 
 #. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:385
 msgid "Edit site notice"
 msgstr "Editar aviso do site"
 
+#. TRANS: Menu item for site administration
+msgid "Site notice"
+msgstr "Aviso do site"
+
 #. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:393
 msgid "Snapshots configuration"
 msgstr "Configuração dos instântaneos"
 
 #. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:401
 msgid "Set site license"
-msgstr ""
+msgstr "Conjunto de licenças do site"
+
+#. TRANS: Menu item title/tooltip
+msgid "Plugins configuration"
+msgstr "Configuração dos plugins"
 
 #. TRANS: Client error 401.
-#: lib/apiauth.php:111
 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:177
 msgid "No application for that consumer key."
 msgstr "Nenhuma aplicação para essa chave de consumidor."
 
+msgid "Not allowed to use API."
+msgstr ""
+
 #. TRANS: OAuth exception given when an incorrect access token was given for a user.
-#: 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: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: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:186
-#, fuzzy
 msgid "Could not issue access token."
-msgstr "Não foi possível inserir a mensagem."
+msgstr "Não foi possível emitir a ficha de acesso."
 
-#. TRANS: Server error displayed when a database error occurs.
-#: lib/apioauthstore.php:243
 msgid "Database error inserting OAuth application user."
 msgstr "Erro na base de dados ao inserir o utilizador da aplicação OAuth."
 
+msgid "Database error updating OAuth application user."
+msgstr ""
+"Erro na actualização da 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:285
 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:290
 msgid "Failed to delete revoked token."
 msgstr "Falha ao eliminar código revogado."
 
+#. TRANS: Form input field label for application icon.
+msgid "Icon"
+msgstr "Ícone"
+
 #. TRANS: Form guide.
-#: lib/applicationeditform.php:178
 msgid "Icon for this application"
 msgstr "Ícone para esta aplicação"
 
 #. TRANS: Form input field instructions.
 #. TRANS: %d is the number of available characters for the description.
-#: lib/applicationeditform.php:201
 #, fuzzy, php-format
 msgid "Describe your application in %d character"
 msgid_plural "Describe your application in %d characters"
@@ -6830,203 +6397,170 @@ msgstr[0] "Descreva a sua aplicação em %d caracteres"
 msgstr[1] "Descreva a sua aplicação em %d caracteres"
 
 #. TRANS: Form input field instructions.
-#: lib/applicationeditform.php:205
 msgid "Describe your application"
 msgstr "Descreva a sua aplicação"
 
 #. TRANS: Form input field instructions.
-#: lib/applicationeditform.php:216
 msgid "URL of the homepage of this application"
 msgstr "URL da página desta aplicação"
 
 #. TRANS: Form input field label.
-#: lib/applicationeditform.php:218
 msgid "Source URL"
 msgstr "URL de origem"
 
 #. TRANS: Form input field instructions.
-#: lib/applicationeditform.php:225
 msgid "Organization responsible for this application"
 msgstr "Organização responsável por esta aplicação"
 
+#. TRANS: Form input field label.
+msgid "Organization"
+msgstr "Organização"
+
 #. TRANS: Form input field instructions.
-#: lib/applicationeditform.php:234
 msgid "URL for the homepage of the organization"
 msgstr "URL da página desta organização"
 
 #. TRANS: Form input field instructions.
-#: lib/applicationeditform.php:243
 msgid "URL to redirect to after authentication"
 msgstr "URL para onde reencaminhar após autenticação"
 
 #. TRANS: Radio button label for application type
-#: lib/applicationeditform.php:271
 msgid "Browser"
 msgstr "Browser"
 
 #. TRANS: Radio button label for application type
-#: lib/applicationeditform.php:288
 msgid "Desktop"
 msgstr "Desktop"
 
 #. TRANS: Form guide.
-#: lib/applicationeditform.php:290
 msgid "Type of application, browser or desktop"
 msgstr "Tipo da aplicação, browser ou desktop"
 
 #. TRANS: Radio button label for access type.
-#: lib/applicationeditform.php:314
 msgid "Read-only"
 msgstr "Leitura"
 
 #. TRANS: Radio button label for access type.
-#: lib/applicationeditform.php:334
 msgid "Read-write"
 msgstr "Leitura e escrita"
 
 #. TRANS: Form guide.
-#: lib/applicationeditform.php:336
 msgid "Default access for this application: read-only, or read-write"
 msgstr "Acesso por omissão para esta aplicação: leitura ou leitura e escrita"
 
 #. TRANS: Submit button title.
-#: lib/applicationeditform.php:353
 msgid "Cancel"
 msgstr "Cancelar"
 
-#: lib/applicationlist.php:247
 msgid " by "
-msgstr ""
+msgstr "por "
 
 #. TRANS: Application access type
-#: lib/applicationlist.php:260
 msgid "read-write"
 msgstr "leitura e escrita"
 
 #. TRANS: Application access type
-#: 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: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:298
 msgctxt "BUTTON"
 msgid "Revoke"
 msgstr "Retirar"
 
-#: lib/atom10feed.php:112
-msgid "author element must contain a name element."
+msgid "Author element must contain a name element."
 msgstr ""
 
-#. TRANS: DT element label in attachment list item.
-#: lib/attachmentlist.php:294
-msgid "Author"
-msgstr "Autor"
-
-#. TRANS: DT element label in attachment list item.
-#: lib/attachmentlist.php:308
-msgid "Provider"
-msgstr "Fornecedor"
+#. TRANS: Server exception thrown when using the method setActivitySubject() in the class Atom10Feed.
+#, fuzzy
+msgid "Do not use this method!"
+msgstr "Não apagar esta nota"
 
 #. TRANS: Title.
-#: lib/attachmentnoticesection.php:67
 msgid "Notices where this attachment appears"
 msgstr "Notas em que este anexo aparece"
 
 #. TRANS: Title.
-#: lib/attachmenttagcloudsection.php:48
 msgid "Tags for this attachment"
 msgstr "Categorias para este anexo"
 
 #. TRANS: Exception thrown when a password change fails.
-#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:227
 #, fuzzy
 msgid "Password changing failed."
 msgstr "Não foi possível mudar a palavra-chave"
 
 #. TRANS: Exception thrown when a password change attempt fails because it is not allowed.
-#: lib/authenticationplugin.php:238
 #, fuzzy
 msgid "Password changing is not allowed."
 msgstr "Não é permitido mudar a palavra-chave"
 
 #. TRANS: Title for the form to block a user.
-#: lib/blockform.php:68
 msgid "Block"
 msgstr "Bloquear"
 
+#. TRANS: Description of the form to block a user.
+msgid "Block this user"
+msgstr "Bloquear este utilizador"
+
 #. TRANS: Title for command results.
-#: lib/channel.php:160 lib/channel.php:181
 msgid "Command results"
 msgstr "Resultados do comando"
 
 #. TRANS: Title for command results.
-#: lib/channel.php:194
 #, fuzzy
 msgid "AJAX error"
 msgstr "Erro do Ajax"
 
 #. TRANS: E-mail subject when a command has completed.
-#: lib/channel.php:233 lib/mailhandler.php:143
 msgid "Command complete"
 msgstr "Comando terminado"
 
 #. TRANS: E-mail subject when a command has failed.
-#: lib/channel.php:244
 msgid "Command failed"
 msgstr "Comando falhou"
 
 #. TRANS: Command exception text shown when a notice ID is requested that does not exist.
-#: lib/command.php:82 lib/command.php:106
 msgid "Notice with that id does not exist."
 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:630
 msgid "User has no last notice."
 msgstr "Utilizador não tem nenhuma última nota."
 
 #. TRANS: Message given requesting a profile for a non-existing user.
 #. TRANS: %s is the nickname of the user for which the profile could not be found.
-#: lib/command.php:128
 #, php-format
 msgid "Could not find a user with nickname %s."
 msgstr "Não foi encontrado um utilizador com o nome %s."
 
 #. TRANS: Message given getting a non-existing user.
 #. TRANS: %s is the nickname of the user that could not be found.
-#: lib/command.php:148
 #, php-format
 msgid "Could not find a local user with nickname %s."
 msgstr "Não foi encontrado nenhum utilizador local com o nome %s."
 
 #. TRANS: Error text shown when an unimplemented command is given.
-#: lib/command.php:183
 msgid "Sorry, this command is not yet implemented."
 msgstr "Desculpe, este comando ainda não foi implementado."
 
 #. TRANS: Command exception text shown when a user tries to nudge themselves.
-#: lib/command.php:229
 msgid "It does not make a lot of sense to nudge yourself!"
 msgstr "Não faz muito sentido tocar-nos a nós mesmos!"
 
 #. TRANS: Message given having nudged another user.
 #. TRANS: %s is the nickname of the user that was nudged.
-#: lib/command.php:238
 #, php-format
 msgid "Nudge sent to %s."
 msgstr "Toque enviado para %s."
@@ -7035,7 +6569,6 @@ msgstr "Toque enviado para %s."
 #. TRANS: %1$s is the number of other user the user is subscribed to.
 #. TRANS: %2$s is the number of users that are subscribed to the user.
 #. TRANS: %3$s is the number of notices the user has sent.
-#: lib/command.php:268
 #, php-format
 msgid ""
 "Subscriptions: %1$s\n"
@@ -7046,35 +6579,35 @@ msgstr ""
 "Subscritores: %2$s\n"
 "Notas: %3$s"
 
+#. TRANS: Error message text shown when a favorite could not be set because it has already been favorited.
+#, fuzzy
+msgid "Could not create favorite: already favorited."
+msgstr "Não foi possível criar o favorito."
+
 #. TRANS: Text shown when a notice has been marked as favourite successfully.
-#: lib/command.php:312
 msgid "Notice marked as fave."
 msgstr "Nota marcada como favorita."
 
 #. TRANS: Message given having added a user to a group.
 #. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
-#: lib/command.php:357
 #, php-format
 msgid "%1$s joined group %2$s."
 msgstr "%1$s juntou-se ao grupo %2$s."
 
 #. TRANS: Message given having removed a user from a group.
 #. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
-#: lib/command.php:405
 #, php-format
 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
 msgid "Fullname: %s"
 msgstr "Nome completo: %s"
@@ -7082,7 +6615,6 @@ 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.
 #. TRANS: %s is a location.
-#: lib/command.php:434 lib/mail.php:278
 #, php-format
 msgid "Location: %s"
 msgstr "Localidade: %s"
@@ -7090,20 +6622,17 @@ msgstr "Localidade: %s"
 #. TRANS: Whois output. %s is the homepage of the queried user.
 #. TRANS: Profile info line in new-subscriber notification e-mail.
 #. TRANS: %s is a homepage.
-#: lib/command.php:438 lib/mail.php:282
 #, php-format
 msgid "Homepage: %s"
 msgstr "Página pessoal: %s"
 
 #. TRANS: Whois output. %s is the bio information of the queried user.
-#: lib/command.php:442
 #, php-format
 msgid "About: %s"
 msgstr "Sobre: %s"
 
 #. TRANS: Command exception text shown when trying to send a direct message to a remote user (a user not registered at the current server).
 #. TRANS: %s is a remote profile.
-#: lib/command.php:471
 #, php-format
 msgid ""
 "%s is a remote profile; you can only send direct messages to users on the "
@@ -7114,33 +6643,32 @@ msgstr ""
 
 #. 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
 #, 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 when trying to send a direct message to a user without a mutual subscription (each user must be subscribed to the other).
+msgid "You can't send a message to this user."
+msgstr "Não pode enviar uma mensagem a este utilizador."
+
 #. TRANS: Error text shown sending a direct message fails with an unknown reason.
-#: 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: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:556
 msgid "Error repeating notice."
 msgstr "Erro ao repetir nota."
 
 #. 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: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."
@@ -7149,100 +6677,83 @@ 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: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: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: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: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: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: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: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: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:727
 msgid "Notification off."
 msgstr "Notificação desligada."
 
 #. TRANS: Error text shown when the command "off" fails for an unknown reason.
-#: 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:753
 msgid "Notification on."
 msgstr "Notificação ligada."
 
 #. TRANS: Error text shown when the command "on" fails for an unknown reason.
-#: 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: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: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: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: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:835
 msgid "You are subscribed to this person:"
 msgid_plural "You are subscribed to these people:"
 msgstr[0] "Subscreveu esta pessoa:"
@@ -7250,14 +6761,12 @@ 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: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:862
 msgid "This person is subscribed to you:"
 msgid_plural "These people are subscribed to you:"
 msgstr[0] "Esta pessoa subscreve as suas notas:"
@@ -7265,289 +6774,366 @@ 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: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: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:904
-msgid ""
-"Commands:\n"
-"on - turn on notifications\n"
-"off - turn off notifications\n"
-"help - show this help\n"
-"follow <nickname> - subscribe to user\n"
-"groups - lists the groups you have joined\n"
-"subscriptions - list the people you follow\n"
-"subscribers - list the people that follow you\n"
-"leave <nickname> - unsubscribe from user\n"
-"d <nickname> <text> - direct message to user\n"
-"get <nickname> - get last notice from user\n"
-"whois <nickname> - get profile info on user\n"
-"lose <nickname> - force user to stop following you\n"
-"fav <nickname> - add user's last notice as a 'fave'\n"
-"fav #<notice_id> - add notice with the given id as a 'fave'\n"
-"repeat #<notice_id> - repeat a notice with a given id\n"
-"repeat <nickname> - repeat the last notice from user\n"
-"reply #<notice_id> - reply to notice with a given id\n"
-"reply <nickname> - reply to the last notice from user\n"
-"join <group> - join group\n"
-"login - Get a link to login to the web interface\n"
-"drop <group> - leave group\n"
-"stats - get your stats\n"
-"stop - same as 'off'\n"
-"quit - same as 'off'\n"
-"sub <nickname> - same as 'follow'\n"
-"unsub <nickname> - same as 'leave'\n"
-"last <nickname> - same as 'get'\n"
-"on <nickname> - not yet implemented.\n"
-"off <nickname> - not yet implemented.\n"
-"nudge <nickname> - remind a user to update.\n"
-"invite <phone number> - not yet implemented.\n"
-"track <word> - not yet implemented.\n"
-"untrack <word> - not yet implemented.\n"
-"track off - not yet implemented.\n"
-"untrack all - not yet implemented.\n"
-"tracks - not yet implemented.\n"
-"tracking - not yet implemented.\n"
-msgstr ""
-"Comandos:\n"
-"on - ligar notificações\n"
-"off - desligar notificações\n"
-"help - mostrar esta ajuda\n"
-"follow <utilizador> - subscrever este utilizador\n"
-"groups - lista os grupos a que se juntou\n"
-"subscriptions - lista as pessoas que está a seguir\n"
-"subscribers - lista as pessoas que estão a segui-lo(a)\n"
-"leave <utilizador> - deixar de subscrever este utilizador\n"
-"d <utilizador> <texto> - mensagem directa para o utilizador\n"
-"get <utilizador> - receber última nota do utilizador\n"
-"whois <utilizador> - receber perfil do utilizador\n"
-"lose <utilizador> - obrigar o utilizador a deixar de subscrevê-lo\n"
-"fav <utilizador> - adicionar última nota do utilizador às favoritas\n"
-"fav #<id_da_nota> - adicionar nota com esta identificação às favoritas\n"
-"repeat #<id_da_nota> - repetir uma nota com uma certa identificação\n"
-"repeat <utilizador> - repetir a última nota do utilizador\n"
-"reply #<id_da_nota> - responder à nota com esta identificação\n"
-"reply <utilizador> - responder à última nota do utilizador\n"
-"join <grupo> - juntar-se ao grupo\n"
-"login - Receber uma ligação para iniciar sessão na interface web\n"
-"drop <grupo> - afastar-se do grupo\n"
-"stats - receber as suas estatísticas\n"
-"stop - o mesmo que 'off'\n"
-"quit - o mesmo que 'off'\n"
-"sub <utilizador> - o mesmo que 'follow'\n"
-"unsub <utilizador> - o mesmo que 'leave'\n"
-"last <utilizador> - o mesmo que 'get'\n"
-"on <utilizador> - ainda não implementado.\n"
-"off <utilizador> - ainda não implementado.\n"
-"nudge <utilizador> - relembrar um utilizador para actualizar.\n"
-"invite <número de telefone> - ainda não implementado.\n"
-"track <palavra> - ainda não implementado.\n"
-"untrack <palavra> - ainda não implementado.\n"
-"track off - ainda não implementado.\n"
-"untrack all - ainda não implementado.\n"
-"tracks - ainda não implementado.\n"
-"tracking - ainda não implementado.\n"
+#. TRANS: Header line of help text for commands.
+#, fuzzy
+msgctxt "COMMANDHELP"
+msgid "Commands:"
+msgstr "Resultados do comando"
 
-#. TRANS: Error message displayed when no configuration file was found for a StatusNet installation.
-#: lib/common.php:147
+#. TRANS: Help message for IM/SMS command "on"
 #, fuzzy
-msgid "No configuration file found."
+msgctxt "COMMANDHELP"
+msgid "turn on notifications"
+msgstr "Não foi possível ligar a notificação."
+
+#. TRANS: Help message for IM/SMS command "off"
+#, fuzzy
+msgctxt "COMMANDHELP"
+msgid "turn off notifications"
+msgstr "Não foi possível desligar a notificação."
+
+#. TRANS: Help message for IM/SMS command "help"
+msgctxt "COMMANDHELP"
+msgid "show this help"
+msgstr ""
+
+#. TRANS: Help message for IM/SMS command "follow <nickname>"
+#, fuzzy
+msgctxt "COMMANDHELP"
+msgid "subscribe to user"
+msgstr "Subscrever este utilizador"
+
+#. TRANS: Help message for IM/SMS command "groups"
+msgctxt "COMMANDHELP"
+msgid "lists the groups you have joined"
+msgstr ""
+
+#. TRANS: Help message for IM/SMS command "subscriptions"
+msgctxt "COMMANDHELP"
+msgid "list the people you follow"
+msgstr ""
+
+#. TRANS: Help message for IM/SMS command "subscribers"
+msgctxt "COMMANDHELP"
+msgid "list the people that follow you"
+msgstr ""
+
+#. TRANS: Help message for IM/SMS command "leave <nickname>"
+#, fuzzy
+msgctxt "COMMANDHELP"
+msgid "unsubscribe from user"
+msgstr "Deixar de subscrever este utilizador"
+
+#. TRANS: Help message for IM/SMS command "d <nickname> <text>"
+#, fuzzy
+msgctxt "COMMANDHELP"
+msgid "direct message to user"
+msgstr "Mensagens directas para %s"
+
+#. TRANS: Help message for IM/SMS command "get <nickname>"
+msgctxt "COMMANDHELP"
+msgid "get last notice from user"
+msgstr ""
+
+#. TRANS: Help message for IM/SMS command "whois <nickname>"
+#, fuzzy
+msgctxt "COMMANDHELP"
+msgid "get profile info on user"
+msgstr "Informação do perfil"
+
+#. TRANS: Help message for IM/SMS command "lose <nickname>"
+msgctxt "COMMANDHELP"
+msgid "force user to stop following you"
+msgstr ""
+
+#. TRANS: Help message for IM/SMS command "fav <nickname>"
+msgctxt "COMMANDHELP"
+msgid "add user's last notice as a 'fave'"
+msgstr ""
+
+#. TRANS: Help message for IM/SMS command "fav #<notice_id>"
+msgctxt "COMMANDHELP"
+msgid "add notice with the given id as a 'fave'"
+msgstr ""
+
+#. TRANS: Help message for IM/SMS command "repeat #<notice_id>"
+msgctxt "COMMANDHELP"
+msgid "repeat a notice with a given id"
+msgstr ""
+
+#. TRANS: Help message for IM/SMS command "repeat <nickname>"
+#, fuzzy
+msgctxt "COMMANDHELP"
+msgid "repeat the last notice from user"
+msgstr "Repetir esta nota"
+
+#. TRANS: Help message for IM/SMS command "reply #<notice_id>"
+msgctxt "COMMANDHELP"
+msgid "reply to notice with a given id"
+msgstr ""
+
+#. TRANS: Help message for IM/SMS command "reply <nickname>"
+#, fuzzy
+msgctxt "COMMANDHELP"
+msgid "reply to the last notice from user"
+msgstr "Responder a esta nota"
+
+#. TRANS: Help message for IM/SMS command "join <group>"
+#, fuzzy
+msgctxt "COMMANDHELP"
+msgid "join group"
+msgstr "Grupo desconhecido."
+
+#. TRANS: Help message for IM/SMS command "login"
+msgctxt "COMMANDHELP"
+msgid "Get a link to login to the web interface"
+msgstr ""
+
+#. TRANS: Help message for IM/SMS command "drop <group>"
+#, fuzzy
+msgctxt "COMMANDHELP"
+msgid "leave group"
+msgstr "Apagar grupo"
+
+#. TRANS: Help message for IM/SMS command "stats"
+msgctxt "COMMANDHELP"
+msgid "get your stats"
+msgstr ""
+
+#. TRANS: Help message for IM/SMS command "stop"
+#. TRANS: Help message for IM/SMS command "quit"
+msgctxt "COMMANDHELP"
+msgid "same as 'off'"
+msgstr ""
+
+#. TRANS: Help message for IM/SMS command "sub <nickname>"
+msgctxt "COMMANDHELP"
+msgid "same as 'follow'"
+msgstr ""
+
+#. TRANS: Help message for IM/SMS command "unsub <nickname>"
+msgctxt "COMMANDHELP"
+msgid "same as 'leave'"
+msgstr ""
+
+#. TRANS: Help message for IM/SMS command "last <nickname>"
+msgctxt "COMMANDHELP"
+msgid "same as 'get'"
+msgstr ""
+
+#. TRANS: Help message for IM/SMS command "on <nickname>"
+#. TRANS: Help message for IM/SMS command "off <nickname>"
+#. TRANS: Help message for IM/SMS command "invite <phone number>"
+#. TRANS: Help message for IM/SMS command "track <word>"
+#. TRANS: Help message for IM/SMS command "untrack <word>"
+#. TRANS: Help message for IM/SMS command "track off"
+#. TRANS: Help message for IM/SMS command "untrack all"
+#. TRANS: Help message for IM/SMS command "tracks"
+#. TRANS: Help message for IM/SMS command "tracking"
+#, fuzzy
+msgctxt "COMMANDHELP"
+msgid "not yet implemented."
+msgstr "Comando ainda não implementado."
+
+#. TRANS: Help message for IM/SMS command "nudge <nickname>"
+msgctxt "COMMANDHELP"
+msgid "remind a user to update."
+msgstr ""
+
+#. TRANS: Error message displayed when no configuration file was found for a StatusNet installation.
+#, 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:150
 #, 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:153
 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:157
 msgid "Go to the installer."
 msgstr "Ir para o instalador."
 
-#. TRANS: Menu item for Instant Messaging settings.
-#: lib/connectsettingsaction.php:106
-#, fuzzy
-msgctxt "MENU"
-msgid "IM"
-msgstr "MI"
+msgid "Database error"
+msgstr "Erro de base de dados"
 
-#. TRANS: Tooltip for Instant Messaging menu item.
-#: lib/connectsettingsaction.php:108
-msgid "Updates by instant messenger (IM)"
-msgstr "Actualizações por mensagem instantânea (MI)"
+msgid "Public"
+msgstr "Público"
+
+#. TRANS: Description of form for deleting a user.
+msgid "Delete this user"
+msgstr "Apagar este utilizador"
 
-#. TRANS: Menu item for Short Message Service settings.
-#: lib/connectsettingsaction.php:113
 #, fuzzy
-msgctxt "MENU"
-msgid "SMS"
-msgstr "SMS"
+msgid "Change design"
+msgstr "Gravar o estilo"
 
-#. TRANS: Tooltip for Short Message Service menu item.
-#: lib/connectsettingsaction.php:115
-msgid "Updates by SMS"
-msgstr "Actualizações por SMS"
+#. TRANS: Fieldset legend on profile design page to change profile page colours.
+msgid "Change colours"
+msgstr "Alterar cores"
 
-#. TRANS: Menu item for OuAth connection settings.
-#: lib/connectsettingsaction.php:120
-#, fuzzy
-msgctxt "MENU"
-msgid "Connections"
-msgstr "Ligações"
+#. TRANS: Button text on profile design page to immediately reset all colour settings to default.
+msgid "Use defaults"
+msgstr "Usar predefinições"
 
-#. TRANS: Tooltip for connected applications (Connections through OAuth) menu item.
-#: lib/connectsettingsaction.php:122
-msgid "Authorized connected applications"
-msgstr "Aplicações ligadas autorizadas"
+#. TRANS: Title for button on profile design page to reset all colour settings to default.
+msgid "Restore default designs"
+msgstr "Repor estilos predefinidos"
 
-#: lib/dberroraction.php:59
-msgid "Database error"
-msgstr "Erro de base de dados"
+#. TRANS: Title for button on profile design page to reset all colour settings to default without saving.
+msgid "Reset back to default"
+msgstr "Repor predefinição"
 
 #. 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:104
 msgid "Upload file"
 msgstr "Carregar ficheiro"
 
 #. TRANS: Instructions for form on profile design page.
-#: lib/designsettings.php:109
 msgid ""
-"You can upload your personal background image. The maximum file size is 2MB."
+"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."
+"2Mb."
 
 #. 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: Button text on profile design page to reset all colour settings to default without saving.
-#: lib/designsettings.php:264
-#, fuzzy
-msgctxt "BUTTON"
-msgid "Reset"
-msgstr "Reiniciar"
+#. TRANS: Title for button on profile design page to save settings.
+msgid "Save design"
+msgstr "Gravar o estilo"
+
+#. 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".
+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.
+#, 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.
 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.
+#, 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.
 msgid "Favor this notice"
 msgstr "Eleger esta nota como favorita"
 
-#: lib/feed.php:84
+#. TRANS: Button text for adding the favourite status to a notice.
+#, fuzzy
+msgctxt "BUTTON"
+msgid "Favor"
+msgstr "Eleger como favorita"
+
 msgid "RSS 1.0"
 msgstr "RSS 1.0"
 
-#: lib/feed.php:86
 msgid "RSS 2.0"
 msgstr "RSS 2.0"
 
-#: lib/feed.php:88
 msgid "Atom"
 msgstr "Atom"
 
-#: lib/feed.php:90
 msgid "FOAF"
 msgstr "FOAF"
 
+#, fuzzy
+msgid "Not an atom feed."
+msgstr "Todos os membros"
+
+msgid "No author in the feed."
+msgstr ""
+
+msgid "Can't import without a user."
+msgstr ""
+
 #. TRANS: Header for feed links (h2).
-#: lib/feedlist.php:66
 msgid "Feeds"
 msgstr ""
 
-#: lib/galleryaction.php:121
-msgid "Filter tags"
-msgstr "Filtrar categorias"
-
-#: lib/galleryaction.php:131
 msgid "All"
 msgstr "Todas"
 
-#: lib/galleryaction.php:139
 msgid "Select tag to filter"
 msgstr "Seleccione uma categoria para filtrar"
 
-#: lib/galleryaction.php:140
 msgid "Tag"
 msgstr "Categoria"
 
-#: lib/galleryaction.php:141
 msgid "Choose a tag to narrow list"
 msgstr "Escolha uma categoria para reduzir a lista"
 
-#: lib/galleryaction.php:143
 msgid "Go"
 msgstr "Prosseguir"
 
-#: lib/grantroleform.php:91
 #, php-format
 msgid "Grant this user the \"%s\" role"
 msgstr "Atribuir a este utilizador a função \"%s\""
 
-#: lib/groupeditform.php:154
 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:163
 #, 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
 msgid "Describe the group or topic"
 msgstr "Descreva o grupo ou assunto"
 
-#: lib/groupeditform.php:170
 #, 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:182
 #, fuzzy
 msgid ""
 "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:190
+msgid "Aliases"
+msgstr "Nomes alternativos"
+
 #, fuzzy, php-format
 msgid ""
 "Extra nicknames for the group, separated with commas or spaces. Maximum %d "
@@ -7561,64 +7147,60 @@ 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.
-#: lib/groupnav.php:86
 msgctxt "MENU"
 msgid "Group"
 msgstr "Grupo"
 
 #. TRANS: Tooltip for menu item in the group navigation page.
 #. TRANS: %s is the nickname of the group.
-#: lib/groupnav.php:89
 #, php-format
 msgctxt "TOOLTIP"
 msgid "%s group"
 msgstr "Grupo %s"
 
 #. TRANS: Menu item in the group navigation page.
-#: lib/groupnav.php:95
 msgctxt "MENU"
 msgid "Members"
 msgstr "Membros"
 
 #. TRANS: Tooltip for menu item in the group navigation page.
 #. TRANS: %s is the nickname of the group.
-#: lib/groupnav.php:98
 #, php-format
 msgctxt "TOOLTIP"
 msgid "%s group members"
 msgstr "Membros do grupo %s"
 
 #. TRANS: Menu item in the group navigation page. Only shown for group administrators.
-#: lib/groupnav.php:108
 msgctxt "MENU"
 msgid "Blocked"
 msgstr "Bloqueado"
 
 #. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators.
 #. TRANS: %s is the nickname of the group.
-#: lib/groupnav.php:111
 #, php-format
 msgctxt "TOOLTIP"
 msgid "%s blocked users"
 msgstr "Utilizadores bloqueados de %s"
 
+#. TRANS: Menu item in the group navigation page. Only shown for group administrators.
+msgctxt "MENU"
+msgid "Admin"
+msgstr "Gestor"
+
 #. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators.
 #. TRANS: %s is the nickname of the group.
-#: lib/groupnav.php:120
 #, php-format
 msgctxt "TOOLTIP"
 msgid "Edit %s group properties"
 msgstr "Editar propriedades do grupo %s"
 
 #. TRANS: Menu item in the group navigation page. Only shown for group administrators.
-#: lib/groupnav.php:126
 msgctxt "MENU"
 msgid "Logo"
 msgstr "Logótipo"
 
 #. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators.
 #. TRANS: %s is the nickname of the group.
-#: lib/groupnav.php:129
 #, php-format
 msgctxt "TOOLTIP"
 msgid "Add or edit %s logo"
@@ -7626,68 +7208,61 @@ msgstr "Adicionar ou editar o logótipo de %s"
 
 #. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators.
 #. TRANS: %s is the nickname of the group.
-#: lib/groupnav.php:138
 #, php-format
 msgctxt "TOOLTIP"
 msgid "Add or edit %s design"
 msgstr "Adicionar ou editar o design de %s"
 
+#. TRANS: Group actions header (h2). Text hidden by default.
+msgid "Group actions"
+msgstr "Acções do grupo"
+
 #. 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"
 
 #. 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"
 
 #. TRANS: Client exception 406
-#: lib/htmloutputter.php:104
 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.
 msgid "Unsupported image file format."
 msgstr "Formato do ficheiro da imagem não é suportado."
 
 #. 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:90
 #, 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:95
+#. TRANS: Exception thrown when uploading an image and that action could not be completed.
 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:103 lib/mediafile.php:228
-msgid "System error uploading file."
-msgstr "Ocorreu um erro de sistema ao transferir o ficheiro."
-
-#: lib/imagefile.php:111
+#. TRANS: Exception thrown when uploading a file as image that is not an image or is a corrupt file.
 msgid "Not an image or corrupt file."
 msgstr "Ficheiro não é uma imagem ou está corrompido."
 
-#: lib/imagefile.php:160
+#. TRANS: Exception thrown during resize when image has been registered as present, but is no longer there.
 msgid "Lost our file."
 msgstr "Perdi o nosso ficheiro."
 
-#: lib/imagefile.php:197 lib/imagefile.php:237
+#. TRANS: Exception thrown when trying to resize an unknown file type.
+#. TRANS: Exception thrown when trying resize an unknown file type.
 msgid "Unknown file type"
 msgstr "Tipo do ficheiro é desconhecido"
 
 #. TRANS: Number of megabytes. %d is the number.
-#: lib/imagefile.php:283
 #, fuzzy, php-format
 msgid "%dMB"
 msgid_plural "%dMB"
@@ -7695,7 +7270,6 @@ msgstr[0] "MB"
 msgstr[1] "MB"
 
 #. TRANS: Number of kilobytes. %d is the number.
-#: lib/imagefile.php:287
 #, fuzzy, php-format
 msgid "%dkB"
 msgid_plural "%dkB"
@@ -7703,44 +7277,57 @@ msgstr[0] "kB"
 msgstr[1] "kB"
 
 #. TRANS: Number of bytes. %d is the number.
-#: lib/imagefile.php:290
 #, php-format
 msgid "%dB"
 msgid_plural "%dB"
 msgstr[0] ""
 msgstr[1] ""
 
-#: lib/jabber.php:387
 #, php-format
-msgid "[%s]"
-msgstr "[%s]"
+msgid ""
+"User \"%s\" on %s has said that your %s screenname belongs to them. If "
+"that's true, you can confirm by clicking on this URL: %s . (If you cannot "
+"click it, copy-and-paste it into the address bar of your browser). If that "
+"user isn't you, or if you didn't request this confirmation, just ignore this "
+"message."
+msgstr ""
 
-#: lib/jabber.php:567
 #, php-format
 msgid "Unknown inbox source %d."
 msgstr "Origem da caixa de entrada desconhecida \"%s\"."
 
-#: lib/leaveform.php:114
+#, 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."
+
 msgid "Leave"
 msgstr "Afastar-me"
 
-#: lib/logingroupnav.php:80
+#. TRANS: Menu item for logging in to the StatusNet site.
+msgctxt "MENU"
+msgid "Login"
+msgstr "Entrar"
+
+#. TRANS: Title for menu item for logging in to the StatusNet site.
 msgid "Login with a username and password"
 msgstr "Iniciar sessão com um nome de utilizador e senha"
 
-#: lib/logingroupnav.php:86
+#. TRANS: Menu item for registering with the StatusNet site.
+msgctxt "MENU"
+msgid "Register"
+msgstr "Registar"
+
+#. TRANS: Title for menu item for registering with the StatusNet site.
 msgid "Sign up for a new account"
 msgstr "Registar uma conta nova"
 
 #. TRANS: Subject for address confirmation email.
-#: lib/mail.php:174
 msgid "Email address confirmation"
 msgstr "Confirmação do endereço electrónico"
 
 #. TRANS: Body for address confirmation email.
 #. 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:179
 #, fuzzy, php-format
 msgid ""
 "Hey, %1$s.\n"
@@ -7771,14 +7358,12 @@ msgstr ""
 
 #. 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:246
 #, 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."
 
 #. 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:253
 #, php-format
 msgid ""
 "If you believe this account is being used abusively, you can block them from "
@@ -7793,7 +7378,6 @@ msgstr ""
 #. 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:263
 #, fuzzy, php-format
 msgid ""
 "%1$s is now listening to your notices on %2$s.\n"
@@ -7821,14 +7405,12 @@ msgstr ""
 
 #. TRANS: Profile info line in new-subscriber notification e-mail.
 #. TRANS: %s is biographical information.
-#: lib/mail.php:286
 #, php-format
 msgid "Bio: %s"
 msgstr "Bio: %s"
 
 #. TRANS: Subject of notification mail for new posting email address.
 #. TRANS: %s is the StatusNet sitename.
-#: lib/mail.php:315
 #, php-format
 msgid "New email address for posting to %s"
 msgstr "Novo endereço electrónico para publicar no site %s"
@@ -7836,7 +7418,6 @@ msgstr "Novo endereço electrónico para publicar no site %s"
 #. 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:321
 #, fuzzy, php-format
 msgid ""
 "You have a new posting address on %1$s.\n"
@@ -7859,34 +7440,29 @@ msgstr ""
 
 #. TRANS: Subject line for SMS-by-email notification messages.
 #. TRANS: %s is the posting user's nickname.
-#: lib/mail.php:442
 #, php-format
 msgid "%s status"
 msgstr "Estado de %s"
 
 #. TRANS: Subject line for SMS-by-email address confirmation message.
-#: lib/mail.php:468
 msgid "SMS confirmation"
 msgstr "Confirmação SMS"
 
 #. TRANS: Main body heading for SMS-by-email address confirmation message.
 #. TRANS: %s is the addressed user's nickname.
-#: lib/mail.php:472
 #, 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.
 #. TRANS: %s is the nudging user.
-#: lib/mail.php:493
-#, php-format
-msgid "You've been nudged by %s"
+#, fuzzy, php-format
+msgid "You have been nudged by %s"
 msgstr "%s envia-lhe um toque"
 
 #. 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:500
 #, php-format
 msgid ""
 "%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -7915,7 +7491,6 @@ msgstr ""
 
 #. TRANS: Subject for direct-message notification email.
 #. TRANS: %s is the sending user's nickname.
-#: lib/mail.php:547
 #, php-format
 msgid "New private message from %s"
 msgstr "Nova mensagem privada de %s"
@@ -7924,7 +7499,6 @@ msgstr "Nova mensagem privada de %s"
 #. 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:555
 #, php-format
 msgid ""
 "%1$s (%2$s) sent you a private message:\n"
@@ -7959,7 +7533,6 @@ msgstr ""
 
 #. 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:607
 #, fuzzy, php-format
 msgid "%1$s (@%2$s) added your notice as a favorite"
 msgstr "%s (@%s) adicionou a sua nota às favoritas."
@@ -7969,7 +7542,6 @@ msgstr "%s (@%s) adicionou a sua nota às favoritas."
 #. 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:614
 #, php-format
 msgid ""
 "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -8007,7 +7579,6 @@ msgstr ""
 "%6$s\n"
 
 #. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
-#: lib/mail.php:672
 #, php-format
 msgid ""
 "The full conversation can be read here:\n"
@@ -8020,7 +7591,6 @@ msgstr ""
 
 #. 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:680
 #, fuzzy, php-format
 msgid "%1$s (@%2$s) sent a notice to your attention"
 msgstr "%s (@%s) enviou uma nota à sua atenção"
@@ -8031,7 +7601,6 @@ msgstr "%s (@%s) enviou uma nota à sua atenção"
 #. 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:688
 #, php-format
 msgid ""
 "%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -8081,11 +7650,9 @@ msgstr ""
 "\n"
 "P.S. Pode desligar estas notificações electrónicas aqui: %8$s\n"
 
-#: lib/mailbox.php:89
 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
 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."
@@ -8094,93 +7661,57 @@ msgstr ""
 "conversa com outros utilizadores. Outros podem enviar-lhe mensagens, a que "
 "só você terá acesso."
 
-#: lib/mailbox.php:228 lib/noticelist.php:521
-msgid "from"
-msgstr "a partir de"
+msgid "Inbox"
+msgstr "Recebidas"
+
+msgid "Your incoming messages"
+msgstr "Mensagens recebidas"
+
+msgid "Outbox"
+msgstr "Enviadas"
+
+msgid "Your sent messages"
+msgstr "Mensagens enviadas"
 
-#: lib/mailhandler.php:37
 msgid "Could not parse message."
 msgstr "Não foi possível fazer a análise sintáctica da mensagem."
 
-#: lib/mailhandler.php:42
 msgid "Not a registered user."
 msgstr "Não é um utilizador registado."
 
-#: lib/mailhandler.php:46
 msgid "Sorry, that is not your incoming email address."
 msgstr "Desculpe, esse não é o seu endereço para receber correio electrónico."
 
-#: lib/mailhandler.php:50
 msgid "Sorry, no incoming email allowed."
 msgstr "Desculpe, não lhe é permitido receber correio electrónico."
 
-#: 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: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: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.
-#: 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.
-#: 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.
-#: 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.
-#: 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.
-#: 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 would cause a user to exceed a set quota.
-#: 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: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: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:394
 #, php-format
 msgid ""
 "\"%1$s\" is not a supported file type on this server. Try using another %2$s "
@@ -8191,84 +7722,89 @@ msgstr ""
 
 #. TRANS: Client exception thrown trying to upload a forbidden MIME type.
 #. TRANS: %s is the file type that was denied.
-#: lib/mediafile.php:399
 #, php-format
 msgid "\"%s\" is not a supported file type on this server."
 msgstr "\"%s\" não é um tipo de ficheiro suportado neste servidor."
 
-#: lib/messageform.php:120
 msgid "Send a direct notice"
 msgstr "Enviar uma nota directa"
 
 #. 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:166 lib/noticeform.php:186
-msgid "Available characters"
-msgstr "Caracteres disponíveis"
-
-#: lib/messageform.php:185 lib/noticeform.php:237
 msgctxt "Send button for sending notice"
 msgid "Send"
 msgstr "Enviar"
 
-#. TRANS: Validation error in form for registration, profile and group settings, etc.
-#: lib/nickname.php:145
-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."
+#, fuzzy
+msgid "Messages"
+msgstr "Mensagem"
+
+msgid "from"
+msgstr "a partir de"
+
+msgid "Can't get author for activity."
+msgstr ""
+
+#, fuzzy
+msgid "Bookmark not posted to this group."
+msgstr "Não tens permissão para apagar este grupo."
+
+#, fuzzy
+msgid "Object not posted to this user."
+msgstr "Não apagues este utilizador."
+
+msgid "Don't know how to handle this kind of target."
+msgstr ""
 
 #. TRANS: Validation error in form for registration, profile and group settings, etc.
-#: lib/nickname.php:158
 msgid "Nickname cannot be empty."
 msgstr ""
 
 #. TRANS: Validation error in form for registration, profile and group settings, etc.
-#: lib/nickname.php:171
 #, 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
+#. TRANS: Form legend for notice form.
 msgid "Send a notice"
 msgstr "Enviar uma nota"
 
-#: lib/noticeform.php:174
+#. TRANS: Title for notice label. %s is the user's nickname.
 #, php-format
 msgid "What's up, %s?"
 msgstr "Novidades, %s?"
 
-#: lib/noticeform.php:193
+#. TRANS: Input label in notice form for adding an attachment.
 msgid "Attach"
 msgstr "Anexar"
 
-#: lib/noticeform.php:197
-msgid "Attach a file"
+#. TRANS: Title for input field to attach a file to a notice.
+#, fuzzy
+msgid "Attach a file."
 msgstr "Anexar um ficheiro"
 
-#: lib/noticeform.php:213
+#. TRANS: Field label to add location to a notice.
 msgid "Share my location"
 msgstr "Partilhar a minha localização."
 
-#: lib/noticeform.php:216
+#. TRANS: Text to not share location for a notice in notice form.
 msgid "Do not share my location"
 msgstr "Não partilhar a minha localização"
 
-#: lib/noticeform.php:217
+#. TRANS: Timeout error text for location retrieval in notice form.
 msgid ""
 "Sorry, retrieving your geo location is taking longer than expected, please "
 "try again later"
@@ -8277,339 +7813,372 @@ msgstr ""
 "tente novamente mais tarde"
 
 #. TRANS: Used in coordinates as abbreviation of north
-#: lib/noticelist.php:451
 msgid "N"
 msgstr "N"
 
 #. TRANS: Used in coordinates as abbreviation of south
-#: lib/noticelist.php:453
 msgid "S"
 msgstr "S"
 
 #. TRANS: Used in coordinates as abbreviation of east
-#: lib/noticelist.php:455
 msgid "E"
 msgstr "E"
 
 #. TRANS: Used in coordinates as abbreviation of west
-#: lib/noticelist.php:457
 msgid "W"
 msgstr "O"
 
-#: lib/noticelist.php:459
 #, 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:468
 msgid "at"
 msgstr "coords."
 
-#: lib/noticelist.php:517
 msgid "web"
 msgstr "web"
 
-#: lib/noticelist.php:583
 msgid "in context"
 msgstr "no contexto"
 
-#: lib/noticelist.php:618
 msgid "Repeated by"
 msgstr "Repetida por"
 
-#: lib/noticelist.php:645
 msgid "Reply to this notice"
 msgstr "Responder a esta nota"
 
-#: lib/noticelist.php:646
 msgid "Reply"
 msgstr "Responder"
 
-#: lib/noticelist.php:690
+msgid "Delete this notice"
+msgstr "Apagar esta nota"
+
 msgid "Notice repeated"
 msgstr "Nota repetida"
 
-#: lib/nudgeform.php:116
+msgid "Update your status..."
+msgstr ""
+
 msgid "Nudge this user"
 msgstr "Tocar este utilizador"
 
-#: lib/nudgeform.php:128
 msgid "Nudge"
 msgstr "Tocar"
 
-#: lib/nudgeform.php:128
 msgid "Send a nudge to this user"
 msgstr "Enviar toque a este utilizador"
 
-#: lib/oauthstore.php:294
 msgid "Error inserting new profile."
 msgstr "Erro ao inserir perfil novo."
 
-#: lib/oauthstore.php:302
 msgid "Error inserting avatar."
 msgstr "Erro ao inserir avatar."
 
-#: 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:362
 msgid "Duplicate notice."
 msgstr "Nota duplicada."
 
-#: lib/oauthstore.php:507
 msgid "Couldn't insert new subscription."
 msgstr "Não foi possível inserir nova subscrição."
 
-#: lib/personalgroupnav.php:102
-msgid "Personal"
-msgstr "Pessoal"
+#, fuzzy
+msgid "Your profile"
+msgstr "Perfil do grupo"
 
-#: lib/personalgroupnav.php:107
 msgid "Replies"
 msgstr "Respostas"
 
-#: lib/personalgroupnav.php:117
 msgid "Favorites"
 msgstr "Favoritas"
 
-#: lib/personalgroupnav.php:128
-msgid "Inbox"
-msgstr "Recebidas"
-
-#: lib/personalgroupnav.php:129
-msgid "Your incoming messages"
-msgstr "Mensagens recebidas"
-
-#: lib/personalgroupnav.php:133
-msgid "Outbox"
-msgstr "Enviadas"
-
-#: lib/personalgroupnav.php:134
-msgid "Your sent messages"
-msgstr "Mensagens enviadas"
-
-#: lib/personaltagcloudsection.php:56
+#. TRANS: Title for personal tag cloud section. %s is a user nickname.
 #, 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
 msgid "Unknown"
 msgstr "Desconhecida"
 
-#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
+#. TRANS: Plugin admin panel controls
+msgctxt "plugin"
+msgid "Disable"
+msgstr ""
+
+#. TRANS: Plugin admin panel controls
+msgctxt "plugin"
+msgid "Enable"
+msgstr ""
+
+msgctxt "plugin-description"
+msgid "(Plugin descriptions unavailable when disabled.)"
+msgstr ""
+
+msgid "Settings"
+msgstr "Configurações"
+
+#, fuzzy
+msgid "Change your personal settings"
+msgstr "Modificar as suas definições de perfil"
+
+#, fuzzy
+msgid "Site configuration"
+msgstr "Configuração do utilizador"
+
+msgid "Logout"
+msgstr "Sair"
+
+msgid "Logout from the site"
+msgstr "Terminar esta sessão"
+
+msgid "Login to the site"
+msgstr "Iniciar uma sessão"
+
+msgid "Search"
+msgstr "Pesquisa"
+
+msgid "Search the site"
+msgstr "Pesquisar no site"
+
+#. TRANS: H2 text for user subscription statistics.
+#. TRANS: Label for user statistics.
 msgid "Subscriptions"
 msgstr "Subscrições"
 
-#: lib/profileaction.php:126
+#. TRANS: Text for user subscription statistics if user has more subscriptions than displayed.
 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.
 msgid "Subscribers"
 msgstr "Subscritores"
 
-#: lib/profileaction.php:161
+#. TRANS: Text for user subscription statistics if user has more subscribers than displayed.
 msgid "All subscribers"
 msgstr "Todos os subscritores"
 
-#: lib/profileaction.php:191
+#. TRANS: Label for user statistics.
 msgid "User ID"
 msgstr "Número de identificação"
 
-#: lib/profileaction.php:196
+#. TRANS: Label for user statistics.
 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.
+msgid "Groups"
+msgstr "Grupos"
+
+#. TRANS: Label for user statistics.
+#. TRANS: Average count of posts made per day since account registration.
 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.
 msgid "All groups"
 msgstr "Todos os grupos"
 
-#: lib/profileformaction.php:123
+#. TRANS: Server error displayed when using an unimplemented method.
 msgid "Unimplemented method."
 msgstr "Método não implementado."
 
-#: lib/publicgroupnav.php:78
-msgid "Public"
-msgstr "Público"
-
-#: lib/publicgroupnav.php:82
 msgid "User groups"
 msgstr "Grupos"
 
-#: lib/publicgroupnav.php:84 lib/publicgroupnav.php:85
 msgid "Recent tags"
 msgstr "Categorias recentes"
 
-#: lib/publicgroupnav.php:88
 msgid "Featured"
 msgstr "Destaques"
 
-#: lib/publicgroupnav.php:92
 msgid "Popular"
 msgstr "Populares"
 
-#: lib/redirectingaction.php:95
 msgid "No return-to arguments."
 msgstr "Sem argumentos return-to."
 
-#: lib/repeatform.php:107
 msgid "Repeat this notice?"
 msgstr "Repetir esta nota?"
 
-#: lib/repeatform.php:132
 msgid "Yes"
 msgstr "Sim"
 
-#: lib/repeatform.php:132
 msgid "Repeat this notice"
 msgstr "Repetir esta nota"
 
-#: lib/revokeroleform.php:91
 #, php-format
 msgid "Revoke the \"%s\" role from this user"
 msgstr "Retirar a função \"%s\" a este utilizador"
 
 #. TRANS: Client error on action trying to visit a non-existing page.
-#: lib/router.php:938
 #, fuzzy
 msgid "Page not found."
 msgstr "Método da API não encontrado."
 
-#: lib/sandboxform.php:67
 msgid "Sandbox"
 msgstr "Bloquear notas públicas"
 
-#: lib/sandboxform.php:78
 msgid "Sandbox this user"
 msgstr "Impedir que notas deste utilizador sejam públicas"
 
 #. TRANS: Fieldset legend for the search form.
-#: 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:128
 msgid "Keyword(s)"
 msgstr "Categorias"
 
 #. TRANS: Button text for searching site.
-#: lib/searchaction.php:130
 msgctxt "BUTTON"
 msgid "Search"
 msgstr "Pesquisar"
 
-#. TRANS: Definition list item with instructions on how to get (better) search results.
-#: lib/searchaction.php:170
-msgid "Search help"
-msgstr "Pesquisar ajuda"
-
-#: lib/searchgroupnav.php:80
 msgid "People"
 msgstr "Pessoas"
 
-#: lib/searchgroupnav.php:81
 msgid "Find people on this site"
 msgstr "Procurar pessoas neste site"
 
-#: lib/searchgroupnav.php:83
 msgid "Find content of notices"
 msgstr "Procurar no conteúdo das notas"
 
-#: lib/searchgroupnav.php:85
 msgid "Find groups on this site"
 msgstr "Procurar grupos neste site"
 
-#: lib/section.php:89
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+msgid "Help"
+msgstr "Ajuda"
+
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+msgid "About"
+msgstr "Sobre"
+
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+msgid "FAQ"
+msgstr "FAQ"
+
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+msgid "TOS"
+msgstr "Termos"
+
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+msgid "Privacy"
+msgstr "Privacidade"
+
+#. TRANS: Secondary navigation menu option. Leads to information about StatusNet and its license.
+msgid "Source"
+msgstr "Código fonte"
+
+#. TRANS: Secondary navigation menu option leading to e-mail contact information on the
+#. TRANS: StatusNet site, where to report bugs, ...
+msgid "Contact"
+msgstr "Contacto"
+
+#. TRANS: Secondary navigation menu option. Leads to information about embedding a timeline widget.
+msgid "Badge"
+msgstr "Emblema"
+
 msgid "Untitled section"
 msgstr "Secção sem título"
 
-#: lib/section.php:106
 msgid "More..."
 msgstr "Mais..."
 
-#: lib/silenceform.php:67
+msgid "Change your profile settings"
+msgstr "Modificar as suas definições de perfil"
+
+msgid "Upload an avatar"
+msgstr "Carregar um avatar"
+
+msgid "Change your password"
+msgstr "Modificar a sua senha"
+
+msgid "Change email handling"
+msgstr "Alterar manuseamento de email"
+
+msgid "Design your profile"
+msgstr "Altere o estilo do seu perfil"
+
+msgid "URL"
+msgstr "URL"
+
+msgid "URL shorteners"
+msgstr ""
+
+msgid "Updates by instant messenger (IM)"
+msgstr "Actualizações por mensagem instantânea (MI)"
+
+msgid "Updates by SMS"
+msgstr "Actualizações por SMS"
+
+msgid "Connections"
+msgstr "Ligações"
+
+msgid "Authorized connected applications"
+msgstr "Aplicações ligadas autorizadas"
+
 msgid "Silence"
 msgstr "Silenciar"
 
-#: lib/silenceform.php:78
 msgid "Silence this user"
 msgstr "Silenciar este utilizador"
 
-#: lib/subgroupnav.php:83
 #, php-format
 msgid "People %s subscribes to"
 msgstr "Pessoas que %s subscreve"
 
-#: lib/subgroupnav.php:91
 #, php-format
 msgid "People subscribed to %s"
 msgstr "Pessoas que subscrevem %s"
 
-#: lib/subgroupnav.php:99
 #, php-format
 msgid "Groups %s is a member of"
 msgstr "Grupos de que %s é membro"
 
-#: lib/subgroupnav.php:105
 msgid "Invite"
 msgstr "Convidar"
 
-#: lib/subgroupnav.php:106
 #, php-format
 msgid "Invite friends and colleagues to join you on %s"
 msgstr "Convidar amigos e colegas para se juntarem a si em %s"
 
-#: lib/subscriberspeopleselftagcloudsection.php:48
-#: lib/subscriptionspeopleselftagcloudsection.php:48
+msgid "Subscribe to this user"
+msgstr "Subscrever este utilizador"
+
 msgid "People Tagcloud as self-tagged"
 msgstr "Nuvem da auto-categorização das pessoas"
 
-#: lib/subscriberspeopletagcloudsection.php:48
-#: lib/subscriptionspeopletagcloudsection.php:48
 msgid "People Tagcloud as tagged"
 msgstr "Nuvem da sua categorização das pessoas"
 
-#: lib/tagcloudsection.php:56
 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 ""
 "Este servidor não pode processar uploads de temas sem suporte do formato ZIP."
 
-#: lib/themeuploader.php:58 lib/themeuploader.php:61
 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: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."
 
-#: lib/themeuploader.php:147
 msgid "Invalid theme: bad directory structure."
 msgstr "Tema inválido: estrutura de directórios incorrecta."
 
-#: lib/themeuploader.php:166
 #, fuzzy, php-format
 msgid "Uploaded theme is too large; must be less than %d byte uncompressed."
 msgid_plural ""
@@ -8621,11 +8190,9 @@ msgstr[1] ""
 "O tema carregado é demasiado grande; tem de ter menos de %d bytes "
 "descomprimido."
 
-#: 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:219
 msgid ""
 "Theme contains invalid file or folder name. Stick with ASCII letters, "
 "digits, underscore, and minus sign."
@@ -8633,119 +8200,68 @@ 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: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: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:260
 msgid "Error opening theme archive."
 msgstr "Ocorreu um erro ao abrir o arquivo do tema."
 
-#: lib/topposterssection.php:74
+#, php-format
+msgid "Show %d reply"
+msgid_plural "Show all %d replies"
+msgstr[0] ""
+msgstr[1] ""
+
 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"
 
-#: lib/unsandboxform.php:80
 msgid "Unsandbox this user"
 msgstr "Permitir que notas deste utilizador sejam públicas"
 
-#: lib/unsilenceform.php:67
 msgid "Unsilence"
 msgstr "Dar-lhe voz"
 
-#: lib/unsilenceform.php:78
 msgid "Unsilence this user"
 msgstr "Permitir que este utilizador publique notas"
 
-#: lib/unsubscribeform.php:113 lib/unsubscribeform.php:137
 msgid "Unsubscribe from this user"
 msgstr "Deixar de subscrever este utilizador"
 
-#: lib/unsubscribeform.php:137
 msgid "Unsubscribe"
 msgstr "Abandonar"
 
 #. TRANS: Exception text shown when no profile can be found for a user.
 #. TRANS: %1$s is a user nickname, $2$d is a user ID (number).
-#: lib/usernoprofileexception.php:60
 #, fuzzy, php-format
 msgid "User %1$s (%2$d) has no profile record."
 msgstr "Utilizador não tem perfil."
 
-#: lib/userprofile.php:119
-msgid "Edit Avatar"
-msgstr "Editar Avatar"
-
-#: lib/userprofile.php:236 lib/userprofile.php:250
-msgid "User actions"
-msgstr "Acções do utilizador"
-
-#: lib/userprofile.php:239
-msgid "User deletion in progress..."
-msgstr "A apagar o utilizador..."
-
-#: lib/userprofile.php:265
-msgid "Edit profile settings"
-msgstr "Editar configurações do perfil"
-
-#: lib/userprofile.php:266
-msgid "Edit"
-msgstr "Editar"
-
-#: lib/userprofile.php:289
-msgid "Send a direct message to this user"
-msgstr "Enviar mensagem directa a este utilizador"
-
-#: lib/userprofile.php:290
-msgid "Message"
-msgstr "Mensagem"
-
-#: lib/userprofile.php:331
-msgid "Moderate"
-msgstr "Moderar"
-
-#: lib/userprofile.php:369
-msgid "User role"
-msgstr "Função"
-
-#: lib/userprofile.php:371
-msgctxt "role"
-msgid "Administrator"
-msgstr "Gestor"
-
-#: lib/userprofile.php:372
-msgctxt "role"
-msgid "Moderator"
-msgstr "Moderador"
+#, fuzzy
+msgid "Not allowed to log in."
+msgstr "Não iniciou sessão."
 
 #. TRANS: Used in notices to indicate when the notice was made compared to now.
-#: lib/util.php:1276
 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:1279
 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:1283
 #, php-format
 msgid "about one minute ago"
 msgid_plural "about %d minutes ago"
@@ -8753,12 +8269,10 @@ 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:1286
 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:1290
 #, php-format
 msgid "about one hour ago"
 msgid_plural "about %d hours ago"
@@ -8766,12 +8280,10 @@ 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:1293
 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:1297
 #, php-format
 msgid "about one day ago"
 msgid_plural "about %d days ago"
@@ -8779,12 +8291,10 @@ 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:1300
 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:1304
 #, php-format
 msgid "about one month ago"
 msgid_plural "about %d months ago"
@@ -8792,64 +8302,28 @@ 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:1307
 msgid "about a year ago"
 msgstr "há cerca de um ano"
 
-#: lib/webcolor.php:80
-#, php-format
-msgid "%s is not a valid color!"
-msgstr "%s não é uma cor válida!"
-
-#. TRANS: Validation error for a web colour.
-#. TRANS: %s is the provided (invalid) text for colour.
-#: lib/webcolor.php:120
+#. TRANS: Web color exception thrown when a hexadecimal color code does not validate.
+#. TRANS: %s is the provided (invalid) color code.
 #, 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."
 
-#. TRANS: %s is the URL to the StatusNet site's Instant Messaging settings.
-#: lib/xmppmanager.php:287
-#, php-format
-msgid "Unknown user. Go to %s to add your address to your account"
-msgstr ""
-
-#. 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:64
 #, fuzzy
 msgid "Invalid XML."
 msgstr "Tamanho inválido."
 
 #. TRANS: Exception.
-#: lib/xrd.php:69
 msgid "Invalid XML, missing XRD root."
 msgstr ""
 
 #. TRANS: Commandline script output. %s is the filename that contains a backup for a user.
-#: scripts/restoreuser.php:61
 #, php-format
 msgid "Getting backup from file '%s'."
 msgstr ""
 
-#. TRANS: Commandline script output.
-#: scripts/restoreuser.php:91
-#, fuzzy
-msgid "No user specified; using backup user."
-msgstr "Não foi especificado um ID de utilizador."
-
-#. TRANS: Commandline script output. %d is the number of entries in the activity stream in backup; used for plural.
-#: scripts/restoreuser.php:98
-#, php-format
-msgid "%d entry in backup."
-msgid_plural "%d entries in backup."
-msgstr[0] ""
-msgstr[1] ""
+#~ msgid "Invalid tag: \"%s\""
+#~ msgstr "Categoria inválida: \"%s\""