Merge remote-tracking branch 'upstream/master' into fix-string1

# Conflicts:
#	src/User/resources/i18n/pt-PT/usuario.php
This commit is contained in:
Tõnis Ormisson
2018-09-12 12:10:46 +03:00
17 changed files with 274 additions and 268 deletions

View File

@ -8,6 +8,7 @@ php:
- 5.6 - 5.6
- 7.0 - 7.0
- 7.1 - 7.1
- 7.2
- nightly - nightly
matrix: matrix:
@ -23,7 +24,7 @@ matrix:
install: install:
- | - |
if [[ $TRAVIS_PHP_VERSION != '7.1' && $TRAVIS_PHP_VERSION != hhv* ]]; then if [[ $TRAVIS_PHP_VERSION != '7.1' && $TRAVIS_PHP_VERSION != '7.2' && $TRAVIS_PHP_VERSION != hhv* ]]; then
# disable xdebug for performance reasons when code coverage is not needed # disable xdebug for performance reasons when code coverage is not needed
# note: xdebug on hhvm is disabled by default # note: xdebug on hhvm is disabled by default
phpenv config-rm xdebug.ini || echo "xdebug is not installed" phpenv config-rm xdebug.ini || echo "xdebug is not installed"

View File

@ -2,7 +2,7 @@
## 1.5.0 - Work in progress ## 1.5.0 - Work in progress
- Fix: Fix condition in EmailChangeService (it was always false) (borisaeric) - Fix: Fix condition in EmailChangeService (it was always false) (borisaeric)
- Fix #198: Updated translations by quique, bizley, TonisOrmisson, guogan, Dezinger, maxxer, wautvda, mrbig00 - Fix #198: Updated translations by quique, bizley, TonisOrmisson, guogan, Dezinger, maxxer, wautvda, mrbig00, fabiomlferreira
- Fix #209: Doc fix. allowAccountDelete default value is false (Dezinger) - Fix #209: Doc fix. allowAccountDelete default value is false (Dezinger)
- Fix #211: Migration boolean default value set to FALSE instead 0 (Dezinger) - Fix #211: Migration boolean default value set to FALSE instead 0 (Dezinger)
- Fix #213: Migration sql syntax fix (Dezinger) - Fix #213: Migration sql syntax fix (Dezinger)
@ -14,6 +14,7 @@
- Fix #168: Fix spelling in russian language (EvgenyOrekhov) - Fix #168: Fix spelling in russian language (EvgenyOrekhov)
- Fix #195: UserCreateService: check if we're from web before setting flash message (maxxer) - Fix #195: UserCreateService: check if we're from web before setting flash message (maxxer)
- Enh: Improvements to the admin responsive design (wautvda) - Enh: Improvements to the admin responsive design (wautvda)
- Enh: Replace the deprecated InvalidParamException in ClassMapHelper (TonisOrmisson)
## 1.1.4 - February 19, 2018 ## 1.1.4 - February 19, 2018
- Enh: Check enableEmailConfirmation on registration (faenir) - Enh: Check enableEmailConfirmation on registration (faenir)

View File

@ -51,9 +51,9 @@ abstract class AbstractAuthItemController extends Controller
{ {
return [ return [
'access' => [ 'access' => [
'class' => AccessControl::className(), 'class' => AccessControl::class,
'ruleConfig' => [ 'ruleConfig' => [
'class' => AccessRuleFilter::className(), 'class' => AccessRuleFilter::class,
], ],
'rules' => [ 'rules' => [
[ [

View File

@ -43,7 +43,7 @@ class ProfileController extends Controller
{ {
return [ return [
'access' => [ 'access' => [
'class' => AccessControl::className(), 'class' => AccessControl::class,
'rules' => [ 'rules' => [
[ [
'allow' => true, 'allow' => true,

View File

@ -60,7 +60,7 @@ class RecoveryController extends Controller
{ {
return [ return [
'access' => [ 'access' => [
'class' => AccessControl::className(), 'class' => AccessControl::class,
'rules' => [ 'rules' => [
[ [
'allow' => true, 'allow' => true,

View File

@ -69,7 +69,7 @@ class RegistrationController extends Controller
{ {
return [ return [
'access' => [ 'access' => [
'class' => AccessControl::className(), 'class' => AccessControl::class,
'rules' => [ 'rules' => [
[ [
'allow' => true, 'allow' => true,

View File

@ -36,15 +36,15 @@ class RuleController extends Controller
{ {
return [ return [
'verbs' => [ 'verbs' => [
'class' => VerbFilter::className(), 'class' => VerbFilter::class,
'actions' => [ 'actions' => [
'delete' => ['POST'], 'delete' => ['POST'],
], ],
], ],
'access' => [ 'access' => [
'class' => AccessControl::className(), 'class' => AccessControl::class,
'ruleConfig' => [ 'ruleConfig' => [
'class' => AccessRuleFilter::className(), 'class' => AccessRuleFilter::class,
], ],
'rules' => [ 'rules' => [
[ [

View File

@ -61,7 +61,7 @@ class SecurityController extends Controller
{ {
return [ return [
'access' => [ 'access' => [
'class' => AccessControl::className(), 'class' => AccessControl::class,
'rules' => [ 'rules' => [
[ [
'allow' => true, 'allow' => true,
@ -76,7 +76,7 @@ class SecurityController extends Controller
], ],
], ],
'verbs' => [ 'verbs' => [
'class' => VerbFilter::className(), 'class' => VerbFilter::class,
'actions' => [ 'actions' => [
'logout' => ['post'], 'logout' => ['post'],
], ],
@ -91,7 +91,7 @@ class SecurityController extends Controller
{ {
return [ return [
'auth' => [ 'auth' => [
'class' => AuthAction::className(), 'class' => AuthAction::class,
// if user is not logged in, will try to log him in, otherwise // if user is not logged in, will try to log him in, otherwise
// will try to connect social account to user. // will try to connect social account to user.
'successCallback' => Yii::$app->user->isGuest 'successCallback' => Yii::$app->user->isGuest

View File

@ -86,7 +86,7 @@ class SettingsController extends Controller
{ {
return [ return [
'verbs' => [ 'verbs' => [
'class' => VerbFilter::className(), 'class' => VerbFilter::class,
'actions' => [ 'actions' => [
'disconnect' => ['post'], 'disconnect' => ['post'],
'delete' => ['post'], 'delete' => ['post'],
@ -94,7 +94,7 @@ class SettingsController extends Controller
], ],
], ],
'access' => [ 'access' => [
'class' => AccessControl::className(), 'class' => AccessControl::class,
'rules' => [ 'rules' => [
[ [
'allow' => true, 'allow' => true,
@ -265,8 +265,12 @@ class SettingsController extends Controller
$user = Yii::$app->user->identity; $user = Yii::$app->user->identity;
$data = [$properties, []]; $data = [$properties, []];
$formatter = Yii::$app->formatter;
// override the default html-specific format for nulls
$formatter->nullDisplay = "";
foreach ($properties as $property) { foreach ($properties as $property) {
$data[1][] = Yii::$app->formatter->asText(ArrayHelper::getValue($user, $property)); $data[1][] = $formatter->asText(ArrayHelper::getValue($user, $property));
} }
array_walk($data[0], function (&$value, $key) { array_walk($data[0], function (&$value, $key) {

View File

@ -11,7 +11,7 @@
namespace Da\User\Helper; namespace Da\User\Helper;
use yii\base\InvalidParamException; use yii\base\InvalidArgumentException;
class ClassMapHelper class ClassMapHelper
{ {
@ -39,7 +39,7 @@ class ClassMapHelper
/** /**
* @param $key * @param $key
* *
* @throws InvalidParamException * @throws \InvalidArgumentException
* @return mixed * @return mixed
* *
*/ */
@ -48,6 +48,6 @@ class ClassMapHelper
if (array_key_exists($key, $this->map)) { if (array_key_exists($key, $this->map)) {
return $this->map[$key]; return $this->map[$key];
} }
throw new InvalidParamException('Unknown model map key: ' . $key); throw new InvalidArgumentException('Unknown model map key: ' . $key);
} }
} }

View File

@ -161,7 +161,7 @@ class User extends ActiveRecord implements IdentityInterface
public function behaviors() public function behaviors()
{ {
$behaviors = [ $behaviors = [
TimestampBehavior::className(), TimestampBehavior::class,
]; ];
if ($this->module->enableGDPRcompliance) { if ($this->module->enableGDPRcompliance) {

View File

@ -22,7 +22,7 @@ class Module extends BaseModule
/** /**
* @var bool whether to enable european G.D.P.R. compliance. * @var bool whether to enable european G.D.P.R. compliance.
* This will add a few elements to comply with european general data protection regulation. * This will add a few elements to comply with european general data protection regulation.
* This regulation affects to all companys in Europe a those companies outside that offer their * This regulation affects to all companies in Europe a those companies outside that offer their
* services to the E.U. * services to the E.U.
* List of elements that will be added when this is enabled: * List of elements that will be added when this is enabled:
* - Checkbox to request consent on register form * - Checkbox to request consent on register form
@ -53,7 +53,7 @@ class Module extends BaseModule
'profile.bio' 'profile.bio'
]; ];
/** /**
* @var string prefix to be used as a replacement when user requeste deletion of his data. * @var string prefix to be used as a replacement when user requests deletion of his data.
*/ */
public $GDPRanonymPrefix = 'GDPR'; public $GDPRanonymPrefix = 'GDPR';
/** /**

View File

@ -17,259 +17,259 @@
* NOTE: this file must be saved in UTF-8 encoding. * NOTE: this file must be saved in UTF-8 encoding.
*/ */
return [ return [
'(not set)' => '', 'Two factor authentication protects you in case of stolen credentials' => '',
'A confirmation message has been sent to your new email address' => '', '(not set)' => '(não selecionado)',
'A message has been sent to your email address. It contains a confirmation link that you must click to complete registration.' => '', 'A confirmation message has been sent to your new email address' => 'Foi enviada uma mensagem de confirmação para o seu endereço de email',
'A new confirmation link has been sent' => '', 'A message has been sent to your email address. It contains a confirmation link that you must click to complete registration.' => 'Foi enviada uma mensagem para o seu endereço de email com o link de confirmação para completar o seu registo.',
'A password will be generated automatically if not provided' => '', 'A new confirmation link has been sent' => 'Foi enviado um novo link de confirmação',
'Account' => '', 'A password will be generated automatically if not provided' => 'Se não for indicada uma password, será gerada automaticamente',
'Account confirmation' => '', 'Account' => 'Conta',
'Account details' => '', 'Account confirmation' => 'Confirmação de conta',
'Account details have been updated' => '', 'Account details' => 'Detalhes da conta',
'Account settings' => '', 'Account details have been updated' => 'Detalhes da conta foram atualizados',
'Already registered? Sign in!' => '', 'Account settings' => 'Definições da conta',
'An email has been sent with instructions for resetting your password' => '', 'Already registered? Sign in!' => 'Já está registado? Entre na sua conta!',
'An error occurred processing your request' => '', 'An email has been sent with instructions for resetting your password' => 'Foi enviado um email com as instruções para restaurar a sua password',
'Are you sure you want to block this user?' => '', 'An error occurred processing your request' => 'Ocorreu um erro ao processar o seu pedido',
'Are you sure you want to confirm this user?' => '', 'Are you sure you want to block this user?' => 'Tem a certeza que pretende bloquear este utilizador?',
'Are you sure you want to delete this user?' => '', 'Are you sure you want to confirm this user?' => 'Tem a certeza que pretende confirmar este utilizador?',
'Are you sure you want to switch to this user for the rest of this Session?' => '', 'Are you sure you want to delete this user?' => 'Tem a certeza que pretende eliminar este utilizador?',
'Are you sure you want to unblock this user?' => '', 'Are you sure you want to switch to this user for the rest of this Session?' => 'Tem a certeza que pretende mudar para este utilizador durante esta sessão?',
'Are you sure you wish the user to change their password at next login?' => '', 'Are you sure you want to unblock this user?' => 'Tem a certeza que pretende desbloquear este utilizador?',
'Are you sure you wish to send a password recovery email to this user?' => '', 'Are you sure you wish the user to change their password at next login?' => 'Tem a certeza que pretende que o utilizador altere a password no próximo login?',
'Are you sure? Deleted user can not be restored' => '', 'Are you sure you wish to send a password recovery email to this user?' => 'Tem a certeza que pretende enviar um email de recuperação de password para este utilizador?',
'Are you sure? There is no going back' => '', 'Are you sure? Deleted user can not be restored' => 'Tem a certeza? Não é possível recuperar um utilizador eliminado',
'Assignments' => '', 'Are you sure? There is no going back' => 'Tem a certeza? Não é possível voltar atrás',
'Assignments have been updated' => '', 'Assignments' => 'Tarefas',
'Auth item with such name already exists' => '', 'Assignments have been updated' => 'Tarefas foram atualizadas',
'Authentication rule class {0} can not be instantiated' => '', 'Auth item with such name already exists' => 'Item de autenticação já existe com este nome',
'Authorization item successfully created.' => '', 'Authentication rule class {0} can not be instantiated' => 'Regra de autenticação de classe {0} não pode ser iniciada',
'Authorization item successfully removed.' => '', 'Authorization item successfully created.' => 'Item de autorização foi criado',
'Authorization item successfully updated.' => '', 'Authorization item successfully removed.' => 'Item de autorização foi removido',
'Authorization rule has been added.' => '', 'Authorization item successfully updated.' => 'Item de autorização foi atualizado',
'Authorization rule has been removed.' => '', 'Authorization rule has been added.' => 'Regra de autorização foi adicionada',
'Authorization rule has been updated.' => '', 'Authorization rule has been removed.' => 'Regra de autorização foi removida',
'Authorization rule has been updated.' => 'Regra de autorização foi atualizada',
'Awesome, almost there. Now you need to click the confirmation link sent to your new email address.' => '', 'Awesome, almost there. Now you need to click the confirmation link sent to your new email address.' => '',
'Awesome, almost there. Now you need to click the confirmation link sent to your old email address.' => '', 'Awesome, almost there. Now you need to click the confirmation link sent to your old email address.' => '',
'Back to privacy settings' => '', 'Back to privacy settings' => 'Voltar para opções de privacidade',
'Bio' => '', 'Bio' => 'Biografia',
'Block' => '', 'Block' => 'Bloquear',
'Block status' => '', 'Block status' => 'Estado de bloqueio',
'Blocked at {0, date, MMMM dd, YYYY HH:mm}' => '', 'Blocked at {0, date, MMMM dd, YYYY HH:mm}' => 'Bloqueado a {0, date, MMMM dd, YYYY HH:mm}',
'Cancel' => '', 'Cancel' => 'Cancelar',
'Cannot assign role "{0}" as the AuthManager is not configured on your console application.' => '', 'Cannot assign role "{0}" as the AuthManager is not configured on your console application.' => 'Não é possível atribuir o cargo "{0}" uma vez que o AuthManager não está configurado na sua aplicação da consola.',
'Change your avatar at Gravatar.com' => '', 'Change your avatar at Gravatar.com' => 'Altere o seu avatar em Gravatar.com',
'Children' => '', 'Children' => '',
'Class' => '', 'Class' => '',
'Close' => '', 'Close' => 'Fechar',
'Complete password reset on {0}' => '', 'Complete password reset on {0}' => 'Concluir o restauro de password em {0}',
'Confirm' => '', 'Confirm' => 'Confirmar',
'Confirm account on {0}' => '', 'Confirm account on {0}' => 'Confirmar conta em {0}',
'Confirm email change on {0}' => '', 'Confirm email change on {0}' => 'Confirmar alteração de email em {0}',
'Confirmation' => '', 'Confirmation' => 'Confirmação',
'Confirmation status' => '', 'Confirmation status' => 'Estado de confirmação',
'Confirmation time' => '', 'Confirmation time' => 'Tempo de confirmação',
'Confirmed' => '', 'Confirmed' => 'Confirmado',
'Confirmed at {0, date, MMMM dd, YYYY HH:mm}' => '', 'Confirmed at {0, date, MMMM dd, YYYY HH:mm}' => 'Confirmado a {0, date, MMMM dd, YYYY HH:mm}',
'Connect' => '', 'Connect' => 'Ligar',
'Continue' => '', 'Continue' => 'Continuar',
'Create' => '', 'Create' => 'Criar',
'Create a user account' => '', 'Create a user account' => 'Criar conta de utilizador',
'Create new permission' => '', 'Create new permission' => 'Criar nova permissão',
'Create new role' => '', 'Create new role' => 'Criar novo cargo',
'Create new rule' => '', 'Create new rule' => 'Criar nova regra',
'Created at' => '', 'Created at' => 'Criado em',
'Credentials will be sent to the user by email' => '', 'Credentials will be sent to the user by email' => 'As credenciais serão enviadas ao utilizador por email',
'Current password' => '', 'Current password' => 'Password atual',
'Current password is not valid' => '', 'Current password is not valid' => 'Password atual inválida',
'Data processing consent' => '', 'Data processing consent' => 'Consentimento para o processamento de dados',
'Delete' => '', 'Delete' => 'Eliminar',
'Delete account' => '', 'Delete account' => 'Eliminar conta',
'Delete my account' => '', 'Delete my account' => 'Eliminar a minha conta',
'Delete personal data' => '', 'Delete personal data' => 'Eliminar dados pessoais',
'Deleted by GDPR request' => '', 'Deleted by GDPR request' => 'Pedido GDPR para eliminação de dados',
'Description' => '', 'Description' => 'Descrição',
'Didn\'t receive confirmation message?' => '', 'Didn\'t receive confirmation message?' => 'Não recebeu a mensagem de confirmação?',
'Disable two factor authentication' => '', 'Disable two factor authentication' => 'Desativar autenticação de dois passos',
'Disconnect' => '', 'Disconnect' => 'Desligar',
'Don\'t have an account? Sign up!' => '', 'Don\'t have an account? Sign up!' => 'Não tem conta? Registe-se!',
'Download my data' => '', 'Download my data' => 'Descarregar os meus dados',
'Email' => '', 'Email' => '',
'Email (public)' => '', 'Email (public)' => 'Email (público)',
'Enable' => '', 'Enable' => 'Ativar',
'Enable two factor authentication' => '', 'Enable two factor authentication' => 'Ativar autenticação de dois passos',
'Error occurred while changing password' => '', 'Error occurred while changing password' => 'Erro ao alterar a password',
'Error occurred while confirming user' => '', 'Error occurred while confirming user' => 'Erro ao confirmar utilizador',
'Error occurred while deleting user' => '', 'Error occurred while deleting user' => 'Erro ao remover utilizador',
'Error sending registration message to "{email}". Please try again later.' => '', 'Error sending registration message to "{email}". Please try again later.' => 'Erro ao enviar mensagem de registo para "{email}". Por favor tente mais tarde.',
'Error sending welcome message to "{email}". Please try again later.' => '', 'Error sending welcome message to "{email}". Please try again later.' => 'Erro ao enviar mensagem de boas-vindas para "{email}" Por favor tente mais tarde.',
'Export my data' => '', 'Export my data' => 'Exportar os meus dados',
'Finish' => '', 'Finish' => 'Concluir',
'Force password change at next login' => '', 'Force password change at next login' => 'Forçar alteração de password no próximo login',
'Forgot password?' => '', 'Forgot password?' => 'Esqueceu a sua senha?',
'Gravatar email' => '', 'Gravatar email' => '',
'Hello' => '', 'Hello' => 'Olá',
'Here you can download your personal data in a comma separated values format.' => '', 'Here you can download your personal data in a comma separated values format.' => 'Aqui pode descarregar os seus dados pessoais num ficheiro separado por virgulas.',
'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => '', 'I agree processing of my personal data and the use of cookies to facilitate the operation of this site. For more information read our {privacyPolicy}' => 'Eu aceito o processamento dos meus dados pessoais e o uso de cookies para facilitar as operações neste site. Para mais informações leia a nossa {privacyPolicy}',
'If you already registered, sign in and connect this account on settings page' => '', 'If you already registered, sign in and connect this account on settings page' => 'Se já se registou, entre e associe esta conta nas definições',
'If you cannot click the link, please try pasting the text into your browser' => '', 'If you cannot click the link, please try pasting the text into your browser' => 'Se não conseguir abrir o link, por favor tente colá-lo no seu browser',
'If you did not make this request you can ignore this email' => '', 'If you did not make this request you can ignore this email' => 'Se não fez este pedido pode ignorar este email',
'Impersonate this user' => '', 'Impersonate this user' => 'Assumir este utilizador',
'In order to complete your registration, please click the link below' => '', 'In order to complete your registration, please click the link below' => 'Para completar o seu registo, por favor abra o link seguinte',
'In order to complete your request, please click the link below' => '', 'In order to complete your request, please click the link below' => 'Para completar o seu pedido, por favor abra o link seguinte',
'In order to finish your registration, we need you to enter following fields' => '', 'In order to finish your registration, we need you to enter following fields' => 'Para concluir o seu registo, é necessário preencher os seguintes campos',
'Information' => '', 'Information' => 'Informação',
'Invalid login or password' => '', 'Invalid login or password' => 'Login ou password inválido',
'Invalid or expired link' => '', 'Invalid or expired link' => 'Link inválido ou expirado',
'Invalid password' => '', 'Invalid password' => 'Password inválida',
'Invalid two factor authentication code' => '', 'Invalid two factor authentication code' => 'Autenticação de dois passos inválida',
'Invalid value' => '', 'Invalid value' => 'Valor inválido',
'It will be deleted forever' => '', 'It will be deleted forever' => 'Será eliminado definitivamente',
'Items' => '', 'Items' => '',
'Joined on {0, date}' => '', 'Joined on {0, date}' => 'Aderiu em {0, date}',
'Last login IP' => '', 'Last login IP' => 'IP do último login',
'Last login time' => '', 'Last login time' => 'Último login',
'Last password change' => '', 'Last password change' => 'Última alteração de password',
'Location' => '', 'Location' => 'Localização',
'Login' => '', 'Login' => 'Entrar',
'Logout' => '', 'Logout' => 'Sair',
'Manage users' => '', 'Manage users' => 'Gerir utilizadores',
'Name' => '', 'Name' => 'Nome',
'Networks' => '', 'Networks' => 'Redes',
'Never' => '', 'Never' => 'Nunca',
'New email' => '', 'New email' => 'Novo email',
'New password' => '', 'New password' => 'Nova password',
'New permission' => '', 'New permission' => 'Nova permissão',
'New role' => '', 'New role' => 'Novo cargo',
'New rule' => '', 'New rule' => 'Nova regra',
'New user' => '', 'New user' => 'Novo utilizador',
'Not blocked' => '', 'Not blocked' => 'Não bloqueado',
'Not found' => '', 'Not found' => 'Não encontrado',
'Once you delete your account, there is no going back' => '', 'Once you delete your account, there is no going back' => 'Após eliminar a sua conta, não será possível recuperá-la.',
'Once you have deleted your data, you will not longer be able to sign in with this account.' => '', 'Once you have deleted your data, you will not longer be able to sign in with this account.' => 'Após eliminar os seus dados, não poderá mais entrar com esta conta.',
'Password' => '', 'Password' => '',
'Password age' => '', 'Password age' => 'Idade da password',
'Password has been changed' => '', 'Password has been changed' => 'A password foi alterada',
'Permissions' => '', 'Permissions' => 'Permissões',
'Please be certain' => '', 'Please be certain' => 'Por favor confirme',
'Please click the link below to complete your password reset' => '', 'Please click the link below to complete your password reset' => 'Por favor siga o link seguinte para concluir o restauro da sua password',
'Please fix following errors:' => '', 'Please fix following errors:' => 'Por favor corrija os seguintes erros',
'Privacy' => '', 'Privacy' => 'Privacidade',
'Privacy settings' => '', 'Privacy settings' => 'Opções de privacidade',
'Profile' => '', 'Profile' => 'Perfil',
'Profile details' => '', 'Profile details' => 'Detalhes do perfil',
'Profile details have been updated' => '', 'Profile details have been updated' => 'Detalhes do perfil foram atualizados',
'Profile settings' => '', 'Profile settings' => 'Definições do perfil',
'Recover your password' => '', 'Recover your password' => 'Recuperar password',
'Recovery link is invalid or expired. Please try requesting a new one.' => '', 'Recovery link is invalid or expired. Please try requesting a new one.' => 'Link de recuperação é inválido ou expirou. Por favor faça novamente o pedido.',
'Recovery message sent' => '', 'Recovery message sent' => 'Mensagem de recuperação enviada',
'Registration IP' => '', 'Registration IP' => 'IP de registo',
'Registration on this website is disabled' => '', 'Registration on this website is disabled' => 'Registos no website estão desativados',
'Registration time' => '', 'Registration time' => 'Tempo de registo',
'Remember me next time' => '', 'Remember me next time' => 'Lembrar-me da próxima vez',
'Request new confirmation message' => '', 'Request new confirmation message' => 'Pedir nova mensagem de confirmação',
'Required "key" cannot be empty.' => '', 'Required "key" cannot be empty.' => '"key" necessária não pode estar vazia.',
'Required "secret" cannot be empty.' => '', 'Required "secret" cannot be empty.' => '"secret" necessário não pode estar vazio.',
'Reset your password' => '', 'Reset your password' => 'Restaurar a sua password',
'Role "{0}" not found. Creating it.' => '', 'Role "{0}" not found. Creating it.' => 'Cargo "{0}" não encontrado.',
'Roles' => '', 'Roles' => 'Cargos',
'Rule' => '', 'Rule' => 'Regra',
'Rule class must extend "yii\\rbac\\Rule".' => '', 'Rule class must extend "yii\\rbac\\Rule".' => 'Classe de regra deve estender "yii\\rbac\\Rule".',
'Rule name' => '', 'Rule name' => 'Nome de regra',
'Rule name {0} is already in use' => '', 'Rule name {0} is already in use' => 'Nome de regra {0} já está a ser utilizado',
'Rule {0} does not exists' => '', 'Rule {0} does not exists' => 'Regra {0} não existe',
'Rule {0} not found.' => '', 'Rule {0} not found.' => 'Regra {0} não encontrada.',
'Rules' => '', 'Rules' => 'Regradas',
'Save' => '', 'Save' => 'Guardar',
'Scan the QrCode with Google Authenticator App, then insert its temporary code on the box and submit.' => '', 'Scan the QrCode with Google Authenticator App, then insert its temporary code on the box and submit.' => 'Digitalize o código Qr com a app do Google Authenticator e depois insira o código temporário na caixa e submeta.',
'Send password recovery email' => '', 'Send password recovery email' => 'Enviar email de recuperação de password',
'Sign in' => '', 'Sign in' => 'Entrar',
'Sign up' => '', 'Sign up' => 'Registar',
'Something went wrong' => '', 'Something went wrong' => 'Algo correu mal',
'Switch identities is disabled.' => '', 'Switch identities is disabled.' => 'Trocar de identidades está desativado.',
'Thank you for signing up on {0}' => '', 'Thank you for signing up on {0}' => 'Obrigado por ser registar em {0}',
'Thank you, registration is now complete.' => '', 'Thank you, registration is now complete.' => 'Obrigado, o seu registo está concluído.',
'The "recaptcha" component must be configured.' => '', 'The "recaptcha" component must be configured.' => 'O componente de validação "recaptcha" tem de ser configurado.',
'The confirmation link is invalid or expired. Please try requesting a new one.' => '', 'The confirmation link is invalid or expired. Please try requesting a new one.' => 'O link de confirmação é inválido ou expirou. Por favor faça novamente o pedido.',
'The verification code is incorrect.' => '', 'The verification code is incorrect.' => 'O código de verificação está incorreto.',
'There is neither role nor permission with name "{0}"' => '', 'There is neither role nor permission with name "{0}"' => 'Não existe cargo nem permissão com o nome "{0}"',
'There was an error in saving user' => '', 'There was an error in saving user' => 'Ocorreu um erro ao gravar o utilizador',
'This account has already been connected to another user' => '', 'This account has already been connected to another user' => 'Esta conta já foi associada a outro utilizador',
'This email address has already been taken' => '', 'This email address has already been taken' => 'Este email já está a ser utilizado',
'This username has already been taken' => '', 'This username has already been taken' => 'Este nome de utilizador já está a ser utilizado',
'This will disable two factor authentication. Are you sure?' => '', 'This will disable two factor authentication. Are you sure?' => 'Vai desativar a autenticação de dois passos. Tem a certeza?',
'This will remove your personal data from this site. You will no longer be able to sign in.' => '', 'This will remove your personal data from this site. You will no longer be able to sign in.' => 'Vai remover os seus dados pessoais deste site. Não será mais possivel entrar na sua conta.',
'Time zone' => '', 'Time zone' => 'Fuso horário',
'Time zone is not valid' => '', 'Time zone is not valid' => 'Fuso horário inválido',
'Two Factor Authentication (2FA)' => '', 'Two Factor Authentication (2FA)' => 'Autenticação de Dois Passos (2FA)',
'Two factor authentication code' => '', 'Two factor authentication code' => 'Código da autenticação de dois passos',
'Two factor authentication has been disabled.' => '', 'Two factor authentication has been disabled.' => 'Autenticação de dois passos foi desativada',
'Two factor authentication protects you in case of stolen credentials' => '', 'Two factor authentication successfully enabled.' => 'Autenticação de dois passos ativada com sucesso',
'Two factor authentication successfully enabled.' => '', 'Unable to confirm user. Please, try again.' => 'Não foi possível confirmar utilizador. Por favor tente novamente.',
'Unable to confirm user. Please, try again.' => '', 'Unable to create an account.' => 'Não foi possível criar uma conta.',
'Unable to create an account.' => '', 'Unable to create authorization item.' => 'Não foi possível criar item de autorização.',
'Unable to create authorization item.' => '', 'Unable to create new authorization rule.' => 'Não foi possível criar nova regra de autorização.',
'Unable to create new authorization rule.' => '', 'Unable to delete user. Please, try again later.' => 'Não foi possível eliminar utilizador. Por favor tente novamente mais tarde.',
'Unable to delete user. Please, try again later.' => '', 'Unable to disable Two factor authentication.' => 'Não foi possível desativar a autenticação de dois passos.',
'Unable to disable Two factor authentication.' => '', 'Unable to remove authorization item.' => 'Não foi possível remover o item de autorização.',
'Unable to remove authorization item.' => '', 'Unable to send confirmation link' => 'Não foi possível enviar link de confirmação',
'Unable to send confirmation link' => '', 'Unable to send recovery message to the user' => 'Não foi possível enviar mensagem de recuperação ao utilizador',
'Unable to send recovery message to the user' => '', 'Unable to update authorization item.' => 'Não foi possível atualizar item de autorização',
'Unable to update authorization item.' => '', 'Unable to update authorization rule.' => 'Não foi possível atualizar regra de autorização',
'Unable to update authorization rule.' => '', 'Unable to update block status.' => 'Não foi possível atualizar estado de bloqueio.',
'Unable to update block status.' => '', 'Unblock' => 'Desbloquar',
'Unblock' => '', 'Unconfirmed' => 'Por confirmar',
'Unconfirmed' => '', 'Update' => 'Atualizar',
'Update' => '', 'Update assignments' => 'Atualizar tarefas',
'Update assignments' => '', 'Update permission' => 'Atualizar permissão',
'Update permission' => '', 'Update role' => 'Atualizar cargo',
'Update role' => '', 'Update rule' => 'Atualizar regra',
'Update rule' => '', 'Update user account' => 'Atualizar conta de utilziador',
'Update user account' => '', 'Updated at' => 'Atualizado em',
'Updated at' => '', 'User account could not be created.' => 'Não foi possível criar a conta de utilizador.',
'User account could not be created.' => '', 'User block status has been updated.' => 'Estado de bloqueio do utilizador foi atualizado.',
'User block status has been updated.' => '', 'User could not be registered.' => 'Não foi possível registar o utilizador.',
'User could not be registered.' => '', 'User has been confirmed' => 'Utilizador confirmado',
'User has been confirmed' => '', 'User has been created' => 'Utilizador criado',
'User has been created' => '', 'User has been deleted' => 'Utilizador eliminado',
'User has been deleted' => '', 'User is not found' => 'Utilizador não encontrado',
'User is not found' => '', 'User not found.' => 'Utilizador não encontrado',
'User not found.' => '', 'User will be required to change password at next login' => 'O utilizador necessitará de alterar a password no próximo login',
'User will be required to change password at next login' => '', 'Username' => 'Utilizador',
'Username' => '', 'Users' => 'Utilizadores',
'Users' => '',
'VKontakte' => '', 'VKontakte' => '',
'Verification failed. Please, enter new code.' => '', 'Verification failed. Please, enter new code.' => 'Verificação falhou. Por favor insira novo código.',
'We couldn\'t re-send the mail to confirm your address. Please, verify is the correct email or if it has been confirmed already.' => '', 'We couldn\'t re-send the mail to confirm your address. Please, verify is the correct email or if it has been confirmed already.' => 'Não foi possível reenviar o email de confirmação para o seu endereço. Por favor, verifique se é o email correto ou se já foi confirmado.',
'We have generated a password for you' => '', 'We have generated a password for you' => 'Gerámos uma nova password para si',
'We have received a request to change the email address for your account on {0}' => '', 'We have received a request to change the email address for your account on {0}' => 'Recebemos um pedido para alterar o endereço de email para a sua conta em {0}',
'We have received a request to reset the password for your account on {0}' => '', 'We have received a request to reset the password for your account on {0}' => 'Recebemos um pedido para restaura a password da sua conta em {0}',
'We have sent confirmation links to both old and new email addresses. You must click both links to complete your request.' => '', 'We have sent confirmation links to both old and new email addresses. You must click both links to complete your request.' => 'Enviámos links de confirmação para ambas as contas de email, antiga e nova. Deve seguir as instruções em ambos os emails para concluir o pedido.',
'Website' => '', 'Website' => '',
'Welcome to {0}' => '', 'Welcome to {0}' => 'Bem-vindo a {0}',
'Yandex' => '', 'Yandex' => '',
'You are about to delete all your personal data from this site.' => '', 'You are about to delete all your personal data from this site.' => 'Está prestes a apagar todos os seus dados pessoais deste site.',
'You can assign multiple roles or permissions to user by using the form below' => '', 'You can assign multiple roles or permissions to user by using the form below' => 'Pode atribuir vários cargos ou permissões ao utilizador através do formulário abaixo',
'You can connect multiple accounts to be able to log in using them' => '', 'You can connect multiple accounts to be able to log in using them' => 'Pode ligar múltiplas contas de forma a poder entrar através delas',
'You cannot remove your own account' => '', 'You cannot remove your own account' => 'Não é possível remover a sua própria conta',
'You need to confirm your email address' => '', 'You need to confirm your email address' => 'Tem que confirmar o seu endereço de email',
'Your account details have been updated' => '', 'Your account details have been updated' => 'Os detalhes da sua conta foram atualizados',
'Your account has been blocked' => '', 'Your account has been blocked' => 'A sua conta foi bloqueada',
'Your account has been blocked.' => '', 'Your account has been blocked.' => 'A sua conta foi bloqueada.',
'Your account has been completely deleted' => '', 'Your account has been completely deleted' => 'A sua conta foi eliminada em definitivo',
'Your account has been connected' => '', 'Your account has been connected' => 'A sua conta foi ligada',
'Your account has been created' => '', 'Your account has been created' => 'A sua conta foi criada.',
'Your account has been created and a message with further instructions has been sent to your email' => '', 'Your account has been created and a message with further instructions has been sent to your email' => 'A sua conta foi criada e foi enviada uma mensagem com mais instruções para o seu email.',
'Your account on {0} has been created' => '', 'Your account on {0} has been created' => 'A sua conta em {0} foi criada',
'Your confirmation token is invalid or expired' => '', 'Your confirmation token is invalid or expired' => 'O seu token de confirmação é inválido ou expirou',
'Your consent is required to register' => '', 'Your consent is required to register' => 'O seu consentimento é necessário para o registo',
'Your email address has been changed' => '', 'Your email address has been changed' => 'O seu endereço de email foi alterado',
'Your password has expired, you must change it now' => '', 'Your password has expired, you must change it now' => 'A sua password expirou, deve alterá-la agora',
'Your personal information has been removed' => '', 'Your personal information has been removed' => 'Os seus dados pessoais foram removidos',
'Your profile has been updated' => '', 'Your profile has been updated' => 'O seu perfil foi atualziado',
'privacy policy' => '', 'privacy policy' => 'politica de privacidade',
'{0, date, MMMM dd, YYYY HH:mm}' => '', '{0, date, MMMM dd, YYYY HH:mm}' => '',
'{0} cannot be blank.' => '', '{0} cannot be blank.' => '{0} não pode ficar vazio.',
'A message has been sent to your email address. ' => '@@@@', 'A message has been sent to your email address. ' => '@@@@',
'Awesome, almost there. ' => '@@@@', 'Awesome, almost there. ' => '@@@@',
'Class "{0}" does not exist' => '@@@@', 'Class "{0}" does not exist' => '@@@@',
@ -285,7 +285,7 @@ return [
'Rule class must extend "yii\\rbac\\Rule"' => '@@@@', 'Rule class must extend "yii\\rbac\\Rule"' => '@@@@',
'This will disable two-factor auth. Are you sure?' => '@@@@', 'This will disable two-factor auth. Are you sure?' => '@@@@',
'Two Factor Authentication' => '@@@@', 'Two Factor Authentication' => '@@@@',
'Two factor authentication protects you against stolen credentials' => '@@@@', 'Two factor authentication protects you against stolen credentials' => '@@Autenticação de dois passos protege-o do roubo de credenciais de acesso@@',
'Two factor successfully enabled.' => '@@@@', 'Two factor successfully enabled.' => '@@@@',
'Two-Factor Authentication' => '@@@@', 'Two-Factor Authentication' => '@@@@',
'Two-factor auth protects you against stolen credentials' => '@@@@', 'Two-factor auth protects you against stolen credentials' => '@@@@',

View File

@ -53,7 +53,7 @@ $this->params['breadcrumbs'][] = $this->title;
], ],
], ],
[ [
'class' => ActionColumn::className(), 'class' => ActionColumn::class,
'template' => '{update} {delete}', 'template' => '{update} {delete}',
'urlCreator' => function ($action, $model) { 'urlCreator' => function ($action, $model) {
return Url::to(['/user/permission/' . $action, 'name' => $model['name']]); return Url::to(['/user/permission/' . $action, 'name' => $model['name']]);

View File

@ -54,7 +54,7 @@ $this->params['breadcrumbs'][] = $this->title;
], ],
], ],
[ [
'class' => ActionColumn::className(), 'class' => ActionColumn::class,
'template' => '{update} {delete}', 'template' => '{update} {delete}',
'urlCreator' => function ($action, $model) { 'urlCreator' => function ($action, $model) {
return Url::to(['/user/role/' . $action, 'name' => $model['name']]); return Url::to(['/user/role/' . $action, 'name' => $model['name']]);

View File

@ -60,7 +60,7 @@ $this->params['breadcrumbs'][] = $this->title;
], ],
], ],
[ [
'class' => ActionColumn::className(), 'class' => ActionColumn::class,
'template' => '{update} {delete}', 'template' => '{update} {delete}',
'urlCreator' => function ($action, $model) { 'urlCreator' => function ($action, $model) {
return Url::to(['/user/rule/' . $action, 'name' => $model['name']]); return Url::to(['/user/rule/' . $action, 'name' => $model['name']]);

View File

@ -52,7 +52,7 @@ $this->title = Yii::t('usuario', 'Privacy settings');
'data-confirm' => Yii::t('usuario', 'Are you sure? There is no going back'), 'data-confirm' => Yii::t('usuario', 'Are you sure? There is no going back'),
] ]
) ?> ) ?>
<? else: <?php else:
echo Html::a(Yii::t('usuario', 'Delete'), echo Html::a(Yii::t('usuario', 'Delete'),
['/user/settings/gdprdelete'], ['/user/settings/gdprdelete'],
[ [