From ec2d7ee55c14fc835dd42026827b2a4d3f335b4a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Mois=C3=A9s=20Gonz=C3=A1lez?= <moises.gonzalez@edunext.co>
Date: Mon, 26 Jul 2021 02:49:04 -0400
Subject: [PATCH] feat: Add Portuguese (Portugal) translation

---
 lti_consumer/translations/config.yaml         |   1 +
 .../translations/pt_PT/LC_MESSAGES/text.mo    | Bin 0 -> 10262 bytes
 .../translations/pt_PT/LC_MESSAGES/text.po    | 548 ++++++++++++++++++
 setup.py                                      |   2 +-
 4 files changed, 550 insertions(+), 1 deletion(-)
 create mode 100644 lti_consumer/translations/pt_PT/LC_MESSAGES/text.mo
 create mode 100644 lti_consumer/translations/pt_PT/LC_MESSAGES/text.po

diff --git a/lti_consumer/translations/config.yaml b/lti_consumer/translations/config.yaml
index f6e2227..abfb83f 100644
--- a/lti_consumer/translations/config.yaml
+++ b/lti_consumer/translations/config.yaml
@@ -10,5 +10,6 @@ locales:
   - ja_JP  # Japanese (Japan)
   - ko_KR  # Korean (Korea)
   - pt_BR  # Portuguese (Brazil)
+  - pt_PT  # Portuguese (Portugal)
   - ru  # Russian
   - zh_CN  # Chinese (China)
diff --git a/lti_consumer/translations/pt_PT/LC_MESSAGES/text.mo b/lti_consumer/translations/pt_PT/LC_MESSAGES/text.mo
new file mode 100644
index 0000000000000000000000000000000000000000..4615dfe492be51964527492a12860adf90a09049
GIT binary patch
literal 10262
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
E0B%!+Gynhq

literal 0
HcmV?d00001

diff --git a/lti_consumer/translations/pt_PT/LC_MESSAGES/text.po b/lti_consumer/translations/pt_PT/LC_MESSAGES/text.po
new file mode 100644
index 0000000..141c626
--- /dev/null
+++ b/lti_consumer/translations/pt_PT/LC_MESSAGES/text.po
@@ -0,0 +1,548 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# 
+# Translators:
+# Cátia Lopes <catia.lopes@bridgelk.com>, 2019
+# Ivo Branco <ivo.branco@fccn.pt>, 2021
+msgid ""
+msgstr ""
+"Project-Id-Version: XBlocks\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2021-06-07 15:54-0300\n"
+"PO-Revision-Date: 2021-07-20 11:10+0000\n"
+"Last-Translator: Ivo Branco <ivo.branco@fccn.pt>\n"
+"Language-Team: Portuguese (Portugal) (http://www.transifex.com/open-edx/xblocks/language/pt_PT/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: pt_PT\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: lti_1p3/extensions/rest_framework/authentication.py:40
+msgid "Missing LTI 1.3 authentication token."
+msgstr ""
+
+#: lti_1p3/extensions/rest_framework/authentication.py:44
+msgid "Invalid token header. No credentials provided."
+msgstr ""
+
+#: lti_1p3/extensions/rest_framework/authentication.py:48
+msgid "Invalid token header. Token string should not contain spaces."
+msgstr ""
+
+#: lti_1p3/extensions/rest_framework/authentication.py:56
+msgid "LTI configuration not found."
+msgstr ""
+
+#: lti_1p3/extensions/rest_framework/authentication.py:65
+msgid "Invalid token signature."
+msgstr ""
+
+#: lti_xblock.py:131
+msgid "No valid user id found in endpoint URL"
+msgstr "Nenhum ID de utilizador válido no URL de destino"
+
+#: lti_xblock.py:237
+msgid "Display Name"
+msgstr "Nome"
+
+#: lti_xblock.py:239
+msgid ""
+"Enter the name that students see for this component. Analytics reports may "
+"also use the display name to identify this component."
+msgstr "Insira o nome que os estudantes veem para este componente. Os relatórios do Analytics também podem usar o nome para identificar este componente."
+
+#: lti_xblock.py:243
+msgid "LTI Consumer"
+msgstr "Consumidor LTI"
+
+#: lti_xblock.py:246
+msgid "LTI Application Information"
+msgstr "Informação sobre a aplicação LTI"
+
+#: lti_xblock.py:248
+msgid ""
+"Enter a description of the third party application. If requesting username "
+"and/or email, use this text box to inform users why their username and/or "
+"email will be forwarded to a third party application."
+msgstr "Insira uma descrição da aplicação de terceiros. Se solicitar o nome de utilizador e/ou o e-mail, use esta caixa de texto para informar os utilizadores sobre o motivo pelo qual o seu nome de utilizador e/ou e-mail serão encaminhados para uma aplicação de terceiros."
+
+#: lti_xblock.py:258
+msgid "LTI Version"
+msgstr ""
+
+#: lti_xblock.py:266
+msgid ""
+"Select the LTI version that your tool supports.<br />The XBlock LTI Consumer"
+" fully supports LTI 1.1.1, LTI 1.3 and LTI Advantage features."
+msgstr ""
+
+#: lti_xblock.py:272
+msgid "Tool Launch URL"
+msgstr ""
+
+#: lti_xblock.py:276
+msgid ""
+"Enter the LTI 1.3 Tool Launch URL. <br />This is the URL the LMS will use to"
+" launch the LTI Tool."
+msgstr ""
+
+#: lti_xblock.py:281
+msgid "Tool Initiate Login URL"
+msgstr ""
+
+#: lti_xblock.py:285
+msgid ""
+"Enter the LTI 1.3 Tool OIDC Authorization url (can also be called login or "
+"login initiation URL).<br />This is the URL the LMS will use to start a LTI "
+"authorization prior to doing the launch request."
+msgstr ""
+
+#: lti_xblock.py:291
+msgid "Tool Public Key"
+msgstr ""
+
+#: lti_xblock.py:296
+msgid ""
+"Enter the LTI 1.3 Tool's public key.<br />This is a string that starts with "
+"'-----BEGIN PUBLIC KEY-----' and is required so that the LMS can check if "
+"the messages and launch requests received have the signature from the "
+"tool.<br /><b>This is not required when doing LTI 1.3 Launches without LTI "
+"Advantage nor Basic Outcomes requests.</b>"
+msgstr ""
+
+#: lti_xblock.py:306
+msgid "Enable LTI NRPS"
+msgstr ""
+
+#: lti_xblock.py:307
+msgid "Enable LTI Names and Role Provisioning Services."
+msgstr ""
+
+#: lti_xblock.py:314
+msgid "LTI 1.3 Block Client ID - DEPRECATED"
+msgstr ""
+
+#: lti_xblock.py:317
+msgid "DEPRECATED - This is now stored in the LtiConfiguration model."
+msgstr ""
+
+#: lti_xblock.py:320
+msgid "LTI 1.3 Block Key - DEPRECATED"
+msgstr ""
+
+#: lti_xblock.py:327
+msgid "Deep linking"
+msgstr ""
+
+#: lti_xblock.py:328
+msgid "Select True if you want to enable LTI Advantage Deep Linking."
+msgstr ""
+
+#: lti_xblock.py:333
+msgid "Deep Linking Launch URL"
+msgstr ""
+
+#: lti_xblock.py:337
+msgid ""
+"Enter the LTI Advantage Deep Linking Launch URL. If the tool does not "
+"specify one, use the same value as 'Tool Launch URL'."
+msgstr ""
+
+#: lti_xblock.py:342
+msgid "LTI Assignment and Grades Service"
+msgstr ""
+
+#: lti_xblock.py:344
+msgid "Disabled"
+msgstr "Desativado"
+
+#: lti_xblock.py:345
+msgid "Allow tools to submit grades only (declarative)"
+msgstr ""
+
+#: lti_xblock.py:346
+msgid "Allow tools to manage and submit grade (programmatic)"
+msgstr ""
+
+#: lti_xblock.py:351
+msgid ""
+"Enable the LTI-AGS service and select the functionality enabled for LTI "
+"tools. The 'declarative' mode (default) will provide a tool with a LineItem "
+"created from the XBlock settings, while the 'programmatic' one will allow "
+"tools to manage, create and link the grades."
+msgstr ""
+
+#: lti_xblock.py:359
+msgid "LTI ID"
+msgstr "LTI ID"
+
+#: lti_xblock.py:361
+#, python-brace-format
+msgid ""
+"Enter the LTI ID for the external LTI provider. This value must be the same "
+"LTI ID that you entered in the LTI Passports setting on the Advanced "
+"Settings page.<br />See the {docs_anchor_open}edX LTI "
+"documentation{anchor_close} for more details on this setting."
+msgstr "Insira a LTI ID para o fornecedor do LTI externo. Este valor deve ser o mesmo que foi inserido na configuração de passaportes LTI na página Configurações Avançadas.<br />Veja a {docs_anchor_open}documentação sobre LTI da edX{anchor_close} para obter mais detalhes sobre esta configuração."
+
+#: lti_xblock.py:373
+msgid "LTI URL"
+msgstr "LTI URL"
+
+#: lti_xblock.py:375
+#, python-brace-format
+msgid ""
+"Enter the URL of the external tool that this component launches. This "
+"setting is only used when Hide External Tool is set to False.<br />See the "
+"{docs_anchor_open}edX LTI documentation{anchor_close} for more details on "
+"this setting."
+msgstr "Insira o URL da ferramenta externa lançada por este componente. Esta configuração é usada apenas quando Ocultar a Ferramenta Externa for configurada como False.<br />Veja a {docs_anchor_open}documentação sobre LTI edX{anchor_close} para obter mais detalhes sobre esta configuração."
+
+#: lti_xblock.py:388
+msgid "Custom Parameters"
+msgstr "Parâmetros personalizados"
+
+#: lti_xblock.py:390
+#, python-brace-format
+msgid ""
+"Add the key/value pair for any custom parameters, such as the page your "
+"e-book should open to or the background color for this component. Ex. "
+"[\"page=1\", \"color=white\"]<br />See the {docs_anchor_open}edX LTI "
+"documentation{anchor_close} for more details on this setting."
+msgstr "Adicione o par chave/valor para quaisquer parâmetros personalizados, como, por exemplo, a página que seu e-book deve abrir ou a cor de fundo para este componente. Ex. [\"page=1\", \"color=white\"]<br />Veja a {docs_anchor_open}documentação sobre LTI edX{anchor_close} para obter mais detalhes sobre esta configuração."
+
+#: lti_xblock.py:400
+msgid "LTI Launch Target"
+msgstr "Alvo de Lançamento LTI"
+
+#: lti_xblock.py:402
+msgid ""
+"Select Inline if you want the LTI content to open in an IFrame in the "
+"current page. Select Modal if you want the LTI content to open in a modal "
+"window in the current page. Select New Window if you want the LTI content to"
+" open in a new browser window. This setting is only used when Hide External "
+"Tool is set to False."
+msgstr "Selecione Inline se desejar que o conteúdo LTI seja aberto num IFrame na página atual. Selecione modal se desejar que o conteúdo LTI seja aberto em uma janela modal na página atual. Selecione nova janela se desejar que o conteúdo LTI seja aberto em uma nova janela do navegador. Essa configuração só é usada quando ocultar ferramenta externa é definida como false."
+
+#: lti_xblock.py:416
+msgid "Button Text"
+msgstr "Texto do Botão"
+
+#: lti_xblock.py:418
+msgid ""
+"Enter the text on the button used to launch the third party application. "
+"This setting is only used when Hide External Tool is set to False and LTI "
+"Launch Target is set to Modal or New Window."
+msgstr "Insira o texto no botão usado para iniciar a aplicação de terceiros. Esta configuração só é usada quando Ocultar Ferramenta Externa é definida como False e LTI Launch Target é definido como modal ou nova janela."
+
+#: lti_xblock.py:426
+msgid "Inline Height"
+msgstr "Altura da linha"
+
+#: lti_xblock.py:428
+msgid ""
+"Enter the desired pixel height of the iframe which will contain the LTI "
+"tool. This setting is only used when Hide External Tool is set to False and "
+"LTI Launch Target is set to Inline."
+msgstr "Insira a altura desejada do pixel do iframe que conterá a ferramenta LTI. Essa configuração só é usada quando ocultar ferramenta externa é definida como false e o destino de inicialização LTI é definido como inline."
+
+#: lti_xblock.py:436
+msgid "Modal Height"
+msgstr "Altura da caixa de integração"
+
+#: lti_xblock.py:438
+msgid ""
+"Enter the desired viewport percentage height of the modal overlay which will"
+" contain the LTI tool. This setting is only used when Hide External Tool is "
+"set to False and LTI Launch Target is set to Modal."
+msgstr "Insira a altura da porcentagem de viewport desejada da sobreposição modal que conterá a ferramenta LTI. Essa configuração só é usada quando ocultar ferramenta externa é definida como false e o destino de inicialização LTI é definido como modal."
+
+#: lti_xblock.py:446
+msgid "Modal Width"
+msgstr "Largura Modal"
+
+#: lti_xblock.py:448
+msgid ""
+"Enter the desired viewport percentage width of the modal overlay which will "
+"contain the LTI tool. This setting is only used when Hide External Tool is "
+"set to False and LTI Launch Target is set to Modal."
+msgstr "Insira a largura da porcentagem de viewport desejada da sobreposição modal que conterá a ferramenta LTI. Essa configuração só é usada quando ocultar ferramenta externa é definida como false e o destino de inicialização LTI é definido como modal."
+
+#: lti_xblock.py:456
+msgid "Scored"
+msgstr "Pontuação"
+
+#: lti_xblock.py:457
+msgid ""
+"Select True if this component will receive a numerical score from the "
+"external LTI system."
+msgstr "Selecione Verdadeiro se a intenção for que este componente receba uma pontuação numérica através do sistema externo LTI."
+
+#: lti_xblock.py:464
+msgid ""
+"Enter the number of points possible for this component.  The default value "
+"is 1.0.  This setting is only used when Scored is set to True."
+msgstr "Insira o número de pontos possíveis para este componente. O valor padrão é 1.0. Esta configuração é usada apenas quando Marcar estiver definido como Verdadeiro."
+
+#: lti_xblock.py:473
+msgid ""
+"The score kept in the xblock KVS -- duplicate of the published score in "
+"django DB"
+msgstr "A pontuação mantida no xblock KVS -- duplicado da pontuação publicada no django DB"
+
+#: lti_xblock.py:478
+msgid "Comment as returned from grader, LTI2.0 spec"
+msgstr "O comentário apresentado pelo avaliador, especificação LTI2.0"
+
+#: lti_xblock.py:483
+msgid "Hide External Tool"
+msgstr "Ocultar Ferramenta Externa"
+
+#: lti_xblock.py:485
+msgid ""
+"Select True if you want to use this component as a placeholder for syncing "
+"with an external grading  system rather than launch an external tool.  This "
+"setting hides the Launch button and any IFrames for this component."
+msgstr "Selecione Verdadeiro se desejar utilizar este componente como espaço reservado para sincronizar com um sistema de classificação externo em vez de iniciar uma ferramenta externa. Esta configuração oculta o botão Iniciar e qualquer IFrames para este componente."
+
+#: lti_xblock.py:493
+msgid "Accept grades past deadline"
+msgstr "Data limite para aceitar notas"
+
+#: lti_xblock.py:494
+msgid ""
+"Select True to allow third party systems to post grades past the deadline."
+msgstr "Selecione Verdadeiro para permitir que sistemas de terceiros publiquem notas após a data limite."
+
+#: lti_xblock.py:502
+msgid "Request user's username"
+msgstr "Solicitar o nome do utilizador"
+
+#. Translators: This is used to request the user's username for a third party
+#. service.
+#: lti_xblock.py:504
+msgid "Select True to request the user's username."
+msgstr "Selecionar Verdadeiro para solicitar o nome de utilizador"
+
+#: lti_xblock.py:509
+msgid "Request user's email"
+msgstr "Solicitar email de utilizador"
+
+#. Translators: This is used to request the user's email for a third party
+#. service.
+#: lti_xblock.py:511
+msgid "Select True to request the user's email address."
+msgstr "Selecionar Verdadeiro para solicitar o email de utilizador."
+
+#: lti_xblock.py:516
+msgid "Send extra parameters"
+msgstr ""
+
+#: lti_xblock.py:517
+msgid ""
+"Select True to send the extra parameters, which might contain Personally "
+"Identifiable Information. The processors are site-wide, please consult the "
+"site administrator if you have any questions."
+msgstr ""
+
+#: lti_xblock.py:578
+msgid "Custom Parameters must be a list"
+msgstr ""
+
+#: lti_xblock.py:717
+msgid ""
+"Could not parse LTI passport: {lti_passport!r}. Should be \"id:key:secret\" "
+"string."
+msgstr ""
+
+#: lti_xblock.py:733 lti_xblock.py:749
+msgid "Could not get user id for current request"
+msgstr "Não foi possível obter ID de usuário para a solicitação atual"
+
+#: lti_xblock.py:854
+msgid ""
+"Could not parse custom parameter: {custom_parameter!r}. Should be \"x=y\" "
+"string."
+msgstr ""
+
+#: lti_xblock.py:1299
+msgid "[LTI]: Real user not found against anon_id: {}"
+msgstr "[LTI]: usuário real não encontrado contra anon_id: {}"
+
+#: models.py:69
+msgid "Configuration Stored on XBlock fields"
+msgstr ""
+
+#: models.py:70
+msgid "Configuration Stored on this model"
+msgstr ""
+
+#: models.py:94
+msgid "LTI configuration data."
+msgstr ""
+
+#: models.py:101
+msgid "The URL of the external tool that initiates the launch."
+msgstr ""
+
+#: models.py:106
+msgid "Client key provided by the LTI tool provider."
+msgstr ""
+
+#: models.py:112
+msgid "Client secret provided by the LTI tool provider."
+msgstr ""
+
+#: models.py:118
+msgid "Platform's generated Private key. Keep this value secret."
+msgstr ""
+
+#: models.py:124
+msgid "Platform's generated Private key ID"
+msgstr ""
+
+#: models.py:129
+msgid "Platform's generated JWK keyset."
+msgstr ""
+
+#: models.py:135
+msgid "Client ID used by LTI tool"
+msgstr ""
+
+#: models.py:145
+msgid "LTI Configuration stores on XBlock needs a block location set."
+msgstr ""
+
+#: models.py:152
+msgid "Invalid LTI configuration."
+msgstr ""
+
+#: models.py:162
+msgid "Block location not set, it's not possible to retrieve the block."
+msgstr ""
+
+#: plugin/views.py:244
+msgid "The selected content type is not supported by Open edX."
+msgstr ""
+
+#: plugin/views.py:259
+msgid "You don't have access to save LTI Content Items."
+msgstr ""
+
+#: plugin/views.py:260
+msgid ""
+"Please check that you have course staff permissions and double check this "
+"block's LTI settings."
+msgstr ""
+
+#: templates/html/lti-dl/dl_response_error.html:6
+msgid "LTI Deep Linking failed."
+msgstr ""
+
+#: templates/html/lti-dl/dl_response_saved.html:6
+msgid "LTI Deep Linking"
+msgstr ""
+
+#: templates/html/lti-dl/dl_response_saved.html:10
+msgid "The LTI Deep Linking content was successfully saved in the LMS."
+msgstr ""
+
+#: templates/html/lti-dl/dl_response_saved.html:13
+msgid "You can safely close this page now."
+msgstr ""
+
+#: templates/html/lti_1p3_launch_error.html:10
+msgid "There was an error while launching the LTI 1.3 tool."
+msgstr ""
+
+#: templates/html/lti_1p3_launch_error.html:13
+msgid ""
+"If you're seeing this on a live course, please contact the course staff."
+msgstr ""
+
+#: templates/html/lti_1p3_permission_error.html:10
+msgid "Unauthorized."
+msgstr "Não autorizado."
+
+#: templates/html/lti_1p3_permission_error.html:13
+msgid ""
+"Students don't have permissions to perform LTI Deep Linking configuration "
+"launches."
+msgstr ""
+
+#: templates/html/lti_1p3_studio.html:3
+msgid "LTI 1.3 Launches can only be performed from the LMS."
+msgstr ""
+
+#: templates/html/lti_1p3_studio.html:7
+msgid ""
+"To set up the LTI integration, you need to register the LMS in the tool with"
+" the information provided below."
+msgstr ""
+
+#: templates/html/lti_1p3_studio.html:11
+msgid "Client ID: "
+msgstr "ID do cliente: "
+
+#: templates/html/lti_1p3_studio.html:16
+msgid "Deployment ID: "
+msgstr "ID de instalação: "
+
+#: templates/html/lti_1p3_studio.html:21
+msgid "Keyset URL: "
+msgstr "URL do conjunto de chaves: "
+
+#: templates/html/lti_1p3_studio.html:26
+msgid "Access Token URL: "
+msgstr "URL de token de acesso: "
+
+#: templates/html/lti_1p3_studio.html:31
+msgid "Login URL: "
+msgstr "URL de login: "
+
+#: templates/html/lti_1p3_studio.html:39
+msgid "Deep Linking is configured on this tool."
+msgstr ""
+
+#: templates/html/lti_1p3_studio.html:40
+msgid "The Deep Linking configuration stored is presented below:"
+msgstr ""
+
+#: templates/html/lti_1p3_studio.html:45
+msgid "If you run deep linking again, the content above will be replaced."
+msgstr ""
+
+#: templates/html/lti_1p3_studio.html:49
+msgid "You can configure this tool's content using LTI Deep Linking."
+msgstr ""
+
+#: templates/html/lti_1p3_studio.html:50
+msgid "To do that, make sure the block is published and click the link below:"
+msgstr "Para isso, certifique-se de que o bloco é publicado e clique no link abaixo:"
+
+#: templates/html/lti_1p3_studio.html:53
+msgid "Deep Linking Launch - Configure tool"
+msgstr ""
+
+#: static/js/xblock_lti_consumer.js:110
+msgid ""
+"Click OK to have your username and e-mail address sent to a 3rd party application.\n"
+"\n"
+"Click Cancel to return to this page without sending your information."
+msgstr "Clique em OK para enviar o seu nome de utilizador e endereço de email para uma aplicação de terceiros.\n\nClique em Cancelar para regressar a esta página sem enviar as suas informações."
+
+#: static/js/xblock_lti_consumer.js:112
+msgid ""
+"Click OK to have your username sent to a 3rd party application.\n"
+"\n"
+"Click Cancel to return to this page without sending your information."
+msgstr "Clique em OK para enviar o seu nome de utilizador para uma aplicação de terceiros.\n\nClique em Cancelar para regressar a esta página sem enviar as suas informações."
+
+#: static/js/xblock_lti_consumer.js:114
+msgid ""
+"Click OK to have your e-mail address sent to a 3rd party application.\n"
+"\n"
+"Click Cancel to return to this page without sending your information."
+msgstr "Clique em OK para enviar o seu endereço de email para uma aplicação de terceiros.\n\nClique em Cancelar para regressar a esta página sem enviar as suas informações."
diff --git a/setup.py b/setup.py
index 8a67696..9a0e759 100644
--- a/setup.py
+++ b/setup.py
@@ -49,7 +49,7 @@ with open('README.rst') as _f:
 
 setup(
     name='lti-consumer-xblock',
-    version='3.0.1',
+    version='3.0.2',
     author='Open edX project',
     author_email='oscm@edx.org',
     description='This XBlock implements the consumer side of the LTI specification.',
-- 
GitLab