From 5680866ac5798fd09645d37c32304fe7e095783e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20=C3=85kre=20Solberg?= <andreas.solberg@uninett.no>
Date: Tue, 28 Oct 2008 18:39:43 +0000
Subject: [PATCH] added language portugese

git-svn-id: https://simplesamlphp.googlecode.com/svn/trunk@952 44740490-163a-0410-bde0-09ae8108e29a
---
 config-templates/config.php           |   2 +-
 dictionaries/admin.php                |  51 ++++++++++
 dictionaries/attributes.php           | 137 +++++++++++++++++++++++++-
 dictionaries/consent.php              |  14 +++
 dictionaries/disco.php                |   4 +
 dictionaries/errors.php               |  77 +++++++++++++++
 dictionaries/frontpage.php            |  38 +++++++
 dictionaries/login.php                |  19 ++++
 dictionaries/logout.php               |   3 +
 dictionaries/metashare.php            |  29 ++++++
 dictionaries/no_access_dictionary.php |   3 +
 dictionaries/openid.php               |  26 +++++
 dictionaries/status.php               |  10 ++
 13 files changed, 409 insertions(+), 4 deletions(-)

diff --git a/config-templates/config.php b/config-templates/config.php
index be6097919..3e97b7896 100644
--- a/config-templates/config.php
+++ b/config-templates/config.php
@@ -152,7 +152,7 @@ $config = array (
 	/*
 	 * Languages available and what language is default
 	 */
-	'language.available'	=> array('en', 'no', 'nn', 'se', 'fi', 'da', 'sv', 'de', 'es', 'fr', 'nl', 'lb', 'hr', 'hu', 'sl', 'pt-BR'),
+	'language.available'	=> array('en', 'no', 'nn', 'se', 'fi', 'da', 'sv', 'de', 'es', 'fr', 'nl', 'lb', 'hr', 'hu', 'sl', 'pt', 'pt-BR'),
 	'language.default'		=> 'en',
 	
 	/*
diff --git a/dictionaries/admin.php b/dictionaries/admin.php
index a030ae097..b1d14857e 100644
--- a/dictionaries/admin.php
+++ b/dictionaries/admin.php
@@ -12,6 +12,7 @@ $lang = array(
 		'sl' => 'Preverjanje konfiguracije',
 		'hr' => 'Provjera konfiguracije',
 		'hu' => 'Beállítások ellenőrzése',
+		'pt' => 'Verificação da configuração',
 		'pt-BR' => 'Verificar configuração',
 	),
 	'cfg_check_select_file' => array (
@@ -25,6 +26,7 @@ $lang = array(
 		'sl' => 'Izberite konfiguracijsko datoteko, ki jo Ĺľelite preveriti',
 		'hr' => 'Odaberite konfiguracijeku datoteku koju Ĺľelite provjeriti:',
 		'hu' => 'Válassza ki az ellenőrizendő konfigurációs állományt',
+		'pt' => 'Escolha o ficheiro de configuração a verificar:',
 		'pt-BR' => 'Selecione o arquivo de configuração para verificar',
 	),
 	'cfg_check_notices' => array (
@@ -37,6 +39,7 @@ $lang = array(
 		'sl' => 'Obvestila',
 		'hr' => 'Napomene',
 		'hu' => 'Megjegyzések',
+		'pt' => 'Observações',
 		'pt-BR' => 'Avisos',
 	),
 	'cfg_check_missing' => array (
@@ -50,6 +53,7 @@ $lang = array(
 		'sl' => 'V konfiguracijski datoteki manjkajo nastavitve',
 		'hr' => 'Opcije koje nedostaju u konfiguracijskoj datoteci',
 		'hu' => 'Hiányzó opciók a konfigurációs állományban',
+		'pt' => 'Opções ausentes do ficheiro de configuração',
 		'pt-BR' => 'Opções faltando no arquivo de configuração',
 	),
 	'cfg_check_superfluous' => array (
@@ -63,6 +67,7 @@ $lang = array(
 		'sl' => 'OdveÄŤne nastavitve v konfiguracijski datoteki',
 		'hr' => 'Suvišne opcije u konfiguracijskoj datoteci',
 		'hu' => 'Felesleges opciók a konfigurációs állományban',
+		'pt' => 'Opções supérfluas do ficheiro de configuração',
 		'pt-BR' => 'Opções supérfluas no arquivo de configuração',
 	),
 	'cfg_check_noerrors' => array (
@@ -76,6 +81,7 @@ $lang = array(
 		'sl' => 'Ni napak',
 		'hr' => 'Nije pronađena niti jedna greška.',
 		'hu' => 'Nincs hiba.',
+		'pt' => 'NĂŁo foram encontrados erros.',
 		'pt-BR' => 'NĂŁo foram encontrados erros.',
 	),
 	'cfg_check_back' => array (
@@ -89,6 +95,7 @@ $lang = array(
 		'sl' => 'Vrnite se na seznam datotek',
 		'hr' => 'Vrati se nazad na popis datoteka',
 		'hu' => 'Vissza az fájlok listájához',
+		'pt' => 'Voltar Ă  lista de ficheiros',
 		'pt-BR' => 'Voltar a lista de arquivos',
 	),
 	'metaover_header' => array (
@@ -102,6 +109,7 @@ $lang = array(
 		'sl' => 'Pregled metapodatkov',
 		'hr' => 'Pregled metapodataka',
 		'hu' => 'Metaadat áttekintés',
+		'pt' => 'Vista geral dos metadados',
 		'pt-BR' => 'VisĂŁo geral da metadata',
 	),
 	'metaover_intro' => array (
@@ -115,6 +123,7 @@ $lang = array(
 		'sl' => 'Za pregled podrobnosti SAML entitete, kliknite na glavo te entitete',
 		'hr' => 'Da biste pregledali detalje za SAML entitet, kliknite na zaglavlje SAML entiteta.',
 		'hu' => 'A SAML entitások részleteiért kattintson a SAML entitás fejlécére',
+		'pt' => 'Para obter detalhes sobre uma entidade SAML, clique no tĂ­tulo da entidade.',
 		'pt-BR' => 'Para ver os detalhes da entidade SAML, clique ',
 	),
 	'metaover_errorentry' => array (
@@ -128,6 +137,7 @@ $lang = array(
 		'sl' => 'Napaka pri vnosu metadate',
 		'hr' => 'Pogreška u zapisu metapodataka',
 		'hu' => 'Hiba ebben a metaadat bejegyzésben',
+		'pt' => 'Erro nesta entrada de metadados',
 		'pt-BR' => 'Erro na entrada desta metadata',
 	),
 	'metaover_required_found' => array (
@@ -141,6 +151,7 @@ $lang = array(
 		'sl' => 'Zahtevana polja',
 		'hr' => 'Obvezna polja',
 		'hu' => 'Kötelező mezők',
+		'pt' => 'Campos obrigatĂłrios',
 		'pt-BR' => 'Campos requeridos',
 	),
 	'metaover_required_not_found' => array (
@@ -154,6 +165,7 @@ $lang = array(
 		'sl' => 'Naslednja zahtevana polja ni bilo mogoce najti',
 		'hr' => 'Sljedeća obvezna polja nisu pronađena',
 		'hu' => 'A következő kötelező mezők hiányoznak',
+		'pt' => 'Os seguintes campos obrigatĂłrios nĂŁo foram encontrados',
 		'pt-BR' => 'Os seguintes campos requeridos nĂŁo foram encontrados',
 	),
 	'metaover_optional_found' => array (
@@ -167,6 +179,7 @@ $lang = array(
 		'sl' => 'Neobvezna polja',
 		'hr' => 'Opcionalna polja',
 		'hu' => 'Opcionális mező',
+		'pt' => 'Campos opcionais',
 		'pt-BR' => 'Campos opcionais',
 	),
 	'metaover_optional_not_found' => array (
@@ -180,6 +193,7 @@ $lang = array(
 		'sl' => 'Naslednja neobvezna polja ni bilo mogoÄŤe najti',
 		'hr' => 'Sljedeća opcionalna polja nisu pronađena',
 		'hu' => 'A következő opcionális mezők nem találhatók',
+		'pt' => 'Os seguintes campos opcionais nĂŁo foram encontrados',
 		'pt-BR' => 'Os seguintes campos opcionais nĂŁo foram encontrados',
 	),
 	'metaover_unknown_found' => array (
@@ -193,6 +207,7 @@ $lang = array(
 		'sl' => 'Nepoznana polja',
 		'hr' => 'Sljedeća polja nisu prepoznata',
 		'hu' => 'A következő mezők nem értelmezhetők',
+		'pt' => 'Os seguintes campos nĂŁo foram reconhecidos',
 		'pt-BR' => 'Os seguintes campos nĂŁo foram reconhecidos',
 	),
 	'metaover_group_metadata.saml20-sp-hosted' => array (
@@ -206,6 +221,7 @@ $lang = array(
 		'sl' => 'SAML 2.0 SP (Lokalni)',
 		'hr' => 'SAML 2.0 SP (lokalni)',
 		'hu' => 'SAML 2.0 alkalmazásszolgáltató (helyi)',
+		'pt' => 'Fornecedor de serviço (SP) SAML 2.0 (Local)',
 		'pt-BR' => 'SAML 2.0 Service Provider (Local)',
 	),
 	'metaover_group_metadata.saml20-sp-remote' => array (
@@ -219,6 +235,7 @@ $lang = array(
 		'sl' => 'SAML 2.0 SP (Oddaljeni)',
 		'hr' => 'SAML 2.0 SP (udaljeni)',
 		'hu' => 'SAML 2.0 alkalmazásszolgáltató (távoli)',
+		'pt' => 'Fornecedor de serviço (SP) SAML 2.0 (Remoto)',
 		'pt-BR' => 'SAML 2.0 Service Provider (Remoto)',
 	),
 	'metaover_group_metadata.saml20-idp-hosted' => array (
@@ -232,6 +249,7 @@ $lang = array(
 		'sl' => 'SAML 2.0 IdP (Lokalni)',
 		'hr' => 'SAML 2.0 IdP (lokalni)',
 		'hu' => 'SAML 2.0 személyazonosság-szolgáltató (helyi)',
+		'pt' => 'Fornecedor de identidade (IdP) SAML 2.0 (Local)',
 		'pt-BR' => 'SAML 2.0 Identity Provider (Local)',
 	),
 	'metaover_group_metadata.saml20-idp-remote' => array (
@@ -245,6 +263,7 @@ $lang = array(
 		'sl' => 'SAML 2.0 IdP (Oddaljeni)',
 		'hr' => 'SAML 2.0 IdP (udaljeni)',
 		'hu' => 'SAML 2.0  személyazonosság-szolgáltató (távoli)',
+		'pt' => 'Fornecedor de identidade (IdP) SAML 2.0 (Remoto)',
 		'pt-BR' => 'SAML 2.0 Identity Provider (Remoto)',
 	),
 	'metaover_group_metadata.shib13-sp-hosted' => array (
@@ -258,6 +277,7 @@ $lang = array(
 		'sl' => 'Shib 1.3 SP (Lokalni)',
 		'hr' => 'Shib 1.3 SP (lokalni)',
 		'hu' => 'Shib 1.3 alkalmazásszolgálató (helyi)',
+		'pt' => 'Fornecedor de serviço (SP) Shib 1.3 (Local)',
 		'pt-BR' => 'Shib 1.3 Service Provider (Local)',
 	),
 	'metaover_group_metadata.shib13-sp-remote' => array (
@@ -271,6 +291,7 @@ $lang = array(
 		'sl' => 'Shib 1.3 SP (Oddaljeni)',
 		'hr' => 'Shib 1.3 SP (udaljeni)',
 		'hu' => 'Shib 1.3 alkalmazásszolgáltató (távoli)',
+		'pt' => 'Fornecedor de serviço (SP) SAML 2.0 (Remoto)',
 		'pt-BR' => 'Shib 1.3 Service Provider (Remoto)',
 	),
 	'metaover_group_metadata.shib13-idp-hosted' => array (
@@ -284,6 +305,7 @@ $lang = array(
 		'sl' => 'Shib 1.3 SP (Lokalni)',
 		'hr' => 'Shib 1.3 IdP (lokalni)',
 		'hu' => 'Shib 1.3 személyazonosság-szolgáltató (helyi)',
+		'pt' => 'Fornecedor de identidade (IdP) Shib 1.3 (Local)',
 		'pt-BR' => 'Shib 1.3 Identity Provider (Local)',
 	),
 	'metaover_group_metadata.shib13-idp-remote' => array (
@@ -297,6 +319,7 @@ $lang = array(
 		'sl' => 'Shib 1.3 SP (Oddaljeni)',
 		'hr' => 'Shib 1.3 IdP (udaljeni)',
 		'hu' => 'Shib 1.3 személyazonosság-szolgáltató (távoli)',
+		'pt' => 'Fornecedor de identidade (IdP) Shib 1.3 (Remoto)',
 		'pt-BR' => 'Shib 1.3 Identity Provider (Remoto)',
 	),
 	'metaover_group_metadata.wsfed-sp-hosted' => array (
@@ -310,6 +333,7 @@ $lang = array(
 		'sl' => 'WS-Fedration SP (Lokalni)',
 		'hr' => 'WS-Federation SP (lokalni)',
 		'hu' => 'WS-Federation alkalmazásszolgáltató (helyi)',
+		'pt' => 'Fornecedor de serviço (SP) WS-Federation (Local)',
 		'pt-BR' => 'WS-Federation Service Provider (Local)',
 	),
 	'metaover_group_metadata.wsfed-idp-remote' => array (
@@ -323,6 +347,7 @@ $lang = array(
 		'sl' => 'WS-Federation Idp (Oddaljen)',
 		'hr' => 'WS-Federation IdP (udaljeni)',
 		'hu' => 'WS-Federation alkalmazásszolgáltató (távoli)',
+		'pt' => 'Fornecedor de identidade (IdP) WS-Federation (Remoto)',
 		'pt-BR' => 'WS-Federation Identity Provider (Remoto)',
 	),
 	'metaconv_title' => array (
@@ -336,6 +361,7 @@ $lang = array(
 		'sl' => 'Metapodatkovna sintaktiÄŤna analiza (parser)',
 		'hr' => 'Analizator metapodataka',
 		'hu' => 'Metaadat értelmező',
+		'pt' => 'Analisador gramatical de Metadados',
 		'pt-BR' => 'Parser Metadata',
 	),
 	'metaconv_xmlmetadata' => array (
@@ -349,6 +375,7 @@ $lang = array(
 		'sl' => 'XML metapodatki',
 		'hr' => 'XML metapodaci',
 		'hu' => 'XML metaadat',
+		'pt' => 'Metadados em XML',
 		'pt-BR' => 'Metadata XML',
 	),
 	'metaconv_parse' => array (
@@ -362,6 +389,7 @@ $lang = array(
 		'sl' => 'SintaktiÄŤna analiza (parse)',
 		'hr' => 'Analiziraj',
 		'hu' => 'Értelmez',
+		'pt' => 'Analisador gramatical',
 		'pt-BR' => 'Parse',
 	),
 	'metaconv_converted' => array (
@@ -375,6 +403,7 @@ $lang = array(
 		'sl' => 'Pretvorjeni metapodatki',
 		'hr' => 'Pretvoreni metapodaci',
 		'hu' => 'Konvertált metaadatok',
+		'pt' => 'Resultado da conversĂŁo de Metadados',
 		'pt-BR' => 'Metadata convetida',
 	),
 	'metadata_saml20-sp' => array (
@@ -388,6 +417,7 @@ $lang = array(
 		'sl' => 'SAML 2.0 SP Metapodatki',
 		'hr' => 'SAML 2.0 SP metapodaci',
 		'hu' => 'SAML 2.0 SP Metaadatok',
+		'pt' => 'Metadados SAML 2.0 SP',
 		'pt-BR' => 'SAML 2.0 SP Metadata',
 	),
 	'metadata_saml20-idp' => array (
@@ -401,6 +431,7 @@ $lang = array(
 		'sl' => 'SAML 2.0 IdP Metapodatki',
 		'hr' => 'SAML 2.0 IdP metapodaci',
 		'hu' => 'SAML 2.0 IdP Metaadatok',
+		'pt' => 'Metadados SAML 2.0 IdP',
 		'pt-BR' => 'SAML 2.0 IdP Metadata',
 	),
 	'metadata_shib13-sp' => array (
@@ -414,6 +445,7 @@ $lang = array(
 		'sl' => 'Shib 1.3 SP Metapodatki',
 		'hr' => 'Shib 1.3 SP metapodaci',
 		'hu' => 'Shib 1.3 SP Metaadatok',
+		'pt' => 'Metadados Shib 1.3 SP',
 		'pt-BR' => 'Shib 1.3 SP Metadata',
 	),
 	'metadata_shib13-idp' => array (
@@ -427,6 +459,7 @@ $lang = array(
 		'sl' => 'Shib 1.3 IdP Metapodatki',
 		'hr' => 'Shib 1.3 IdP metapodaci',
 		'hu' => 'Shib 1.3 IdP Metaadatok',
+		'pt' => 'Metadados Shib 1.3 IdP',
 		'pt-BR' => 'Shib 1.3 IdP Metadata',
 	),
 	'metadata_intro' => array (
@@ -439,6 +472,7 @@ $lang = array(
 		'sl' => 'Tu so metapodatki, ki jih je zgeneriral simpleSAMLphp. Dokument lahko pošljete zaupanja vrednim partnerjem, s katerimi boste ustvarili federacijo.',
 		'hr' => 'Ovo su metapodaci koje je simpleSAMLphp generirao za vas. Ove metapodatke moĹľete poslati partnerima s kojima Ĺľelite uspostaviti AAI federaciju.',
 		'hu' => 'Ezeket a metaadatokat a SimpleSAMLphp generálta. Ezt a dokumentumot küldheti el föderációs partnerei számára.',
+		'pt' => 'De seguida pode encontrar os metadados gerados pelo simpleSAMLphp. Pode enviar este documento de metadados aos seus parceiros para configurar uma federação.',
 		'pt-BR' => 'Aqui está a metadata que o simpleSAMLphp gerou para você. Você pode enviar este documento metadata para parceiros confiáveis para a configuração de uma federação confiável.',
 	),
 	'metadata_xmlurl' => array (
@@ -451,6 +485,7 @@ $lang = array(
 		'sl' => 'XML metapodatki se nahajajo na <a href="%METAURL%">tem naslovu</a>:',
 		'hr' => 'Metapodatke moĹľete dohvatiti na <a href="%METAURL%">ovoj adresi</a>:',
 		'hu' => 'A következő címről <a href="%METAURL%">töltheti le a metaadatokat</a>:',
+		'pt' => 'Pode <a href="%METAURL%">obter os metadados em XML num URL dedicado</a>:',
 		'pt-BR' => 'VocĂŞ pode obter as metadatas xml <a href="%METAURL%"> em uma URL dedicada</a>:',
 	),
 	'metadata_metadata' => array (
@@ -464,6 +499,7 @@ $lang = array(
 		'sl' => 'Metapodatki',
 		'hr' => 'Metapodaci',
 		'hu' => 'Metaadatok',
+		'pt' => 'Metadados',
 		'pt-BR' => 'Metadata',
 	),
 	'metadata_xmlformat' => array (
@@ -477,6 +513,7 @@ $lang = array(
 		'sl' => 'V SAML 2.0 Metapodatkovni XML format:',
 		'hr' => 'SAML 2.0 XML format metapodataka:',
 		'hu' => 'SAML 2.0 XML formátumban:',
+		'pt' => 'Metadados no formato XML SAML 2.0',
 		'pt-BR' => 'Em formato SAML 2.0 Metadata XML',
 	),
 	'metadata_simplesamlformat' => array (
@@ -489,6 +526,7 @@ $lang = array(
 		'sl' => 'V simpleSAMLphp "flat file" formatu - uporabite to, ÄŤe uporabljate simpleSAMLphp entiteto na drugi strani:',
 		'hr' => 'U simpleSAMLphp formatu - koristite ovu opciju ako se na drugoj strani također nalazi simpleSAMLphp entitet.',
 		'hu' => 'SimpleSAMLphp fájl formátumban - akkor használható, ha a másik oldalon simpleSAMLphp van:',
+		'pt' => 'Metadados no formato ficheiro de configuração do simpleSAMLphp - use esta alternativa se usar uma entidade simpleSAMLphp no outro extremo:',
 		'pt-BR' => 'Em formato de arquivo plano simpleSAMLphp - use isso se vocĂŞ estiver usando uma entidade  simpleSAMLphp do outro lado:',
 	),
 	'metadata_send_success' => array (
@@ -498,6 +536,7 @@ $lang = array(
 		'es' => 'Los metadatos se han enviado correctamente al Proveedor de Identidad.',
 		'sl' => 'Metadata uspešno poslana IdPju.',
 		'hu' => 'Sikerült a metaadatok küldése az azonosító kiszolgálónak(IdP).',
+		'pt' => 'Metadados enviados com sucesso para o fornecedor de identidade.',
 	),
 	'metadata_send_title2' => array (
 		'no' => 'Send metadata til din identitetsleverandør',
@@ -506,6 +545,7 @@ $lang = array(
 		'es' => 'Enviar metadatos a su IdP',
 		'sl' => 'Pošlji metadato IdPju domače organizacije',
 		'hu' => 'Metaadat küldésa az IdP-nek',
+		'pt' => 'Enviar os metadados para o seu IdP',
 	),
 	'metadata_send_select' => array (
 		'no' => 'Velg en identitetsleverandør som metadata skal sendes til :',
@@ -514,6 +554,7 @@ $lang = array(
 		'es' => 'Indique el Proveedor de Identidad al que enviar los metadatos:',
 		'sl' => 'Izberite IdP, kateremu Ĺľelite poslati metadato:',
 		'hu' => 'Címzett IdP kiválasztása:',
+		'pt' => 'Escolha um fornecedor de identidade (IdP) a quem enviar os metadados:',
 	),
 	'metadata_send_adminlogin' => array (
 		'no' => 'Logg inn som administrator for å få tilgang til å sende metadata til en identitetsleverandør',
@@ -522,6 +563,7 @@ $lang = array(
 		'es' => 'IdentĂ­fiquese como administrador para enviar metadatos a un Proveedor de Identidad',
 		'sl' => 'Prijavite se kot administrator, da boste lahko poslali metadato IdPju.',
 		'hu' => 'Lépjen be adminisztrátorként, hogy elküldhesse a metaadatot az azonosító szolgáltatónak(IdP)',
+		'pt' => 'Entre como administrador para enviar os metadados a um fornecedor de identidade (IdP)',
 	),
 	'metadata_send_email2' => array (
 		'no' => 'Skriv inn din e-post adresse, slik at identitetsleverandøren kan komme i kontakt med deg:',
@@ -530,6 +572,7 @@ $lang = array(
 		'es' => 'Indique su direcciĂłn de correo electrĂłnico, de modo que el administrador del Proveedor de Identidad pueda ponerse en contacto con usted:',
 		'sl' => 'Vpišite e-poštni naslov, preko katerega vas bo lahko kontaktiral administrator.',
 		'hu' => 'Adjon meg egy e-mail címet, amin az IdP adminisztrátora szükség eseten felveheti önnel a kapcsolatot:',
+		'pt' => 'Preencha o seu endereço de e-mail para que o administrador do fornecedor de identidade (IdP) possa entrar em contacto consigo:',
 	),
 	'metadata_send_sendbutton' => array (
 		'no' => 'Send metadata',
@@ -538,6 +581,7 @@ $lang = array(
 		'es' => 'Enviar metadatos',
 		'sl' => 'Pošlji metadato',
 		'hu' => 'Metaadat küldése',
+		'pt' => 'Enviar os metadados',
 	),
 	'debug_sending_message_title' => array (
 		'no' => 'Sender melding',
@@ -550,6 +594,7 @@ $lang = array(
 		'sl' => 'Pošiljanje sporočila',
 		'hr' => 'Ĺ aljem poruku',
 		'hu' => 'Üzenet küldése',
+		'pt' => 'A enviar a mensagem',
 		'pt-BR' => 'Enviando a mensagem',
 	),
 	'debug_sending_message_text_button' => array (
@@ -562,6 +607,7 @@ $lang = array(
 		'sl' => 'Sporočilo boste poslali s klikom na gumb za pošiljanje.',
 		'hr' => 'Kliknite na gumb "Pošalji poruku" da biste poslali poruku.',
 		'hu' => 'Üzenetet küldhet. Kattintson az Üzenet küldése gombra a folytatáshoz.',
+		'pt' => 'Está prestes a enviar uma mensagem. Carregue no botão para continuar.',
 		'pt-BR' => 'Você está prestes a enviar uma mensagem. Aperte o botão enviar mensagem para continuar.',
 	),
 	'debug_sending_message_text_link' => array (
@@ -574,6 +620,7 @@ $lang = array(
 		'sl' => 'Sporočilo boste poslali s klikom na gumb za pošiljanje.',
 		'hr' => 'Kliknite na link "Pošalji poruku" da biste poslali poruku.',
 		'hu' => 'Üzenetet küldhet. Kattintson az Üzenet küldése linkre a folytatáshoz.',
+		'pt' => 'Está prestes a enviar uma mensagem. Carregue na ligação para continuar.',
 		'pt-BR' => 'Você está prestes a enviar uma mensagem. Clique no link enviar a mensagem para continuar.',
 	),
 	'debug_sending_message_send' => array (
@@ -587,6 +634,7 @@ $lang = array(
 		'sl' => 'Pošlji sporočilo',
 		'hr' => 'Pošalji poruku',
 		'hu' => 'Üzenet küldése',
+		'pt' => 'Enviar mensagem',
 		'pt-BR' => 'Enviar mensagem',
 	),
 	'debug_sending_message_msg_title' => array (
@@ -600,6 +648,7 @@ $lang = array(
 		'sl' => 'SporoÄŤilo',
 		'hr' => 'Poruka',
 		'hu' => 'Ăśzenet',
+		'pt' => 'Mensagem',
 		'pt-BR' => 'Mensagem',
 	),
 	'debug_sending_message_msg_text' => array (
@@ -612,6 +661,7 @@ $lang = array(
 		'sl' => 'Ste v debug načinu, lahko si ogledate vsebino sporočila, ki ga pošiljate',
 		'hr' => 'Obzirom da ste u modu za otkrivanje grešaka, imate mogućnost vidjeti sadržaj poruke koju šaljete:',
 		'hu' => 'Mivel hibakereső módban van, láthatja az elküldendő üzenet tartalmát',
+		'pt' => 'Estando em modo debug, pode consultar o conteúdo da mensagem que está a enviar:',
 		'pt-BR' => 'Como você está no modo de debug, você pode ver o conteúdo da mensagem que você está enviando:',
 	),
 	'debug_disable_debug_mode' => array (
@@ -624,6 +674,7 @@ $lang = array(
 		'sl' => 'Debug naÄŤin lahko izklopite v globalni simpleSAMLphp konfiguracijski datoteki <tt>config/config.php</tt>.',
 		'hr' => 'Možete isključiti mod za otkrivanje grešaka u glavnoj simpleSAMLphp konfiguracijskoj datoteci <tt>config/config.php</tt>. ',
 		'hu' => 'A simpleSAMLphp <tt>config/config.php</tt> fájljában kikapcsolhatja a hibakereső módot.',
+		'pt' => 'Pode desligar o modo debug no ficheiro global de configuração <tt>config/config.php</tt> do simpleSAMLphp.',
 		'pt-BR' => 'Você pode desligar o modo de debug no arquivo de configuração global do simpleSAMLphp <tt>config/config.php</tt>.',
 	),
 
diff --git a/dictionaries/attributes.php b/dictionaries/attributes.php
index 899b9d916..bdd4d1748 100644
--- a/dictionaries/attributes.php
+++ b/dictionaries/attributes.php
@@ -17,6 +17,7 @@ $lang = array(
 		'sl' => 'Polno ime',
 		'hr' => 'Ime i prezime',
 		'hu' => 'Teljes név',
+		'pt' => 'Nome completo',
 		'pt-BR' => 'Nome Comum (CN)',
 	),
 	'attribute_dc' => array (
@@ -33,6 +34,7 @@ $lang = array(
 		'sl' => 'Domenska komponenta (DC)',
 		'hr' => 'Domenska komponenta (DC)',
 		'hu' => 'domain összetevő',
+		'pt' => 'Componente de domĂ­nio',
 		'pt-BR' => 'Componente do DomĂ­nio (DC)',
 	),
 	'attribute_displayname' => array (
@@ -49,6 +51,7 @@ $lang = array(
 		'sl' => 'Prikazno ime',
 		'hr' => 'Ime koje se prikazuje',
 		'hu' => 'Megjelenő név',
+		'pt' => 'Nome de apresentação',
 		'pt-BR' => 'Nome a ser mostrado',
 	),
 	'attribute_facsimiletelephonenumber' => array (
@@ -65,6 +68,7 @@ $lang = array(
 		'sl' => 'Fax',
 		'hr' => 'Fax broj',
 		'hu' => 'Fax',
+		'pt' => 'NĂşmero de Fax',
 		'pt-BR' => 'NĂşmero do Fax',
 	),
 	'attribute_givenname' => array (
@@ -83,6 +87,7 @@ $lang = array(
 		'sl' => 'Ime',
 		'hr' => 'Ime',
 		'hu' => 'Keresztnév',
+		'pt' => 'Nome PrĂłprio',
 		'pt-BR' => 'Nome',
 	),
 	'attribute_homephone' => array (
@@ -99,6 +104,7 @@ $lang = array(
 		'sl' => 'Domača telefonska številka',
 		'hr' => 'Kućni telefonski broj',
 		'hu' => 'Otthoni telefon',
+		'pt' => 'Telefone de residĂŞncia',
 		'pt-BR' => 'Telefone fixo',
 	),
 	'attribute_homepostaladdress' => array (
@@ -115,6 +121,7 @@ $lang = array(
 		'sl' => 'DomaÄŤi naslov',
 		'hr' => 'Kućna poštanska adresa',
 		'hu' => 'Otthoni levelezési cím',
+		'pt' => 'Morada de redidĂŞncia',
 		'pt-BR' => 'Endereço residencial',
 	),
 	'attribute_jpegphoto' => array (
@@ -131,6 +138,7 @@ $lang = array(
 		'sl' => 'JPEG Slika',
 		'hr' => 'JPEG slika',
 		'hu' => 'Fotó JPEG formátumban',
+		'pt' => 'Foto JPEG',
 		'pt-BR' => 'Foto JPEG',
 	),
 	'attribute_l' => array (
@@ -147,6 +155,7 @@ $lang = array(
 		'sl' => 'Kraj',
 		'hr' => 'Mjesto (lokalitet)',
 		'hu' => 'Település',
+		'pt' => 'Localidade',
 		'pt-BR' => 'Localidade',
 	),
 	'attribute_labeleduri' => array (
@@ -163,6 +172,7 @@ $lang = array(
 		'sl' => 'OznaÄŤen URI',
 		'hr' => 'URI adresa',
 		'hu' => 'Honlap cĂ­m',
+		'pt' => 'Página web',
 		'pt-BR' => 'URI rotulado',
 	),
 	'attribute_mail' => array (
@@ -181,6 +191,7 @@ $lang = array(
 		'sl' => 'Elektronski naslov',
 		'hr' => 'ElektroniÄŤka adresa',
 		'hu' => 'E-mail',
+		'pt' => 'E-mail',
 		'pt-BR' => 'E-mail',
 	),
 	'attribute_manager' => array (
@@ -197,6 +208,7 @@ $lang = array(
 		'sl' => 'MenedĹľer',
 		'hr' => 'MenadĹľer',
 		'hu' => 'Manager',
+		'pt' => 'Responsável hierárquico',
 		'pt-BR' => 'Administrador',
 	),
 	'attribute_mobile' => array (
@@ -215,6 +227,7 @@ $lang = array(
 		'sl' => 'Mobilni telefon',
 		'hr' => 'Broj mobilnog telefona',
 		'hu' => 'Mobil',
+		'pt' => 'TelemĂłvel',
 		'pt-BR' => 'Celular',
 	),
 	'attribute_o' => array (
@@ -232,6 +245,7 @@ $lang = array(
 		'sl' => 'Ime organizacije',
 		'hr' => 'Naziv matiÄŤne ustanove',
 		'hu' => 'Szervezet neve',
+		'pt' => 'Nome da organização',
 		'pt-BR' => 'Nome da Organização (O)',
 	),
 	'attribute_ou' => array (
@@ -248,6 +262,7 @@ $lang = array(
 		'sl' => 'Oddelek',
 		'hr' => 'Organizacijska jedinica',
 		'hu' => 'Szervezeti egység',
+		'pt' => 'Unidade orgânica',
 		'pt-BR' => 'Unidade Organizacional (OU)',
 	),
 	'attribute_postaladdress' => array (
@@ -264,6 +279,7 @@ $lang = array(
 		'sl' => 'Poštni naslov',
 		'hr' => 'Poštanska adresa',
 		'hu' => 'Levelezési cím',
+		'pt' => 'Morada',
 		'pt-BR' => 'Endereço',
 	),
 	'attribute_postalcode' => array (
@@ -280,6 +296,7 @@ $lang = array(
 		'sl' => 'Poštna številka',
 		'hr' => 'Broj pošte',
 		'hu' => 'Irányítószám',
+		'pt' => 'CĂłdigo Postal',
 		'pt-BR' => 'CEP',
 	),
 	'attribute_postofficebox' => array (
@@ -296,6 +313,7 @@ $lang = array(
 		'sl' => 'Poštni predal',
 		'hr' => 'Broj poštanskog pretinca',
 		'hu' => 'PostafiĂłk',
+		'pt' => 'Apartado',
 		'pt-BR' => 'Caixa Postal',
 	),
 	'attribute_preferredlanguage' => array (
@@ -314,6 +332,7 @@ $lang = array(
 		'sl' => 'Želen jezik',
 		'hr' => 'Prioritetni jezik',
 		'hu' => 'Elsődleges nyelv',
+		'pt' => 'Idioma',
 		'pt-BR' => 'Linguagem preferida',
 	),
 	'attribute_sn' => array (
@@ -332,6 +351,7 @@ $lang = array(
 		'sl' => 'Priimek',
 		'hr' => 'Prezime',
 		'hu' => 'Vezetéknév',
+		'pt' => 'Nome de famĂ­lia',
 		'pt-BR' => 'Sobrenome',
 	),
 	'attribute_street' => array (
@@ -348,6 +368,7 @@ $lang = array(
 		'sl' => 'Ulica',
 		'hr' => 'Ulica',
 		'hu' => 'Utca',
+		'pt' => 'Rua',
 		'pt-BR' => 'Rua',
 	),
 	'attribute_telephonenumber' => array (
@@ -364,6 +385,7 @@ $lang = array(
 		'sl' => 'Telefonska številka',
 		'hr' => 'Broj telefona',
 		'hu' => 'Telefonszám',
+		'pt' => 'Telefone',
 		'pt-BR' => 'NĂşmero de Telefone',
 	),
 	'attribute_title' => array (
@@ -381,6 +403,7 @@ $lang = array(
 		'sl' => 'Naziv',
 		'hr' => 'Naziv',
 		'hu' => 'CĂ­m',
+		'pt' => 'TĂ­tulo',
 		'pt-BR' => 'TĂ­tulo',
 	),
 	'attribute_uid' => array (
@@ -399,6 +422,7 @@ $lang = array(
 		'sl' => 'Uporabniško ime',
 		'hr' => 'Identifikator korisnika u ustanovi',
 		'hu' => 'Felhasználói azonosító',
+		'pt' => 'Identificação de utilizador',
 		'pt-BR' => 'Identificação (UID)',
 	),
 	'attribute_eduorghomepageuri' => array (
@@ -415,6 +439,7 @@ $lang = array(
 		'sl' => 'Spletna stran organizacije',
 		'hr' => 'SluĹľbene web stranice (URL adresa) ustanove',
 		'hu' => 'Szervezet weboldala',
+		'pt' => 'Página web da organização de origem',
 		'pt-BR' => 'Site da organização',
 	),
 	'attribute_eduorglegalname' => array (
@@ -431,6 +456,7 @@ $lang = array(
 		'sl' => 'Naziv organizacije',
 		'hr' => 'SluĹľbeni naziv ustanove',
 		'hu' => 'Szervezet hivatalos neve',
+		'pt' => 'Nome legal da organização de origem',
 		'pt-BR' => 'Nome legal da Organização',
 	),
 	'attribute_edupersonaffiliation' => array (
@@ -449,6 +475,7 @@ $lang = array(
 		'sl' => 'Vloga uporabnika',
 		'hr' => 'Pripadnost',
 		'hu' => 'Viszony',
+		'pt' => 'Afiliação com a organização de origem',
 		'pt-BR' => 'Filiação',
 	),
 	'attribute_edupersonentitlement' => array (
@@ -467,6 +494,7 @@ $lang = array(
 		'sl' => 'UpraviÄŤenost do storitve',
 		'hr' => 'Pripadnost grupi',
 		'hu' => 'Ezekre a szolgáltatásokra jogosult',
+		'pt' => 'Direitos oferecidos pela organização de origem',
 		'pt-BR' => 'Titularidade sobre o serviço',
 	),
 	'attribute_edupersonnickname' => array (
@@ -483,6 +511,7 @@ $lang = array(
 		'sl' => 'Vzdevek',
 		'hr' => 'Nadimak',
 		'hu' => 'Becenév',
+		'pt' => 'Alcunha',
 		'pt-BR' => 'Apelido',
 	),
 	'attribute_edupersonorgdn' => array (
@@ -499,6 +528,7 @@ $lang = array(
 		'sl' => 'Ime domaÄŤe organizacije (DN), kateri pripada oseba',
 		'hr' => 'DN korisnikove matiÄŤne ustanove',
 		'hu' => 'A felhasználó munkahelyének azonosító neve (DN-je)',
+		'pt' => 'DN da organização de origem',
 		'pt-BR' => 'Nome distinto (DN) da sua organização principal',
 	),
 	'attribute_edupersonorgunitdn' => array (
@@ -515,6 +545,7 @@ $lang = array(
 		'sl' => 'Ime oddelka domaÄŤe organizacije (DN), kateremu pripada oseba',
 		'hr' => 'DN korisnikove organizacijske jedinice u matiÄŤnoj ustanovi',
 		'hu' => 'A felhasználó szervezeti egység azonosító neve (DN-je)',
+		'pt' => 'DN da unidade orgânica na organização de origem',
 		'pt-BR' => 'Nome distinto (DN) da sua unidade organizacional principal',
 	),
 	'attribute_edupersonprimaryaffiliation' => array (
@@ -531,6 +562,7 @@ $lang = array(
 		'sl' => 'Primarna pripadnost',
 		'hr' => 'Temeljna povezanost s ustanovom',
 		'hu' => 'Elsődleges viszony',
+		'pt' => 'Afiliação principal com a organização de origem',
 		'pt-BR' => 'Filiação Primária',
 	),
 	'attribute_edupersonprincipalname' => array (
@@ -549,6 +581,7 @@ $lang = array(
 		'sl' => 'ID uporabnika na domaÄŤi organizaciji',
 		'hr' => 'KorisniÄŤka oznaka',
 		'hu' => 'Állandó azonosító a saját intézményben',
+		'pt' => 'Nome de utilizador na organização de origem',
 		'pt-BR' => 'Diretor da organização principal',
 	),
 	'attribute_edupersonscopedaffiliation' => array (
@@ -567,6 +600,7 @@ $lang = array(
 		'sl' => 'ÄŚlanstvo v skupini',
 		'hr' => 'Povezanost s ustanovom',
 		'hu' => 'Saját intézményhez való viszony',
+		'pt' => 'Afiliação com a organização de origem (com contexto)',
 		'pt-BR' => 'Filiação na organização principal',
 	),
 	'attribute_edupersontargetedid' => array (
@@ -584,6 +618,7 @@ $lang = array(
 		'sl' => 'Trajni anonimni ID',
 		'hr' => 'Trajni anonimni ID',
 		'hu' => 'Állandó anonim azonosító',
+		'pt' => 'Identificação persistente tipo pseudónimo',
 		'pt-BR' => 'Apelido persistente ID',
 	),
 	'attribute_noreduorgnin' => array (
@@ -600,6 +635,7 @@ $lang = array(
 		'sl' => 'Organizacijska številka',
 		'hr' => 'BrojÄŤani identifikator ustanove',
 		'hu' => 'Szervezeti szám',
+		'pt' => 'Número de Organização',
 		'pt-BR' => 'NĂşmero Organizacional',
 	),
 	'attribute_noredupersonbirthdate' => array (
@@ -616,6 +652,7 @@ $lang = array(
 		'sl' => 'Datum rojstva',
 		'hr' => 'Datum rođenja',
 		'hu' => 'Születési dátum',
+		'pt' => 'Data de nascimento',
 		'pt-BR' => 'Data de Nascimento',
 	),
 	'attribute_noredupersonlin' => array (
@@ -632,6 +669,7 @@ $lang = array(
 		'sl' => 'Vpisna številka',
 		'hr' => 'Lokalni brojÄŤani identifikator osobe u ustanovi (LOCAL_NO)',
 		'hu' => 'Helyi azonosító szám',
+		'pt' => 'Número de Identificação local',
 		'pt-BR' => 'Número de Identificação Local',
 	),
 	'attribute_noredupersonnin' => array (
@@ -650,75 +688,166 @@ $lang = array(
 		'sl' => 'Matična številka',
 		'hr' => 'BrojÄŤani identifikator osobe (JMBG, JMBAG, MBZ ili PASSPORT_NO)',
 		'hu' => 'Társadalombiztosítási azonosító szám',
+		'pt' => 'Número de Identificação atribuído por autoridades públicas',
 		'pt-BR' => 'Número de identificação atribuído pelas autoridades públicas',
 	),
 	'attribute_edupersonprimaryorgunitdn' => array (
+		'no' => 'Entydig navn for organisasjonsenheten som brukeren primært er tilknyttet',
+		'en' => 'Distinguished name (DN) of person\'s primary Organizational Unit',
 		'es' => 'Distinguished name (DN) de la entrada del directorio que representa el identificador primario de la Unidad Organizativa.  ',
+		'pt' => 'DN da unidade orgânica',
 	),
 	'attribute_userpassword' => array (
-		'no' => 'Passord',
+		'no' => 'Hash av brukerens passord',
+		'en' => 'User\'s password hash',
 		'es' => 'Clave o contraseña y método de encriptación utilizado  ',
+		'pt' => 'Senha do utilizador',
 	),
 	'attribute_edupersonorgdn_o' => array (
+		'no' => 'Navn pĂĄ organisasjon',
+		'en' => 'Organization name',
+		'pt' => 'Nome da organização',
 	),
 	'attribute_edupersonorgdn_l' => array (
+		'no' => 'Organisasjonens lokasjon',
+		'en' => 'Organization\'s location',
+		'pt' => 'Localização da Organização',
 	),
 	'attribute_edupersonorgdn_eduorghomepageuri' => array (
+		'no' => 'Organisasjonens hjemmeside',
+		'en' => 'Organization\'s web page',
+		'pt' => 'Página web da Organização',
 	),
 	'attribute_edupersonorgdn_facsimiletelephonenumber' => array (
-		'no' => 'Fax-nummer',
+		'no' => 'Organisasjonen faksnummer',
+		'en' => 'Organization\'s fax number',
+		'pt' => 'Fax da Organização',
 	),
 	'attribute_edupersonorgdn_eduorglegalname' => array (
+		'no' => 'Organisasjonen foretaksnavn',
+		'en' => 'Organization\'s legal name',
+		'pt' => 'Nome legal da Organização',
 	),
 	'attribute_edupersonorgdn_postalcode' => array (
-		'no' => 'Postnummer',
+		'no' => 'Organisasjonen postnummer',
+		'en' => 'Organization\'s postal code',
+		'pt' => 'Código postal da Organização',
 	),
 	'attribute_edupersonorgdn_noreduorgnin' => array (
+		'no' => 'Organisasjonsnummer',
+		'en' => 'Organizational number',
+		'pt' => 'Número da Organização',
 	),
 	'attribute_edupersonorgdn_businesscategory' => array (
+		'no' => 'Organisasjonen bransjetilhørighet',
+		'en' => 'Organization business category',
+		'pt' => 'Categoria da Organização',
 	),
 	'attribute_edupersonorgdn_dc' => array (
+		'no' => 'Navneledd (DC) for organisasjonen',
+		'en' => 'Domain component (DC) of organization',
+		'pt' => 'Componente de domínio (DC) da organização',
 	),
 	'attribute_edupersonorgdn_description' => array (
+		'no' => 'Beskrivelse av brukerens organisasjon',
+		'en' => 'Description of the organization',
+		'pt' => 'Descrição da Organização',
 	),
 	'attribute_edupersonorgdn_cn' => array (
+		'no' => 'Organisasjonens fulle navn',
+		'en' => 'Organization common name',
+		'pt' => 'Nome completo da Organização',
 	),
 	'attribute_edupersonorgdn_postaladdress' => array (
+		'no' => 'Organisasjonens postadresse',
+		'en' => 'Organization\'s postal address',
+		'pt' => 'Morada da Organização',
 	),
 	'attribute_edupersonorgdn_telephonenumber' => array (
+		'no' => 'Organisasjonens telefonnummer',
+		'en' => 'Organization\'s telephone number',
+		'pt' => 'Número de telefone da Organização',
 	),
 	'attribute_edupersonorgdn_labeleduri' => array (
+		'no' => 'Peker til organisasjonens nettsted',
+		'en' => 'Labeled URI to organization',
+		'pt' => 'Página web da Organização',
 	),
 	'attribute_edupersonorgdn_street' => array (
+		'no' => 'Organisasjonens gate adresse',
+		'en' => 'Organization street address',
+		'pt' => 'Rua da Organização',
 	),
 	'attribute_edupersonorgdn_noreduorgacronym' => array (
+		'no' => 'Forkortelse for utdanningsorganisasjonen',
+		'en' => 'Acronym for the organization',
+		'pt' => 'Acrónimo da Organização',
 	),
 	'attribute_edupersonorgdn_eduorgwhitepagesuri' => array (
+		'no' => 'Peker til katalogtjenesten for organisasjonen',
+		'en' => 'The URL of the open white pages directory service for the organization',
+		'pt' => 'URL do serviço de directório da Organização',
 	),
 	'attribute_edupersonorgdn_noreduorgschemaversion' => array (
+		'no' => 'Versjonsnummer for norEdu* spesifikasjonen i bruk',
+		'en' => 'Version number of the norEdu* specification in use',
+		'pt' => 'Versão da especificação norEdu*',
 	),
 	'attribute_edupersonorgunitdn_ou' => array (
+		'no' => 'Organisasjonsenheter brukeren er medlem av',
+		'en' => 'Person\'s Organizational Unit(s)',
+		'pt' => 'Unidade Orgânica',
 	),
 	'attribute_edupersonorgunitdn_telephonenumber' => array (
+		'no' => 'Organisasjonsenheten(e)s telefonnummer',
+		'en' => 'Organizational Unit(s) phone number',
+		'pt' => 'Número de telefone da Unidade Orgânica ',
 	),
 	'attribute_edupersonorgunitdn_noreduorgunituniqueidentifier' => array (
+		'no' => 'Organisasjonsenheten(e)s lokale identifikasjons nummer',
+		'en' => 'Organizational unit(s) describing identifier',
+		'pt' => 'Identificador da Unidade Orgânica',
 	),
 	'attribute_edupersonorgunitdn_facsimiletelephonenumber' => array (
+		'no' => 'Organisasjonsenheten(e)s faksnummer',
+		'en' => 'Organizational Unit(s) fax number',
+		'pt' => 'Número de Fax da Unidade Orgânica',
 	),
 	'attribute_edupersonorgunitdn_postalcode' => array (
+		'no' => 'Organisasjonsenheten(e)s postnummer',
+		'en' => 'Organizational Unit(s) postal service zones code',
+		'pt' => 'Código postal da Unidade Orgânica',
 	),
 	'attribute_edupersonorgunitdn_cn' => array (
+		'no' => 'Organisasjonsenheten(e)s fulle navn',
+		'en' => 'Organizational Unit(s) common name',
+		'pt' => 'Nome completo da Unidade Orgânica',
 	),
 	'attribute_edupersonorgunitdn_postaladdress' => array (
+		'no' => 'Organisasjonsenheten(e)s postadresse',
+		'en' => 'Organizational Unit(s) postal address',
+		'pt' => 'Morada da Unidade Orgânica',
 	),
 	'attribute_edupersonorgunitdn_street' => array (
+		'no' => 'Organisasjonsenheten(e)s gateadresse',
+		'en' => 'Organizational Unit(s) street',
+		'pt' => 'Rua da Unidade Orgânica',
 	),
 	'attribute_edupersonorgunitdn_l' => array (
+		'no' => 'Organisasjonsenheten(e)s steds navn',
+		'en' => 'Organizational Unit(s) locality name',
+		'pt' => 'Localidade da Unidade Orgânica',
 	),
 	'attribute_edupersonorgunitdn_noreduorgacronym' => array (
+		'no' => 'Forkortelse for organisasjonsenheten(e)',
+		'en' => 'Acronym for Organizational Unit(s)',
+		'pt' => 'Acrónimo da Unidade Orgânica',
 	),
 	'attribute_edupersonorgunitdn_mail' => array (
+		'no' => 'Organisasjonsenheten(e)s e-post adresse',
+		'en' => 'Organizational Unit(s) email address',
 		'hu' => 'x',
+		'pt' => 'Endereço de e-mail da Unidade Orgânica',
 	),
 	'attribute_schachomeorganization' => array (
 		'no' => 'Unik ID for vertsorganisasjon',
@@ -735,6 +864,7 @@ $lang = array(
 		'sl' => 'ID domaÄŤe organizacije',
 		'hr' => 'Oznaka matiÄŤne ustanove',
 		'hu' => 'Saját intézmény domain neve',
+		'pt' => 'Nome de domínio da Organização de origem',
 		'pt-BR' => 'Nome de domínio da organização principal',
 	),
 	'attribute_organisationname' => array (
@@ -753,6 +883,7 @@ $lang = array(
 		'sl' => 'Ime organizacije',
 		'hr' => 'Naziv matiÄŤne ustanove',
 		'hu' => 'Szervezet neve',
+		'pt' => 'Nome da Organização',
 		'pt-BR' => 'Nome da Organização',
 	),
 
diff --git a/dictionaries/consent.php b/dictionaries/consent.php
index e06963266..d09a5d713 100644
--- a/dictionaries/consent.php
+++ b/dictionaries/consent.php
@@ -16,6 +16,7 @@ $lang = array(
 		'sl' => 'Da',
 		'hr' => 'Da, prihvaćam',
 		'hu' => 'Igen, elfogadom',
+		'pt' => 'Sim, Aceito',
 		'pt-BR' => 'Sim, Aceito',
 	),
 	'no' => array (
@@ -33,6 +34,7 @@ $lang = array(
 		'sl' => 'Ne',
 		'hr' => 'Ne privaćam',
 		'hu' => 'Nem, nem fogadom el',
+		'pt' => 'NĂŁo aceito',
 		'pt-BR' => 'NĂŁo, nĂŁo aceito',
 	),
 	'remember' => array (
@@ -50,6 +52,7 @@ $lang = array(
 		'sl' => 'Zapomni si privolitev.',
 		'hr' => 'Zapamti dozvole',
 		'hu' => 'Emlékezzen a hozzájárulásra',
+		'pt' => 'Lembrar a minha escolha',
 		'pt-BR' => 'Lembrar Consentimento',
 	),
 	'consent_notice' => array (
@@ -67,6 +70,7 @@ $lang = array(
 		'sl' => 'Pravkar se nameravate prijaviti v storitev',
 		'hr' => 'U tijeku je proces prijave za pristup servisu',
 		'hu' => 'Ön azonosítja magát ehhez a szolgáltatáshoz',
+		'pt' => 'Está prestes a efectuar a entrada no serviço',
 		'pt-BR' => 'Você está prestes a acessar o serviço',
 	),
 	'consent_accept' => array (
@@ -84,6 +88,7 @@ $lang = array(
 		'sl' => 'Pravkar se nameravate prijaviti v storitev SPNAME. Med postopkom prijave bo IdP posredoval atribute, ki vsebujejo informacije o vaši identiteti, tej storitvi. Ali se s tem strinjate? ',
 		'hr' => 'U tijeku je proces prijave za pristup servisu SPNAME. Servis zahtjeva da IDPNAME isporuÄŤi dolje navedene podatke. SlaĹľete li se s time?',
 		'hu' => 'Ön azonosítja magát ehhez a szolgáltatáshoz SPNAME. Az azonosítás során IDPNAME az alábbi adatokat fogja küldeni a szolgáltatásnak. Engedélyezi?',
+		'pt' => 'Está prestes a efectuar a entrada no serviço SPNAME. A função deste serviço é SPDESC e necessita que a informação abaixo seja transferida para o IDPNAME. Aceita esta transferência de informação?',
 		'pt-BR' => 'Você está prestes a acessar o serviço SPNAME. O serviço exige que as informações a seguir sejam transferidas do IDPNAME. Você aceita isso?',
 	),
 	'consent_privacypolicy' => array (
@@ -99,6 +104,7 @@ $lang = array(
 		'sl' => 'Politika zasebnosti za ta SP',
 		'hr' => 'Politika zaštite privatnosti',
 		'hu' => 'A szolgáltatás adatvádelmi nyilatkozata',
+		'pt' => 'Política de privacidade do serviço',
 		'pt-BR' => 'Política de Privacidade deste serviço',
 	),
 	'login' => array (
@@ -116,6 +122,7 @@ $lang = array(
 		'sl' => 'Prijava',
 		'hr' => 'prijava',
 		'hu' => 'bejelentkezés',
+		'pt' => 'Entrar',
 		'pt-BR' => 'login',
 	),
 	'service_providers_for' => array (
@@ -133,6 +140,7 @@ $lang = array(
 		'sl' => 'SP za',
 		'hr' => 'Davatelji usluge za',
 		'hu' => 'Alkalmazásszolgáltatók a következő számára',
+		'pt' => 'fornecedores de serviço (SP) para',
 		'pt-BR' => 'Provedor de serviços para',
 	),
 	'service_provider_header' => array (
@@ -150,6 +158,7 @@ $lang = array(
 		'sl' => 'SP',
 		'hr' => 'Davatelj usluge',
 		'hu' => 'Alkalmazásszolgáltató',
+		'pt' => 'fornecedor de serviço (SP)',
 		'pt-BR' => 'Provedor de Serviços',
 	),
 	'status_header' => array (
@@ -167,6 +176,7 @@ $lang = array(
 		'sl' => 'Stanje privolitve',
 		'hr' => 'Status dozvole',
 		'hu' => 'Hozzájárulás állapota',
+		'pt' => 'Consentimento',
 		'pt-BR' => 'Status do Consentimento',
 	),
 	'show_hide_attributes' => array (
@@ -184,6 +194,7 @@ $lang = array(
 		'sl' => 'prikaĹľi/skrij atribute',
 		'hr' => 'prikaĹľi/sakrij atribute',
 		'hu' => 'attribútumok mutatása/elrejtése',
+		'pt' => 'Mostrar/Ocultar atributos',
 		'pt-BR' => 'mostra/esconder Atributos',
 	),
 	'noconsent_title' => array (
@@ -198,6 +209,7 @@ $lang = array(
 		'sl' => 'Privolitev ni bila dana.',
 		'hr' => 'Nema pristanka',
 		'hu' => 'Nincs hozzájárulás',
+		'pt' => 'Consentimento negado',
 		'pt-BR' => 'Nenhum consentimento dado',
 	),
 	'noconsent_text' => array (
@@ -212,6 +224,7 @@ $lang = array(
 		'sl' => 'Niste podali privolitve za posredovanje atributov SP-ju.',
 		'hr' => 'Niste dali pristanak da se vaši podaci isporuče davatelju usluge.',
 		'hu' => 'Nem adta hozzájárulását, hogy adatait továbbadjuk a szolgáltatónak.',
+		'pt' => 'Negou o consentimento para a transferência dos seus atributos para o fornecedor de serviço.',
 		'pt-BR' => 'Você não deu o consentimento para a transferência de seus atributos para o provedor de serviços.',
 	),
 	'noconsent_return' => array (
@@ -226,6 +239,7 @@ $lang = array(
 		'sl' => 'Vrnitev na privolitveno stran',
 		'hr' => 'Povratak na stranicu s dozvolama',
 		'hu' => 'Vissza az hozzájárulás-kezelő oldalra',
+		'pt' => 'Voltar à página de consentimento',
 		'pt-BR' => 'Retornar a página de consentimento',
 	),
 
diff --git a/dictionaries/disco.php b/dictionaries/disco.php
index 7d17e7bbd..c8cc4da7a 100644
--- a/dictionaries/disco.php
+++ b/dictionaries/disco.php
@@ -15,6 +15,7 @@ $lang = array(
 		'sl' => 'Izberite IdP domaÄŤe organizacije',
 		'hr' => 'Odaberite vašeg davatelja elektroničkih identiteta',
 		'hu' => 'Válasszon személyazonosság-szolgáltatót (IdP)',
+		'pt' => 'Escolha o seu fornecedor de identidade (IdP)',
 		'pt-BR' => 'Selecione seu provedor de identidade',
 	),
 	'selectidp_full' => array (
@@ -31,6 +32,7 @@ $lang = array(
 		'sl' => 'Izberite IdP, na katerem se boste avtenticirali:',
 		'hr' => 'Molimo odaberite davatelja elektroniÄŤkih identiteta kod kojeg se Ĺľelite autenticirati:',
 		'hu' => 'Kérjük, válassza ki azt a személyazonosság-szolgáltatót (IdP), ahol azonosítani kívánja magát:',
+		'pt' => 'Por favor, escolha o  fornecedor de identidade (IdP) que irá usar para se autenticar:',
 		'pt-BR' => 'Por favor selecione o provedor de identidade ao qual deseja se autenticar',
 	),
 	'select' => array (
@@ -47,6 +49,7 @@ $lang = array(
 		'sl' => 'Izberite',
 		'hr' => 'Odaberi',
 		'hu' => 'Választ',
+		'pt' => 'Escolher',
 		'pt-BR' => 'Selecione',
 	),
 	'remember' => array (
@@ -63,6 +66,7 @@ $lang = array(
 		'sl' => 'Shrani kot privzeto izbiro',
 		'hr' => 'Zapamti moj odabir',
 		'hu' => 'Emlékezzen erre',
+		'pt' => 'Lembrar esta escolha',
 		'pt-BR' => 'Lembrar minha escolha',
 	),
 
diff --git a/dictionaries/errors.php b/dictionaries/errors.php
index c8a027859..957b35ca3 100644
--- a/dictionaries/errors.php
+++ b/dictionaries/errors.php
@@ -16,6 +16,7 @@ $lang = array(
 		'sl' => 'simpleSAMLphp napaka',
 		'hr' => 'simpleSAMLphp greška',
 		'hu' => 'simpleSAMLphp hiba',
+		'pt' => 'Erro no simpleSAMLphp',
 		'pt-BR' => 'Erro do simpleSAMLphp',
 	),
 	'report_trackid' => array (
@@ -33,6 +34,7 @@ $lang = array(
 		'sl' => 'Če boste prijavili to napako, priložite tudi ID seje, preko katere bo lažje najti vaše zapise v dnevniških datotekah, ki so na voljo skrbniku sistema.',
 		'hr' => 'Ako prijavite ovu grešku, molimo da pošaljete i ovaj ID koji će sistem administratoru omogućiti pronalaženje dodatnih informacija u dnevničkim datotekama. ',
 		'hu' => 'Ha bejelentést küld a hibával kapcsolatban, kérjük, küldje el ezt az azonosítót, mert csak ennek segítségével tudja a rendszeradminisztrátor a naplóállományokból azokat az adatokat megtalálni, amelyek ehhez a munkamenethez tartoznak.',
+		'pt' => 'Se comunicar este erro ao administrador de sistemas inclua o seguinte identificador que possibilita a localização da sua sessão nos registos do serviço:',
 		'pt-BR' => 'Se informar sobre esse erro, por favor, também informe este ID do relatório de monitoramento que torna possível localizar a sua sessão nos registros disponíveis para o administrador do sistema:',
 	),
 	'debuginfo_header' => array (
@@ -50,6 +52,7 @@ $lang = array(
 		'sl' => 'PomoÄŤ pri odpravljanju napak (debug)',
 		'hr' => 'Informacije o greški',
 		'hu' => 'Bővebb információ a hibáról',
+		'pt' => 'Informação de debug',
 		'pt-BR' => 'Informação do Debug',
 	),
 	'debuginfo_text' => array (
@@ -67,6 +70,7 @@ $lang = array(
 		'sl' => 'Podatki o odpravljanju napak bodo zanimali srbnika/helpdesk:',
 		'hr' => 'Sljedeće informacije mogu biti zanimljive administratoru ili službi za podršku korisnicima.',
 		'hu' => 'Az alábbi információ esetleg érdekes lehet a rendszergazda / helpdesk számára:',
+		'pt' => 'A informação de debug abaixo pode ter interesse para o administrador / apoio ao utilizador:',
 		'pt-BR' => 'A informação a seguir é importante para seu administrador / Central de Dúvidas',
 	),
 	'report_header' => array (
@@ -84,6 +88,7 @@ $lang = array(
 		'sl' => 'Prijavi napake',
 		'hr' => 'Prijavite grešku',
 		'hu' => 'Mutassa a hibaĂĽzeneteket',
+		'pt' => 'Reportar um erro',
 		'pt-BR' => 'Reportar erros',
 	),
 	'report_text' => array (
@@ -101,6 +106,7 @@ $lang = array(
 		'sl' => 'Če želite, vnesite svoj elektronski naslov, na katerem boste dosegljivi za skrbnika sistema v primeru dodatnih vprašanj:',
 		'hr' => 'Ako želite, unesite vašu elektroničku adresu kako bi vas administratori mogli kontaktirati u slučaju da su im potrebne dodatne informacije. ',
 		'hu' => 'Opcionálisan megadhatja az e-mail címét, így az adminisztrátorok a hibával kapcsolatban esetleg további kérdéseket tehetnek fel:',
+		'pt' => 'Opcionalmente, pode introduzir o seu email para o administrador de sistemas entrar em contacto consigo, caso tenha alguma questĂŁo relativamente ao seu problema.',
 		'pt-BR' => 'Opcionalmente digite o seu endereço de e-mail para que os administradores possam contatá-lo para mais perguntas sobre o seu problema:',
 	),
 	'report_email' => array (
@@ -119,6 +125,7 @@ $lang = array(
 		'sl' => 'Elektronski naslov:',
 		'hr' => 'ElektroniÄŤka adresa',
 		'hu' => 'E-mail cĂ­mek:',
+		'pt' => 'Endereço de email:',
 		'pt-BR' => 'Endereço de e-mail:',
 	),
 	'report_explain' => array (
@@ -136,6 +143,7 @@ $lang = array(
 		'sl' => 'Opišite, kako je do napake prišlo...',
 		'hr' => 'Opišite što ste radili kad se pojavila greška...',
 		'hu' => 'Írja le milyen lépéseket hajtott végre, aminek végén hiba történt...',
+		'pt' => 'Introduza uma breve explicação do sucedido...',
 		'pt-BR' => 'Explique o que vocĂŞ estava fazendo quando aconteceu o erro...',
 	),
 	'report_submit' => array (
@@ -153,6 +161,7 @@ $lang = array(
 		'sl' => 'Pošlji poročilo o napaki',
 		'hr' => 'Pošaljite prijavu greške',
 		'hu' => 'Hibabejelentés küldése',
+		'pt' => 'Enviar o relatĂłrio de erro',
 		'pt-BR' => 'Enviar o relatĂłrio de erro',
 	),
 	'errorreport_header' => array (
@@ -168,6 +177,7 @@ $lang = array(
 		'sl' => 'PoroÄŤilo o napaki je bilo poslano',
 		'hr' => 'Prijava greške poslana',
 		'hu' => 'Elküldött hibabejelentés',
+		'pt' => 'RelatĂłrio de erro enviado',
 		'pt-BR' => 'RelatĂłrio de erro enviado',
 	),
 	'errorreport_text' => array (
@@ -183,6 +193,7 @@ $lang = array(
 		'sl' => 'PoroÄŤilo o napaki je bilo poslano administratorjem sistema.',
 		'hr' => 'Prijava greške poslana je administratorima.',
 		'hu' => 'A hibabejelentést elküldtük az adminisztrátoroknak.',
+		'pt' => 'O relatĂłrio de erro foi enviado aos administradores',
 		'pt-BR' => 'O relatĂłrio de erro foi enviado com sucesso para os administradores.',
 	),
 	'howto_header' => array (
@@ -200,6 +211,7 @@ $lang = array(
 		'sl' => 'Kje lahko iščem pomoč?',
 		'hr' => 'Kako dobiti pomoć',
 		'hu' => 'Hogyan kaphat segítséget',
+		'pt' => 'Como obter ajuda',
 		'pt-BR' => 'Como conseguir ajuda',
 	),
 	'howto_text' => array (
@@ -217,6 +229,7 @@ $lang = array(
 		'sl' => 'Ta napaka je verjetno posledica nepravilne konfiguracije simpleSAMLphp-ja. Obrnite se na skrbnika in mu posredujte to napako.',
 		'hr' => 'Ova greška se vjerojatno javila zbog neočekivanog ponašanja ili neispravnog konfiguriranja simpleSAMLphp-a. Kontaktirajte administratora i pošaljite mu gore navedenu poruku o greški.',
 		'hu' => 'Ez a hiba valószínűleg a simpleSAMLphp nem várt működésével vagy félrekonfigurálásával kapcsolatos. Kérjük, keresse meg a bejelentkező szolgáltatás adminisztrátorát, és küldje el neki a fenti hibaüzenetet!',
+		'pt' => 'Este erro ocorreu provavelmente devido a um comportamento inesperado ou uma má configuração do simpleSAMLphp. Contacte o administrador deste serviço de login, e comunique a mensagem de erro.',
 		'pt-BR' => 'Esse erro é provavelmente devido a algum imprevisto no comportamento do simpleSAMLphp. Contate o administrador deste serviço de login e envie-lhe a mensagem de erro acima.',
 	),
 	'title_CACHEAUTHNREQUEST' => array (
@@ -234,6 +247,7 @@ $lang = array(
 		'sl' => 'Prišlo je do napake pri prijavi (single sign-on) v storitev',
 		'hr' => 'Greška prilikom prijavljivanja kroz sustav jedinstvene autentikacije',
 		'hu' => 'Hiba a single sign-on kapcsolat létrehozásában',
+		'pt' => 'Erro ao efectuar a autenticação única no serviço',
 		'pt-BR' => 'Erro ao fazer uma única conexão ao serviço',
 	),
 	'descr_CACHEAUTHNREQUEST' => array (
@@ -251,6 +265,7 @@ $lang = array(
 		'sl' => 'Zaradi daljšega obdobja neaktivnosti je seja potekla. Lahko se ponovno avtenticirate in samodejno boste preusmerjeni na storitev, ki je zahtevala avtentikacijo. ',
 		'hr' => 'Uspješno ste se autenticirali i sustav se spremao preusmjeriti vas na aplikaciju za koju ste se autenticirali, ali nije mogao pronaći vaš pohranjeni autentikacijski zahtjev. Zahtjev se pohranjuje samo tijekom određenog vremenskog razdoblja. Ako ste ostavili vaš web preglednik otvoren dulje vrijeme prije nego što ste unijeli korisničku oznaku i zaporku, to može biti uzrok navedenom problemu. Molimo pokušajte ponovo pristupiti aplikaciju i unijeti svoju korisničku oznaku i zaporku. Ako to ne riješi problem, molimo prijavite grešku.',
 		'hu' => 'Sikeres azonosítás, de nem találtuk meg az átmeneti tárban az azonosítási kérést. Ez a kérés csak korlátozott ideig található meg az átmeneti tárban. Lehetséges, felhasználónév és jelszó megadása előtt több órán keresztül nyitva volt a bejelentkezési oldal. Ha ez a helyzet, akkor kérjük, menjen vissza a használni kívánt szolgáltatáshoz és jelentkezzen be újra. Ha a hiba továbbra is fennáll, kérjük, jelezze!',
+		'pt' => 'Efectuou previamente uma autenticação com sucesso e estava prestes a ser direccionado para o serviço que requisitou a autenticação. No entanto não foi possível encontrar o pedido de autenticação na cache. O pedido apenas é mantido em cache por um período limitado. O problema pode ter sido originado por ter deixado o browser aberto durante alguma horas antes de introduzir as suas credenciais. Se foi este o caso tente aceder de novo ao serviço que necessita de autenticação, para iniciar um novo processo de entrada. Se o problema persistir, por favor comunique-o.',
 		'pt-BR' => 'Você foi autenticado e pronto para voltar ao serviço de solicitação de autenticação, mas não foi possível encontrar o seu pedido de autenticação em cache. O pedido é armazenado em cache por um tempo limitado. Deixando o navegador aberto por horas antes de entrar seu nome de usuário e senha pode ser a causa do problema. Se este poderia ser o caso na sua situação, tente voltar para o serviço que você deseja acessar, e iniciar um novo processo autenticação. Se o problema persistir, por favor informe-nos.',
 	),
 	'title_CREATEREQUEST' => array (
@@ -268,6 +283,7 @@ $lang = array(
 		'sl' => 'Napaka pri ustvarjanju zahteve',
 		'hr' => 'Greška prilikom kreiranja zahtjeva',
 		'hu' => 'Hiba történt',
+		'pt' => 'Erro ao criar o pedido',
 		'pt-BR' => 'Erro ao criar o pedido',
 	),
 	'descr_CREATEREQUEST' => array (
@@ -285,6 +301,7 @@ $lang = array(
 		'sl' => 'Pri ustvarjanju SAML zahteve je prišlo do napake.',
 		'hr' => 'Pojavila se greška tijekom pokušaja kreiranja SAML zahtjeva.',
 		'hu' => 'Hiba történt a SAML kérés létrehozása közben.',
+		'pt' => 'Ocorreu um erro ao tentar criar o pedido SAML',
 		'pt-BR' => 'Um erro ocorreu ao tentar criar o pedido do SAML.',
 	),
 	'title_DISCOPARAMS' => array (
@@ -302,6 +319,7 @@ $lang = array(
 		'sl' => 'Zahteva, ki je bila poslana "Discovery service-u" je napaÄŤna.',
 		'hr' => 'Neispravan zahtjev prema lokacijskom servisu',
 		'hu' => 'Érvénytelen kérés érkezett a felfedező szolgáltatáshoz (discovery service)',
+		'pt' => 'Pedido incorrecto efectuado ao serviço de descoberta de IdP',
 		'pt-BR' => 'Pedido incorreto para o serviço de descoberta',
 	),
 	'descr_DISCOPARAMS' => array (
@@ -319,6 +337,7 @@ $lang = array(
 		'sl' => 'Parametri, ki so bili poslani "Discovery service-u", ne ustrezajo specifikaciji.',
 		'hr' => 'Parametri u zahtjevu poslanom lokacijskom servisu nisu u skladu sa specifikacijama.',
 		'hu' => 'A felfedező szolgáltatás (discovery service) olyan paramétereket kapott, amelyek nem felelnek meg a specifikációnak.',
+		'pt' => 'O pedido efectuado ao serviço de descoberta de IdP não está de acordo com as especificações.',
 		'pt-BR' => 'Os parâmetros enviados para o serviço de descoberta não estão de acordo com as especificações.',
 	),
 	'title_GENERATEAUTHNRESPONSE' => array (
@@ -336,6 +355,7 @@ $lang = array(
 		'sl' => 'Odgovora za avtentikacijo ni bilo mogoÄŤe ustvariti',
 		'hr' => 'Ne mogu kreirati autentikacijski odgovor',
 		'hu' => 'Nem lehet az azonosítást végrehajtani',
+		'pt' => 'Não foi possível criar uma resposta de autenticação',
 		'pt-BR' => 'Não foi possível criar a resposta da autenticação',
 	),
 	'descr_GENERATEAUTHNRESPONSE' => array (
@@ -353,6 +373,7 @@ $lang = array(
 		'sl' => 'Ko je IdP želel ustvariti odgovor za avtentikacijo, je prišlo do napake.',
 		'hr' => 'Na strani IdP-a se pojavila greška prilikom kreiranja autentikacijskog odgovora.',
 		'hu' => 'Hiba történt az azonosítási válaszüzenet összeállítása során.',
+		'pt' => 'Ocorreu um erro ao criar uma resposta de autenticação neste fornecedor de identidade.',
 		'pt-BR' => 'Ocorreu um erro quando este servidor de identidade tentou criar uma resposta de autenticação.',
 	),
 	'title_GENERATELOGOUTRESPONSE' => array (
@@ -370,6 +391,7 @@ $lang = array(
 		'sl' => 'Odgovora o odjavi ni bilo mogoÄŤe ustvariti',
 		'hr' => 'Ne mogu kreirati odgovor na zahtjev za odjavu',
 		'hu' => 'Nem sikerült kijelentkezési válaszüzenetet létrehozni',
+		'pt' => 'NĂŁo foi possĂ­vel criar uma resposta de logout',
 		'pt-BR' => 'NĂŁo foi possĂ­vel criar a resposta para a desconexĂŁo',
 	),
 	'descr_GENERATELOGOUTRESPONSE' => array (
@@ -387,6 +409,7 @@ $lang = array(
 		'sl' => 'Ko je SAML želel ustvariti odgovor o odjavi, je prišlo do napake.',
 		'hr' => 'Pojavila se greška prilikom kreiranja odgovora na zahtjev za odjavu (Logout Response).',
 		'hu' => 'Miközben ez a SAML entitás kijelentkezési válaszüzenetet (logout response) próbált létrehozni, hiba történt.',
+		'pt' => 'Ocorreu um erro ao criar uma resposta de logout nesta entidade SAML.',
 		'pt-BR' => 'Ocorreu um erro quando a entidade SAML tentou criar a resposta para a desconexĂŁo.',
 	),
 	'title_LDAPERROR' => array (
@@ -404,6 +427,7 @@ $lang = array(
 		'sl' => 'Napaka LDAP-a',
 		'hr' => 'LDAP greška',
 		'hu' => 'LDAP hiba',
+		'pt' => 'Erro de LDAP',
 		'pt-BR' => 'Erro no LDAP',
 	),
 	'descr_LDAPERROR' => array (
@@ -421,6 +445,7 @@ $lang = array(
 		'sl' => 'LDAP je baza uporabnikov. Ko se želite prijaviti, je potrebno prijavo preveriti v LDAPu. Pri trenutnem preverjanju je prišlo do napake.',
 		'hr' => 'LDAP imenik je baza korisničkih podataka i kad pokušavate pristupiti servisu potrebno je kortaktirati LDAP bazu. Prilikom pokušaja spajanja na LDAP poslužitelj došlo je do greške.',
 		'hu' => 'A felhasználói adatbázis LDAP alapú, ezért bejelentkezéshez szükség van egy LDAP adatbázisra. Ezúttal hiba történt az LDAP-hoz kapcsolódás során.',
+		'pt' => 'Ocorreu um erro ao contactar a base de dados LDAP.',
 		'pt-BR' => 'O banco de dados de usuários é LDAP e quando você tentar efetuar o login é preciso entrar em contato com um banco de dados LDAP. Ocorreu um erro durante a tentativa de conexão.',
 	),
 	'title_LOGOUTREQUEST' => array (
@@ -438,6 +463,7 @@ $lang = array(
 		'sl' => 'Napaka pri obdelavi zahteve za odjavo',
 		'hr' => 'Greška prilikom obrade zahtjeva za odjavu',
 		'hu' => 'Feldolgozhatatlan kijelentkezési kérés',
+		'pt' => 'Erro ao processar o pedido de logout',
 		'pt-BR' => 'Erro ao processar a resposta da desconexĂŁo',
 	),
 	'descr_LOGOUTREQUEST' => array (
@@ -455,6 +481,7 @@ $lang = array(
 		'sl' => 'Pri obdelavi zahteve za odjavo je prišlo do napake.',
 		'hr' => 'Pojavila se greška tijekom obrade zahtjeva za odjavu (Logout Request).',
 		'hu' => 'A kijelentkezési kérés (logout request) feldolgozása során hiba történt.',
+		'pt' => 'Ocorreu um erro ao processar o pedido de logout.',
 		'pt-BR' => 'Um erro ocorreu ao tentar processar a resposta da desconexĂŁo.',
 	),
 	'title_GENERATELOGOUTREQUEST' => array (
@@ -472,6 +499,7 @@ $lang = array(
 		'sl' => 'Zahteve za odjavo ni bilo mogoÄŤe ustvariti',
 		'hr' => 'Ne mogu kreirati zahtjev za odjavu',
 		'hu' => 'Hiba a kijelentkezés során',
+		'pt' => 'Erro ao criar o pedido de logout',
 		'pt-BR' => 'NĂŁo foi possĂ­vel criar a resposta da desconexĂŁo',
 	),
 	'descr_GENERATELOGOUTREQUEST' => array (
@@ -489,6 +517,7 @@ $lang = array(
 		'sl' => 'Ko je SAML želel ustvariti zahtevo za odjavo, je prišlo do napake.',
 		'hr' => 'Pojavila se greška prilikom kreiranja zahtjeva za odjavu (Logout Request).',
 		'hu' => 'Miközben ez a SAML entitás kijelentkezési kérést (logout request) próbált létrehozni, hiba történt.',
+		'pt' => 'Ocorreu um erro ao criar o pedido de logout por esta entidade SAML',
 		'pt-BR' => 'Ocorreu um erro quando esta entidade SAML tentou criar a resposta de desconexĂŁo.',
 	),
 	'title_LOGOUTRESPONSE' => array (
@@ -506,6 +535,7 @@ $lang = array(
 		'sl' => 'Napaka pri obdelavi odgovora za odjavo',
 		'hr' => 'Greška prilikom odjavljivanja',
 		'hu' => 'Hiba a kijelentkezés feldolgozása során',
+		'pt' => 'Erro ao processar a resposta de logout',
 		'pt-BR' => 'Erro ao processar a resposta da desconexĂŁo',
 	),
 	'descr_LOGOUTRESPONSE' => array (
@@ -523,6 +553,7 @@ $lang = array(
 		'sl' => 'Pri obdelavi odgovora za odjavo je prišlo do napake.',
 		'hr' => 'Pojavila se greška tijekom obrade odgovora na zahtjev za odjavom (Logout Response).',
 		'hu' => 'Hiba történt a kijelentkezési válaszüzenet (logout response) feldolgozása során.',
+		'pt' => 'Ocorreu um erro ao processar a resposta de logout.',
 		'pt-BR' => 'Erro ao tentar processar a resposta da desconexĂŁo.',
 	),
 	'title_METADATA' => array (
@@ -540,6 +571,7 @@ $lang = array(
 		'sl' => 'Napaka pri nalaganju metapodatkov',
 		'hr' => 'Greška prilikom učitavanja metapodataka',
 		'hu' => 'Metaadat betöltési hiba',
+		'pt' => 'Erro na leitura dos metadados',
 		'pt-BR' => 'Erro ao carregar a metadata.',
 	),
 	'descr_METADATA' => array (
@@ -557,6 +589,7 @@ $lang = array(
 		'sl' => 'V namestitvi simpleSAMLphp-ja je napaka. ÄŚe ste skrbnik te storitve, preverite, da je namestitev metapodatkov pravilna.',
 		'hr' => 'Vaša instalacija simpleSAMLphp-a je pogrešno iskonfigurirana. Ako ste vi administrator ovog servisa, provjerite jesu li konfiguracijski metapodaci ispravni.',
 		'hu' => 'simpleSAMLphp konfigurációs hiba. Ha Ön ennek a szolgáltatásnak az adminisztrátora, bizonyosodjon meg arról, hogy a metaadatok helyesen vannak beállítva!',
+		'pt' => 'Existe uma má configuração desta instalação do simpleSAMLphp. Se é o administrador deste serviço, verifique que a configuração dos metadados está correcta.',
 		'pt-BR' => 'Há erros na sua instalação do simpleSAMLphp. Se você é o administrador deste seriço, você deve certificar-se que a sua configuração de metadata está definida corretamente.',
 	),
 	'title_NOACCESS' => array (
@@ -574,6 +607,7 @@ $lang = array(
 		'sl' => 'Ni dostopa',
 		'hr' => 'Nema pristupa',
 		'hu' => 'Hozzáférés megtagadva',
+		'pt' => 'Acesso negado',
 		'pt-BR' => 'Acesso negado.',
 	),
 	'descr_NOACCESS' => array (
@@ -591,6 +625,7 @@ $lang = array(
 		'sl' => 'Ta konÄŤna toÄŤka ni omogoÄŤena. Preverite moĹľnost omogoÄŤenja v konfiguraciji simpleSAMLphp-ja.',
 		'hr' => 'Ova krajnja točka nije omogućena. Provjerite dozvole pristupa u vašoj konfiguraciji simpleSAMLphp-a.',
 		'hu' => 'Ez a hozzáférési pont nincs engedélyezve. Engedélyezze a simpleSAMLphp beállításai között.',
+		'pt' => 'Este ponto de acesso (endpoint) não está disponível. Verifique as opções relevantes na configuração do simpleSAMLphp.',
 		'pt-BR' => 'Este parâmetro não está ativado. Marque a opção habilitar na configuração do simpleSAMLphp.',
 	),
 	'title_NORELAYSTATE' => array (
@@ -608,6 +643,7 @@ $lang = array(
 		'sl' => 'RelayState parametr ne obstaja',
 		'hr' => 'Nije postavljen RelayState parametar',
 		'hu' => 'Nincs RelayState paraméter',
+		'pt' => 'RelayState nĂŁo definido',
 		'pt-BR' => 'Sem RelayState',
 	),
 	'descr_NORELAYSTATE' => array (
@@ -625,6 +661,7 @@ $lang = array(
 		'sl' => 'Iniciator te zahteve ni posredoval RelayState parametra.',
 		'hr' => 'Inicijator ovog zahtjeva nije poslao RelayState parametar s adresom na koju treba preusmjeriti korisnika.',
 		'hu' => 'A kérés összeállítója nem adta meg a RelayState paramétert, amely azt határozza meg, hogy hová irányítsuk tovább.',
+		'pt' => 'Este pedido foi iniciado sem o parâmetro RelayState necessário para continuar com o processamento.',
 		'pt-BR' => 'O promotor deste pedido não fornecer um parâmetro RelayState indicando o local para onde seguir.',
 	),
 	'title_NOSESSION' => array (
@@ -642,6 +679,7 @@ $lang = array(
 		'sl' => 'Veljavne seje ni bilo mogoÄŤe najti',
 		'hr' => 'Sjednica nije pronađena',
 		'hu' => 'Nincs érvényes munkamenet',
+		'pt' => 'SessĂŁo nĂŁo encontrada',
 		'pt-BR' => 'SessĂŁo nĂŁo encontrada',
 	),
 	'descr_NOSESSION' => array (
@@ -659,6 +697,7 @@ $lang = array(
 		'sl' => 'Žal vaše seje ni bilo mogoče najti. Vzrok je lahko vaš brskalnik, ki ne podpira piškotkov, ali pa so piškotki onemogočeni. Lahko pa se je iztekla časovna omejitev seje, ker ste pustili brskalnik dlje časa odprt.',
 		'hr' => 'Na žalost, ne možemo pronaći podatke o vašoj sjednici. Uzrok tome može biti to što vaš web preglednik nema omogućenu podršku za tzv. kolačiće (cookie). Također, jedan od razloga može biti i predugo otvoren web preglednik.',
 		'hu' => 'Sajnos nem tudunk érvényes munkamenetet (session) meghatározni. Lehetséges, hogy böngészője nem támogatja a cookie-kat, illetve ezek le vannak tiltva. Amennyiben böngészője már régóta meg van nyitva, az is előfordulhat, hogy a munkamenet érvényessége lejárt.',
+		'pt' => 'Não foi possível encontrar informação acerca da sua sessão. Este problema pode ser causado por o seu browser não suportar cookies ou ter este suporte desactivado. Em alternativa, a sua sessão pode ter expirado por ter deixado o browser aberto durante muito tempo.',
 		'pt-BR' => 'Infelizmente, não foi possível obter informações da sua sessão. Isso pode ter ocorrido porque o seu navegador não suporta cookies ou a movimentação de cookies está desativado. Alternadamente, sua sessão expirou, pois você deixou o navegador aberto por muito tempo.',
 	),
 	'title_PROCESSASSERTION' => array (
@@ -676,6 +715,7 @@ $lang = array(
 		'sl' => 'Pri obdelavi odgovora IdP-ja je prišlo do napake',
 		'hr' => 'Greška prilikom obrade odgovora IdP-a',
 		'hu' => 'IdP válasz feldolgozási hiba',
+		'pt' => 'Erro ao processar a resposta do fornecedor de identidade (IdP)',
 		'pt-BR' => 'Erro processando a resposta do Provedor de Identidade.',
 	),
 	'descr_PROCESSASSERTION' => array (
@@ -693,6 +733,7 @@ $lang = array(
 		'sl' => 'Odgovor, poslan od IdP-ja, ni bil sprejet.',
 		'hr' => 'Odgovor koji je poslao IdP nije prihvaćen.',
 		'hu' => 'Nem fogadtuk el a személyazonosság-szolgáltató (IdP) által küldött válaszüzenetet.',
+		'pt' => 'A resposta emitida pelo fornecedor de identidade nĂŁo foi aceite.',
 		'pt-BR' => 'NĂłs nĂŁo aceitamos a resposta enviada pelo Provedor de Identidade.',
 	),
 	'title_PROCESSAUTHNRESPONSE' => array (
@@ -710,6 +751,7 @@ $lang = array(
 		'sl' => 'Napaka pri obdelavi odgovora IdP-ja.',
 		'hr' => 'Greška prilikom obrade odgovora IdP-a',
 		'hu' => 'Hiba történt az IdP válaszának feldolgozása során',
+		'pt' => 'Erro ao processar a resposta do fornecedor de identidade (IdP)',
 		'pt-BR' => 'Erro processando a resposta do Provedor de Identidade.',
 	),
 	'descr_PROCESSAUTHNRESPONSE' => array (
@@ -727,6 +769,7 @@ $lang = array(
 		'sl' => 'IdP je prejel avtenticiran odgovor SP-ja, vendar je pri obdelavi tega odgovora prišlo do napake.',
 		'hr' => 'SP je dobio autentikacijski odgovor od IdP-a, ali je prilikom obrade odgovora došlo go greške.',
 		'hu' => 'Az SP megkapta az IdP-től az azonosítási válaszüzenetet, de ennek feldolgozása során hiba történt.',
+		'pt' => 'Ocorreu um erro ao processar a resposta de autenticação emitida pelo fornecedor de identidade.',
 		'pt-BR' => 'Este SP recebeu uma resposta de autenticação do Provedor de Identidade, mas ocorreu um erro ao tentar processar a resposta.',
 	),
 	'title_PROCESSAUTHNREQUEST' => array (
@@ -744,6 +787,7 @@ $lang = array(
 		'sl' => 'Napaka pri obdelavi zahteve SP',
 		'hr' => 'Greška prilikom obrade zahtjeva koji je poslao SP.',
 		'hu' => 'Hibás SP üzenet',
+		'pt' => 'Erro ao processar o pedido  do fornecedor de serviço (SP)',
 		'pt-BR' => 'Erro processando o pedido do Provedor de Serviços.',
 	),
 	'descr_PROCESSAUTHNREQUEST' => array (
@@ -761,6 +805,7 @@ $lang = array(
 		'sl' => 'IdP je prejel avtenticirano zahtevo SP-ja, vendar je prišlo do napake pri obdelavi te zahteve.',
 		'hr' => 'IdP je dobio autentikacijski zahtjev od davatelja usluge (SP), ali je prilikom obrade zahtjeva došlo do greške.',
 		'hu' => 'Az IdP azonosítási kérést kapott az SP-től, de ennek feldolgozása során hiba történt.',
+		'pt' => 'Ocorreu um erro ao processar o pedido de autenticação emitido pelo fornecedor de serviço.',
 		'pt-BR' => 'Este Provedor de Identidade recebeu um Pedido de Autenticação de um Provedor de Serviços, mas um erro ocorreu ao tentar processar o pedido.',
 	),
 	'title_SSOSERVICEPARAMS' => array (
@@ -778,6 +823,7 @@ $lang = array(
 		'sl' => 'Podani so bili napaÄŤni parametri',
 		'hr' => 'Dostavljeni parametri nisu valjani',
 		'hu' => 'Hibás paraméterek',
+		'pt' => 'Parâmetros incorrectos',
 		'pt-BR' => 'Parâmetros fornecidos incorretamente',
 	),
 	'descr_SSOSERVICEPARAMS' => array (
@@ -795,6 +841,7 @@ $lang = array(
 		'sl' => 'Potrebno je zagotoviti SAML zahtevo ali RequestID na tem vmesniku.',
 		'hr' => 'Ovom suÄŤelju morate proslijediti ili SAML Request poruku ili RequestID.',
 		'hu' => 'Ezen az interfészen vagy SAML Request üzenetet vagy RequestID-t kell megadni.',
+		'pt' => 'Deve fornecer uma mensagem SAML do tipo Request ou RequestID nesta interface.',
 		'pt-BR' => 'Você deve fornecer uma mensagem ou uma solicitação SAML RequestID sobre esta interface.',
 	),
 	'title_SLOSERVICEPARAMS' => array (
@@ -812,6 +859,7 @@ $lang = array(
 		'sl' => 'SAML sporoÄŤilo ni na voljo',
 		'hr' => 'Nije dostavljena nikakva SAML poruka',
 		'hu' => 'Hiányzó SAML üzenet',
+		'pt' => 'Mensagem SAML nĂŁo fornecida',
 		'pt-BR' => 'NĂŁo fornecida a mensagem SAML',
 	),
 	'descr_SLOSERVICEPARAMS' => array (
@@ -829,6 +877,7 @@ $lang = array(
 		'sl' => 'Dostopili ste do SingleLogoutService vmesnika, ampak niste zagotovili SAML LogoutRequest ali LogoutResponse.',
 		'hr' => 'Pristupili ste SingleLogoutService suÄŤelju, ali niste dostavili SAML LogoutRequest ili LogoutResponse.',
 		'hu' => 'A Single Logout interfészen vagy SAML LogoutRequest vagy LogoutResponse üzenetet kell megadni.',
+		'pt' => 'Na interface SingleLogoutService deve fornecer uma mensagem SAML do tipo LogoutRequest ou LogoutResponse.',
 		'pt-BR' => 'VocĂŞ acessou a interface do SingleLogoutService, mas nĂŁo forneceu a SAML LogoutRequest ou LogoutResponse.',
 	),
 	'title_ACSPARAMS' => array (
@@ -846,6 +895,7 @@ $lang = array(
 		'sl' => 'Nobenega odgovora za SAML ni na voljo',
 		'hr' => 'Nije dostavljen nikakav SAML odgovor',
 		'hu' => 'Nincs SAML válasz',
+		'pt' => 'Mensagem SAML nĂŁo fornecida',
 		'pt-BR' => 'NĂŁo fornecida a resposta SAML',
 	),
 	'descr_ACSPARAMS' => array (
@@ -863,6 +913,7 @@ $lang = array(
 		'sl' => 'Dostopili ste do "Assertion Consumer Service" vmesnika, ampak niste zagotovili "SAML Authentication Respons-a".',
 		'hr' => 'Pristupili ste Assertion Consumer Service suÄŤelju, ali niste dostavili SAML autentikacijski odgovor.',
 		'hu' => 'Az Assertion Consumer Service interfészen SAML Authentication Response üzenetet kell megadni.',
+		'pt' => 'Na interface Assertion Consumer Service deve fornecer uma mensagem SAML do tipo Authentication Response.',
 		'pt-BR' => 'VocĂŞ acessou a interface do Assertion Consumer Service, mas nĂŁo forneceu uma SAML Authentication Response.',
 	),
 	'title_CASERROR' => array (
@@ -880,6 +931,7 @@ $lang = array(
 		'sl' => 'CAS napaka',
 		'hr' => 'CAS greška',
 		'hu' => 'CAS hiba',
+		'pt' => 'Erro de CAS',
 		'pt-BR' => 'Erro CAS',
 	),
 	'descr_CASERROR' => array (
@@ -897,6 +949,7 @@ $lang = array(
 		'sl' => 'Napaka pri komunikaciji s CAS streĹľnikom.',
 		'hr' => 'Greška u komunikaciji s CAS poslužiteljem.',
 		'hu' => 'Hiba történt a CAS kiszolgálóval való kommunikáció közben.',
+		'pt' => 'Ocorreu um erro ao comunicar com o servidor CAS.',
 		'pt-BR' => 'Erro ao comunicar-se com o servidor CAS',
 	),
 	'title_CONFIG' => array (
@@ -914,6 +967,7 @@ $lang = array(
 		'sl' => 'Napaka v nastavitvah',
 		'hr' => 'Greška u konfiguraciji',
 		'hu' => 'Beállítási hiba',
+		'pt' => 'Erro de configuração',
 		'pt-BR' => 'Erro na configuração',
 	),
 	'descr_CONFIG' => array (
@@ -931,6 +985,7 @@ $lang = array(
 		'sl' => 'Nastavitve simpleSAMLphp so napaÄŤne ali se med seboj izkljuÄŤujejo.',
 		'hr' => 'Izgleda da je simpleSAMLphp pogrešno iskonfiguriran.',
 		'hu' => 'Valószínűleg helytelenül lett konfigurálva a simpleSAMLphp',
+		'pt' => 'O software simpleSAMLphp tem um problema de configuração.',
 		'pt-BR' => 'simpleSAMLphp parece estar mal configurado.',
 	),
 	'title_NOTVALIDCERT' => array (
@@ -948,6 +1003,7 @@ $lang = array(
 		'sl' => 'NapaÄŤen certifikat',
 		'hr' => 'Nevažeći certifikat',
 		'hu' => 'Érvénytelen tanúsítvány',
+		'pt' => 'Certificado inválido',
 		'pt-BR' => 'Certificado inválido',
 	),
 	'descr_NOTVALIDCERT' => array (
@@ -965,6 +1021,7 @@ $lang = array(
 		'sl' => 'Posredovan certifikat je neveljaven',
 		'hr' => 'Niste predoÄŤili valjani certifikat.',
 		'hu' => 'Nem található hiteles tanúsítvány',
+		'pt' => 'Não foi apresentado um certificado válido.',
 		'pt-BR' => 'Você não possui um certificado válido',
 	),
 	'title_NOTSET' => array (
@@ -982,6 +1039,7 @@ $lang = array(
 		'sl' => 'Geslo ni nastavljeno',
 		'hr' => 'Zaporka nije postavljena',
 		'hu' => 'Jelszó nincs beállítva',
+		'pt' => 'Password inalterada',
 		'pt-BR' => 'Senha nĂŁo definida',
 	),
 	'descr_NOTSET' => array (
@@ -999,6 +1057,7 @@ $lang = array(
 		'sl' => 'V nastavitvah je administrativno geslo (auth.adminpassword) še vedno nastavljeno na začetno vrednost. Spremenite ga!',
 		'hr' => 'Izvorna vrijednost administratorske zaporke (auth.adminpassword) u konfiguraciji nije promjenjena. Molimo promjenite zaporku u konfiguracijskoj datoteci.',
 		'hu' => 'Még nem lett megváltoztatva a karbantartói jelszó (auth.adminpassword) a konfigurációs fájlban, kérjük, változtassa meg most! ',
+		'pt' => 'A password presente na configuração (auth.adminpassword) tem o valor de omissão. Por favor altere esta password no ficheiro de configuração.',
 		'pt-BR' => 'A senha na configuração (auth.adminpassword) não foi alterada. Edite o arquivo de configuração.',
 	),
 	'title_READCONFIGTEMPLATES' => array (
@@ -1014,6 +1073,7 @@ $lang = array(
 		'sl' => 'Napaka pri dostopu do mape z namestitvenimi predlogami.',
 		'hr' => 'Greška prilikom čitanja config-templates direktorija',
 		'hu' => 'Nem sikerült olvasni a config-templates könyvtárából',
+		'pt' => 'Erro na leitura da directoria config-templates',
 		'pt-BR' => 'Erro lendo o diretĂłrio config-templates',
 	),
 	'descr_READCONFIGTEMPLATES' => array (
@@ -1029,6 +1089,7 @@ $lang = array(
 		'sl' => 'Prišlo je do napake! simpleSAMLphp v mapi z namestitvenimi predlogami ne najde zahtevanih datotek.',
 		'hr' => 'Došlo je do greške tijekom pokušaja dohvaćanja raspoloživih datoteka u config-templates direktoriju.',
 		'hu' => 'Hiba történt miközben a simpleSAMLphp megpróbálta meghatározni, hogy milyen állományok találhatók a config-templates könyvtárban (konfigurációs sablonok gyűjtőhelye).',
+		'pt' => 'Ocorreu um erro na tentativa de leitura dos ficheiros presentes na directoria config-templates.',
 		'pt-BR' => 'Ocorreu um erro enquanto o simpleSAMLphp tentatava encontrar os arquivos disponĂ­veis no diretĂłrio config-templates.',
 	),
 	'title_LOGOUTINFOLOST' => array (
@@ -1044,6 +1105,7 @@ $lang = array(
 		'sl' => 'Odjavni (Logout) parametri niso na voljo.',
 		'hr' => 'Informacija o odjavljivanju izgubljena',
 		'hu' => 'Elveszett kijelentkezési információk',
+		'pt' => 'Informação de logout perdida',
 		'pt-BR' => 'Informações de desconexão perdidas',
 	),
 	'descr_LOGOUTINFOLOST' => array (
@@ -1059,6 +1121,7 @@ $lang = array(
 		'sl' => 'Odjavni (Logout) parametri niso na voljo. Vrnite se na storitev, ki ste jo pravkar uporabljali in se ponovno poskusite odjaviti. Napaka je posledica poteka veljavnosti seje.',
 		'hr' => 'Informacija o tekućem zahtjevu za odjavljivanjem se izgubila. Preporučamo da se vratite u aplikaciju iz koje ste se htjeli odjaviti i pokušate se odjaviti ponovo. Ova greška može biti uzrokovana istekom valjanosti zahtjeva za odjavom. Zahtjev se pohranjuje određeno vrijeme - u pravilu nekoliko sati. Obzirom da je to dulje nego što bi bilo koja operacija odjavljivanja trebala trajati, greška koja se pojavila može upućivati na grešku u konfiguraciji. Ako se problem nastavi, kontaktirajte vašeg davatelja usluge. ',
 		'hu' => 'A kijelentkezési művelettel kapcsolatos információk valahol elvesztek. Kérjük, térjen vissza ahhoz a szolgáltatáshoz, ahonnan ki akart jelentkezni, és próbálja újra! Lehetséges, hogy a hibát az okozza, hogy a kijelentkezéshez szükséges információ elévült. A kijelentkezési információ csak korlátozott ideig érvényes - általában néhány óráig. Ez hosszabb, mint amennyi normális esetben a kijelentkezéshez szükséges, ezért ez a hibaüzenet konfigurációs hibát jelenthet. Ha a probléma továbbra is fennáll, kérjük, forduljon az alkalmazásszolgáltatóhoz (SP)!',
+		'pt' => 'A informação acerca da operação de logout foi perdida. Por favor, volte ao serviço de onde efectuou o logout e tente de novo esta operação. A informação de logout possui um tempo de expiração que é normalmente muito superior ao tempo normal de processamento desta operação. Se o problema persistir pode ser um erro de configuração e deverá ser comunicado.',
 		'pt-BR' => 'As informações sobre a operação de desconexão atual foram perdidas. Você deve voltar para o serviço que estava antes de tentar sair e tente novamente. Esse erro pode ser causado pela expiração das informações da desconexão. As informações são armazenadas em cache por uma quantia limitada de tempo - geralmente um número de horas. Esta é mais longa do que qualquer desconexão em funcionamento normal deve ter, de modo que este erro pode indicar algum outro erro com a configuração. Se o problema persistir, contate o seu fornecedor de serviços.',
 	),
 	'title_ASSERTFAIL' => array (
@@ -1073,6 +1136,7 @@ $lang = array(
 		'sl' => 'Neveljavna zahteva',
 		'hr' => 'Neispravna potvrda',
 		'hu' => 'Igazolás (assertion) hiba',
+		'pt' => 'Erro num afirmação',
 		'pt-BR' => 'Erro na Afirmação',
 	),
 	'descr_ASSERTFAIL' => array (
@@ -1087,6 +1151,7 @@ $lang = array(
 		'sl' => 'Vnos v kodo je spodletel. Navedena je bila naslednja zahteva: %ASSERTION%',
 		'hr' => 'Potvrda u kodu je neispravna. Potvrda je: %ASSERTION%',
 		'hu' => 'Igazolás (assertion) hiba a kódban. A hibás igazolás: %ASSERTION%',
+		'pt' => 'Ocorreu um erro com uma afirmação (assertion). A afirmação em causa foi: %ASSERTION%',
 		'pt-BR' => 'Uma afirmação no código falhou. A afirmação foi: %ASSERTION%',
 	),
 	'title_UNHANDLEDEXCEPTION' => array (
@@ -1101,6 +1166,7 @@ $lang = array(
 		'sl' => 'Nedefinirana izjema.',
 		'hr' => 'Neobrađena iznimka',
 		'hu' => 'Kezeletlen kivétel',
+		'pt' => 'Excepção não tratada',
 		'pt-BR' => 'Exceção não tratada',
 	),
 	'descr_UNHANDLEDEXCEPTION' => array (
@@ -1115,6 +1181,7 @@ $lang = array(
 		'sl' => 'Zagnana je bila nedefinirana izjema.',
 		'hr' => 'Pojavila se iznimka koja nije obrađena.',
 		'hu' => 'Kezeletlen kivétel (exception) keletkezett.',
+		'pt' => 'Foi despoletada um excepção que não foi tratada.',
 		'pt-BR' => 'Uma exceção não tratada foi descartada.',
 	),
 	'title_NOTFOUND' => array (
@@ -1129,6 +1196,7 @@ $lang = array(
 		'sl' => 'Strani ni bilo mogoÄŤe najti.',
 		'hr' => 'Stranica nije pronađena',
 		'hu' => 'Oldal nem található',
+		'pt' => 'Página não encontrada',
 		'pt-BR' => 'Página não encontrada',
 	),
 	'descr_NOTFOUND' => array (
@@ -1143,6 +1211,7 @@ $lang = array(
 		'sl' => 'Strani ni bilo mogoÄŤe najti. Naveden URL strani je bil: %URL%',
 		'hr' => 'Tražena stranica nije pronađena. URL stranice: %URL%',
 		'hu' => 'Az alábbi oldal nem található: %URL%',
+		'pt' => 'A página não foi encontrada. O URL fornecido foi: %URL%',
 		'pt-BR' => 'A página determinada não foi encontrada. A URL foi: %URL%',
 	),
 	'title_NOTFOUNDREASON' => array (
@@ -1157,6 +1226,7 @@ $lang = array(
 		'sl' => 'Strani ni bilo mogoÄŤe najti.',
 		'hr' => 'Stranica nije pronađena',
 		'hu' => 'Oldal nem található',
+		'pt' => 'Página não encontrada',
 		'pt-BR' => 'Página não encontrada',
 	),
 	'descr_NOTFOUNDREASON' => array (
@@ -1171,6 +1241,7 @@ $lang = array(
 		'sl' => 'Strani ni bilo mogoÄŤe najti. Razlog: %REASON%. Naveden URL strani je bil: %URL%',
 		'hr' => 'Tražena stranica nije pronađena. Razlog: %REASON% URL stranice: %URL%',
 		'hu' => '%URL% oldal nem található, a következő ok miatt: %REASON% ',
+		'pt' => 'A página não foi encontrada. A razão foi: %REASON% O URL fornecido foi: %URL%',
 		'pt-BR' => 'A página determinada não foi encontrada. A razão foi: %REASON% A URL foi: %URL%',
 	),
 	'title_BADREQUEST' => array (
@@ -1185,6 +1256,7 @@ $lang = array(
 		'sl' => 'Napaka v prejetem zahtevku.',
 		'hr' => 'Dobiveni zahtjev je neispravan',
 		'hu' => 'Hibás kérés',
+		'pt' => 'Pedido inválido recebido',
 		'pt-BR' => 'A solicitação recebida é inválida',
 	),
 	'descr_BADREQUEST' => array (
@@ -1199,6 +1271,7 @@ $lang = array(
 		'sl' => 'Prišlo je do napake pri prejetem zahtevku. Razlog: %REASON%',
 		'hr' => 'Dogodila se pogreška prilikom slanja zahtjeva na ovu adresu. Razlog pogreške %REASON%',
 		'hu' => 'Hiba történt az oldal lekérdezése közben. A hibaüzenet: %REASON%',
+		'pt' => 'Ocorreu um erro com o pedido a esta página. A razão foi: %REASON%',
 		'pt-BR' => 'Há um erro no pedido para esta página. O motivo foi: %REASON%',
 	),
 	'title_WRONGUSERPASS' => array (
@@ -1212,6 +1285,7 @@ $lang = array(
 		'sl' => 'Napačno uporabniško ime ali geslo',
 		'hr' => 'Neispravna korisniÄŤka oznaka ili zaporka',
 		'hu' => 'Hibás felhasználónév vagy jelszó',
+		'pt' => 'Utilizador ou senha incorrecto',
 		'pt-BR' => 'Nome de usuário ou senha incorreto.',
 	),
 	'descr_WRONGUSERPASS' => array (
@@ -1225,6 +1299,7 @@ $lang = array(
 		'sl' => 'Uporabnika s tem uporabniškim imenom ni bilo mogoče najti ali pa je vpisano geslo napačno. Prebverite svoje uporabniško ime in poskusite znova.',
 		'hr' => 'Korisnik s navedenom korisničkom oznakom ne može biti pronađen ili je zaporka koju ste unijeli neispravna. Molim provjerite korisničku oznaku i pokušajte ponovo.',
 		'hu' => 'Nem létezik ilyen felhasználó vagy a jelszó hibás. Kérjük, próbálja újra!',
+		'pt' => 'O utilizador ou senha fornecidos sĂŁo incorrectos. Por favor tente de novo.',
 		'pt-BR' => 'Ou nenhum usuário com o nome de usuário pode ser encontrado, ou a senha que você digitou está incorreta. Verifique o nome de usuário e tente novamente.',
 	),
 	'title_OPENIDWRONG' => array (
@@ -1237,6 +1312,7 @@ $lang = array(
 		'sl' => 'NapaÄŤna identiteta za OpenID',
 		'hr' => 'Neispravan identitet za OpenID',
 		'hu' => 'Hibás OpenID identitás',
+		'pt' => 'Erro de Identidade OpenID',
 	),
 	'descr_OPENIDWRONG' => array (
 		'no' => 'OpenID-en som ble etterspurt stemmer ikke overens med identiteten du er logget inn med.',
@@ -1248,6 +1324,7 @@ $lang = array(
 		'sl' => 'OpenID je zahteval preverjanje identitete, vi ste prijavljeni z drugo identiteto.',
 		'hr' => 'OpenID je od vas traĹľio provjeru identiteta, a vi ste prijavljeni s drugim identitetom.',
 		'hu' => 'Az OpenID egy identitás ellenőrzését kívánta, de ön egy másik identitás nevében van bejelentkezve.',
+		'pt' => 'O OpenID pediu a verificação de uma identidade, mas você está autenticado com outra identidade',
 	),
 
 );
diff --git a/dictionaries/frontpage.php b/dictionaries/frontpage.php
index 8d000266c..dd5531447 100644
--- a/dictionaries/frontpage.php
+++ b/dictionaries/frontpage.php
@@ -16,6 +16,7 @@ $lang = array(
 		'sl' => '<strong>Čestitamo!</strong> Uspešno ste namestili simpleSAMLphp. Na tej strani se nahajajo povezave do vzorčnih nastavitev, diagnostike, metapodatkov in s tem povezane dokumentacije.',
 		'hr' => '<strong>Čestitamo</strong>, uspješno ste instalirali simpleSAMLphp. Ovo je početna stranica na kojoj možete pronaći primjere, dijagnostiku i metapodatke, kao i linkove na relevantnu dokumentaciju.',
 		'hu' => '<strong>Gratulálunk</strong>, a simpleSAMLphp sikeresen települt. Ez a működő rendszer nyitóoldala, ahol teszt példák, diagnosztikai eszközök, metaadatok és dokumentációk találhatók',
+		'pt' => '<strong>Parabéns</strong>, o software simpleSAMLphp foi instalado com sucesso. Esta é a página inicial da sua instalação, onde encontrará ligações para páginas de teste, de diagnóstico, de metadata e de documentação relevante.    ',
 		'pt-BR' => '<strong>Parabéns</strong>, você instalou com sucesso o simpleSAMLphp. Esta é a página de introdução de sua instalação, onde você encontrará links para as páginas de teste, diagnóstico, metadata e para a documentação.',
 	),
 	'useful_links_header' => array (
@@ -33,6 +34,7 @@ $lang = array(
 		'sl' => 'Uporabne povezave',
 		'hr' => 'Korisni linkovi',
 		'hu' => 'Hasznos linkek',
+		'pt' => 'Ligações úteis da sua instalação',
 		'pt-BR' => 'Endereços úteis para sua instalação.',
 	),
 	'metadata_header' => array (
@@ -50,6 +52,7 @@ $lang = array(
 		'sl' => 'Metapodatki',
 		'hr' => 'Metapodaci',
 		'hu' => 'Metaadat',
+		'pt' => 'Metadata  ',
 		'pt-BR' => 'Metadata',
 	),
 	'doc_header' => array (
@@ -67,6 +70,7 @@ $lang = array(
 		'sl' => 'Dokumentacija',
 		'hr' => 'Dokumentacija',
 		'hu' => 'Dokumentáció',
+		'pt' => 'Documentação',
 		'pt-BR' => 'Documentação',
 	),
 	'checkphp' => array (
@@ -84,6 +88,7 @@ $lang = array(
 		'sl' => 'Preverjanje namestitve PHP',
 		'hr' => 'Provjera vaše PHP instalacije',
 		'hu' => 'PHP beállítások ellenőrzése',
+		'pt' => 'Verificação do seu ambiente PHP',
 		'pt-BR' => 'Checando sua instalação do PHP',
 	),
 	'about_header' => array (
@@ -101,6 +106,7 @@ $lang = array(
 		'sl' => 'O simpleSAMLphp',
 		'hr' => 'O simpleSAMLphp-u',
 		'hu' => 'A simpleSAMLphp-ról bővebben',
+		'pt' => 'Sobre o simpleSAMLphp',
 		'pt-BR' => 'Sobre o simpleSAMLphp',
 	),
 	'about_text' => array (
@@ -118,6 +124,7 @@ $lang = array(
 		'sl' => 'Da! simpleSAMLphp je zares kul! Kje si lahko preberem kaj veÄŤ o tem? Dodatne informacije se nahajajo na <a href="http://rnd.feide.no/simplesamlphp">simpleSAMLphp Feide RnD blogu</a>.',
 		'hr' => 'Ovaj simpleSAMLphp je prilično cool, gdje mogu pronaći više informacija o njemu? Više informacija možete pronaći na <a href="http://rnd.feide.no/simplesamlphp">simpleSAMLphp stranici Feide RnD bloga</a>.',
 		'hu' => 'Ez a simpleSAMLphp-dolog nagyon hasznos, hol olvashatnék többet róla? További információkat a <a href="http://rnd.feide.no/simplesamlphp"> Feide RnD simpleSAMLphp-ról szóló blogjában </a> találhat a <a href="http://uninett.no">UNINETT-en</a>.',
+		'pt' => 'Pode encontrar mais informação sobre o <a href="http://rnd.feide.no/simplesamlphp">simpleSAMLphp no blog da Feide RnD</a> em <a href="http://uninett.no">UNINETT</a>.',
 		'pt-BR' => 'Este simpleSAMLphp é uma coisa muito legal, onde posso ler mais sobre isso? Você pode encontrar mais informações sobre o <a href="http://rnd.feide.no/simplesamlphp">simpleSAMLphp no blog de Feide RnD</a> durante a <a href="http://uninett.no">UNINETT</a>.',
 	),
 	'required' => array (
@@ -135,6 +142,7 @@ $lang = array(
 		'sl' => 'Zahtevano',
 		'hr' => 'Obavezno',
 		'hu' => 'Szükséges',
+		'pt' => 'Necessário',
 		'pt-BR' => 'Requerido',
 	),
 	'required_ldap' => array (
@@ -152,6 +160,7 @@ $lang = array(
 		'sl' => 'Zahtevano za LDAP',
 		'hr' => 'Obavezno za LDAP',
 		'hu' => 'Szükséges az LDAP támogatáshoz',
+		'pt' => 'Necessário para LDAP',
 		'pt-BR' => 'Requerido para o LDAP',
 	),
 	'required_radius' => array (
@@ -169,6 +178,7 @@ $lang = array(
 		'sl' => 'Zahtevano za RADIUS',
 		'hr' => 'Obavezno za RADIUS',
 		'hu' => 'Szükséges a Radius támogatáshoz',
+		'pt' => 'Necessário para Radius',
 		'pt-BR' => 'Requerido para o Radius',
 	),
 	'optional' => array (
@@ -186,6 +196,7 @@ $lang = array(
 		'sl' => 'Dodatno',
 		'hr' => 'Opcionalno',
 		'hu' => 'Opcionális',
+		'pt' => 'Opcional',
 		'pt-BR' => 'Opcional',
 	),
 	'reccomended' => array (
@@ -203,6 +214,7 @@ $lang = array(
 		'sl' => 'PriporoÄŤljivo',
 		'hr' => 'PreporuÄŤeno',
 		'hu' => 'Ajánlott',
+		'pt' => 'Recomendado',
 		'pt-BR' => 'Recomendado',
 	),
 	'warnings' => array (
@@ -220,6 +232,7 @@ $lang = array(
 		'sl' => 'Opozorila',
 		'hr' => 'Upozorenja',
 		'hu' => 'Figyelmeztetések',
+		'pt' => 'Avisos',
 		'pt-BR' => 'Avisos',
 	),
 	'warnings_https' => array (
@@ -237,6 +250,7 @@ $lang = array(
 		'sl' => '<strong>Ne uporabljate HTTPS</strong>-šifrirano komunikacijo. SimpleSAMLphp deluje brez težav na HTTP za testne namene, vendar je potrebno za uporabo simpleSAMLphp v produkcijskem okolju uporabiti HTTPS. [ <a href="http://rnd.feide.no/content/simplesamlphp-maintenance-and-configuration">preberite več o simpleSAMLphp vzdrževanju</a> ]',
 		'hr' => '<strong>Ne koristite HTTPS</strong> - kriptiranu komunikaciju s korisnikom. HTTP se može koristiti za potrebe testiranja, ali u produkcijskom okruženju trebali biste koristiti HTTPS. [ <a href="http://rnd.feide.no/content/simplesamlphp-maintenance-and-configuration">Pročitajte više o simpleSAMLphp postavkama</a> ]',
 		'hu' => '<strong>Nem HTTPS protokollt használ</strong> - nem titkosított a kommunikáció! HTTP jó megoldás lehet teszt rendszerek esetében, de az éles rendszerben lehetőség szerint használjon HTTPS-t! [ <a href="http://rnd.feide.no/content/simplesamlphp-maintenance-and-configuration">Többet olvashat a simpleSAMLphp beállításáról</a> ]',
+		'pt' => '<strong>Não está a ser usado HTTPS</strong> - comunicação cifrada com o utilizador. Para ambientes de teste, ligações HTTP são suficientes, mas num ambiente de produção deve ser usado HTTPS. [ <a href="http://rnd.feide.no/content/simplesamlphp-maintenance-and-configuration">Ler mais sobre manutenção do simpleSAMLphp</a> ]',
 		'pt-BR' => '<strong>Você não está utilizando HTTPS</strong> - comunicação encriptada com o usuário. HTTP funciona bem para testes, mas você deve utilizar HTTPS para produção. [ <a href="http://rnd.feide.no/content/simplesamlphp-maintenance-and-configuration">Leia mais sobre manutenção do simpleSAMLphp</a> ]',
 	),
 	'link_saml2example' => array (
@@ -254,6 +268,7 @@ $lang = array(
 		'sl' => 'SAML 2.0 SP primer - preveri prijavo preko svojega IdP',
 		'hr' => 'SAML 2.0 SP primjer - test autentikacija kroz vaš IdP',
 		'hu' => 'SAML 2.0 SP példa - teszt bejelentkezés saját IdP keresztül',
+		'pt' => 'Exemplo de um SP SAML 2.0 - Para testes de login pelo seu IdP',
 		'pt-BR' => 'SAML 2.0 SP exemplo - efetuar login na sua IDP',
 	),
 	'link_shib13example' => array (
@@ -271,6 +286,7 @@ $lang = array(
 		'sl' => 'Shibboleth 1.3 SP primer - preveri prijavo preko svojega Shib IdP',
 		'hr' => 'Shibboleth 1.3 SP primjer - test autentikacija kroz vaš Shib IdP',
 		'hu' => 'Shibboleth 1.3 SP példa - teszt bejelentkezés saját Shibboleth 1.3 IdP keresztül',
+		'pt' => 'Exemplo de um SP Shibboleth 1.3 - Para testes de login pelo seu IdP Shib',
 		'pt-BR' => 'Shibboleth 1.3 SP exemplo - efetuar login na sua Shib IDP',
 	),
 	'link_openidprovider' => array (
@@ -288,6 +304,7 @@ $lang = array(
 		'sl' => 'OpenID Provider lokacija - Alpha razliÄŤica (v razvoju)',
 		'hr' => 'OpenID Provider lokacija - razvojna verzija (test)',
 		'hu' => 'OpenID kiszolgáló oldal - Alpha verzió (teszt kód)',
+		'pt' => 'Site do provider OpenID - versĂŁo Alpha (cĂłdigo de teste)',
 		'pt-BR' => 'OpenID Provider site - VersĂŁo Alpha (CĂłdigo de Teste)',
 	),
 	'link_diagnostics' => array (
@@ -305,6 +322,7 @@ $lang = array(
 		'sl' => 'Diagnostika streĹľnika, vrata in protokol',
 		'hr' => 'Dijagnostika vezana uz naziv posluĹľitelja, port i protokol',
 		'hu' => 'Port Ă©s protokoll diagnosztika',
+		'pt' => 'DiagnĂłsticos: hostname, porto e protocolo',
 		'pt-BR' => 'DiagnĂłsticos do host, porta e protocolo',
 	),
 	'link_phpinfo' => array (
@@ -322,6 +340,7 @@ $lang = array(
 		'sl' => 'PHPinfo',
 		'hr' => 'Informacije o PHP instalaciji',
 		'hu' => 'PHP futási információk',
+		'pt' => 'PHP info',
 		'pt-BR' => 'Informações do PHP',
 	),
 	'link_configcheck' => array (
@@ -337,6 +356,7 @@ $lang = array(
 		'sl' => 'Preveri simpleSAMLphp nastavitve',
 		'hr' => 'Provjera simpleSAMLphp konfiguracije',
 		'hu' => 'simpleSAMLphp konfigurációjának ellenőrzése',
+		'pt' => 'Teste da configuração do simpleSAMLphp',
 		'pt-BR' => 'Checar a configuração do simpleSAMLphp',
 	),
 	'link_meta_overview' => array (
@@ -354,6 +374,7 @@ $lang = array(
 		'sl' => 'Pregled metapodatkov in njihova diagnostika.',
 		'hr' => 'Pregled metapodataka o vašoj instalaciji. Dijagnostika datoteka s metapodacima.',
 		'hu' => 'Metaadat áttekintés. Vizsgálja át metaadat állományait',
+		'pt' => 'Diagnósticos: ficheiros de metadata, vista geral da metadata da sua instalação',
 		'pt-BR' => 'Metadados para sua instalação. Diagnosticar seus arquivos metadados',
 	),
 	'link_meta_saml2sphosted' => array (
@@ -371,6 +392,7 @@ $lang = array(
 		'sl' => 'Metapodatki za SAML 2.0 SP (samodejno zgenerirani)',
 		'hr' => 'Metapodaci za lokalni SAML 2.0 SP (automatski generirani)',
 		'hu' => 'Ezen a gépen futó (hosted) SAML 2.0 alkalmazásszolgáltató (SP) metaadat (automatikusan generált)',
+		'pt' => 'Metadata do fornecedor de serviço (SP) SAML 2.0 local (gerado automaticamente)',
 		'pt-BR' => 'Hospedado SAML 2.0 Service Provider Metadata (gerado automaticamente)',
 	),
 	'link_meta_saml2idphosted' => array (
@@ -388,6 +410,7 @@ $lang = array(
 		'sl' => 'Metapodatki za SAML 2.0 IdP (samodejno zgenerirani)',
 		'hr' => 'Metapodaci za lokalni SAML 2.0 IdP (automatski generirani) ',
 		'hu' => 'Ezen a gépen futó (hosted) SAML 2.0 személyazonosság-szolgáltató (IdP) metaadat (automatikusan generált)',
+		'pt' => 'Metadata do fornecedor de identidade (IdP) SAML 2.0 local (gerado automaticamente)',
 		'pt-BR' => 'Hospedado SAML 2.0 Identity Provider Metadata (gerado automaticamente)',
 	),
 	'link_meta_shib13sphosted' => array (
@@ -405,6 +428,7 @@ $lang = array(
 		'sl' => 'Metapodatki za Shibboleth 1.3 SP (samodejno zgenerirani)',
 		'hr' => 'Metapodaci za lokalni Shibboleth 1.3 SP (automatski generirani)',
 		'hu' => 'Ezen a gépen futó (hosted) Shibboleth 1.3 alkalmazásszolgáltató (SP) metaadat (automatikusan generált)',
+		'pt' => 'Metadata do fornecedor de serviço (SP) Shibboleth 1.3 local (gerado automaticamente)',
 		'pt-BR' => 'Hospedado Shibboleth 1.3 Service Provider Metadata (gerado automaticamente)',
 	),
 	'link_meta_shib13idphosted' => array (
@@ -422,6 +446,7 @@ $lang = array(
 		'sl' => 'Metapodatki za Shibboleth 1.3 IdP (samodejno zgenerirani)',
 		'hr' => 'Metapodaci za lokalni Shibboleth 1.3 IdP (automatski generirani)',
 		'hu' => 'Ezen a gépen futó (hosted) Shibboleth 1.3 személyazonosság-szolgáltató (IdP) metaadat (automatikusan generált)',
+		'pt' => 'Metadata do fornecedor de identidade (IdP) Shibboleth 1.3 local (gerado automaticamente)',
 		'pt-BR' => 'Hospedado Shibboleth 1.3 Identity Provider Metadata (gerado automaticamente)',
 	),
 	'link_cleardiscochoices' => array (
@@ -437,6 +462,7 @@ $lang = array(
 		'sl' => 'Razveljavi privzeti IdP',
 		'hr' => 'Poništi moje odabire IdP-a u servisu za pronalaženje IdP-a ',
 		'hu' => 'Felejtse el a kiválasztott IdP-ket',
+		'pt' => 'Remover as minhas escolhas de IdP nos serviços de descoberta de IdP',
 		'pt-BR' => 'Excluir minhas escolhas de IdP no serviço de descoberta de IdP',
 	),
 	'link_xmlconvert' => array (
@@ -454,6 +480,7 @@ $lang = array(
 		'sl' => 'XML v simpleSAMLphp pretvornik metapodatkov',
 		'hr' => 'XML u simpleSAMLphp pretvorba metapodataka.',
 		'hu' => 'Metaadatok konvertálása SAML2 XML-ből simpleSAMLphp-ba ',
+		'pt' => 'Conversor de metadata de XML para simpleSAMLphp',
 		'pt-BR' => 'Conversor de XML para metadata do simpleSAMLphp',
 	),
 	'link_doc_install' => array (
@@ -471,6 +498,7 @@ $lang = array(
 		'sl' => 'Namestitev simpleSAMLphp',
 		'hr' => 'Instalacija simpleSAMLphp-a',
 		'hu' => 'SimpleSAMLphp telepítése',
+		'pt' => 'Instalar o simpleSAMLphp',
 		'pt-BR' => 'Instalando o simpleSAMLphp',
 	),
 	'link_doc_sp' => array (
@@ -488,6 +516,7 @@ $lang = array(
 		'sl' => 'Uporabi simpleSAMLphp za SP',
 		'hr' => 'Kako koristiti simpleSAMLphp kao Service Provider',
 		'hu' => 'SimpleSAMLphp használata mint alkalmazásszolgáltató(SP)',
+		'pt' => 'Usar o simpleSAMLphp como um fornecedor de serviço (SP)',
 		'pt-BR' => 'Usando o simpleSAMLphp como Provedor de Serviços',
 	),
 	'link_doc_idp' => array (
@@ -505,6 +534,7 @@ $lang = array(
 		'sl' => 'Uporabi simpleSAMLphp za IdP',
 		'hr' => 'Kako koristiti simpleSAMLphp kao Identity Provider',
 		'hu' => 'SimpleSAMLphp használata mint személyazonosság-szolgáltató (IdP)',
+		'pt' => 'Usar o simpleSAMLphp como um fornecedor de identidade (IdP)',
 		'pt-BR' => 'Usando o simpleSAMLphp como Provedor de Identidade',
 	),
 	'link_doc_shibsp' => array (
@@ -522,6 +552,7 @@ $lang = array(
 		'sl' => 'Nastavi Shibboleth 1.3 SP za delo s simpleSAMLphp IdP',
 		'hr' => 'Konfigurirajte Shibboleth 1.3 SP za rad sa simpleSAMLphp IdP',
 		'hu' => 'Shibboleth 1.3 SP beállítása, hogy együtt működjön a simpleSAMLphp IdP-vel',
+		'pt' => 'Configurar um SP Shibboleth 1.3 para funcionar com um IdP simpleSAMLphp',
 		'pt-BR' => 'Configurando o Shibboleth 1.3 SP para trabalhar com o simpleSAMLphp Idp',
 	),
 	'link_doc_googleapps' => array (
@@ -539,6 +570,7 @@ $lang = array(
 		'sl' => 'simpleSAMLphp IdP za Google Apps for Education',
 		'hr' => 'simpleSAMLphp kao IdP za <i>Googgle Apps for Education</i>',
 		'hu' => 'SimpleSAMLphp mint IdP a Google Apps for Education programok számára',
+		'pt' => 'Configurar o simpleSAMLphp  para funcionar como um IdP para o Google Apps for Education',
 		'pt-BR' => 'simpleSAMLphp como um IdP para o Google Apps Educacional',
 	),
 	'link_doc_advanced' => array (
@@ -556,6 +588,7 @@ $lang = array(
 		'sl' => 'simpleSAMLphp napredna funkcionalnost',
 		'hr' => 'Napredne mogućnosti simpleSAMLphp-a',
 		'hu' => 'SimpleSAMLphp további tulajdonságai',
+		'pt' => 'Funcionalidades avançadas do simpleSAMLphp',
 		'pt-BR' => 'Recursos avançados do simpleSAMLphp',
 	),
 	'link_doc_maintenance' => array (
@@ -573,6 +606,7 @@ $lang = array(
 		'sl' => 'simpleSAMLphp vzdrĹľevanje in nastavitve',
 		'hr' => 'OdrĹľavanje i konfiguriranje simpleSAMLphp-a',
 		'hu' => 'SimpleSAMLphp karbantartása és beállítása',
+		'pt' => 'Configuração e manutenção do simpleSAMLphp',
 		'pt-BR' => 'Manutenção e Configuração do simpleSAMLphp',
 	),
 	'link_publish_saml20-idp' => array (
@@ -587,6 +621,7 @@ $lang = array(
 		'sl' => 'Objavi moj SAML 2.0 IdP metadata v prednastavljen MetaShare.',
 		'hr' => 'Objavi moje SAML 2.0 IdP metapodatke na MetaShare servisu',
 		'hu' => 'Publikálja a SAML 2.0 IdP metadatokat a MetaShare-be',
+		'pt' => 'Publicar metadata do IdP SAML 2.0 no MetaShare configurado',
 		'pt-BR' => 'Publicar meu SAML 2.0 IdP metadata para o MetaShare configurado',
 	),
 	'link_publish_saml20-sp' => array (
@@ -601,6 +636,7 @@ $lang = array(
 		'sl' => 'Objavi moj SAML 2.0 SP metadata v prednastavljen MetaShare.',
 		'hr' => 'Objavi moje SAML 2.0 SP metapodatke na MetaShare servisu',
 		'hu' => 'Publikálja a SAML 2.0 SP metadatokat a MetaShare-be',
+		'pt' => 'Publicar metadata do SP SAML 2.0 no MetaShare configurado',
 		'pt-BR' => 'Publicar meu SAML 2.0 SP metadata para o MetaShare configurado',
 	),
 	'link_publish_shib13-idp' => array (
@@ -615,6 +651,7 @@ $lang = array(
 		'sl' => 'Objavi moj Shib 1.3 IdP metadata v prednastavljen MetaShare.',
 		'hr' => 'Objavi moje Shib 1.3 IdP metapodatke na MetaShare servisu',
 		'hu' => 'Publikálja a Shibboleth 1.3 IdP metadatokat a MetaShare-be',
+		'pt' => 'Publicar metadata de IdP Shib 1.3 no MetaShare configurado',
 		'pt-BR' => 'Publicar meu Shib 1.3 IdP metadata para o MetaShare configurado',
 	),
 	'link_publish_shib13-sp' => array (
@@ -629,6 +666,7 @@ $lang = array(
 		'sl' => 'Objavi moj Shib 1.3 SP metadata v prednastavljen MetaShare.',
 		'hr' => 'Objavi moje Shib 1.3 SP metapodatke na MetaShare servisu',
 		'hu' => 'Publikálja a Shibboleth 1.3 SP metadatokat a MetaShare-be',
+		'pt' => 'Publicar metadata de SP Shib 1.3 no MetaShare configurado',
 		'pt-BR' => 'Publicar meu Shib 1.3 SP metadata para o MetaShare configurado',
 	),
 
diff --git a/dictionaries/login.php b/dictionaries/login.php
index 01efaa8bc..7dea202cd 100644
--- a/dictionaries/login.php
+++ b/dictionaries/login.php
@@ -16,6 +16,7 @@ $lang = array(
 		'sl' => 'Napaka',
 		'hr' => 'Greška',
 		'hu' => 'Hiba',
+		'pt' => 'Erro',
 		'pt-BR' => 'Erro',
 	),
 	'user_pass_header' => array (
@@ -33,6 +34,7 @@ $lang = array(
 		'sl' => 'Vnesite svoje uporabniško ime in geslo',
 		'hr' => 'Unesite vašu korisničku oznaku i zaporku',
 		'hu' => 'Felhasználónév és jelszó',
+		'pt' => 'Introduza o seu nome de utilizador e senha',
 		'pt-BR' => 'Digite seu usuário e senha',
 	),
 	'user_pass_text' => array (
@@ -50,6 +52,7 @@ $lang = array(
 		'sl' => 'Storitev zahteva, da se prijavite. To pomeni, da je potreben vnos uporabniškega imena in gesla v spodnji polji.',
 		'hr' => 'Servis zahtjeva od vas da se autenticirate. To znači da u donji obrazac trebate unijeti vašu korisničku oznaku i zaporku.',
 		'hu' => 'Ez a szolgáltatás megköveteli, hogy azonosítsa magát. Kérjük, adja meg felhasználónevét és jelszavát az alábbi űrlapon.',
+		'pt' => 'Foi pedida a sua autenticação por um serviço. Por favor, introduza o seu nome de utilizador e senha nos campos seguintes.',
 		'pt-BR' => 'Um serviço que você pediu necessita que você se autentique. Digite seu nome de usuário e senha no formulário abaixo.',
 	),
 	'login_button' => array (
@@ -68,6 +71,7 @@ $lang = array(
 		'sl' => 'Prijava',
 		'hr' => 'Prijavi se',
 		'hu' => 'Bejelentkezés',
+		'pt' => 'Entrar',
 		'pt-BR' => 'Acessar',
 	),
 	'username' => array (
@@ -86,6 +90,7 @@ $lang = array(
 		'sl' => 'Uporabniško ime',
 		'hr' => 'KorisniÄŤka oznaka',
 		'hu' => 'Felhasználónév',
+		'pt' => 'Nome de utilizador',
 		'pt-BR' => 'Usuário',
 	),
 	'organization' => array (
@@ -104,6 +109,7 @@ $lang = array(
 		'sl' => 'Organizacija',
 		'hr' => 'Ustanova',
 		'hu' => 'Szervezet',
+		'pt' => 'Organização',
 		'pt-BR' => 'Organização',
 	),
 	'password' => array (
@@ -122,6 +128,7 @@ $lang = array(
 		'sl' => 'Geslo',
 		'hr' => 'Zaporka',
 		'hu' => 'JelszĂł',
+		'pt' => 'Senha',
 		'pt-BR' => 'Senha',
 	),
 	'help_header' => array (
@@ -139,6 +146,7 @@ $lang = array(
 		'sl' => 'Na pomoÄŤ! Pozabil sem svoje geslo.',
 		'hr' => 'Upomoć! Zaboravio/la sam svoju zaporku.',
 		'hu' => 'Segítség! Elfelejtettem a jelszavam.',
+		'pt' => 'NĂŁo me lembro da minha senha',
 		'pt-BR' => 'Ajude-me! NĂŁo lembro minha senha.',
 	),
 	'help_text' => array (
@@ -156,6 +164,7 @@ $lang = array(
 		'sl' => 'Žal se brez uporabniškega imena in gesla ne morete prijaviti in uporabljati storitev.',
 		'hr' => 'Šteta! - Bez ispravne korisničke oznake i zaporke ne možete se autenticirati za pristup servisu. Da biste saznali vašu zaporku kontaktirajte administratora elektroničkog imenika vaše ustanove.',
 		'hu' => 'Ajaj! - Felhasználói neve és jelszava nélkül nem tudja azonosítani magát, így nem férhet hozzá a szolgáltatáshoz. Biztosan van valaki, aki tud önnek segíteni. Vegye fel a kapcsolatot az ügyfélszolgálattal!',
+		'pt' => 'Sem o seu nome de utilizador e senha não se pode autenticar para acesso ao serviço. Para obter ajuda, consulte o seu serviço de apoio ao utilizador.',
 		'pt-BR' => 'Muito mal! - Sem o seu nome de usuário e a senha você não pode autenticar-se para acessar o serviço. Pode haver alguém que possa lhe ajudar. Consulte a central de dúvidas!',
 	),
 	'error_nopassword' => array (
@@ -173,6 +182,7 @@ $lang = array(
 		'sl' => 'Prišlo je do napake, poskusite znova.',
 		'hr' => 'Iz nekog razloga autentikacijski servis nije dobio vašu zaporku. Molimo pokušajte ponovo.',
 		'hu' => 'Valamilyen oknál fogva a jelszó nem olvasható. Kérjük, próbálja újra!',
+		'pt' => 'A senha nĂŁo foi enviada no seu pedido. Por favor tente de novo.',
 		'pt-BR' => 'Você enviou alguma coisa para a página de login, mas por alguma razão a senha não foi enviada. Por favor tente novamente.  ',
 	),
 	'error_wrongpassword' => array (
@@ -191,6 +201,7 @@ $lang = array(
 		'sl' => 'Napačno uporabniško ime ali geslo!',
 		'hr' => 'Neispravna korisniÄŤka oznaka ili zaporka.',
 		'hu' => 'Hibás felhasználói név vagy jelszó!',
+		'pt' => 'Nome de utilizador ou senha incorrecta.',
 		'pt-BR' => 'Nome de usuário ou senha incorretos.',
 	),
 	'select_home_org' => array (
@@ -206,6 +217,7 @@ $lang = array(
 		'sl' => 'Izberite vašo domačo organizacijo',
 		'hr' => 'Odaberite vašu matičnu ustanovu',
 		'hu' => 'Válassza ki az ön szervezetét',
+		'pt' => 'Escolha a sua organização de origem',
 		'pt-BR' => 'Escolha a sua organização principal',
 	),
 	'next' => array (
@@ -221,6 +233,7 @@ $lang = array(
 		'sl' => 'Naprej',
 		'hr' => 'Dalje',
 		'hu' => 'Következő',
+		'pt' => 'Seguinte',
 		'pt-BR' => 'PrĂłximo',
 	),
 	'change_home_org_title' => array (
@@ -236,6 +249,7 @@ $lang = array(
 		'sl' => 'Izberite vašo domačo organizacijo.',
 		'hr' => 'Promjenite vašu matičnu ustanovu',
 		'hu' => 'Válasszon másik szervezetet',
+		'pt' => 'Alterar a sua organização de origem',
 		'pt-BR' => 'Mudar a organização principal',
 	),
 	'change_home_org_text' => array (
@@ -251,6 +265,7 @@ $lang = array(
 		'sl' => 'Izbrali ste <b>%HOMEORG%</b> kot vašo domačo organizacijo. V primeru, da je izbor napačen izberite drugo.',
 		'hr' => 'Odabrali ste <b>%HOMEORG%</b> kao vašu matičnu ustanovu. Ako to nije točno možete odabrati drugu ustanovu.',
 		'hu' => 'A <b>%HOMEORG%</b> szervezetet választotta ki. Ha a választás nem volt helyes, kérem válasszon másikat.',
+		'pt' => 'Escolheu <b>%HOMEORG%</b> como a sua organização de origem. Se não estiver correcto, pode escolher outra.',
 		'pt-BR' => 'Você escolheu <b>%HOMEORG%</b> como sua organização pessoal. Se isto estiver incorreto você pode escolher outra.',
 	),
 	'change_home_org_button' => array (
@@ -266,6 +281,7 @@ $lang = array(
 		'sl' => 'Izberite domaÄŤo organizacijo.',
 		'hr' => 'Odaberite matiÄŤnu ustanovu',
 		'hu' => 'Válassza ki a szervezetét',
+		'pt' => 'Escolha a sua organização de origem',
 		'pt-BR' => 'Escolher uma organização principal',
 	),
 	'help_desk_link' => array (
@@ -280,6 +296,7 @@ $lang = array(
 		'sl' => 'Spletna stran tehniÄŤne podpore uporabnikom.',
 		'hr' => 'Helpdesk stranice',
 		'hu' => 'Ügyfélszolgálat weboldala',
+		'pt' => 'Página do serviço de apoio ao utilizador',
 		'pt-BR' => 'Central de Ajuda',
 	),
 	'help_desk_email' => array (
@@ -294,6 +311,7 @@ $lang = array(
 		'sl' => 'Pošlji e-poštno sporočilo tehnični podpori.',
 		'hr' => 'Pošaljite e-mail helpdesk službi',
 		'hu' => 'Küldjön e-mailt az ügyfélszolgálatnak',
+		'pt' => 'Enviar um e-mail para o serviço de apoio ao utilizador',
 		'pt-BR' => 'Envie um e-mail para a Central de Ajuda.',
 	),
 	'contact_info' => array (
@@ -308,6 +326,7 @@ $lang = array(
 		'sl' => 'Kontakt',
 		'hr' => 'Kontakt podaci',
 		'hu' => 'Elérési információk',
+		'pt' => 'Contactos:',
 		'pt-BR' => 'Informações de Contato',
 	),
 
diff --git a/dictionaries/logout.php b/dictionaries/logout.php
index b4cfd551e..af1d57e8a 100644
--- a/dictionaries/logout.php
+++ b/dictionaries/logout.php
@@ -14,6 +14,7 @@ $lang = array(
 		'sl' => 'Odjavljen',
 		'hr' => 'Odjavili ste se',
 		'hu' => 'Sikeres kilépés',
+		'pt' => 'SaĂ­da efectuada com sucesso',
 		'pt-BR' => 'Desconectado',
 	),
 	'logged_out_text' => array (
@@ -29,6 +30,7 @@ $lang = array(
 		'sl' => 'Odjava je bila uspešna. Hvala, ker uporabljate to storitev.',
 		'hr' => 'Odjavili ste se. Hvala što ste koristili ovaj servis.',
 		'hu' => 'Sikeresen kijelentkezett. Köszönjük, hogy használta a szolgáltatást.',
+		'pt' => 'Saída efectuada com sucesso. Obrigado por ter usado este serviço.',
 		'pt-BR' => 'Você foi desconectado. Obrigado por usar este serviço.',
 	),
 	'default_link_text' => array (
@@ -44,6 +46,7 @@ $lang = array(
 		'sl' => 'Nazaj na namestitveno stran simpleSAMLphp',
 		'hr' => 'Natrag na simpleSAMLphp instalacijsku stranicu',
 		'hu' => 'Vissza a simpleSAMLphp telepítő oldalára',
+		'pt' => 'Voltar à página de instalação do simpleSAMLphp',
 		'pt-BR' => 'Voltar a instalação do simpleSAMLphp',
 	),
 
diff --git a/dictionaries/metashare.php b/dictionaries/metashare.php
index 9fe794883..6f0187a8c 100644
--- a/dictionaries/metashare.php
+++ b/dictionaries/metashare.php
@@ -11,9 +11,11 @@ $lang = array(
 		'sl' => 'MetaShare',
 		'hr' => 'MetaShare',
 		'hu' => 'MetaShare',
+		'pt' => 'MetaShare',
 		'pt-BR' => 'MetaShare',
 	),
 	'front_desc' => array (
+		'no' => 'Dette er en metadata distribusjonstjeneste. Den tillater deg ĂĄ legge til dyamisk generert metadata til et delt lager.',
 		'da' => 'Dette er en metadata-delingstjeneste, som gør det muligt at tilføje dynamisk genereret metadata til et fælles repository',
 		'en' => 'This is a metadata sharing service. It allows you to add dynamically generated metadata to a shared store.',
 		'sv' => 'Detta delningsjänsten för metadata. Den tillåter att du lägger till dynamiskt skapad metadata till ett delat datalager.',
@@ -22,6 +24,7 @@ $lang = array(
 		'sl' => 'MetaShare je storitev souporabe metapodatkov. Omogoča dodajanje dinamično generiranih metapodatkov v skladišče za skupno rabo.',
 		'hr' => 'Ovo je servis za razmjenu metapodataka. Omogućuje vam da dodate dinamički generirane metapodatke u zajednički repozitorij.',
 		'hu' => 'Ez egy metaadat megosztó szolgáltatás. Dinamikusan generált metaadatok megosztott tárolását teszi lehetővé.',
+		'pt' => 'Está na página do serviço de partilha de metadados. Esta página permite-lhe adicionar metadados gerados dinamicamente a um repositório comum de dados.',
 		'pt-BR' => 'Este é um serviço de compartilhamento de metadata. Ele permite que você adicione metadatas geradas dinamicamente, armazene-as e compartilhe-as.',
 	),
 	'add_title' => array (
@@ -34,6 +37,7 @@ $lang = array(
 		'sl' => 'Dodaj entiteto',
 		'hr' => 'Dodaj entitet',
 		'hu' => 'Bejegyzés hozzáadása',
+		'pt' => 'Adicionar entidade',
 		'pt-BR' => 'Adicionar entidade',
 	),
 	'add_desc' => array (
@@ -45,9 +49,11 @@ $lang = array(
 		'sl' => 'Dodajte nove ali popravljene metapodatke tako, da podate njen URL. URL se mora ujemati z identifikatorjem entitete.',
 		'hr' => 'Dodaj nove ili ažurne metapodatke specificirajući URL metapotataka. URL se mora podudarati s identifikatorom entiteta opisanog u metapodacima. ',
 		'hu' => 'Adja meg az új vagy frissített metaadatok URL-jét! Ennek az URL-nek meg kell egyeznie a metaadatokban leírt entitás azonosítójával.',
+		'pt' => 'Adicionar metadados novos ou actualizados especificando o URL dos metadados. Este URL tem de coincidir com o identificador de entidade (entityID) descrito nos metadados',
 		'pt-BR' => 'Adicionar novo ou atualizar metadata, especificando a URL da metadata. Essa URL deve corresponder a entidade identificadora da entidade descrita na metadata.',
 	),
 	'add_entityid' => array (
+		'no' => 'EntityID for tjenesten:',
 		'da' => 'Entitets idetifikatoren for entiteten',
 		'en' => 'Entity identifier of the entity:',
 		'sv' => 'Entitetsidentifierare för entiteten:',
@@ -56,6 +62,7 @@ $lang = array(
 		'sl' => 'Identifikator entete:',
 		'hr' => 'Identifikator entiteta:',
 		'hu' => 'Bejegyzés azonosítója:',
+		'pt' => 'Identificador de entidade',
 		'pt-BR' => 'Entidade identificador da entidade:',
 	),
 	'add_do' => array (
@@ -68,6 +75,7 @@ $lang = array(
 		'sl' => 'Dodaj',
 		'hr' => 'Dodaj',
 		'hu' => 'Hozzáadás',
+		'pt' => 'Adicionar',
 		'pt-BR' => 'Adicionar',
 	),
 	'downloadall_desc' => array (
@@ -79,9 +87,11 @@ $lang = array(
 		'sl' => 'Celotne metapodatke si lahko prenesete kot eno XML datoteko. Ta bo vsebovala deskriptor entitet in vse entitete, ki so shranjene v MetaShareu. Deskriptor entitet je lahko digitalno podpisan, ÄŤe je ta moĹľnost v nastavitvah omogoÄŤena.',
 		'hr' => 'Moguće je dohvatiti sve metapodatke u obliku jedne XML datoteke. Ta datoteka sadržavat će jedinstveni EntitiesDescriptor koji sadržava sve entitete dodane u MetaShare repozitorij. EntitiesDescriptor može biti digitalno potpisan ako je ta opcija uključena u konfiguraciji.',
 		'hu' => 'Lehetőség van az összes metaadat letöltésére egyetlen XML fájlként. A file egyetlen EntitiesDescriptor elmet fog tartalmazni, amely magába foglalja az összes MetaShare-ben tárolt elemet. Az EntitiesDescriptor-t a MetaShare is aláírhatja, ha ez engedélyezve van a beállításoknál.',
+		'pt' => 'É possível efectuar o dowload de todos os metadados num único ficheiro XML. Este ficheiro irá conter um único elemento EntitiesDescriptor com todas as entidades presentes neste MetaShare. O elemento EntitiesDescriptor pode ser assinado por este serviço de MetaShare se esta opção estiver activa na configuração.',
 		'pt-BR' => 'É possível fazer download de todas as metadatas como um único arquivo XML. Esse arquivo irá conter um único EntitiesDescriptor que contém todas as entidades que estão vinculadas para este MetaShare. O EntitiesDescriptor pode ser assinado por este MetaShare se isto está ativado na configuração.',
 	),
 	'downloadall_link' => array (
+		'no' => 'Last ned all metadata ',
 		'da' => 'Download alt metadata',
 		'en' => 'Download all metadata',
 		'sv' => 'Hämta alla metadata',
@@ -90,6 +100,7 @@ $lang = array(
 		'sl' => 'Prenesi vse metapodatke k sebi.',
 		'hr' => 'Dohvati sve metapodatke',
 		'hu' => 'Összes metaadat letöltése',
+		'pt' => 'Efectuar o download de todos os metadados',
 		'pt-BR' => 'Baixar toda metadata',
 	),
 	'entities_title' => array (
@@ -102,6 +113,7 @@ $lang = array(
 		'sl' => 'Entitete',
 		'hr' => 'Entiteti',
 		'hu' => 'Bejegyzések',
+		'pt' => 'Entidades',
 		'pt-BR' => 'Entidades',
 	),
 	'entities_desc' => array (
@@ -113,9 +125,11 @@ $lang = array(
 		'sl' => 'To je seznam vseh entitet, ki so trenutnotno shranjene v tem MetaShareu. S klikom na povezavo (entiteto), lahko prenesete njeno metadato.',
 		'hr' => 'Ovo je popis svih entiteta koji su trenutno pohranjeni u MetaShare repozitoriju. Kliknite na odgovarajući link da biste dohvatili metapodatke za određeni entitet.',
 		'hu' => 'Ez a lista a jelenleg a MetaShare-ben tárolt összes elemet mutatja. Kattintson a linkre, hogy letölthesse a az entitáshoz tartozó metaadatokat.',
+		'pt' => 'Apresenta-se de seguida uma lista de todas as entidades presentes neste serviço de MetaShare. Siga uma das ligações para efectuar o download dos metadados da entidade correspondente.',
 		'pt-BR' => 'Esta Ă© uma lista de todas as entidades que estĂŁo atualmente guardadas nesta MetaShare. Clique em um link para baixar as metadata das determinadas entidades.',
 	),
 	'entities_empty' => array (
+		'no' => 'Ingen tjenester er for øyeblikket lagret i denne MetaShare installasjonen.',
 		'da' => 'Ingen entieties ',
 		'en' => 'No entities are currently stored in this MetaShare.',
 		'sv' => 'Det finns förnärvarande inga eniteter lagrade i denna MetaShare.',
@@ -124,6 +138,7 @@ $lang = array(
 		'sl' => 'V MetaShare trenutno ni shranjene nobene entitete.',
 		'hr' => 'U MetaShare repozitoriju trenutno nije pohranjen niti jedan entitet.',
 		'hu' => 'Egyetlen bejegyzés sincs a MetaShare-ben.',
+		'pt' => 'Não existem entidades presentes neste serviço de MetaShare.',
 		'pt-BR' => 'Não há entidades atualmente guardadas nesta MetaShare.',
 	),
 	'text' => array (
@@ -136,6 +151,7 @@ $lang = array(
 		'sl' => 'Besedilo',
 		'hr' => 'tekst',
 		'hu' => 'szöveg',
+		'pt' => 'Texto',
 		'pt-BR' => 'texto',
 	),
 	'addpage_header' => array (
@@ -148,9 +164,11 @@ $lang = array(
 		'sl' => 'Dodaj metapodatke',
 		'hr' => 'Dodaj metapodatke',
 		'hu' => 'Metaadatok hozzáadása',
+		'pt' => 'Adicionar metadados',
 		'pt-BR' => 'Adicionar metadata',
 	),
 	'addpage_ok' => array (
+		'no' => 'Metadata fra "%URL" ble lagt til vellykket.',
 		'da' => 'Metadata fra "%URL%" blev tilføjet',
 		'en' => 'The metadata from "%URL%" was successfylly added.',
 		'sv' => 'Metadata frĂĄn "%URL%" har lagts till.',
@@ -159,6 +177,7 @@ $lang = array(
 		'sl' => 'Metapodatki z naslova "%URL%" so bili uspešno dodani.',
 		'hr' => 'Metapodaci s adrese "%URL%" su uspješno dodani.',
 		'hu' => 'A(z) "%URL%" URL-ről származó metaadatok hozzáadása sikerült.',
+		'pt' => 'Foram adicionados com sucesso os metadados disponĂ­veis em "%URL%" ',
 		'pt-BR' => 'A metadata de "%URL%" foi adicionada com sucesso.',
 	),
 	'addpage_nourl' => array (
@@ -171,6 +190,7 @@ $lang = array(
 		'sl' => 'Noben URL parameter ni bil podan.',
 		'hr' => 'Nije zadan URL parametar.',
 		'hu' => 'Hiányzó URL paraméter.',
+		'pt' => 'NĂŁo foi fornecido nenhum URL',
 		'pt-BR' => 'Não foi passado o parâmetro URL.',
 	),
 	'addpage_invalidurl' => array (
@@ -182,6 +202,7 @@ $lang = array(
 		'sl' => 'NapaÄŤen URL ali ID entitete, le-ta mora biti veljaven http ali https naslov. Posredovali ste naslednji URL: "%URL%".',
 		'hr' => 'Neispravan URL / identifikator entiteta za metapodatke. Identifikator entiteta treba biti valjani http: ili https: URL. URL koji ste zadali je "%URL%".',
 		'hu' => 'Érvénytelen URL/entitás azonosító. Az entitás azonosítójának érvényes http: vagy https: protokollt használó URL-nek kell lennie. A megadott URL ez volt: "%URL%".',
+		'pt' => 'URL inválido. O identificador de entidade (entityID) deve ser um URL válido do tipo http: ou https:. O URL fornecido foi "%URL%".',
 		'pt-BR' => 'URL/Identificação da Entidade inválida para a metadata. A identificação da entidade deve ser um endereço http: ou https: válido. A URL passada foi "%URL%".',
 	),
 	'addpage_nodownload' => array (
@@ -193,6 +214,7 @@ $lang = array(
 		'sl' => 'Prenos metapodatkov z naslova "%URL%" ni mogoÄŤ.',
 		'hr' => 'Ne mogu dohvatiti metapodatke s adrese "%URL%".',
 		'hu' => 'Nem lehet a metaadatokat letölteni a(z) "%URL%" helyről.',
+		'pt' => 'NĂŁo foi possĂ­vel efectuar o download dos metadados a partir de "%URL%".',
 		'pt-BR' => 'NĂŁo foi possĂ­vel baixar a metadata de "%URL%".',
 	),
 	'addpage_invalidxml' => array (
@@ -204,6 +226,7 @@ $lang = array(
 		'sl' => 'Napaka v strukturi XML metapodatkov. URL, ki ste ga posredovali "%URL%".',
 		'hr' => 'XML sadrĹľaj u metapodacima je izobliÄŤen. Zadani URL je "%URL%".',
 		'hu' => 'Hibás XML a metaadat-állományban. Az URL az alábbi volt: "%URL%"',
+		'pt' => 'Metadados com XML mal formatado. O URL fornecido foi "%URL%".',
 		'pt-BR' => 'XML incorreto na metadata. A URL passada foi "%URL%".',
 	),
 	'addpage_notentitydescriptor' => array (
@@ -215,9 +238,11 @@ $lang = array(
 		'sl' => 'Korensko vozlišče (root node) metapodakov ni element tipa entitetni deskriptor. URL, ki ste ga posredovali "%URL%".',
 		'hr' => 'Korijenski ÄŤvor u metapodacima nije EntityDescriptor element. Zadani URL je "%URL%".',
 		'hu' => 'A metaadatok gyökéreleme nem EntityDescriptor volt. Az URL az alábbi volt: "%URL%".',
+		'pt' => 'O elemento raiz dos metadados nĂŁo Ă© um elemento do tipo EntityDescriptor. O URL fornecido foi "%URL%".',
 		'pt-BR' => 'O nĂł raiz da metadata nĂŁo era um elemento EntityDescriptor. A URL passada foi "%URL%".',
 	),
 	'addpage_entityid' => array (
+		'no' => 'EntityID i metadataene stemmer ikke overens med URL-en til metadata dokumentet ("%URL%").',
 		'da' => '\'EntityIdentifyer\' i metadata matchede i metadatas %URL%',
 		'en' => 'The entity identifier in the metadata did not match the URL of the metadata ("%URL%").',
 		'sv' => 'Entitetsidentifieraren i metadatat stämmer inte överens med adressen för metadatat ("%URL%").',
@@ -226,9 +251,11 @@ $lang = array(
 		'sl' => 'Identifikator entitene se ne ujema z URLjem metapodatkov ("%URL%").',
 		'hr' => 'Identifikator entiteta u metapodacima ne podudara se s URL-om metapodataka ("%URL%").',
 		'hu' => 'A entitás azonosító nem egyezik a metaadatok elérhetőségének URL-jével ("%URL%").',
+		'pt' => 'O identificador de entidade (entityID) nos metadados nĂŁo corresponde ao URL dos metadados ("%URL%").',
 		'pt-BR' => 'A entidade identificadora na metadata nĂŁo corresponde a url da metadata ("%URL%").',
 	),
 	'addpage_validation' => array (
+		'no' => 'XML validering av metadata from "%URL%" feilet:',
 		'da' => 'Fejl i XML-validering af metadata fra %URL%',
 		'en' => 'XML validation of the metadata from "%URL%" failed:',
 		'sv' => 'XML-valideringen av metatdatat frĂĄn "%URL%" misslyckades:',
@@ -237,6 +264,7 @@ $lang = array(
 		'sl' => 'XML validacija metapodatkov z naslova "%URL%" je spodletela:',
 		'hr' => 'XML validacija metapodataka na adresi "%URL%" nije uspješno izvršena:',
 		'hu' => 'A "%URL%" metaadatok XML ellenőrzése sikeretelen volt:',
+		'pt' => 'Falhou a validação XML dos metadados do URL "%URL%".',
 		'pt-BR' => 'A validação do XML para a metadata da URL "%URL%" falhou.',
 	),
 	'addpage_gofront' => array (
@@ -249,6 +277,7 @@ $lang = array(
 		'sl' => 'Pojdi na seznam metapodatkov',
 		'hr' => 'Idi na popis metapodataka',
 		'hu' => 'Metaadatok listája',
+		'pt' => 'Voltar Ă  lista de metadados',
 		'pt-BR' => 'Ir para a lista de metadata',
 	),
 
diff --git a/dictionaries/no_access_dictionary.php b/dictionaries/no_access_dictionary.php
index 2f4208df1..7befd5f5c 100644
--- a/dictionaries/no_access_dictionary.php
+++ b/dictionaries/no_access_dictionary.php
@@ -12,6 +12,7 @@ $lang = array(
 		'sl' => 'Dostop do storitve zavrnjen.',
 		'hr' => 'Nemate pristup ovom servisu',
 		'hu' => 'Önnek nincs hozzáférése ehhez a szolgáltatáshoz',
+		'pt' => 'Não tem acesso a este serviço',
 		'pt-BR' => 'Você não possui acesso a este serviço',
 	),
 	'no_access_to' => array (
@@ -25,6 +26,7 @@ $lang = array(
 		'sl' => 'Nimate dostopa to te storitve.',
 		'hr' => 'Nemate pristup servisu:',
 		'hu' => 'Ön nem férhet hozzá ehhez a szolgáltatáshoz:',
+		'pt' => 'Não tem acesso ao serviço:',
 		'pt-BR' => 'Você não possui acesso a este serviço',
 	),
 	'contact_home' => array (
@@ -38,6 +40,7 @@ $lang = array(
 		'sl' => 'Možnost dostopa do storitve ureja vaša domača organizacija. Obrnite se na njihov oddelek za pomoč uporabnikom.',
 		'hr' => 'Pristup ovom servisu kontrolira vaš davatelj elektroničkih identiteta. Za dodatne informacije molimo kontaktirajte vašeg davatelja elektroničkih identiteta.',
 		'hu' => 'A hozzáférését ehhez a szolgáltatáshoz az ön szervezete szabályozza. Vegye fel a kapcsolatot a helyi IT felelőssel!',
+		'pt' => 'O acesso a serviços é controlado pela sua organização de origem. Para obter ajuda, contacte o serviço de apoio ao utilizador da sua organização.',
 		'pt-BR' => 'O acesso a estes serviços é controlado pela sua organização principal. Entre em contato com a equipe local de suporte para ajudá-lo.',
 	),
 
diff --git a/dictionaries/openid.php b/dictionaries/openid.php
index 036eef362..da7d0cdeb 100644
--- a/dictionaries/openid.php
+++ b/dictionaries/openid.php
@@ -12,6 +12,7 @@ $lang = array(
 		'sl' => 'Seznam zaupanja vrednih strani.',
 		'hr' => 'Popis sjedišta kojima vjerujete',
 		'hu' => 'Megbízható oldalak listája',
+		'pt' => 'Lista de sites confiáveis',
 		'pt-BR' => 'Lista de sites confiáveis',
 	),
 	'about_link' => array (
@@ -25,6 +26,7 @@ $lang = array(
 		'sl' => 'O simpleSAMLphp OpenID',
 		'hr' => 'O simpleSAMLphp OpenID',
 		'hu' => 'A simpleSAMLphp OpenID-rĂłl',
+		'pt' => 'Sobre o OpenID do simpleSAMLphp',
 		'pt-BR' => 'Sobre o simpleSAMLphp OpenID',
 	),
 	'welcome' => array (
@@ -38,9 +40,11 @@ $lang = array(
 		'sl' => 'Dobrodošli v simpleSAMLphp OpenID ponudnik.',
 		'hr' => 'Dobro došli u simpleSAMLphp davatelj OpenID usluge.',
 		'hu' => 'Köszöntjük a simpleSAMLphp OpenID kiszolgálón.',
+		'pt' => 'Bem-vindo ao fornecedor OpenID do simpleSAMLphp',
 		'pt-BR' => 'Bem vindo ao Provedor OpenID simpleSAMLphp',
 	),
 	'howtouse' => array (
+		'no' => 'For å benytte denne autentiserings-tjeneren med OpenID, trenger du å benytte en URL som din identifikator. Sett inn følgende HTML markup i <code>&lt;head&gt;</code> på HTML dokumentet på URL-en som du vil skal være din OpenID identifikator.',
 		'nn' => 'For å bruka denne tenesta må du setja opp ein URL som kan brukast som identifikator.  Legg inn følgjande kode inne i <code>&lt;head&gt;</code> for HTML dokumentet på URLen din:',
 		'da' => 'For at bruge denne server skal du indsætte en urlder kan bruges som "identifikator". Indsæt følgende kode <code>&lt;head&gt;</code> fra HTML dokumnetet som denne URL:',
 		'en' => 'To use this server, you will have to set up a URL to use as an identifier. Insert the following markup into the <code>&lt;head&gt;</code> of the HTML document at that URL:',
@@ -50,6 +54,7 @@ $lang = array(
 		'sl' => 'Pred uporabo tega streĹľnika morate vzpostaviti URL, ki se bo uporabil kot identifikator.  Vstavite naslednjo oznako <code>&lt;head&gt;</code> v HTML dokument na URLju:',
 		'hr' => 'Da biste koristili ovaj poslužitelj, morate podesiti identifikacijski URL. Unesite sljedeću oznaku u <code>&lt;head&gt;</code> HTML dokumenta koji se nalazi na tom URL-u:',
 		'hu' => 'A szerver használatához, be kell állítani egy azonosító URL-t. A következőt kell beállítani a HTML dokumentum <code>&lt;head&gt;</code> részébe:',
+		'pt' => 'Para usar este servidor, terá de configurar um URL a ser usado como identificador. Insira o seguinte código no elemento <code>&lt;head&gt;</code> do documento HTML presente nesse URL:',
 		'pt-BR' => 'Para utilizar este servidor, você terá que configurar uma URL para o uso como um identificador. Inserira o seguinte código na <code>&lt;head&gt;</code> do seu documento HTML em que se encontra a URL:',
 	),
 	'loggedinas' => array (
@@ -63,6 +68,7 @@ $lang = array(
 		'sl' => 'Prijavljeni ste kot %USERID%',
 		'hr' => 'Prijavljeni ste kao %USERID%',
 		'hu' => '%USERID% névvel van bejelentkezve',
+		'pt' => 'Efectuou a entrada com o identificador %USERID%',
 		'pt-BR' => 'Você está logado como %USERID%',
 	),
 	'login' => array (
@@ -76,6 +82,7 @@ $lang = array(
 		'sl' => 'Prijava',
 		'hr' => 'Prijavi se',
 		'hu' => 'Belépés',
+		'pt' => 'Entrar',
 		'pt-BR' => 'Entar',
 	),
 	'howtouse_cont' => array (
@@ -88,9 +95,11 @@ $lang = array(
 		'sl' => 'Nato nastavite ta streĹľnik tako, da se boste lahko prijavili s tem URL naslovom. Pravilno delovanje lahko preverite s %SITE% %TOOL%:',
 		'hr' => 'Nakon toga iskonfigurirajte ovaj poslužitelj tako da se možete prijaviti sa zadanim URL-om. Kad jednom iskonfigurirate poslužitelj i označite vaš identifikacijski URL, možete provjeriti da li sve radi uporabom %SITE% %TOOL%:',
 		'hu' => 'Ezután állítsa be a szervert, hogy be tudjon jelentkezni ezzel az URL-lel. Miután beállította a szervert és megjegyezte az azonosító URL-t, ellenőrizni tudja a működést a(z) %SITE% %TOOL% használatával:',
+		'pt' => 'De seguida, configure este servidor para efectuar a entrada com esse URL. Assim que tiver esta configuração feita, bem como a alteração anterior ao seu URL de identificação, pode verificar o seu correcto funcionamento utilizando %SITE% %TOOL%:',
 		'pt-BR' => 'Em seguida, configure este servidor de forma que você possa fazer login com a URL. Uma vez que você tenha configurado o servidor, e marcou a sua identidade URL, você pode verificar se ele está trabalhando pela utilização do %SITE% %TOOL%:',
 	),
 	'checkup_tool' => array (
+		'no' => 'OpenID test verktøy',
 		'nn' => 'Verktøy for å sjekka OpenID (OpenID Checkup)',
 		'da' => 'OpenID "Checkup tool"',
 		'en' => 'OpenID Checkup tool',
@@ -100,6 +109,7 @@ $lang = array(
 		'sl' => 'OpenID orodje za preverjanje',
 		'hr' => 'OpenID alat za provjeru',
 		'hu' => 'OpenID ellenőrző eszköz',
+		'pt' => 'Ferramenta de verificação OpenID',
 		'pt-BR' => 'Ferramenta de verificação do OpenID',
 	),
 	'openid_url' => array (
@@ -113,9 +123,11 @@ $lang = array(
 		'sl' => 'OpenID URL:',
 		'hr' => 'OpenID URL:',
 		'hu' => 'OpenID URL:',
+		'pt' => 'URL OpenID',
 		'pt-BR' => 'URL do OpenID:',
 	),
 	'check' => array (
+		'no' => 'Sjekk',
 		'nn' => 'Sjekk',
 		'da' => 'Check',
 		'en' => 'Check',
@@ -125,6 +137,7 @@ $lang = array(
 		'sl' => 'Preveri',
 		'hr' => 'Provjeri',
 		'hu' => 'Ellenőriz',
+		'pt' => 'Verificar',
 		'pt-BR' => 'Checar',
 	),
 	'confirm_question' => array (
@@ -137,6 +150,7 @@ $lang = array(
 		'sl' => 'Ali Ĺľelite potrditi svoj entitetni URL (%OPENIDURL%) z %SITEURL%?',
 		'hr' => 'Želite li potvrditi vaš identifikacijski URL (%OPENIDURL%) s %SITEURL%?',
 		'hu' => 'Megerősíti az azonosító URL-t (%OPENIDURL%) a(z) %SITEURL% segítségével?',
+		'pt' => 'Deseja confirmar o seu URL de identificação  (%OPENIDURL%) em %SITEURL%?',
 		'pt-BR' => 'VocĂŞ deseja confirmar sua URL de identidade (%OPENIDURL%) com %SITEURL%?',
 	),
 	'remember' => array (
@@ -150,6 +164,7 @@ $lang = array(
 		'sl' => 'Zapomni si to odloÄŤitev',
 		'hr' => 'Zapamti ovu odluku',
 		'hu' => 'Emlékezzen erre a választásra',
+		'pt' => 'Lembrar esta decisĂŁo',
 		'pt-BR' => 'Lembrar desta decisĂŁo',
 	),
 	'confirm' => array (
@@ -163,6 +178,7 @@ $lang = array(
 		'sl' => 'Potrdi',
 		'hr' => 'Potvrdi',
 		'hu' => 'Megerősít',
+		'pt' => 'Confirmar',
 		'pt-BR' => 'Confirmar',
 	),
 	'notconfirm' => array (
@@ -176,6 +192,7 @@ $lang = array(
 		'sl' => 'Ne potrdi',
 		'hr' => 'Nemoj potvrditi',
 		'hu' => 'Nem erősíti meg',
+		'pt' => 'NĂŁo confirmar',
 		'pt-BR' => 'NĂŁo confirmar',
 	),
 	'trustlist_desc' => array (
@@ -187,9 +204,11 @@ $lang = array(
 		'sl' => 'Te odloÄŤitve veljajo samo v trenutni seji. Ko se bo seja zakjuÄŤila, bodo odloÄŤitve izbrisane.',
 		'hr' => 'Za ovu sjednicu zapamćeni su ovi odabiri. Svi odabiri bit će poništeni po završetku sjednice. ',
 		'hu' => 'Ezekre a válaszokra emlékezzen a munkamenet folyamán. Az összes változtatás elvész a munkamenet befejeztével.',
+		'pt' => 'Esta decisão será lembrada durante esta sessão e esquecida quando a sessão terminar.',
 		'pt-BR' => 'Estas decisões serão lembradas durante esta sessão. Todas as decisões serão esquecidades no final da sessão.',
 	),
 	'trustlist_trustedsites' => array (
+		'no' => 'Klarerte websider',
 		'nn' => 'Tiltrudde partnarar',
 		'da' => 'Hjemmesider du har tillid til',
 		'en' => 'Trusted Sites',
@@ -199,9 +218,11 @@ $lang = array(
 		'sl' => 'Zaupanja vredne strani',
 		'hr' => 'Sjedišta kojima vjerujete',
 		'hu' => 'MegbĂ­zhatĂł oldalak',
+		'pt' => 'Sites confiáveis',
 		'pt-BR' => 'Sites Confiáveis',
 	),
 	'trustlist_untrustedsites' => array (
+		'no' => 'Ikke-klarerte websider',
 		'nn' => 'Ikkje tiltrudde partnarar',
 		'da' => 'Hjemmesider du ikke har tillid til',
 		'en' => 'Untrusted Sites',
@@ -211,6 +232,7 @@ $lang = array(
 		'sl' => 'Nepreverjene strani',
 		'hr' => 'Sjedišta kojima ne vjerujete',
 		'hu' => 'MegbĂ­zhatatlan oldalak',
+		'pt' => 'Sites não confiáveis',
 		'pt-BR' => 'Sites Não Confiáveis',
 	),
 	'trustlist_remove' => array (
@@ -223,6 +245,7 @@ $lang = array(
 		'sl' => 'Odstrani izbiro',
 		'hr' => 'Ukloni odabrano',
 		'hu' => 'Kijelöltek eltávolítása',
+		'pt' => 'Remover seleccionadas',
 		'pt-BR' => 'Remover Seleção',
 	),
 	'trustlist_refresh' => array (
@@ -235,6 +258,7 @@ $lang = array(
 		'sl' => 'OsveĹľi seznam',
 		'hr' => 'Obnovi listu',
 		'hu' => 'Lista frissítése',
+		'pt' => 'Actualizar lista',
 		'pt-BR' => 'Atualizar Lista',
 	),
 	'trustlist_forget' => array (
@@ -247,6 +271,7 @@ $lang = array(
 		'sl' => 'Izbriši vse',
 		'hr' => 'Zaboravi sve',
 		'hu' => 'Mind elfelejt',
+		'pt' => 'Esquecer tudo',
 		'pt-BR' => 'Esquecer Tudo',
 	),
 	'trustlist_nosites' => array (
@@ -258,6 +283,7 @@ $lang = array(
 		'sl' => 'Nobena stran ni bila shranjena za to sejo. Shranite jo lahko med prijavo na strani.',
 		'hr' => 'Niti jedno web sjedište nije zapamćeno za ovu sjednicu. Nakon što se autenticirate za pristup sjedištu, možete ga dodati na ovaj popis odabirom opcije <q>Zapamti ovu odluku<q>.',
 		'hu' => 'Ehhez a munkamenethez nem tartoznak megjegyzett oldalak. Ha azonosította magát egy oldalnál, hozzáadhatja a listához, ha bejelelöli, hogy <q>Emlékezzen erre a választásra</q>',
+		'pt' => 'Nenhum site será lembrado nesta sessão. Quando se autenticar num site pode escolher adicioná-lo a esta lista escolhendo <q>Lembrar esta decisão</q>',
 		'pt-BR' => 'Não há sites gravados para esta sessão. Quando você autenticar com um site, você pode escolher adicioná-lo nesta lista escolhendo a opção <q>Lembrar desta Decisão</q>',
 	),
 
diff --git a/dictionaries/status.php b/dictionaries/status.php
index c42e3c7a7..ef4b76d16 100644
--- a/dictionaries/status.php
+++ b/dictionaries/status.php
@@ -11,6 +11,7 @@ $lang = array(
 		'sl' => 'SAML 2.0 SP Demo primer',
 		'hr' => 'SAML 2.0 SP primjer',
 		'hu' => 'SAML 2.0 SP próba példa',
+		'pt' => 'Exemplo de demonstração do SP SAML 2.0',
 		'pt-BR' => 'SAML 2.0 SP Exemplo',
 	),
 	'header_shib' => array (
@@ -23,6 +24,7 @@ $lang = array(
 		'sl' => 'Shibboleth demo primer',
 		'hr' => 'Shibboleth primjer',
 		'hu' => 'Shibboleth prĂłba',
+		'pt' => 'Exemplo de demonstração do SP Shibboleth 1.3',
 		'pt-BR' => 'Shibboleth Demo',
 	),
 	'header_wsfed' => array (
@@ -35,6 +37,7 @@ $lang = array(
 		'sl' => 'WS-Fed SP demo primer',
 		'hr' => 'WS-Fed SP primjer',
 		'hu' => 'WS-Fed SP próba példa',
+		'pt' => 'Exemplo de demonstração do SP WS-Fed',
 		'pt-BR' => 'WS-Fed SP Exemplo',
 	),
 	'header_diagnostics' => array (
@@ -47,6 +50,7 @@ $lang = array(
 		'sl' => 'SimpleSAMLphp diagnostika',
 		'hr' => 'SimpleSAMLphp dijagnostika',
 		'hu' => 'SimpleSAMLphp hibakeresés',
+		'pt' => 'DiagnĂłsticos do simpleSAMLphp',
 		'pt-BR' => 'DiagnĂłsticos do SimpleSAMLphp',
 	),
 	'some_error_occured' => array (
@@ -59,6 +63,7 @@ $lang = array(
 		'sl' => 'Prišlo je do napake!',
 		'hr' => 'Došlo je do greške',
 		'hu' => 'Hiba történt',
+		'pt' => 'Ocorreu um erro',
 		'pt-BR' => 'Ocorreu algum erro',
 	),
 	'intro' => array (
@@ -71,6 +76,7 @@ $lang = array(
 		'sl' => 'Živjo! To je statusna stran simpleSAMLphp, ki omogoča pregled nad trajanjem vaše trenutne seje in atributi, ki so povezani z njo.',
 		'hr' => 'Zdravo, ovo je stranica s prikazom aktualnog stanja simpleSAMLphp-a. Ovdje možete vidjeti je li vam istekla sjednica, koliko dugo će vaša sjednica još biti valjana i sve atribute koji su vezani uz vašu sjednicu.',
 		'hu' => 'Üdvözöljük, ez a SimpleSAMLphp státus oldala. Itt láthatja, ha lejárt a munkamenete, mikor lépett be utoljára és a munkamenethez tartozó attribútumokat.',
+		'pt' => 'Está na página de status do simpleSAMLphp. Aqui poderá consultar informações sobre a sua sessão: o tempo de expiração e os seus atributos.',
 		'pt-BR' => 'Olá, esta é a página de status simpleSAMLphp. Aqui você pode ver é se a sua sessão expirou, o tempo que dura até ele expirar e todos os atributos que estão anexados à sua sessão.',
 	),
 	'validfor' => array (
@@ -83,6 +89,7 @@ $lang = array(
 		'sl' => 'Vaša trenutna seja je veljavna še %SECONDS% sekund.',
 		'hr' => 'Vaša sjednica je valjana još %SECONDS% sekundi.',
 		'hu' => 'Az ön munkamenete még %SECONDS% másodpercig érvényes',
+		'pt' => 'A sua sessão é válida por %SECONDS% segundos.',
 		'pt-BR' => 'Sua sessão é válida por %SECONDS% segundos a partir de agora.',
 	),
 	'sessionsize' => array (
@@ -95,6 +102,7 @@ $lang = array(
 		'sl' => 'Velikost seje: %SIZE% bajtov',
 		'hr' => 'VeliÄŤina sjednice: %SIZE%',
 		'hu' => 'Munkamenet mérete: %SIZE%',
+		'pt' => 'Tamanho da sessĂŁo: %SIZE%',
 		'pt-BR' => 'Tamanho da sessĂŁo: %SIZE%',
 	),
 	'attributes_header' => array (
@@ -107,6 +115,7 @@ $lang = array(
 		'sl' => 'Vaši atributi',
 		'hr' => 'Vaši atributi',
 		'hu' => 'Az ön attribútumai',
+		'pt' => 'Os seus atributos',
 		'pt-BR' => 'Seus atributos',
 	),
 	'logout' => array (
@@ -119,6 +128,7 @@ $lang = array(
 		'sl' => 'Odjava',
 		'hr' => 'Odjavi se',
 		'hu' => 'Kilépés',
+		'pt' => 'Sair',
 		'pt-BR' => 'Desconectar',
 	),
 
-- 
GitLab