Merge branch 'v2.0'
This commit is contained in:
commit
4fc458b174
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -451,7 +451,7 @@ site/templates/common/mail/tr.json
|
|||
site/templates/common/mail/vi.json
|
||||
site/templates/common/mail/zh_CN.json
|
||||
site/templates/common/mail_2fcode.tpl
|
||||
site/templates/common/mail_certificatReset.tpl
|
||||
site/templates/common/mail_certificateReset.tpl
|
||||
site/templates/common/mail_confirm.tpl
|
||||
site/templates/common/mail_footer.tpl
|
||||
site/templates/common/mail_header.tpl
|
||||
|
|
|
@ -13,15 +13,9 @@ extends 'Lemonldap::NG::Portal::Lib::LDAP';
|
|||
|
||||
our $VERSION = '2.1.0';
|
||||
|
||||
# RUNNING METHODS
|
||||
|
||||
# PRIVATE METHODS
|
||||
# PRIVATE METHOD
|
||||
sub modifCertificate {
|
||||
|
||||
my $self = shift;
|
||||
my $newcertif = shift;
|
||||
my $usercertif = shift;
|
||||
my $req = shift;
|
||||
my ( $self, $newcertif, $usercertif, $req ) = @_;
|
||||
my $ceaAttribute = $self->conf->{certificateResetByMailCeaAttribute}
|
||||
|| "description";
|
||||
my $certificateAttribute =
|
||||
|
@ -29,8 +23,6 @@ sub modifCertificate {
|
|||
|| "userCertificate;binary";
|
||||
|
||||
# Set the dn unless done before
|
||||
#
|
||||
#
|
||||
my $dn;
|
||||
if ( $req->userData->{_dn} ) {
|
||||
$dn = $req->userData->{_dn};
|
||||
|
@ -41,7 +33,7 @@ sub modifCertificate {
|
|||
$self->logger->debug("Get DN from session data: $dn");
|
||||
}
|
||||
unless ($dn) {
|
||||
$self->logger->error('"dn" is not set, aborting password modification');
|
||||
$self->logger->error('"dn" is not set, aborting certificate reset');
|
||||
return PE_ERROR;
|
||||
}
|
||||
|
||||
|
|
|
@ -261,8 +261,7 @@ sub _certificateReset {
|
|||
my $mailSession = $self->getCertificateSession( $req->{user} );
|
||||
unless ( $mailSession or $mailToken ) {
|
||||
|
||||
# Create a new session
|
||||
|
||||
## Create a new session
|
||||
my $infos = {};
|
||||
|
||||
# Set _utime for session autoremove
|
||||
|
@ -423,7 +422,7 @@ sub modifyCertificate {
|
|||
my $x509;
|
||||
my $notAfter;
|
||||
|
||||
$self->logger->debug('Change your Certificate form response');
|
||||
$self->logger->debug('Change your certificate form response');
|
||||
|
||||
if ( my $token = $req->param('token') ) {
|
||||
$req->sessionInfo( $self->ott->getToken($token) );
|
||||
|
@ -451,10 +450,9 @@ sub modifyCertificate {
|
|||
|
||||
#Updload certificate
|
||||
my $upload = $req->uploads->{certif};
|
||||
unless ( $upload->size > 0 ) { return PE_RESETCERTIFICATE_FORMEMPTY; }
|
||||
|
||||
# Get Certificate
|
||||
return PE_RESETCERTIFICATE_FORMEMPTY unless ( $upload->size > 0 );
|
||||
|
||||
# Get certificate
|
||||
my $file = $upload->path;
|
||||
$self->userLogger->debug( "Temporaly file " . $file );
|
||||
|
||||
|
@ -472,11 +470,9 @@ sub modifyCertificate {
|
|||
unless ($x509) {
|
||||
$self->userLogger->debug( "Unable to decode certificate for user "
|
||||
. Net::SSLeay::ERR_error_string( Net::SSLeay::ERR_get_error() ) );
|
||||
|
||||
#return PE_CERTIFICATE_INVALID;
|
||||
return PE_RESETCERTIFICATE_INVALID;
|
||||
}
|
||||
$self->userLogger->debug("Certificate decoded successfully");
|
||||
$self->userLogger->debug("Certificate successfully decoded");
|
||||
$notAfter = Net::SSLeay::P_ASN1_TIME_get_isotime(
|
||||
Net::SSLeay::X509_get_notAfter($x509) );
|
||||
|
||||
|
@ -487,25 +483,22 @@ sub modifyCertificate {
|
|||
Net::SSLeay::X509_get_serialNumber($x509) );
|
||||
|
||||
$self->userLogger->debug(
|
||||
"Certificate will expire after $notAfter, Issuer $x509issuer and serialNumber $x509serial"
|
||||
"Certificate will expire after $notAfter, Issuer $x509issuer and serialNumber $x509serial"
|
||||
);
|
||||
|
||||
# Check Certificate Validity before store
|
||||
# Check certificate validity before store
|
||||
if (
|
||||
$self->checkCertificateValidity( $notAfter,
|
||||
$self->conf->{certificateResetByMailValidityDelay} ) == 0
|
||||
)
|
||||
{
|
||||
$self->userLogger->debug(
|
||||
"Your cettificate is no longer valid in $self->conf->{certificateValidityDelay}"
|
||||
"Your certificate is no longer valid in $self->conf->{certificateValidityDelay}"
|
||||
);
|
||||
return PE_RESETCERTIFICATE_INVALID;
|
||||
|
||||
#return PE_PASSWORD_MISMATCH;
|
||||
}
|
||||
|
||||
# Build serial number hex: example f3:08:52:63:28:29:fa:e2
|
||||
|
||||
my @numberstring = split //, lc($x509serial);
|
||||
my $serial = "";
|
||||
for ( my $i = 0 ; $i <= $#numberstring ; $i += 2 ) {
|
||||
|
@ -514,7 +507,6 @@ sub modifyCertificate {
|
|||
}
|
||||
|
||||
# format issuer in the good format example "CN=CA,OU=CISIRH,O=MINEFI,L=Paris,ST=France,C=FR"
|
||||
|
||||
my @issuertab = split /\//, $x509issuer;
|
||||
shift(@issuertab);
|
||||
my $issuer = join( ",", reverse(@issuertab) );
|
||||
|
@ -528,7 +520,7 @@ sub modifyCertificate {
|
|||
# Get attribut userCertificate;binary value
|
||||
my $cert = $self->certificateHash($file);
|
||||
|
||||
# modif the ldap certificate attribute
|
||||
# Modify ldap certificate attribute
|
||||
$req->user( $req->{sessionInfo}->{_user} );
|
||||
my $result =
|
||||
$self->registerModule->modifCertificate( $certificatExactAssertion,
|
||||
|
@ -539,7 +531,7 @@ sub modifyCertificate {
|
|||
#
|
||||
return $result unless ( $result == PE_OK );
|
||||
|
||||
# Send mail to notify the certificate reset sucessfully
|
||||
# Send mail to notify the certificate has been successfully reset
|
||||
$req->data->{mailAddress} ||=
|
||||
$self->p->getFirstValue(
|
||||
$req->{sessionInfo}->{ $self->conf->{mailSessionKey} } );
|
||||
|
@ -562,8 +554,9 @@ sub modifyCertificate {
|
|||
else {
|
||||
|
||||
# Use HTML template
|
||||
$body = $self->loadTemplate(
|
||||
'mail_certificatReset',
|
||||
$body = $self->loadMailTemplate(
|
||||
$req,
|
||||
'mail_certificateReset',
|
||||
filter => $tr,
|
||||
params => \%tplPrms
|
||||
);
|
||||
|
@ -627,7 +620,7 @@ sub display {
|
|||
$tplPrm{MAIL_TOKEN} = $req->data->{mailToken};
|
||||
}
|
||||
|
||||
# Display captcha if it's enabled
|
||||
# Display captcha if enabled
|
||||
if ( $req->captcha ) {
|
||||
$tplPrm{CAPTCHA_SRC} = $req->captcha;
|
||||
$tplPrm{CAPTCHA_SIZE} = $self->conf->{captcha_size};
|
||||
|
@ -669,7 +662,7 @@ sub display {
|
|||
$tplPrm{DISPLAY_MAILSENT} = 1;
|
||||
}
|
||||
|
||||
# Display Certificate Reset form
|
||||
# Display certificate reset form
|
||||
elsif ( $req->data->{mailToken}
|
||||
and $req->error != PE_MAILERROR
|
||||
and $req->error != PE_BADMAILTOKEN
|
||||
|
@ -679,7 +672,7 @@ sub display {
|
|||
$tplPrm{DISPLAY_CERTIF_FORM} = 1;
|
||||
}
|
||||
|
||||
# Display Certificate Reset form again if certificate invalid
|
||||
# Display certificate reset form again if certificate invalid
|
||||
elsif ($req->error == PE_RESETCERTIFICATE_FORMEMPTY
|
||||
|| $req->error == PE_RESETCERTIFICATE_INVALID )
|
||||
{
|
||||
|
@ -719,7 +712,6 @@ sub getCertificateSession {
|
|||
}
|
||||
|
||||
# Use Certificate Update parameter to send mail
|
||||
|
||||
sub sendmail {
|
||||
|
||||
my ( $self, $mail, $subject, $body, $html ) = @_;
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -1,2 +1 @@
|
|||
(function(){var e,r,t,o,n;t=function(e,r){return $("#msg").html(window.translate(e)),$("#color").removeClass("message-positive message-warning message-danger alert-success alert-warning alert-danger"),$("#color").addClass("message-"+r),"positive"===r&&(r="success"),$("#color").addClass("alert-"+r)},e=function(e,r,o){var n;if(console.log("Error",o),(n=JSON.parse(e.responseText))&&n.error)return n=n.error.replace(/.* /,""),console.log("Returned error",n),t(n,"warning")},o="",r=function(r){return t("yourTotpKey","warning"),$.ajax({type:"POST",url:portal+"/2fregisters/totp/getkey",dataType:"json",data:{newkey:r},error:e,success:function(e){var r;return e.error?(e.error.match(/totpExistingKey/)&&$("#divToHide").hide(),t(e.error,"warning")):e.portal&&e.user&&e.secret?($("#divToHide").show(),r="otpauth://totp/"+escape(e.portal)+":"+escape(e.user)+"?secret="+e.secret+"&issuer="+escape(e.portal),6!==e.digits&&(r+="&digits="+e.digits),30!==e.interval&&(r+="&period="+e.interval),new QRious({element:document.getElementById("qr"),value:r,size:150}),$("#serialized").text(r),e.newkey?t("yourNewTotpKey","warning"):t("yourTotpKey","success"),o=e.token):t("PE24","danger")}})},n=function(){var r;return r=$("#code").val(),r?$.ajax({type:"POST",url:portal+"/2fregisters/totp/verify",dataType:"json",data:{token:o,code:r,TOTPName:$("#TOTPName").val()},error:e,success:function(e){return e.error?e.error.match(/bad(Code|Name)/)?t(e.error,"warning"):t(e.error,"danger"):t("yourKeyIsRegistered","success")}}):t("fillTheForm","warning")},$(document).ready(function(){return r(0),$("#changekey").on("click",function(){return r(1)}),$("#verify").on("click",function(){return n()})})}).call(this);
|
||||
//# sourceMappingURL=lemonldap-ng-portal/site/htdocs/static/common/js/totpregistration.min.js.map
|
||||
(function(){var r,e,n,t,o;n=function(e,r){return $("#msg").html(window.translate(e)),$("#color").removeClass("message-positive message-warning message-danger alert-success alert-warning alert-danger"),$("#color").addClass("message-"+r),"positive"===r&&(r="success"),$("#color").addClass("alert-"+r)},r=function(e,r,t){var o;if(console.log("Error",t),(o=JSON.parse(e.responseText))&&o.error)return o=o.error.replace(/.* /,""),console.log("Returned error",o),n(o,"warning")},t="",e=function(e){return n("yourTotpKey","warning"),$.ajax({type:"POST",url:portal+"/2fregisters/totp/getkey",dataType:"json",data:{newkey:e},error:r,success:function(e){var r;return e.error?(e.error.match(/totpExistingKey/)&&$("#divToHide").hide(),n(e.error,"warning")):e.portal&&e.user&&e.secret?($("#divToHide").show(),r="otpauth://totp/"+escape(e.portal)+":"+escape(e.user)+"?secret="+e.secret+"&issuer="+escape(e.portal),6!==e.digits&&(r+="&digits="+e.digits),30!==e.interval&&(r+="&period="+e.interval),new QRious({element:document.getElementById("qr"),value:r,size:150}),$("#serialized").text(r),e.newkey?n("yourNewTotpKey","warning"):n("yourTotpKey","success"),t=e.token):n("PE24","danger")}})},o=function(){var e;return(e=$("#code").val())?$.ajax({type:"POST",url:portal+"/2fregisters/totp/verify",dataType:"json",data:{token:t,code:e,TOTPName:$("#TOTPName").val()},error:r,success:function(e){return e.error?e.error.match(/bad(Code|Name)/)?n(e.error,"warning"):n(e.error,"danger"):n("yourKeyIsRegistered","success")}}):n("fillTheForm","warning")},$(document).ready(function(){return e(0),$("#changekey").on("click",function(){return e(1)}),$("#verify").on("click",function(){return o()})})}).call(this);
|
|
@ -1 +1 @@
|
|||
{"version":3,"sources":["lemonldap-ng-portal/site/htdocs/static/common/js/totpregistration.js"],"names":["displayError","getKey","setMsg","token","verify","msg","level","$","html","window","translate","removeClass","addClass","j","status","err","res","console","log","JSON","parse","responseText","error","replace","reset","ajax","type","url","portal","dataType","data","newkey","success","s","match","hide","user","secret","show","escape","digits","interval","QRious","element","document","getElementById","value","size","text","val","code","TOTPName","ready","on","call","this"],"mappings":"CAMA,WACE,GAAIA,GAAcC,EAAQC,EAAQC,EAAOC,CAEzCF,GAAS,SAASG,EAAKC,GAOrB,MANAC,GAAE,QAAQC,KAAKC,OAAOC,UAAUL,IAChCE,EAAE,UAAUI,YAAY,4FACxBJ,EAAE,UAAUK,SAAS,WAAaN,GACpB,aAAVA,IACFA,EAAQ,WAEHC,EAAE,UAAUK,SAAS,SAAWN,IAGzCN,EAAe,SAASa,EAAGC,EAAQC,GACjC,GAAIC,EAGJ,IAFAC,QAAQC,IAAI,QAASH,IACrBC,EAAMG,KAAKC,MAAMP,EAAEQ,gBACRL,EAAIM,MAGb,MAFAN,GAAMA,EAAIM,MAAMC,QAAQ,MAAO,IAC/BN,QAAQC,IAAI,iBAAkBF,GACvBd,EAAOc,EAAK,YAIvBb,EAAQ,GAERF,EAAS,SAASuB,GAEhB,MADAtB,GAAO,cAAe,WACfK,EAAEkB,MACPC,KAAM,OACNC,IAAKC,OAAS,2BACdC,SAAU,OACVC,MACEC,OAAQP,GAEVF,MAAOtB,EACPgC,QAAS,SAASF,GAChB,GAAQG,EACR,OAAIH,GAAKR,OACHQ,EAAKR,MAAMY,MAAM,oBACnB3B,EAAE,cAAc4B,OAEXjC,EAAO4B,EAAKR,MAAO,YAEtBQ,EAAKF,QAAUE,EAAKM,MAAQN,EAAKO,QAGvC9B,EAAE,cAAc+B,OAChBL,EAAI,kBAAqBM,OAAOT,EAAKF,QAAW,IAAOW,OAAOT,EAAKM,MAAS,WAAaN,EAAKO,OAAS,WAAcE,OAAOT,EAAKF,QAC7G,IAAhBE,EAAKU,SACPP,GAAK,WAAaH,EAAKU,QAEH,KAAlBV,EAAKW,WACPR,GAAK,WAAaH,EAAKW,UAEpB,GAAIC,SACPC,QAASC,SAASC,eAAe,MACjCC,MAAOb,EACPc,KAAM,MAERxC,EAAE,eAAeyC,KAAKf,GAClBH,EAAKC,OACP7B,EAAO,iBAAkB,WAEzBA,EAAO,cAAe,WAEjBC,EAAQ2B,EAAK3B,OArBXD,EAAO,OAAQ,cA0B9BE,EAAS,WACP,GAAI6C,EAEJ,OADAA,GAAM1C,EAAE,SAAS0C,MACZA,EAGI1C,EAAEkB,MACPC,KAAM,OACNC,IAAKC,OAAS,2BACdC,SAAU,OACVC,MACE3B,MAAOA,EACP+C,KAAMD,EACNE,SAAU5C,EAAE,aAAa0C,OAE3B3B,MAAOtB,EACPgC,QAAS,SAASF,GAChB,MAAIA,GAAKR,MACHQ,EAAKR,MAAMY,MAAM,kBACZhC,EAAO4B,EAAKR,MAAO,WAEnBpB,EAAO4B,EAAKR,MAAO,UAGrBpB,EAAO,sBAAuB,cApBpCA,EAAO,cAAe,YA2BjCK,EAAEqC,UAAUQ,MAAM,WAKhB,MAJAnD,GAAO,GACPM,EAAE,cAAc8C,GAAG,QAAS,WAC1B,MAAOpD,GAAO,KAETM,EAAE,WAAW8C,GAAG,QAAS,WAC9B,MAAOjD,WAIVkD,KAAKC","file":"lemonldap-ng-portal/site/htdocs/static/common/js/totpregistration.min.js"}
|
||||
{"version":3,"sources":["lemonldap-ng-portal/site/htdocs/static/common/js/totpregistration.js"],"names":["displayError","getKey","setMsg","token","verify","msg","level","$","html","window","translate","removeClass","addClass","j","status","err","res","console","log","JSON","parse","responseText","error","replace","reset","ajax","type","url","portal","dataType","data","newkey","success","s","match","hide","user","secret","show","escape","digits","interval","QRious","element","document","getElementById","value","size","text","val","code","TOTPName","ready","on","call","this"],"mappings":"CAMA,WACE,IAAIA,EAAcC,EAAQC,EAAQC,EAAOC,EAEzCF,EAAS,SAASG,EAAKC,GAOrB,OANAC,EAAE,QAAQC,KAAKC,OAAOC,UAAUL,IAChCE,EAAE,UAAUI,YAAY,4FACxBJ,EAAE,UAAUK,SAAS,WAAaN,GACpB,aAAVA,IACFA,EAAQ,WAEHC,EAAE,UAAUK,SAAS,SAAWN,IAGzCN,EAAe,SAASa,EAAGC,EAAQC,GACjC,IAAIC,EAGJ,GAFAC,QAAQC,IAAI,QAASH,IACrBC,EAAMG,KAAKC,MAAMP,EAAEQ,gBACRL,EAAIM,MAGb,OAFAN,EAAMA,EAAIM,MAAMC,QAAQ,MAAO,IAC/BN,QAAQC,IAAI,iBAAkBF,GACvBd,EAAOc,EAAK,YAIvBb,EAAQ,GAERF,EAAS,SAASuB,GAEhB,OADAtB,EAAO,cAAe,WACfK,EAAEkB,KAAK,CACZC,KAAM,OACNC,IAAKC,OAAS,2BACdC,SAAU,OACVC,KAAM,CACJC,OAAQP,GAEVF,MAAOtB,EACPgC,QAAS,SAASF,GAChB,IAAQG,EACR,OAAIH,EAAKR,OACHQ,EAAKR,MAAMY,MAAM,oBACnB3B,EAAE,cAAc4B,OAEXjC,EAAO4B,EAAKR,MAAO,YAEtBQ,EAAKF,QAAUE,EAAKM,MAAQN,EAAKO,QAGvC9B,EAAE,cAAc+B,OAChBL,EAAI,kBAAqBM,OAAOT,EAAKF,QAAW,IAAOW,OAAOT,EAAKM,MAAS,WAAaN,EAAKO,OAAS,WAAcE,OAAOT,EAAKF,QAC7G,IAAhBE,EAAKU,SACPP,GAAK,WAAaH,EAAKU,QAEH,KAAlBV,EAAKW,WACPR,GAAK,WAAaH,EAAKW,UAEpB,IAAIC,OAAO,CACdC,QAASC,SAASC,eAAe,MACjCC,MAAOb,EACPc,KAAM,MAERxC,EAAE,eAAeyC,KAAKf,GAClBH,EAAKC,OACP7B,EAAO,iBAAkB,WAEzBA,EAAO,cAAe,WAEjBC,EAAQ2B,EAAK3B,OArBXD,EAAO,OAAQ,cA0B9BE,EAAS,WACP,IAAI6C,EAEJ,OADAA,EAAM1C,EAAE,SAAS0C,OAIR1C,EAAEkB,KAAK,CACZC,KAAM,OACNC,IAAKC,OAAS,2BACdC,SAAU,OACVC,KAAM,CACJ3B,MAAOA,EACP+C,KAAMD,EACNE,SAAU5C,EAAE,aAAa0C,OAE3B3B,MAAOtB,EACPgC,QAAS,SAASF,GAChB,OAAIA,EAAKR,MACHQ,EAAKR,MAAMY,MAAM,kBACZhC,EAAO4B,EAAKR,MAAO,WAEnBpB,EAAO4B,EAAKR,MAAO,UAGrBpB,EAAO,sBAAuB,cApBpCA,EAAO,cAAe,YA2BjCK,EAAEqC,UAAUQ,MAAM,WAKhB,OAJAnD,EAAO,GACPM,EAAE,cAAc8C,GAAG,QAAS,WAC1B,OAAOpD,EAAO,KAETM,EAAE,WAAW8C,GAAG,QAAS,WAC9B,OAAOjD,UAIVkD,KAAKC"}
|
|
@ -115,6 +115,7 @@
|
|||
"badName":"Bad name",
|
||||
"cancel":"إلغاء",
|
||||
"captcha":"كلمة التحقق أو الكابتشا ",
|
||||
"certificateReset":"Reset my certificate",
|
||||
"changeKey":"Generate new key",
|
||||
"changePwd":"غير كلمة المرور الخاصة بك",
|
||||
"checkLastLogins":"تحقق من آخر تسجيلات دخول الخاصة بي",
|
||||
|
@ -163,6 +164,7 @@
|
|||
"gplSoft":"البرمجيات الحرة التي تغطيها رخصة GPL",
|
||||
"groups_sso":"SSO GROUPS",
|
||||
"headers":"HEADERS",
|
||||
"hello":"Hello",
|
||||
"id":"Id",
|
||||
"imSure":"انا متاكد",
|
||||
"info":"معلومات",
|
||||
|
@ -172,6 +174,7 @@
|
|||
"lastLogins":"آخر تسجيلات دخول",
|
||||
"lastName":"اسم العائلة",
|
||||
"linkValidUntil":"تحتوي هذه الرسالة على رابط لإعادة تعيين كلمة المرور، وهذا الرابط صالح حتى",
|
||||
"linkValidUntilCertif":"This message contains a link to reset your certificate, this link is valid until ",
|
||||
"loginHistory":"سجل تسجيل الدخول",
|
||||
"login":"تسجيل الدخول",
|
||||
"logout":"تسجيل الخروج",
|
||||
|
@ -233,6 +236,7 @@
|
|||
"resendConfirmMail":"هل تريد إعادة إرسال رسالة التأكيد؟",
|
||||
"resentConfirm":"هل تريد إعادة إرسال رسالة التأكيد؟",
|
||||
"resetFavApps":"Reset my favorite Apps.",
|
||||
"resetCertificateOK":"Your certificate has been successfully reset!",
|
||||
"resetPwd":"إعادة تعيين كلمة المرور الخاصة بي",
|
||||
"rest2f":"Verification code",
|
||||
"rightsReloadNeedsLogout":" إعادة تحميل الحقوق تحتاج إلى تسجيل الخروج وتسجيل الدخول مرة أخرى",
|
||||
|
@ -293,8 +297,5 @@
|
|||
"yourPhone":"Know your phone number",
|
||||
"yourProfile":"Know your profile",
|
||||
"yourTotpKey":"Your TOTP key",
|
||||
"yubikey2f":"Yubikey",
|
||||
"resetCertificateOK":"Your certificate was reset sucessfully",
|
||||
"linkValidUntilCertif":"This message contains a link to reset your certificate, this link is valid until ",
|
||||
"certificateReset":"Reset my certificate"
|
||||
"yubikey2f":"Yubikey"
|
||||
}
|
||||
|
|
|
@ -114,6 +114,7 @@
|
|||
"badName":"Ungültiger Name",
|
||||
"cancel":"Abbrechen",
|
||||
"captcha":"Captcha",
|
||||
"certificateReset":"Reset my certificate",
|
||||
"changeKey":"Neuen Schlüssel erzeugen",
|
||||
"changePwd":"Ändere dein Passwort",
|
||||
"checkLastLogins":"Überprüfe meine letzten Logins",
|
||||
|
@ -162,6 +163,7 @@
|
|||
"gplSoft":"Freie Software, die von der GPL-Lizenz abgedeckt wird",
|
||||
"groups_sso":"SSO GROUPS",
|
||||
"headers":"HEADERS",
|
||||
"hello":"Hello",
|
||||
"id":"ID",
|
||||
"imSure":"Ich bin sicher",
|
||||
"info":"Information",
|
||||
|
@ -171,6 +173,7 @@
|
|||
"lastLogins":"Letzte Anmeldungen",
|
||||
"lastName":"Nachname",
|
||||
"linkValidUntil":"Diese Nachricht enthält einen Link zum Zurücksetzen deines Passworts. Dieser Link ist gültig bis",
|
||||
"linkValidUntilCertif":"This message contains a link to reset your certificate, this link is valid until ",
|
||||
"loginHistory":"Anmeldeverlauf",
|
||||
"login":"Anmelden",
|
||||
"logout":"Abmelden",
|
||||
|
@ -232,6 +235,7 @@
|
|||
"resendConfirmMail":"Bestätigungsmail erneuert senden ?",
|
||||
"resentConfirm":"Möchtest du, dass die Bestätigungsmail erneut gesendet wird ?",
|
||||
"resetFavApps":"Reset my favorite Apps.",
|
||||
"resetCertificateOK":"Your certificate has been successfully reset!",
|
||||
"resetPwd":"Mein Passwort zurücksetzen",
|
||||
"rest2f":"Verification code",
|
||||
"rightsReloadNeedsLogout":"Zum Neuladen der Rechte musst du dich ab- und wieder anmelden",
|
||||
|
@ -292,8 +296,5 @@
|
|||
"yourPhone":"Know your phone number",
|
||||
"yourProfile":"Know your profile",
|
||||
"yourTotpKey":"Your TOTP key",
|
||||
"yubikey2f":"Yubikey",
|
||||
"resetCertificateOK":"Your certificate was reset sucessfully",
|
||||
"linkValidUntilCertif":"This message contains a link to reset your certificate, this link is valid until ",
|
||||
"certificateReset":"Reset my certificate"
|
||||
"yubikey2f":"Yubikey"
|
||||
}
|
||||
|
|
|
@ -114,6 +114,7 @@
|
|||
"badName":"Bad name",
|
||||
"cancel":"Cancel",
|
||||
"captcha":"Captcha",
|
||||
"certificateReset":"Reset my certificate",
|
||||
"changeKey": "Generate new key",
|
||||
"changePwd":"Change your password",
|
||||
"checkLastLogins":"Check my last logins",
|
||||
|
@ -163,6 +164,7 @@
|
|||
"gplSoft":"free software covered by the GPL license",
|
||||
"groups_sso":"SSO GROUPS",
|
||||
"headers":"HEADERS",
|
||||
"hello":"Hello",
|
||||
"id":"Id",
|
||||
"imSure":"I'm sure",
|
||||
"info":"Information",
|
||||
|
@ -295,8 +297,5 @@
|
|||
"yourPhone":"Know your phone number",
|
||||
"yourProfile":"Know your profile",
|
||||
"yourTotpKey":"Your TOTP key",
|
||||
"yubikey2f":"Yubikey",
|
||||
"resetCertificateOK":"Your certificate was reset sucessfully",
|
||||
"linkValidUntilCertif":"This message contains a link to reset your certificate, this link is valid until ",
|
||||
"certificateReset":"Reset my certificate"
|
||||
"yubikey2f":"Yubikey"
|
||||
}
|
||||
|
|
|
@ -114,6 +114,7 @@
|
|||
"badName":"Nombre incorrecto",
|
||||
"cancel":"Cancelar",
|
||||
"captcha":"Captcha",
|
||||
"certificateReset":"Reset my certificate",
|
||||
"changeKey":"Generar nueva llave",
|
||||
"changePwd":"Cambie su contraseña",
|
||||
"checkLastLogins":"Verificar mis últimos accesos",
|
||||
|
@ -162,6 +163,7 @@
|
|||
"gplSoft":"Software libre cubierto bajo licencia GPL",
|
||||
"groups_sso":"GRUPOS SSO",
|
||||
"headers":"ENCABEZADOS",
|
||||
"hello":"Buesnos dias",
|
||||
"id":"Id",
|
||||
"imSure":"Estoy seguro",
|
||||
"info":"Información",
|
||||
|
@ -171,6 +173,7 @@
|
|||
"lastLogins":"Últimas conexiones",
|
||||
"lastName":"Apellido(s)",
|
||||
"linkValidUntil":"Este mensaje contiene un enlace para reiniciar su contraseña, este enlace es válido hasta",
|
||||
"linkValidUntilCertif":"This message contains a link to reset your certificate, this link is valid until ",
|
||||
"loginHistory":"Historial de conexión",
|
||||
"login":"Usuario",
|
||||
"logout":"Desconexión ",
|
||||
|
@ -232,6 +235,7 @@
|
|||
"resendConfirmMail":"¿Reenviar e-mail de confirmación?",
|
||||
"resentConfirm":"¿Desea que el e-mail de confirmación sea reenviado?",
|
||||
"resetFavApps":"Reset my favorite Apps.",
|
||||
"resetCertificateOK":"Your certificate has been successfully reset!",
|
||||
"resetPwd":"Reiniciar mi contraseña",
|
||||
"rest2f":"Código de verificación",
|
||||
"rightsReloadNeedsLogout":"La recarga de derechos necesita desconectarse y conectarse de nuevo",
|
||||
|
@ -292,8 +296,5 @@
|
|||
"yourPhone":"Know your phone number",
|
||||
"yourProfile":"Know your profile",
|
||||
"yourTotpKey":"Su llave TOTP",
|
||||
"yubikey2f":"Yubikey",
|
||||
"resetCertificateOK":"Your certificate was reset sucessfully",
|
||||
"linkValidUntilCertif":"This message contains a link to reset your certificate, this link is valid until ",
|
||||
"certificateReset":"Reset my certificate"
|
||||
"yubikey2f":"Yubikey"
|
||||
}
|
||||
|
|
|
@ -114,6 +114,7 @@
|
|||
"badName":"Bad name",
|
||||
"cancel":"Peruuta",
|
||||
"captcha":"Captcha",
|
||||
"certificateReset":"Reset my certificate",
|
||||
"changeKey":"Generate new key",
|
||||
"changePwd":"Vaihda salasanasi",
|
||||
"checkLastLogins":"Tarkista viimeiset kirjautumiseni",
|
||||
|
@ -162,6 +163,7 @@
|
|||
"gplSoft":"free software covered by the GPL license",
|
||||
"groups_sso":"SSO GROUPS",
|
||||
"headers":"HEADERS",
|
||||
"hello":"Hello",
|
||||
"id":"Id",
|
||||
"imSure":"Olen varma",
|
||||
"info":"Information",
|
||||
|
@ -171,6 +173,7 @@
|
|||
"lastLogins":"Viimeisimmät kirjautumiset",
|
||||
"lastName":"Sukunimi",
|
||||
"linkValidUntil":"Tämä viesti sisältää linkin salasanan nollaamiseen, linkki on voimassa",
|
||||
"linkValidUntilCertif":"This message contains a link to reset your certificate, this link is valid until ",
|
||||
"loginHistory":"Kirjautumishistoria",
|
||||
"login":"Kirjaudu",
|
||||
"logout":"Kirjaudu ulos",
|
||||
|
@ -232,6 +235,7 @@
|
|||
"resendConfirmMail":"Uudelleen lähetä vahvistus sähköposti?",
|
||||
"resentConfirm":"Do you want the confirmation mail to be resent?",
|
||||
"resetFavApps":"Reset my favorite Apps.",
|
||||
"resetCertificateOK":"Your certificate has been successfully reset!",
|
||||
"resetPwd":"Palauta salasanani?",
|
||||
"rest2f":"Verification code",
|
||||
"rightsReloadNeedsLogout":"Rights reloads need to logout and login again",
|
||||
|
@ -292,8 +296,5 @@
|
|||
"yourPhone":"Know your phone number",
|
||||
"yourProfile":"Know your profile",
|
||||
"yourTotpKey":"Your TOTP key",
|
||||
"yubikey2f":"Yubikey",
|
||||
"resetCertificateOK":"Your certificate was reset sucessfully",
|
||||
"linkValidUntilCertif":"This message contains a link to reset your certificate, this link is valid until ",
|
||||
"certificateReset":"Reset my certificate"
|
||||
"yubikey2f":"Yubikey"
|
||||
}
|
||||
|
|
|
@ -114,6 +114,7 @@
|
|||
"badName":"Mauvais nom",
|
||||
"cancel":"Annuler",
|
||||
"captcha":"Captcha",
|
||||
"certificateReset":"Réinitialiser mon certificat",
|
||||
"changeKey": "Générer une nouvelle clef",
|
||||
"changePwd":"Changez votre mot de passe",
|
||||
"checkLastLogins":"Voir mes dernières connexions",
|
||||
|
@ -162,6 +163,7 @@
|
|||
"gplSoft":"logiciel libre protégé par la licence GPL",
|
||||
"groups_sso":"GROUPES SSO",
|
||||
"headers":"ENTETES",
|
||||
"hello":"Bonjour",
|
||||
"id":"Id",
|
||||
"imSure":"Je suis sûr",
|
||||
"info":"Information",
|
||||
|
@ -171,6 +173,7 @@
|
|||
"lastLogins":"Dernières connexions",
|
||||
"lastName":"Nom",
|
||||
"linkValidUntil":"Ce message contient un lien pour réinitialiser votre mot de passe, ce lien est valide jusqu'au ",
|
||||
"linkValidUntilCertif":"Ce message contient un lien pour réinitialiser votre certificat, ce lien est valide jusqu'à ",
|
||||
"loginHistory":"Historique des connexions",
|
||||
"login":"Identifiant",
|
||||
"logout":"Déconnexion",
|
||||
|
@ -232,6 +235,7 @@
|
|||
"resendConfirmMail":"Renvoyer le mail de confirmation ?",
|
||||
"resentConfirm":"Voulez-vous que le message de confirmation soit renvoyé ?",
|
||||
"resetFavApps":"Réinitialiser mes applications favorites",
|
||||
"resetCertificateOK":"Votre certificat a bien été réinitialisé!",
|
||||
"resetPwd":"Réinitialiser mon mot de passe",
|
||||
"rest2f":"Code de vérification",
|
||||
"rightsReloadNeedsLogout": "Le rechargement des droits nécessite une déconnexion",
|
||||
|
@ -292,8 +296,5 @@
|
|||
"yourPhone":"Connaître votre numéro de téléphone",
|
||||
"yourProfile":"Connaître vos informations personnelles",
|
||||
"yourTotpKey":"Votre clef TOTP",
|
||||
"yubikey2f":"Yubikey",
|
||||
"resetCertificateOK":"Your certificate was reset sucessfully",
|
||||
"linkValidUntilCertif":"This message contains a link to reset your certificate, this link is valid until ",
|
||||
"certificateReset":"Reset my certificate"
|
||||
"yubikey2f":"Yubikey"
|
||||
}
|
||||
|
|
|
@ -114,6 +114,7 @@
|
|||
"badName":"Nome errato",
|
||||
"cancel":"Cancella",
|
||||
"captcha":"Captcha",
|
||||
"certificateReset":"Reset my certificate",
|
||||
"changeKey":"Genera nuova chiave",
|
||||
"changePwd":"Cambia la tua password",
|
||||
"checkLastLogins":"Controllare i miei ultimi accessi",
|
||||
|
@ -162,6 +163,7 @@
|
|||
"gplSoft":"Software libero coperto dalla licenza GPL",
|
||||
"groups_sso":"GRUPPI SSO",
|
||||
"headers":"INTESTAZIONI",
|
||||
"hello":"Buongiorno",
|
||||
"id":"Id",
|
||||
"imSure":"Sono sicuro",
|
||||
"info":"Informazioni",
|
||||
|
@ -171,6 +173,7 @@
|
|||
"lastLogins":"Ultimi accessi",
|
||||
"lastName":"Cognome",
|
||||
"linkValidUntil":"Questo messaggio contiene un link per reimpostare la password, questo link è valido fino al",
|
||||
"linkValidUntilCertif":"This message contains a link to reset your certificate, this link is valid until ",
|
||||
"loginHistory":"Cronologia login",
|
||||
"login":"Login",
|
||||
"logout":"Logout",
|
||||
|
@ -232,6 +235,7 @@
|
|||
"resendConfirmMail":"Inviare nuovamente mail di conferma?",
|
||||
"resentConfirm":"Vuoi inviare di nuovo la mail di conferma?",
|
||||
"resetFavApps":"Reset my favorite Apps.",
|
||||
"resetCertificateOK":"Your certificate has been successfully reset!",
|
||||
"resetPwd":"Reimpostare la password",
|
||||
"rest2f":"Verification code",
|
||||
"rightsReloadNeedsLogout":"Le ricariche dei diritti necessitano di disconnettersi e di riconnettersi",
|
||||
|
@ -292,8 +296,5 @@
|
|||
"yourPhone":"Know your phone number",
|
||||
"yourProfile":"Know your profile",
|
||||
"yourTotpKey":"La tua chiave TOTP",
|
||||
"yubikey2f":"Yubikey",
|
||||
"resetCertificateOK":"Your certificate was reset sucessfully",
|
||||
"linkValidUntilCertif":"This message contains a link to reset your certificate, this link is valid until ",
|
||||
"certificateReset":"Reset my certificate"
|
||||
"yubikey2f":"Yubikey"
|
||||
}
|
||||
|
|
|
@ -114,6 +114,7 @@
|
|||
"badName":"Bad name",
|
||||
"cancel":"Cancel",
|
||||
"captcha":"Captcha",
|
||||
"certificateReset":"Reset my certificate",
|
||||
"changeKey":"Generate new key",
|
||||
"changePwd":"Change your password",
|
||||
"checkLastLogins":"Check my last logins",
|
||||
|
@ -162,6 +163,7 @@
|
|||
"gplSoft":"free software covered by the GPL license",
|
||||
"groups_sso":"SSO GROUPS",
|
||||
"headers":"HEADERS",
|
||||
"hello":"Hello",
|
||||
"id":"Id",
|
||||
"imSure":"I'm sure",
|
||||
"info":"Information",
|
||||
|
@ -171,6 +173,7 @@
|
|||
"lastLogins":"Last logins",
|
||||
"lastName":"Last name",
|
||||
"linkValidUntil":"This message contains a link to reset your password, this link is valid until ",
|
||||
"linkValidUntilCertif":"This message contains a link to reset your certificate, this link is valid until ",
|
||||
"loginHistory":"Login history",
|
||||
"login":"Login",
|
||||
"logout":"Logout",
|
||||
|
@ -232,6 +235,7 @@
|
|||
"resendConfirmMail":"Resend confirmation mail?",
|
||||
"resentConfirm":"Do you want the confirmation mail to be resent?",
|
||||
"resetFavApps":"Reset my favorite Apps.",
|
||||
"resetCertificateOK":"Your certificate has been successfully reset!",
|
||||
"resetPwd":"Reset my password",
|
||||
"rest2f":"Verification code",
|
||||
"rightsReloadNeedsLogout":"Rights reloads need to logout and login again",
|
||||
|
@ -292,8 +296,5 @@
|
|||
"yourPhone":"Know your phone number",
|
||||
"yourProfile":"Know your profile",
|
||||
"yourTotpKey":"Your TOTP key",
|
||||
"yubikey2f":"Yubikey",
|
||||
"resetCertificateOK":"Your certificate was reset sucessfully",
|
||||
"linkValidUntilCertif":"This message contains a link to reset your certificate, this link is valid until ",
|
||||
"certificateReset":"Reset my certificate"
|
||||
"yubikey2f":"Yubikey"
|
||||
}
|
||||
|
|
|
@ -114,6 +114,7 @@
|
|||
"badName":"Bad name",
|
||||
"cancel":"Cancel",
|
||||
"captcha":"Captcha",
|
||||
"certificateReset":"Reset my certificate",
|
||||
"changeKey":"Generate new key",
|
||||
"changePwd":"Change your password",
|
||||
"checkLastLogins":"Check my last logins",
|
||||
|
@ -162,6 +163,7 @@
|
|||
"gplSoft":"free software covered by the GPL license",
|
||||
"groups_sso":"SSO GROUPS",
|
||||
"headers":"HEADERS",
|
||||
"hello":"Hello",
|
||||
"id":"Id",
|
||||
"imSure":"I'm sure",
|
||||
"info":"Information",
|
||||
|
@ -171,6 +173,7 @@
|
|||
"lastLogins":"Last logins",
|
||||
"lastName":"Last name",
|
||||
"linkValidUntil":"This message contains a link to reset your password, this link is valid until ",
|
||||
"linkValidUntilCertif":"This message contains a link to reset your certificate, this link is valid until ",
|
||||
"loginHistory":"Login history",
|
||||
"login":"Login",
|
||||
"logout":"Logout",
|
||||
|
@ -232,6 +235,7 @@
|
|||
"resendConfirmMail":"Resend confirmation mail?",
|
||||
"resentConfirm":"Do you want the confirmation mail to be resent?",
|
||||
"resetFavApps":"Reset my favorite Apps.",
|
||||
"resetCertificateOK":"Your certificate has been successfully reset!",
|
||||
"resetPwd":"Reset my password",
|
||||
"rest2f":"Verification code",
|
||||
"rightsReloadNeedsLogout":"Rights reloads need to logout and login again",
|
||||
|
@ -292,8 +296,5 @@
|
|||
"yourPhone":"Know your phone number",
|
||||
"yourProfile":"Know your profile",
|
||||
"yourTotpKey":"Your TOTP key",
|
||||
"yubikey2f":"Yubikey",
|
||||
"resetCertificateOK":"Your certificate was reset sucessfully",
|
||||
"linkValidUntilCertif":"This message contains a link to reset your certificate, this link is valid until ",
|
||||
"certificateReset":"Reset my certificate"
|
||||
"yubikey2f":"Yubikey"
|
||||
}
|
||||
|
|
|
@ -114,6 +114,7 @@
|
|||
"badName":"Bad name",
|
||||
"cancel":"Cancel",
|
||||
"captcha":"Captcha",
|
||||
"certificateReset":"Reset my certificate",
|
||||
"changeKey":"Generate new key",
|
||||
"changePwd":"Change your password",
|
||||
"checkLastLogins":"Check my last logins",
|
||||
|
@ -162,6 +163,7 @@
|
|||
"gplSoft":"free software covered by the GPL license",
|
||||
"groups_sso":"SSO GROUPS",
|
||||
"headers":"HEADERS",
|
||||
"hello":"Hello",
|
||||
"id":"Id",
|
||||
"imSure":"I'm sure",
|
||||
"info":"Information",
|
||||
|
@ -171,6 +173,7 @@
|
|||
"lastLogins":"Last logins",
|
||||
"lastName":"Last name",
|
||||
"linkValidUntil":"This message contains a link to reset your password, this link is valid until ",
|
||||
"linkValidUntilCertif":"This message contains a link to reset your certificate, this link is valid until ",
|
||||
"loginHistory":"Login history",
|
||||
"login":"Login",
|
||||
"logout":"Logout",
|
||||
|
@ -232,6 +235,7 @@
|
|||
"resendConfirmMail":"Resend confirmation mail?",
|
||||
"resentConfirm":"Do you want the confirmation mail to be resent?",
|
||||
"resetFavApps":"Reset my favorite Apps.",
|
||||
"resetCertificateOK":"Your certificate has been successfully reset!",
|
||||
"resetPwd":"Reset my password",
|
||||
"rest2f":"Verification code",
|
||||
"rightsReloadNeedsLogout":"Rights reloads need to logout and login again",
|
||||
|
@ -292,8 +296,5 @@
|
|||
"yourPhone":"Know your phone number",
|
||||
"yourProfile":"Know your profile",
|
||||
"yourTotpKey":"Your TOTP key",
|
||||
"yubikey2f":"Yubikey",
|
||||
"resetCertificateOK":"Your certificate was reset sucessfully",
|
||||
"linkValidUntilCertif":"This message contains a link to reset your certificate, this link is valid until ",
|
||||
"certificateReset":"Reset my certificate"
|
||||
"yubikey2f":"Yubikey"
|
||||
}
|
||||
|
|
|
@ -114,6 +114,7 @@
|
|||
"badName":"Hatalı isim",
|
||||
"cancel":"İptal Et",
|
||||
"captcha":"Captcha",
|
||||
"certificateReset":"Reset my certificate",
|
||||
"changeKey":"Yeni anahtar üret",
|
||||
"changePwd":"Parolanı değiştir",
|
||||
"checkLastLogins":"Son girişlerimi kontrol et",
|
||||
|
@ -163,6 +164,7 @@
|
|||
"gplSoft":"GPL lisansı kapsamında özgür yazılım",
|
||||
"groups_sso":"TOA GRUPLARI",
|
||||
"headers":"BAŞLIKLAR",
|
||||
"hello":"Hello",
|
||||
"id":"ID",
|
||||
"imSure":"Eminim",
|
||||
"info":"Bilgi",
|
||||
|
@ -295,8 +297,5 @@
|
|||
"yourPhone":"Telefon numaranı bil",
|
||||
"yourProfile":"Profilini bil",
|
||||
"yourTotpKey":"TOTP anahtarınız",
|
||||
"yubikey2f":"Yubikey",
|
||||
"resetCertificateOK":"Your certificate was reset sucessfully",
|
||||
"linkValidUntilCertif":"This message contains a link to reset your certificate, this link is valid until ",
|
||||
"certificateReset":"Reset my certificate"
|
||||
"yubikey2f":"Yubikey"
|
||||
}
|
||||
|
|
|
@ -114,6 +114,7 @@
|
|||
"badName":"Bad name",
|
||||
"cancel":"Hủy",
|
||||
"captcha":"Mã kiểm tra",
|
||||
"certificateReset":"Reset my certificate",
|
||||
"changeKey":"Generate new key",
|
||||
"changePwd":"Thay đổi mật khẩu của bạn",
|
||||
"checkLastLogins":"Kiểm tra lần đăng nhập cuối cùng của bạn",
|
||||
|
@ -162,6 +163,7 @@
|
|||
"gplSoft":"phần mềm tự do được cấp phép bởi GPL",
|
||||
"groups_sso":"SSO GROUPS",
|
||||
"headers":"HEADERS",
|
||||
"hello":"Hello",
|
||||
"id":"Id",
|
||||
"imSure":"Tôi chắc chắn",
|
||||
"info":"Thông tin",
|
||||
|
@ -171,6 +173,7 @@
|
|||
"lastLogins":"Đăng nhập lần cuối",
|
||||
"lastName":"Họ",
|
||||
"linkValidUntil":"Thông báo này có chứa liên kết để đặt lại mật khẩu của bạn, liên kết này hợp lệ cho đến khi",
|
||||
"linkValidUntilCertif":"This message contains a link to reset your certificate, this link is valid until ",
|
||||
"loginHistory":"Lịch sử đăng nhập",
|
||||
"login":"Đăng nhập",
|
||||
"logout":"Đăng xuất",
|
||||
|
@ -232,6 +235,7 @@
|
|||
"resendConfirmMail":"Gửi lại thư xác nhận?",
|
||||
"resentConfirm":"Bạn có muốn gửi lại thư xác nhận không?",
|
||||
"resetFavApps":"Reset my favorite Apps.",
|
||||
"resetCertificateOK":"Your certificate has been successfully reset!",
|
||||
"resetPwd":"Đặt lại mật khẩu của tôi",
|
||||
"rest2f":"Verification code",
|
||||
"rightsReloadNeedsLogout":"Tải lại quyền cần đăng xuất và đăng nhập lại",
|
||||
|
@ -292,8 +296,5 @@
|
|||
"yourPhone":"Know your phone number",
|
||||
"yourProfile":"Know your profile",
|
||||
"yourTotpKey":"Your TOTP key",
|
||||
"yubikey2f":"Yubikey",
|
||||
"resetCertificateOK":"Your certificate was reset sucessfully",
|
||||
"linkValidUntilCertif":"This message contains a link to reset your certificate, this link is valid until ",
|
||||
"certificateReset":"Reset my certificate"
|
||||
"yubikey2f":"Yubikey"
|
||||
}
|
||||
|
|
|
@ -114,6 +114,7 @@
|
|||
"badName":"Bad name",
|
||||
"cancel":"取消",
|
||||
"captcha":"验证码",
|
||||
"certificateReset":"Reset my certificate",
|
||||
"changeKey":"Generate new key",
|
||||
"changePwd":"修改您的密码",
|
||||
"checkLastLogins":"Check my last logins",
|
||||
|
@ -162,6 +163,7 @@
|
|||
"gplSoft":"受GPL协议保护的自由软件",
|
||||
"groups_sso":"SSO GROUPS",
|
||||
"headers":"HEADERS",
|
||||
"hello":"Hello",
|
||||
"id":"Id",
|
||||
"imSure":"我确认",
|
||||
"info":"信息",
|
||||
|
@ -171,6 +173,7 @@
|
|||
"lastLogins":"上次登陆",
|
||||
"lastName":"姓氏",
|
||||
"linkValidUntil":"此消息包含重置您密码的链接,该链接有效期截至",
|
||||
"linkValidUntilCertif":"This message contains a link to reset your certificate, this link is valid until ",
|
||||
"loginHistory":"登陆记录",
|
||||
"login":"登陆",
|
||||
"logout":"注销登录",
|
||||
|
@ -232,6 +235,7 @@
|
|||
"resendConfirmMail":"重新发送确认邮件?",
|
||||
"resentConfirm":"您想确认邮件被重新发送吗?",
|
||||
"resetFavApps":"Reset my favorite Apps.",
|
||||
"resetCertificateOK":"Your certificate has been successfully reset!",
|
||||
"resetPwd":"重置我的密码",
|
||||
"rest2f":"Verification code",
|
||||
"rightsReloadNeedsLogout":"重新加载权限需要登出并且再次登录",
|
||||
|
@ -292,8 +296,5 @@
|
|||
"yourPhone":"Know your phone number",
|
||||
"yourProfile":"Know your profile",
|
||||
"yourTotpKey":"Your TOTP key",
|
||||
"yubikey2f":"Yubikey",
|
||||
"resetCertificateOK":"Your certificate was reset sucessfully",
|
||||
"linkValidUntilCertif":"This message contains a link to reset your certificate, this link is valid until ",
|
||||
"certificateReset":"Reset my certificate"
|
||||
"yubikey2f":"Yubikey"
|
||||
}
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<p>
|
||||
<span trspan="hello">Hello</span> $cn,<br />
|
||||
<br />
|
||||
<span trspan="certificatReset">Your certificate was reset sucessfully.</span>
|
||||
<span trspan="resetCertificateOK">Your certificate has been successfully reset!</span>
|
||||
</p>
|
||||
|
||||
<TMPL_INCLUDE NAME="mail_footer.tpl">
|
|
@ -47,7 +47,7 @@ SKIP: {
|
|||
certificateResetByMailStep1Body =>
|
||||
'Click here <a href="$url"> to confirm your mail. It will expire $expMailDate',
|
||||
certificateResetByMailStep2Body =>
|
||||
'Certificate Reset sucessfully!',
|
||||
'Certificate successfully reset!',
|
||||
certificateValidityDelay => 30
|
||||
|
||||
}
|
||||
|
@ -210,7 +210,7 @@ lkRrWfQftwmLyNIu3HfSgXlgAZS30ymfbzBU
|
|||
}
|
||||
);
|
||||
|
||||
ok( mail() =~ /Certificate Reset sucessfully/, 'Certificate was changed' );
|
||||
ok( mail() =~ /Certificate successfully reset/, 'Certificate has been reset' );
|
||||
|
||||
}
|
||||
count($maintests);
|
||||
|
|
Loading…
Reference in New Issue