Merge pull request #282 from SamR1/init-italian-translation
Init italian translation files
This commit is contained in:
commit
2dc100681d
@ -62,6 +62,7 @@ class BaseConfig:
|
|||||||
'de',
|
'de',
|
||||||
# 'nb', # disabled for now
|
# 'nb', # disabled for now
|
||||||
'nl',
|
'nl',
|
||||||
|
# 'it', # disabled for now
|
||||||
]
|
]
|
||||||
OAUTH2_TOKEN_EXPIRES_IN = {
|
OAUTH2_TOKEN_EXPIRES_IN = {
|
||||||
'authorization_code': 864000, # 10 days
|
'authorization_code': 864000, # 10 days
|
||||||
|
2
fittrackee/dist/index.html
vendored
2
fittrackee/dist/index.html
vendored
@ -1 +1 @@
|
|||||||
<!doctype html><html lang="en"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><!--[if IE]><link rel="icon" href="/favicon.ico"><![endif]--><link rel="stylesheet" href="/static/css/fork-awesome.min.css"/><link rel="stylesheet" href="/static/css/leaflet.css"/><title>FitTrackee</title><script defer="defer" src="/static/js/chunk-vendors.0004541e.js"></script><script defer="defer" src="/static/js/app.8d89be73.js"></script><link href="/static/css/app.7cddaab1.css" rel="stylesheet"><link rel="icon" type="image/png" sizes="32x32" href="/img/icons/favicon-32x32.png"><link rel="icon" type="image/png" sizes="16x16" href="/img/icons/favicon-16x16.png"><link rel="manifest" href="/manifest.json"><meta name="theme-color" content="#4DBA87"><meta name="apple-mobile-web-app-capable" content="no"><meta name="apple-mobile-web-app-status-bar-style" content="default"><meta name="apple-mobile-web-app-title" content="fittrackee_client"><link rel="apple-touch-icon" href="/img/icons/apple-touch-icon-152x152.png"><link rel="mask-icon" href="/img/icons/safari-pinned-tab.svg" color="#4DBA87"><meta name="msapplication-TileImage" content="/img/icons/msapplication-icon-144x144.png"><meta name="msapplication-TileColor" content="#000000"></head><body><noscript><strong>We're sorry but FitTrackee doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div></body></html>
|
<!doctype html><html lang="en"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><!--[if IE]><link rel="icon" href="/favicon.ico"><![endif]--><link rel="stylesheet" href="/static/css/fork-awesome.min.css"/><link rel="stylesheet" href="/static/css/leaflet.css"/><title>FitTrackee</title><script defer="defer" src="/static/js/chunk-vendors.0004541e.js"></script><script defer="defer" src="/static/js/app.f1426f7f.js"></script><link href="/static/css/app.7cddaab1.css" rel="stylesheet"><link rel="icon" type="image/png" sizes="32x32" href="/img/icons/favicon-32x32.png"><link rel="icon" type="image/png" sizes="16x16" href="/img/icons/favicon-16x16.png"><link rel="manifest" href="/manifest.json"><meta name="theme-color" content="#4DBA87"><meta name="apple-mobile-web-app-capable" content="no"><meta name="apple-mobile-web-app-status-bar-style" content="default"><meta name="apple-mobile-web-app-title" content="fittrackee_client"><link rel="apple-touch-icon" href="/img/icons/apple-touch-icon-152x152.png"><link rel="mask-icon" href="/img/icons/safari-pinned-tab.svg" color="#4DBA87"><meta name="msapplication-TileImage" content="/img/icons/msapplication-icon-144x144.png"><meta name="msapplication-TileColor" content="#000000"></head><body><noscript><strong>We're sorry but FitTrackee doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div></body></html>
|
2
fittrackee/dist/service-worker.js
vendored
2
fittrackee/dist/service-worker.js
vendored
File diff suppressed because one or more lines are too long
2
fittrackee/dist/service-worker.js.map
vendored
2
fittrackee/dist/service-worker.js.map
vendored
File diff suppressed because one or more lines are too long
2
fittrackee/dist/static/js/app.8d89be73.js
vendored
2
fittrackee/dist/static/js/app.8d89be73.js
vendored
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
2
fittrackee/dist/static/js/app.f1426f7f.js
vendored
Normal file
2
fittrackee/dist/static/js/app.f1426f7f.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
fittrackee/dist/static/js/app.f1426f7f.js.map
vendored
Normal file
1
fittrackee/dist/static/js/app.f1426f7f.js.map
vendored
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
1
fittrackee/dist/static/js/password.9a0ebdfe.js.map
vendored
Normal file
1
fittrackee/dist/static/js/password.9a0ebdfe.js.map
vendored
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
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,2 @@
|
|||||||
"use strict";(self["webpackChunkfittrackee_client"]=self["webpackChunkfittrackee_client"]||[]).push([[193],{7885:function(e,s,t){t.r(s),t.d(s,{default:function(){return A}});var a=t(6252),r=t(2262),l=t(3577),o=(t(7658),t(9150)),n=t(436);const c={class:"chart-menu"},i={class:"chart-arrow"},u={class:"time-frames custom-checkboxes-group"},d={class:"time-frames-checkboxes custom-checkboxes"},p=["id","name","checked","onInput"],m={class:"chart-arrow"};var v=(0,a.aZ)({__name:"StatsMenu",emits:["arrowClick","timeFrameUpdate"],setup(e,{emit:s}){const t=(0,r.iH)("month"),o=["week","month","year"];function n(e){t.value=e,s("timeFrameUpdate",e)}return(e,r)=>((0,a.wg)(),(0,a.iD)("div",c,[(0,a._)("div",i,[(0,a._)("i",{class:"fa fa-chevron-left","aria-hidden":"true",onClick:r[0]||(r[0]=e=>s("arrowClick",!0))})]),(0,a._)("div",u,[(0,a._)("div",d,[((0,a.wg)(),(0,a.iD)(a.HY,null,(0,a.Ko)(o,(s=>(0,a._)("div",{class:"time-frame custom-checkbox",key:s},[(0,a._)("label",null,[(0,a._)("input",{type:"radio",id:s,name:s,checked:t.value===s,onInput:e=>n(s)},null,40,p),(0,a._)("span",null,(0,l.zw)(e.$t(`statistics.TIME_FRAMES.${s}`)),1)])]))),64))])]),(0,a._)("div",m,[(0,a._)("i",{class:"fa fa-chevron-right","aria-hidden":"true",onClick:r[1]||(r[1]=e=>s("arrowClick",!1))})])]))}}),k=t(3744);const _=(0,k.Z)(v,[["__scopeId","data-v-22d55de2"]]);var S=_,w=t(631);const f={class:"sports-menu"},h=["id","name","checked","onInput"],U={class:"sport-label"};var b=(0,a.aZ)({__name:"StatsSportsMenu",props:{userSports:null,selectedSportIds:{default:()=>[]}},emits:["selectedSportIdsUpdate"],setup(e,{emit:s}){const t=e,{t:n}=(0,o.QT)(),c=(0,a.f3)("sportColors"),{selectedSportIds:i}=(0,r.BK)(t),u=(0,a.Fl)((()=>(0,w.xH)(t.userSports,n)));function d(e){s("selectedSportIdsUpdate",e)}return(e,s)=>{const t=(0,a.up)("SportImage");return(0,a.wg)(),(0,a.iD)("div",f,[((0,a.wg)(!0),(0,a.iD)(a.HY,null,(0,a.Ko)((0,r.SU)(u),(e=>((0,a.wg)(),(0,a.iD)("label",{type:"checkbox",key:e.id,style:(0,l.j5)({color:e.color?e.color:(0,r.SU)(c)[e.label]})},[(0,a._)("input",{type:"checkbox",id:e.id,name:e.label,checked:(0,r.SU)(i).includes(e.id),onInput:s=>d(e.id)},null,40,h),(0,a.Wm)(t,{"sport-label":e.label,color:e.color},null,8,["sport-label","color"]),(0,a._)("span",U,(0,l.zw)(e.translatedLabel),1)],4)))),128))])}}});const I=b;var g=I,T=t(9318);const y={key:0,id:"user-statistics"};var C=(0,a.aZ)({__name:"index",props:{sports:null,user:null},setup(e){const s=e,{t:t}=(0,o.QT)(),{sports:l,user:c}=(0,r.BK)(s),i=(0,r.iH)("month"),u=(0,r.iH)(v(i.value)),d=(0,a.Fl)((()=>(0,w.xH)(s.sports,t))),p=(0,r.iH)(_(s.sports));function m(e){i.value=e,u.value=v(i.value)}function v(e){return(0,T.aZ)(new Date,e,s.user.weekm)}function k(e){u.value=(0,T.FN)(u.value,e,s.user.weekm)}function _(e){return e.map((e=>e.id))}function f(e){p.value.includes(e)?p.value=p.value.filter((s=>s!==e)):p.value.push(e)}return(0,a.YP)((()=>s.sports),(e=>{p.value=_(e)})),(e,s)=>(0,r.SU)(d)?((0,a.wg)(),(0,a.iD)("div",y,[(0,a.Wm)(S,{onTimeFrameUpdate:m,onArrowClick:k}),(0,a.Wm)(n.Z,{sports:(0,r.SU)(l),user:(0,r.SU)(c),chartParams:u.value,"displayed-sport-ids":p.value,fullStats:!0},null,8,["sports","user","chartParams","displayed-sport-ids"]),(0,a.Wm)(g,{"selected-sport-ids":p.value,"user-sports":(0,r.SU)(l),onSelectedSportIdsUpdate:f},null,8,["selected-sport-ids","user-sports"])])):(0,a.kq)("",!0)}});const F=(0,k.Z)(C,[["__scopeId","data-v-30799d13"]]);var Z=F,x=t(5630),D=t(5801),H=t(9917);const E={id:"statistics",class:"view"},R={key:0,class:"container"};var W=(0,a.aZ)({__name:"StatisticsView",setup(e){const s=(0,H.o)(),t=(0,a.Fl)((()=>s.getters[D.YN.GETTERS.AUTH_USER_PROFILE])),o=(0,a.Fl)((()=>s.getters[D.O8.GETTERS.SPORTS].filter((e=>t.value.sports_list.includes(e.id)))));return(e,s)=>{const n=(0,a.up)("Card");return(0,a.wg)(),(0,a.iD)("div",E,[(0,r.SU)(t).username?((0,a.wg)(),(0,a.iD)("div",R,[(0,a.Wm)(n,null,{title:(0,a.w5)((()=>[(0,a.Uk)((0,l.zw)(e.$t("statistics.STATISTICS")),1)])),content:(0,a.w5)((()=>[(0,a.Wm)(Z,{class:(0,l.C_)({"stats-disabled":0===(0,r.SU)(t).nb_workouts}),user:(0,r.SU)(t),sports:(0,r.SU)(o)},null,8,["class","user","sports"])])),_:1}),0===(0,r.SU)(t).nb_workouts?((0,a.wg)(),(0,a.j4)(x.Z,{key:0})):(0,a.kq)("",!0)])):(0,a.kq)("",!0)])}}});const P=(0,k.Z)(W,[["__scopeId","data-v-2e341d4e"]]);var A=P}}]);
|
"use strict";(self["webpackChunkfittrackee_client"]=self["webpackChunkfittrackee_client"]||[]).push([[193],{7885:function(e,s,t){t.r(s),t.d(s,{default:function(){return A}});var a=t(6252),r=t(2262),l=t(3577),o=(t(7658),t(9150)),n=t(436);const c={class:"chart-menu"},i={class:"chart-arrow"},u={class:"time-frames custom-checkboxes-group"},d={class:"time-frames-checkboxes custom-checkboxes"},p=["id","name","checked","onInput"],m={class:"chart-arrow"};var v=(0,a.aZ)({__name:"StatsMenu",emits:["arrowClick","timeFrameUpdate"],setup(e,{emit:s}){const t=(0,r.iH)("month"),o=["week","month","year"];function n(e){t.value=e,s("timeFrameUpdate",e)}return(e,r)=>((0,a.wg)(),(0,a.iD)("div",c,[(0,a._)("div",i,[(0,a._)("i",{class:"fa fa-chevron-left","aria-hidden":"true",onClick:r[0]||(r[0]=e=>s("arrowClick",!0))})]),(0,a._)("div",u,[(0,a._)("div",d,[((0,a.wg)(),(0,a.iD)(a.HY,null,(0,a.Ko)(o,(s=>(0,a._)("div",{class:"time-frame custom-checkbox",key:s},[(0,a._)("label",null,[(0,a._)("input",{type:"radio",id:s,name:s,checked:t.value===s,onInput:e=>n(s)},null,40,p),(0,a._)("span",null,(0,l.zw)(e.$t(`statistics.TIME_FRAMES.${s}`)),1)])]))),64))])]),(0,a._)("div",m,[(0,a._)("i",{class:"fa fa-chevron-right","aria-hidden":"true",onClick:r[1]||(r[1]=e=>s("arrowClick",!1))})])]))}}),k=t(3744);const _=(0,k.Z)(v,[["__scopeId","data-v-22d55de2"]]);var S=_,w=t(631);const f={class:"sports-menu"},h=["id","name","checked","onInput"],U={class:"sport-label"};var b=(0,a.aZ)({__name:"StatsSportsMenu",props:{userSports:null,selectedSportIds:{default:()=>[]}},emits:["selectedSportIdsUpdate"],setup(e,{emit:s}){const t=e,{t:n}=(0,o.QT)(),c=(0,a.f3)("sportColors"),{selectedSportIds:i}=(0,r.BK)(t),u=(0,a.Fl)((()=>(0,w.xH)(t.userSports,n)));function d(e){s("selectedSportIdsUpdate",e)}return(e,s)=>{const t=(0,a.up)("SportImage");return(0,a.wg)(),(0,a.iD)("div",f,[((0,a.wg)(!0),(0,a.iD)(a.HY,null,(0,a.Ko)((0,r.SU)(u),(e=>((0,a.wg)(),(0,a.iD)("label",{type:"checkbox",key:e.id,style:(0,l.j5)({color:e.color?e.color:(0,r.SU)(c)[e.label]})},[(0,a._)("input",{type:"checkbox",id:e.id,name:e.label,checked:(0,r.SU)(i).includes(e.id),onInput:s=>d(e.id)},null,40,h),(0,a.Wm)(t,{"sport-label":e.label,color:e.color},null,8,["sport-label","color"]),(0,a._)("span",U,(0,l.zw)(e.translatedLabel),1)],4)))),128))])}}});const I=b;var g=I,T=t(9318);const y={key:0,id:"user-statistics"};var C=(0,a.aZ)({__name:"index",props:{sports:null,user:null},setup(e){const s=e,{t:t}=(0,o.QT)(),{sports:l,user:c}=(0,r.BK)(s),i=(0,r.iH)("month"),u=(0,r.iH)(v(i.value)),d=(0,a.Fl)((()=>(0,w.xH)(s.sports,t))),p=(0,r.iH)(_(s.sports));function m(e){i.value=e,u.value=v(i.value)}function v(e){return(0,T.aZ)(new Date,e,s.user.weekm)}function k(e){u.value=(0,T.FN)(u.value,e,s.user.weekm)}function _(e){return e.map((e=>e.id))}function f(e){p.value.includes(e)?p.value=p.value.filter((s=>s!==e)):p.value.push(e)}return(0,a.YP)((()=>s.sports),(e=>{p.value=_(e)})),(e,s)=>(0,r.SU)(d)?((0,a.wg)(),(0,a.iD)("div",y,[(0,a.Wm)(S,{onTimeFrameUpdate:m,onArrowClick:k}),(0,a.Wm)(n.Z,{sports:(0,r.SU)(l),user:(0,r.SU)(c),chartParams:u.value,"displayed-sport-ids":p.value,fullStats:!0},null,8,["sports","user","chartParams","displayed-sport-ids"]),(0,a.Wm)(g,{"selected-sport-ids":p.value,"user-sports":(0,r.SU)(l),onSelectedSportIdsUpdate:f},null,8,["selected-sport-ids","user-sports"])])):(0,a.kq)("",!0)}});const F=(0,k.Z)(C,[["__scopeId","data-v-30799d13"]]);var Z=F,x=t(5630),D=t(5801),H=t(9917);const E={id:"statistics",class:"view"},R={key:0,class:"container"};var W=(0,a.aZ)({__name:"StatisticsView",setup(e){const s=(0,H.o)(),t=(0,a.Fl)((()=>s.getters[D.YN.GETTERS.AUTH_USER_PROFILE])),o=(0,a.Fl)((()=>s.getters[D.O8.GETTERS.SPORTS].filter((e=>t.value.sports_list.includes(e.id)))));return(e,s)=>{const n=(0,a.up)("Card");return(0,a.wg)(),(0,a.iD)("div",E,[(0,r.SU)(t).username?((0,a.wg)(),(0,a.iD)("div",R,[(0,a.Wm)(n,null,{title:(0,a.w5)((()=>[(0,a.Uk)((0,l.zw)(e.$t("statistics.STATISTICS")),1)])),content:(0,a.w5)((()=>[(0,a.Wm)(Z,{class:(0,l.C_)({"stats-disabled":0===(0,r.SU)(t).nb_workouts}),user:(0,r.SU)(t),sports:(0,r.SU)(o)},null,8,["class","user","sports"])])),_:1}),0===(0,r.SU)(t).nb_workouts?((0,a.wg)(),(0,a.j4)(x.Z,{key:0})):(0,a.kq)("",!0)])):(0,a.kq)("",!0)])}}});const P=(0,k.Z)(W,[["__scopeId","data-v-2e341d4e"]]);var A=P}}]);
|
||||||
//# sourceMappingURL=statistics.5231fa2f.js.map
|
//# sourceMappingURL=statistics.3761533e.js.map
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
BIN
fittrackee/emails/translations/it/LC_MESSAGES/messages.mo
Normal file
BIN
fittrackee/emails/translations/it/LC_MESSAGES/messages.mo
Normal file
Binary file not shown.
207
fittrackee/emails/translations/it/LC_MESSAGES/messages.po
Normal file
207
fittrackee/emails/translations/it/LC_MESSAGES/messages.po
Normal file
@ -0,0 +1,207 @@
|
|||||||
|
# Italian translations for PROJECT.
|
||||||
|
# Copyright (C) 2022 ORGANIZATION
|
||||||
|
# This file is distributed under the same license as the PROJECT project.
|
||||||
|
# FIRST AUTHOR <EMAIL@ADDRESS>, 2022.
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: PROJECT VERSION\n"
|
||||||
|
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||||
|
"POT-Creation-Date: 2022-12-11 09:25+0100\n"
|
||||||
|
"PO-Revision-Date: 2022-12-11 09:25+0100\n"
|
||||||
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
|
"Language: it\n"
|
||||||
|
"Language-Team: it <LL@li.org>\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=utf-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Generated-By: Babel 2.11.0\n"
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/layout.html:215
|
||||||
|
#: fittrackee/emails/templates/layout.txt:1
|
||||||
|
#, python-format
|
||||||
|
msgid "Hi %(username)s,"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.txt:6
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.txt:3
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.txt:6
|
||||||
|
#: fittrackee/emails/templates/layout.html:218
|
||||||
|
#: fittrackee/emails/templates/password_change/body.txt:3
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:6
|
||||||
|
#, python-format
|
||||||
|
msgid ""
|
||||||
|
"For security, this request was received from a %(operating_system)s "
|
||||||
|
"device using %(browser_name)s."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/layout.html:221
|
||||||
|
#: fittrackee/emails/templates/layout.txt:5
|
||||||
|
msgid "Thanks,"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/layout.html:222
|
||||||
|
#: fittrackee/emails/templates/layout.txt:6
|
||||||
|
msgid "The FitTrackee Team"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:2
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/subject.txt:1
|
||||||
|
msgid "Confirm your account"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:3
|
||||||
|
msgid "Use this link to confirm your account."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:4
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.txt:1
|
||||||
|
msgid "You have created an account on FitTrackee."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:4
|
||||||
|
msgid "Use the button below to confirm your address email."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:11
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.txt:4
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:11
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.txt:4
|
||||||
|
msgid "Verify your email"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:18
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.txt:7
|
||||||
|
msgid ""
|
||||||
|
"If this account creation wasn't initiated by you, please ignore this "
|
||||||
|
"email."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.html:22
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:22
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:24
|
||||||
|
msgid ""
|
||||||
|
"If you're having trouble with the button above, copy and paste the URL "
|
||||||
|
"below into your web browser."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/account_confirmation/body.txt:2
|
||||||
|
msgid "Use the link below to confirm your address email."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.html:2
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/subject.txt:1
|
||||||
|
msgid "Email changed"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.html:3
|
||||||
|
msgid "Your email is being updated."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.html:4
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.txt:1
|
||||||
|
msgid ""
|
||||||
|
"You recently requested to change your email address for your FitTrackee "
|
||||||
|
"account to:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.html:18
|
||||||
|
#: fittrackee/emails/templates/email_update_to_current_email/body.txt:4
|
||||||
|
msgid ""
|
||||||
|
"If this email change wasn't initiated by you, please change your password"
|
||||||
|
" immediately or contact your administrator if your account is locked."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:2
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/subject.txt:1
|
||||||
|
msgid "Confirm email change"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:3
|
||||||
|
msgid "Use this link to confirm email change."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:4
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.txt:1
|
||||||
|
msgid ""
|
||||||
|
"You recently requested to change your email address for your FitTrackee "
|
||||||
|
"account."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:4
|
||||||
|
msgid "Use the button below to confirm this address."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.html:18
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.txt:7
|
||||||
|
msgid "If this email change wasn't initiated by you, please ignore this email."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/email_update_to_new_email/body.txt:2
|
||||||
|
msgid "Use the link below to confirm this address."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_change/body.html:2
|
||||||
|
#: fittrackee/emails/templates/password_change/subject.txt:1
|
||||||
|
msgid "Password changed"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_change/body.html:3
|
||||||
|
msgid "Your password has been changed."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_change/body.html:4
|
||||||
|
#: fittrackee/emails/templates/password_change/body.txt:1
|
||||||
|
msgid "The password for your FitTrackee account has been changed."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_change/body.html:5
|
||||||
|
#: fittrackee/emails/templates/password_change/body.txt:4
|
||||||
|
msgid ""
|
||||||
|
"If this password change wasn't initiated by you, please change your "
|
||||||
|
"password immediately or contact your administrator if your account is "
|
||||||
|
"locked."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:2
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/subject.txt:1
|
||||||
|
msgid "Password reset request"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:3
|
||||||
|
#, python-format
|
||||||
|
msgid ""
|
||||||
|
"Use this link to reset your password. The link is only valid for "
|
||||||
|
"%(expiration_delay)s."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:4
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:1
|
||||||
|
msgid "You recently requested to reset your password for your FitTrackee account."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:4
|
||||||
|
msgid "Use the button below to reset it."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:5
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:2
|
||||||
|
#, python-format
|
||||||
|
msgid "This password reset link is only valid for %(expiration_delay)s."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:13
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:4
|
||||||
|
msgid "Reset your password"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.html:20
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:7
|
||||||
|
msgid "If you did not request a password reset, please ignore this email."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: fittrackee/emails/templates/password_reset_request/body.txt:1
|
||||||
|
msgid "Use the link below to reset it."
|
||||||
|
msgstr ""
|
||||||
|
|
@ -18,6 +18,7 @@
|
|||||||
"@zxcvbn-ts/language-de": "^2.1.0",
|
"@zxcvbn-ts/language-de": "^2.1.0",
|
||||||
"@zxcvbn-ts/language-en": "^2.1.0",
|
"@zxcvbn-ts/language-en": "^2.1.0",
|
||||||
"@zxcvbn-ts/language-fr": "^2.2.0",
|
"@zxcvbn-ts/language-fr": "^2.2.0",
|
||||||
|
"@zxcvbn-ts/language-it": "^2.1.0",
|
||||||
"axios": "^1.2.0",
|
"axios": "^1.2.0",
|
||||||
"chart.js": "^4.0.1",
|
"chart.js": "^4.0.1",
|
||||||
"chartjs-plugin-datalabels": "^2.1.0",
|
"chartjs-plugin-datalabels": "^2.1.0",
|
||||||
|
@ -6,7 +6,7 @@ import { createI18n, LocaleMessages, VueMessageType } from 'vue-i18n'
|
|||||||
* The loaded `JSON` locale messages is pre-compiled by `@intlify/vue-i18n-loader`, which is integrated into `vue-cli-plugin-i18n`.
|
* The loaded `JSON` locale messages is pre-compiled by `@intlify/vue-i18n-loader`, which is integrated into `vue-cli-plugin-i18n`.
|
||||||
* See: https://github.com/intlify/vue-i18n-loader#rocket-i18n-resource-pre-compilation
|
* See: https://github.com/intlify/vue-i18n-loader#rocket-i18n-resource-pre-compilation
|
||||||
*/
|
*/
|
||||||
const disabledLanguages = ['nb'] // to update after translations release
|
const disabledLanguages = ['it', 'nb'] // to update after translations release
|
||||||
|
|
||||||
function loadLocaleMessages(): Record<string, LocaleMessages<VueMessageType>> {
|
function loadLocaleMessages(): Record<string, LocaleMessages<VueMessageType>> {
|
||||||
const locales = require.context('./locales', true, /[A-Za-z0-9-_,\s]+\.ts$/i)
|
const locales = require.context('./locales', true, /[A-Za-z0-9-_,\s]+\.ts$/i)
|
||||||
|
2
fittrackee_client/src/locales/it/about.json
Normal file
2
fittrackee_client/src/locales/it/about.json
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
{
|
||||||
|
}
|
2
fittrackee_client/src/locales/it/administration.json
Normal file
2
fittrackee_client/src/locales/it/administration.json
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
{
|
||||||
|
}
|
2
fittrackee_client/src/locales/it/api.json
Normal file
2
fittrackee_client/src/locales/it/api.json
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
{
|
||||||
|
}
|
2
fittrackee_client/src/locales/it/buttons.json
Normal file
2
fittrackee_client/src/locales/it/buttons.json
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
{
|
||||||
|
}
|
2
fittrackee_client/src/locales/it/common.json
Normal file
2
fittrackee_client/src/locales/it/common.json
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
{
|
||||||
|
}
|
2
fittrackee_client/src/locales/it/dashboard.json
Normal file
2
fittrackee_client/src/locales/it/dashboard.json
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
{
|
||||||
|
}
|
2
fittrackee_client/src/locales/it/error.json
Normal file
2
fittrackee_client/src/locales/it/error.json
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
{
|
||||||
|
}
|
27
fittrackee_client/src/locales/it/it.ts
Normal file
27
fittrackee_client/src/locales/it/it.ts
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
import AboutTranslations from './about.json'
|
||||||
|
import AdministrationTranslations from './administration.json'
|
||||||
|
import ApiTranslations from './api.json'
|
||||||
|
import ButtonsTranslations from './buttons.json'
|
||||||
|
import CommonTranslations from './common.json'
|
||||||
|
import DashboardTranslations from './dashboard.json'
|
||||||
|
import ErrorTranslations from './error.json'
|
||||||
|
import OAuth2Translations from './oauth2.json'
|
||||||
|
import SportsTranslations from './sports.json'
|
||||||
|
import StatisticsTranslations from './statistics.json'
|
||||||
|
import UserTranslations from './user.json'
|
||||||
|
import WorkoutsTranslations from './workouts.json'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
about: AboutTranslations,
|
||||||
|
admin: AdministrationTranslations,
|
||||||
|
api: ApiTranslations,
|
||||||
|
buttons: ButtonsTranslations,
|
||||||
|
common: CommonTranslations,
|
||||||
|
dashboard: DashboardTranslations,
|
||||||
|
error: ErrorTranslations,
|
||||||
|
oauth2: OAuth2Translations,
|
||||||
|
sports: SportsTranslations,
|
||||||
|
statistics: StatisticsTranslations,
|
||||||
|
user: UserTranslations,
|
||||||
|
workouts: WorkoutsTranslations,
|
||||||
|
}
|
2
fittrackee_client/src/locales/it/oauth2.json
Normal file
2
fittrackee_client/src/locales/it/oauth2.json
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
{
|
||||||
|
}
|
2
fittrackee_client/src/locales/it/sports.json
Normal file
2
fittrackee_client/src/locales/it/sports.json
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
{
|
||||||
|
}
|
2
fittrackee_client/src/locales/it/statistics.json
Normal file
2
fittrackee_client/src/locales/it/statistics.json
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
{
|
||||||
|
}
|
2
fittrackee_client/src/locales/it/user.json
Normal file
2
fittrackee_client/src/locales/it/user.json
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
{
|
||||||
|
}
|
2
fittrackee_client/src/locales/it/workouts.json
Normal file
2
fittrackee_client/src/locales/it/workouts.json
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
{
|
||||||
|
}
|
@ -97,6 +97,7 @@ const dateStringFormats: Record<string, string> = {
|
|||||||
de: 'do MMM yyyy',
|
de: 'do MMM yyyy',
|
||||||
en: 'MMM. do, yyyy',
|
en: 'MMM. do, yyyy',
|
||||||
fr: 'd MMM yyyy',
|
fr: 'd MMM yyyy',
|
||||||
|
// it: 'd MMM yyyy',
|
||||||
// nb: 'do MMM yyyy',
|
// nb: 'do MMM yyyy',
|
||||||
nl: 'd MMM yyyy',
|
nl: 'd MMM yyyy',
|
||||||
}
|
}
|
||||||
|
@ -8,6 +8,7 @@ export const localeFromLanguage: Record<string, Locale> = {
|
|||||||
de: de,
|
de: de,
|
||||||
en: enUS,
|
en: enUS,
|
||||||
fr: fr,
|
fr: fr,
|
||||||
|
// it: it,
|
||||||
// nb: nb, // disabled for now
|
// nb: nb, // disabled for now
|
||||||
nl: nl,
|
nl: nl,
|
||||||
}
|
}
|
||||||
@ -16,6 +17,7 @@ export const languageLabels: Record<string, string> = {
|
|||||||
de: 'Deutsch',
|
de: 'Deutsch',
|
||||||
en: 'English',
|
en: 'English',
|
||||||
fr: 'Français',
|
fr: 'Français',
|
||||||
|
// it: 'Italiano',
|
||||||
// nb: 'Norsk bokmål', // disabled for now
|
// nb: 'Norsk bokmål', // disabled for now
|
||||||
nl: 'Nederlands',
|
nl: 'Nederlands',
|
||||||
}
|
}
|
||||||
|
@ -13,10 +13,14 @@ export const setZxcvbnOptions = async (language: string) => {
|
|||||||
const zxcvbnDePackage = await import(
|
const zxcvbnDePackage = await import(
|
||||||
/* webpackChunkName: "password" */ '@zxcvbn-ts/language-de'
|
/* webpackChunkName: "password" */ '@zxcvbn-ts/language-de'
|
||||||
)
|
)
|
||||||
|
const zxcvbnItPackage = await import(
|
||||||
|
/* webpackChunkName: "password" */ '@zxcvbn-ts/language-it'
|
||||||
|
)
|
||||||
const zxcvbnLangPackages: Record<string, typeof zxcvbnEnPackage> = {
|
const zxcvbnLangPackages: Record<string, typeof zxcvbnEnPackage> = {
|
||||||
de: zxcvbnDePackage,
|
de: zxcvbnDePackage,
|
||||||
en: zxcvbnEnPackage,
|
en: zxcvbnEnPackage,
|
||||||
fr: zxcvbnFrPackage,
|
fr: zxcvbnFrPackage,
|
||||||
|
it: zxcvbnItPackage,
|
||||||
// no package available for norwegian bokmal, fallback on english
|
// no package available for norwegian bokmal, fallback on english
|
||||||
nb: zxcvbnEnPackage,
|
nb: zxcvbnEnPackage,
|
||||||
// no package available for dutch (Nederlands), fallback on english
|
// no package available for dutch (Nederlands), fallback on english
|
||||||
|
@ -2160,6 +2160,11 @@
|
|||||||
resolved "https://registry.yarnpkg.com/@zxcvbn-ts/language-fr/-/language-fr-2.2.0.tgz#0b7dd93ebba0044fbe733836bc7091b76d42afe1"
|
resolved "https://registry.yarnpkg.com/@zxcvbn-ts/language-fr/-/language-fr-2.2.0.tgz#0b7dd93ebba0044fbe733836bc7091b76d42afe1"
|
||||||
integrity sha512-KK+vIXm17mZyo7jLmV4T0fT6hh5NOBABdmkCBVpLyXq+rlZpdaz6HgoYLjqq2JbEU3KSZ+gv6qW+2N4dMk3Tlw==
|
integrity sha512-KK+vIXm17mZyo7jLmV4T0fT6hh5NOBABdmkCBVpLyXq+rlZpdaz6HgoYLjqq2JbEU3KSZ+gv6qW+2N4dMk3Tlw==
|
||||||
|
|
||||||
|
"@zxcvbn-ts/language-it@^2.1.0":
|
||||||
|
version "2.1.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/@zxcvbn-ts/language-it/-/language-it-2.1.0.tgz#43dc6909eeaf64ec81a3efbfc761ae2b9253706b"
|
||||||
|
integrity sha512-ABYJp2HobzQ9B2PAbvNcEY7P7tFpa2TjFpINjkNdm/+zp+wSS5jrRP+siRH9dkXBI79jtwdliQ6uCdP9s4Sm8w==
|
||||||
|
|
||||||
abab@^2.0.5, abab@^2.0.6:
|
abab@^2.0.5, abab@^2.0.6:
|
||||||
version "2.0.6"
|
version "2.0.6"
|
||||||
resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291"
|
resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291"
|
||||||
|
Loading…
Reference in New Issue
Block a user