diff --git a/app/.vitepress/src/components/FloatingButtonDocs.vue b/app/.vitepress/src/components/FloatingButtonDocs.vue
index 8bc53b235..4f6bc1d45 100644
--- a/app/.vitepress/src/components/FloatingButtonDocs.vue
+++ b/app/.vitepress/src/components/FloatingButtonDocs.vue
@@ -141,7 +141,7 @@ const floatData = reactive([
text: computed(() => t('feedback.forum')),
textMb: computed(() => t('feedback.forumHelp')),
tip: computed(() => t('feedback.forumTip')),
- link: 'https://forum.openeuler.org/',
+ link: import.meta.env.VITE_SERVICE_FORUM_URL,
},
{
img: computed(() => {
@@ -152,7 +152,7 @@ const floatData = reactive([
text2: 'Issue',
textMb: 'QuickIssue',
tip: computed(() => t('feedback.quickIssueTip')),
- link: 'https://quickissue.openeuler.org/zh/issues/',
+ link: `${import.meta.env.VITE_SERVICE_QUICKISSUE_URL}/zh/issues/`,
},
{
img: computed(() => {
diff --git a/app/.vitepress/src/components/doc/DocBugDialog.vue b/app/.vitepress/src/components/doc/DocBugDialog.vue
index dd112543f..61afdebff 100644
--- a/app/.vitepress/src/components/doc/DocBugDialog.vue
+++ b/app/.vitepress/src/components/doc/DocBugDialog.vue
@@ -27,6 +27,7 @@ import { submitDocsBug } from '@/api/api-feedback';
import { useLocale } from '@/composables/useLocale';
+const VITE_MAIN_DOMAIN_URL = import.meta.env.VITE_MAIN_DOMAIN_URL;
const message = useMessage();
const { t, locale } = useLocale();
const { page } = useData();
@@ -272,7 +273,7 @@ const change = (visible: boolean) => {
{{ t('feedback.bugPostPrivacyPolicy') }}
- {{ t('feedback.privacyPolicy') }}
+ {{ t('feedback.privacyPolicy') }}
diff --git a/app/.vitepress/src/components/doc/DocFooter.vue b/app/.vitepress/src/components/doc/DocFooter.vue
index dfda3af8e..c8e31fcdb 100644
--- a/app/.vitepress/src/components/doc/DocFooter.vue
+++ b/app/.vitepress/src/components/doc/DocFooter.vue
@@ -17,7 +17,7 @@ defineProps({
},
});
-const baseUrl = 'https://www.openeuler.org';
+const baseUrl = import.meta.env.VITE_MAIN_DOMAIN_URL;
const { t } = useLocale();
diff --git a/app/.vitepress/src/components/feedback/FeedbackSlider.vue b/app/.vitepress/src/components/feedback/FeedbackSlider.vue
index 8e45d20e7..5e37b16a5 100644
--- a/app/.vitepress/src/components/feedback/FeedbackSlider.vue
+++ b/app/.vitepress/src/components/feedback/FeedbackSlider.vue
@@ -35,7 +35,7 @@ const marks = computed(() => {
return temp;
});
-const forumLink = 'https://forum.openeuler.org/';
+const forumLink = import.meta.env.VITE_SERVICE_FORUM_URL;
const placeholder = computed(() => {
if (score.value / 10 < 7) {
diff --git a/app/.vitepress/src/components/feedback/FloatingButtonHome.vue b/app/.vitepress/src/components/feedback/FloatingButtonHome.vue
index 5defc826d..0bbe74f83 100644
--- a/app/.vitepress/src/components/feedback/FloatingButtonHome.vue
+++ b/app/.vitepress/src/components/feedback/FloatingButtonHome.vue
@@ -56,7 +56,7 @@ const floatData = ref([
text: t('feedback.forum'),
textMb: t('feedback.forumHelp'),
tip: t('feedback.forumTip'),
- link: 'https://forum.openeuler.org/',
+ link: import.meta.env.VITE_SERVICE_FORUM_URL,
},
{
img: computed(() => {
@@ -67,7 +67,7 @@ const floatData = ref([
text2: 'Issue',
textMb: 'QuickIssue',
tip: t('feedback.quickIssueTip'),
- link: 'https://quickissue.openeuler.org/zh/issues/',
+ link: `${import.meta.env.VITE_SERVICE_QUICKISSUE_URL}/zh/issues/`,
},
{
img: computed(() => {
diff --git a/app/.vitepress/src/components/header/AppHeader.vue b/app/.vitepress/src/components/header/AppHeader.vue
index 5f464c5f7..9ed3cc4f1 100644
--- a/app/.vitepress/src/components/header/AppHeader.vue
+++ b/app/.vitepress/src/components/header/AppHeader.vue
@@ -28,7 +28,7 @@ const logoUrl = computed(() => (appearanceStore.theme === 'light' ? logo_light :
// 返回首页
const goHome = () => {
menuShow.value = false;
- window.location.href = `https://www.openeuler.org/${lang.value}/`;
+ window.location.href = `${import.meta.env.VITE_MAIN_DOMAIN_URL}/${lang.value}/`;
};
const mobileNav = ref();
diff --git a/app/.vitepress/src/components/header/HeaderLogin.vue b/app/.vitepress/src/components/header/HeaderLogin.vue
index 706dd9770..7a4bc5755 100644
--- a/app/.vitepress/src/components/header/HeaderLogin.vue
+++ b/app/.vitepress/src/components/header/HeaderLogin.vue
@@ -21,7 +21,7 @@ const jumpToUserZone = () => {
};
const jumpToMsgCenter = () => {
- windowOpen(import.meta.env.VITE_MESSAGE_CENTER_URL);
+ windowOpen(import.meta.env.VITE_SERVICE_MESSAGE_CENTER_URL);
};
const unreadMsgCount = ref(0);
diff --git a/app/.vitepress/src/components/header/NavLink.vue b/app/.vitepress/src/components/header/NavLink.vue
index 1cbb6c495..6ed81846f 100644
--- a/app/.vitepress/src/components/header/NavLink.vue
+++ b/app/.vitepress/src/components/header/NavLink.vue
@@ -33,7 +33,7 @@ const linkClick = () => {
if (props.url.startsWith('/download/')) {
getDownloadQuery(props.url);
}
- window.open(`https://www.openeuler.org/${locale.value}${props.url}`);
+ window.open(`${import.meta.env.VITE_MAIN_DOMAIN_URL}/${locale.value}${props.url}`);
};
const getDownloadQuery = (url: string) => {
diff --git a/app/.vitepress/src/config/footer.ts b/app/.vitepress/src/config/footer.ts
index 7d001c5e9..78cd7b6d1 100644
--- a/app/.vitepress/src/config/footer.ts
+++ b/app/.vitepress/src/config/footer.ts
@@ -24,6 +24,7 @@ import LogoLinkedinHover from '@/assets/category/footer/linkdin_hover.png';
import LogoYoutubeHover from '@/assets/category/footer/youtube_hover.png';
import LogoTwitterHover from '@/assets/category/footer/x_hover.png';
+
// 媒体链接
export const linksData = {
zh: [
@@ -117,37 +118,37 @@ export const linksData2 = {
zh: [
{
NAME: '品牌',
- URL: 'https://www.openeuler.org/zh/other/brand/',
+ URL: `${import.meta.env.VITE_MAIN_DOMAIN_URL}/zh/other/brand/`,
},
{
NAME: '隐私政策',
- URL: 'https://www.openeuler.org/zh/other/privacy/',
+ URL: `${import.meta.env.VITE_MAIN_DOMAIN_URL}/zh/other/privacy/`,
},
{
NAME: '法律声明',
- URL: 'https://www.openeuler.org/zh/other/legal/',
+ URL: `${import.meta.env.VITE_MAIN_DOMAIN_URL}/zh/other/legal/`,
},
{
NAME: '关于cookies',
- URL: 'https://www.openeuler.org/zh/other/cookies/',
+ URL: `${import.meta.env.VITE_MAIN_DOMAIN_URL}/zh/other/cookies/`,
},
],
en: [
{
NAME: 'Trademark',
- URL: 'https://www.openeuler.org/en/other/brand/',
+ URL: `${import.meta.env.VITE_MAIN_DOMAIN_URL}/en/other/brand/`,
},
{
NAME: 'Privacy Policy',
- URL: 'https://www.openeuler.org/en/other/privacy/',
+ URL: `${import.meta.env.VITE_MAIN_DOMAIN_URL}/en/other/privacy/`,
},
{
NAME: 'Legal Notice',
- URL: 'https://www.openeuler.org/en/other/legal/',
+ URL: `${import.meta.env.VITE_MAIN_DOMAIN_URL}/en/other/legal/`,
},
{
NAME: 'About Cookies',
- URL: 'https://www.openeuler.org/en/other/cookies/',
+ URL: `${import.meta.env.VITE_MAIN_DOMAIN_URL}/en/other/cookies/`,
},
],
};
@@ -171,7 +172,7 @@ export const quickNav = {
},
{
title: '贡献看板',
- link: 'https://datastat.openeuler.org/zh/overview',
+ link: `${import.meta.env.VITE_SERVICE_DATASTAT_URL}/zh/overview`,
},
{
title: '社区介绍',
@@ -213,7 +214,7 @@ export const quickNav = {
},
{
title: '软件中心',
- link: 'https://easysoftware.openeuler.org/zh',
+ link: `${import.meta.env.VITE_SERVICE_SOFTWARE_URL}/zh`,
},
],
},
@@ -222,11 +223,11 @@ export const quickNav = {
list: [
{
title: '文档',
- link: 'https://docs.openeuler.org/zh/',
+ link: `${import.meta.env.VITE_SERVICE_DOCS_URL}/zh/`,
},
{
title: 'FAQ',
- link: 'https://www.openeuler.org/zh/faq/',
+ link: `${import.meta.env.VITE_MAIN_DOMAIN_URL}/zh/faq/`,
},
{
title: '联系我们',
@@ -251,7 +252,7 @@ export const quickNav = {
},
{
title: '论坛',
- link: 'https://forum.openeuler.org/',
+ link: import.meta.env.VITE_SERVICE_FORUM_URL,
},
],
},
@@ -291,7 +292,7 @@ export const quickNav = {
},
{
title: 'Statistics',
- link: 'https://datastat.openeuler.org/en/overview',
+ link: `${import.meta.env.VITE_SERVICE_DATASTAT_URL}/en/overview`,
},
],
},
@@ -329,7 +330,7 @@ export const quickNav = {
},
// {
// title: '软件中心',
- // link: 'https://easysoftware.openeuler.org/en',
+ // link: `${import.meta.env.VITE_SERVICE_SOFTWARE_URL}/en`,
// },
],
},
@@ -338,11 +339,11 @@ export const quickNav = {
list: [
{
title: 'Documentation',
- link: 'https://docs.openeuler.org/en/',
+ link: `${import.meta.env.VITE_SERVICE_DOCS_URL}/en/`,
},
{
title: 'FAQ',
- link: 'https://www.openeuler.org/en/faq/',
+ link: `${import.meta.env.VITE_MAIN_DOMAIN_URL}/en/faq/`,
},
{
title: 'Contact Us',
@@ -367,7 +368,7 @@ export const quickNav = {
},
{
title: 'Forum',
- link: 'https://forum.openeuler.org/',
+ link: import.meta.env.VITE_SERVICE_FORUM_URL,
},
],
},
diff --git a/app/.vitepress/src/i18n/header/header-en.ts b/app/.vitepress/src/i18n/header/header-en.ts
index a56642af6..16cf05923 100644
--- a/app/.vitepress/src/i18n/header/header-en.ts
+++ b/app/.vitepress/src/i18n/header/header-en.ts
@@ -82,11 +82,11 @@ export default {
},
{
NAME: 'openEuler 25.03 Installation Guide',
- URL: 'https://docs.openeuler.org/en/docs/25.03/server/installation_upgrade/installation/installation-preparations.html',
+ URL: `${import.meta.env.VITE_SERVICE_DOCS_URL}/en/docs/25.03/server/installation_upgrade/installation/installation-preparations.html`,
},
{
NAME: 'openEuler 24.03 LTS SP1 Installation Guide',
- URL: 'https://docs.openeuler.org/en/docs/24.03_LTS_SP1/docs/Installation/Installation.html',
+ URL: `${import.meta.env.VITE_SERVICE_DOCS_URL}/en/docs/24.03_LTS_SP1/docs/Installation/Installation.html`,
},
{
NAME: 'Technical White Papers',
@@ -136,7 +136,7 @@ export default {
{
NAME: 'Submit Package',
DESCRIPTION: 'Contribute software packages efficiently to the community.',
- URL: 'https://software-pkg.openeuler.org/en/package',
+ URL: `${import.meta.env.VITE_SERVICE_SOFTWARE_PKG_URL}/en/package`,
},
],
},
@@ -157,7 +157,7 @@ export default {
{
NAME: 'Pkgship',
DESCRIPTION: 'A tool to query OS package information and dependencies with ease.',
- URL: 'https://pkgmanage.openeuler.org/',
+ URL: import.meta.env.VITE_SERVICE_PKGMANAGE_URL,
ANALYTICSNAME: 'pkgship',
},
],
@@ -206,18 +206,18 @@ export default {
NAME: 'Document Center',
DESCRIPTION: 'Your go-to resource for different service scenarios and tool usage.',
TAG: TAG_TYPE.HOT,
- URL: 'https://docs.openeuler.org/en/',
+ URL: `${import.meta.env.VITE_SERVICE_DOCS_URL}/en/`,
},
{
NAME: 'Quick Start',
DESCRIPTION: 'Learn the community essentials in 10 minutes, build and grow quickly.',
TAG: TAG_TYPE.HOT,
- URL: 'https://docs.openeuler.org/en/docs/25.03/server/quickstart/quickstart/quick-start.html',
+ URL: `${import.meta.env.VITE_SERVICE_DOCS_URL}/en/docs/25.03/server/quickstart/quickstart/quick-start.html`,
},
{
NAME: 'Installation Guide',
DESCRIPTION: 'Step-by-step instructions for installing openEuler.',
- URL: 'https://docs.openeuler.org/en/docs/25.03/server/installation_upgrade/installation/installation-preparations.html',
+ URL: `${import.meta.env.VITE_SERVICE_DOCS_URL}/en/docs/25.03/server/installation_upgrade/installation/installation-preparations.html`,
},
],
},
@@ -325,7 +325,7 @@ export default {
{
NAME: 'Statistics',
DESCRIPTION: 'Find stats and see how the openEuler community thrives.',
- URL: 'https://datastat.openeuler.org/en/overview',
+ URL: `${import.meta.env.VITE_SERVICE_DATASTAT_URL}/en/overview`,
},
{
NAME: 'Contact Us',
@@ -350,7 +350,7 @@ export default {
{
NAME: 'Forum',
DESCRIPTION: 'Share knowledge, ask anything, and solve together.',
- URL: 'https://forum.openeuler.org/?locale=en',
+ URL: `${import.meta.env.VITE_SERVICE_FORUM_URL}/?locale=en`,
},
{
NAME: 'Mailing Lists',
@@ -360,7 +360,7 @@ export default {
{
NAME: 'QuickIssue',
DESCRIPTION: 'Submit and track community issues quickly and easily.',
- URL: 'https://quickissue.openeuler.org/en/issues/',
+ URL: `${import.meta.env.VITE_SERVICE_QUICKISSUE_URL}/en/issues/`,
},
],
},
diff --git a/app/.vitepress/src/i18n/header/header-zh.ts b/app/.vitepress/src/i18n/header/header-zh.ts
index ac09b1303..9a8a4ec1e 100644
--- a/app/.vitepress/src/i18n/header/header-zh.ts
+++ b/app/.vitepress/src/i18n/header/header-zh.ts
@@ -65,7 +65,7 @@ export default {
{
NAME: '软件中心',
DESCRIPTION: '查询openEuler社区软件包',
- URL: 'https://easysoftware.openeuler.org/zh',
+ URL: `${import.meta.env.VITE_SERVICE_SOFTWARE_URL}/zh`,
},
{
NAME: '镜像仓列表',
@@ -91,11 +91,11 @@ export default {
},
{
NAME: '25.03安装指南',
- URL: 'https://docs.openeuler.org/zh/docs/25.03/server/installation_upgrade/installation/installation-preparations.html',
+ URL: `${import.meta.env.VITE_SERVICE_DOCS_URL}/zh/docs/25.03/server/installation_upgrade/installation/installation-preparations.html`,
},
{
NAME: '24.03 LTS SP1安装指南',
- URL: 'https://docs.openeuler.org/zh/docs/24.03_LTS_SP1/docs/Installation/installation.html',
+ URL: `${import.meta.env.VITE_SERVICE_DOCS_URL}/zh/docs/24.03_LTS_SP1/docs/Installation/installation.html`,
},
{
NAME: '技术白皮书',
@@ -150,12 +150,12 @@ export default {
{
NAME: '软件包贡献',
DESCRIPTION: '简单高效地贡献软件包',
- URL: 'https://software-pkg.openeuler.org/zh/package',
+ URL: `${import.meta.env.VITE_SERVICE_SOFTWARE_PKG_URL}/zh/package`,
},
{
NAME: 'License工具门户',
DESCRIPTION: '检测License权利、义务、限制',
- URL: 'https://compliance.openeuler.org/',
+ URL: import.meta.env.VITE_SERVICE_COMPLIANCE_URL,
ICON: OutLink,
ANALYTICSNAME: 'license',
},
@@ -196,7 +196,7 @@ export default {
{
NAME: 'Pkgship',
DESCRIPTION: '管理操作系统软件包信息和依赖项的查询工具',
- URL: 'https://pkgmanage.openeuler.org/',
+ URL: import.meta.env.VITE_SERVICE_PKGMANAGE_URL,
ANALYTICSNAME: 'pkgship',
},
],
@@ -264,28 +264,28 @@ export default {
NAME: '文档中心',
DESCRIPTION: '提供各业务场景及工具使用所需的文档手册',
TAG: TAG_TYPE.HOT,
- URL: 'https://docs.openeuler.org/zh/',
+ URL: `${import.meta.env.VITE_SERVICE_DOCS_URL}/zh/`,
},
{
NAME: '新手入门',
DESCRIPTION: '10分钟玩转社区,快速构建与成长',
TAG: TAG_TYPE.HOT,
- URL: 'https://docs.openeuler.org/zh/docs/25.03/server/quickstart/quickstart/quick-start.html',
+ URL: `${import.meta.env.VITE_SERVICE_DOCS_URL}/zh/docs/25.03/server/quickstart/quickstart/quick-start.html`,
},
{
NAME: '安装指南',
DESCRIPTION: '指导用户顺利完成 openEuler 操作系统安装',
- URL: 'https://docs.openeuler.org/zh/docs/25.03/server/installation_upgrade/installation/installation-preparations.html',
+ URL: `${import.meta.env.VITE_SERVICE_DOCS_URL}/zh/docs/25.03/server/installation_upgrade/installation/installation-preparations.html`,
},
{
NAME: '常见问题',
DESCRIPTION: '常见问题解决方法',
- URL: 'https://docs.openeuler.org/zh/docs/common/faq/general/general_faq.html',
+ URL: `${import.meta.env.VITE_SERVICE_DOCS_URL}/zh/docs/common/faq/general/general_faq.html`,
},
{
NAME: '文档开发指南',
DESCRIPTION: '参与文档开发的方式',
- URL: 'https://docs.openeuler.org/zh/docs/common/contribute/directory_structure_introductory.html',
+ URL: `${import.meta.env.VITE_SERVICE_DOCS_URL}/zh/docs/common/contribute/directory_structure_introductory.html`,
},
],
},
@@ -371,7 +371,7 @@ export default {
{
NAME: '兼容性技术测评',
DESCRIPTION: '帮助企业快速申请兼容性技术测评',
- URL: 'https://certification.openeuler.org/#/',
+ URL: `${import.meta.env.VITE_SERVICE_CERTIFICATION_URL}/#/`,
},
{
NAME: 'OSV技术测评',
@@ -469,7 +469,7 @@ export default {
{
NAME: '贡献看板',
DESCRIPTION: '查看openEuler社区数据',
- URL: 'https://datastat.openeuler.org/zh/overview',
+ URL: `${import.meta.env.VITE_SERVICE_DATASTAT_URL}/zh/overview`,
},
{
NAME: '联系我们',
@@ -499,7 +499,7 @@ export default {
{
NAME: '论坛',
DESCRIPTION: '与开发者讨论openEuler',
- URL: 'https://forum.openeuler.org/?locale=zh_CN',
+ URL: `${import.meta.env.VITE_SERVICE_FORUM_URL}/?locale=zh_CN`,
},
{
NAME: '邮件列表',
@@ -514,7 +514,7 @@ export default {
{
NAME: 'QuickIssue',
DESCRIPTION: '简易快捷地查询、提交社区Issues',
- URL: 'https://quickissue.openeuler.org/zh/issues/',
+ URL: `${import.meta.env.VITE_SERVICE_QUICKISSUE_URL}/zh/issues/`,
},
],
},
@@ -522,7 +522,7 @@ export default {
SHORTCUT: [
{
NAME: 'openEuler社区介绍PDF',
- URL: 'https://www.openeuler.org/whitepaper/openEuler %E5%BC%80%E6%BA%90%E7%A4%BE%E5%8C%BA%E4%BB%8B%E7%BB%8D.pdf',
+ URL: `${import.meta.env.VITE_MAIN_DOMAIN_URL}/whitepaper/openEuler %E5%BC%80%E6%BA%90%E7%A4%BE%E5%8C%BA%E4%BB%8B%E7%BB%8D.pdf`,
},
],
},
@@ -625,7 +625,7 @@ export default {
},
{
NAME: 'LFS文件管理',
- PATH: 'https://artlfs-website.openeuler.org/',
+ PATH: import.meta.env.VITE_SERVICE_ARTLFS_WEBSITE_URL,
},
],
};
--
Gitee
From ddb347178beec6d8d8abf6f3e4daed052369827b Mon Sep 17 00:00:00 2001
From: luckyasme <807254037@qq.com>
Date: Thu, 22 May 2025 18:53:57 +0800
Subject: [PATCH 3/3] =?UTF-8?q?fix:=20=E6=96=87=E6=A1=A3=E5=86=85=E5=AE=B9?=
=?UTF-8?q?footer=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../src/assets/category/footer/police.png | Bin 0 -> 2715 bytes
app/.vitepress/src/components/AppFooter.vue | 44 ++++++-
.../src/components/doc/DocFooter.vue | 107 +++++++++++++-----
app/.vitepress/src/config/footer.ts | 6 +
app/.vitepress/src/i18n/footer/footer-en.ts | 2 +
app/.vitepress/src/i18n/footer/footer-zh.ts | 2 +
6 files changed, 124 insertions(+), 37 deletions(-)
create mode 100644 app/.vitepress/src/assets/category/footer/police.png
diff --git a/app/.vitepress/src/assets/category/footer/police.png b/app/.vitepress/src/assets/category/footer/police.png
new file mode 100644
index 0000000000000000000000000000000000000000..116368e79ceab8617d988f4aa4b5a722dbff185b
GIT binary patch
literal 2715
zcmV;M3S{+(P)w%>!2iociw51nX=(%r?&3U%q+GpxTdGv<8cgzVf
zZnzG?b&QWA_pIKtd2S(oX5v_H^?^4uJzeJh4;A^f?J1+WgSHtea7dKPnHi7$lY+@p
zebx_UJb0^!Z&_uZYgK~Jto_8Z(_Dw*IzIpFzZ_id^2m24#iM`wa)X<0tTX;l&Lg)+
z6rzZ1HX)tQ$lE!>2wH=Rd$$_at_b+gH%ol$hf=Q`Fau3Lefew8pF7WWXnumd_(#E8
zKR9vkJ7@XKi*FVA$d&@*4|iGZ_h=uFG5^y>%vtox8pJvAdsFmBJ-qE@?%GhH@|fi>
zz8!Gzw5Z-N(EY=yeYd<@e)!UFymTV}^M83ojzzM@
zpME^z)}cPVH$&v%4$h*$Z543uTZd>U)TIvYk|vu?F}`GIRM4m>o;f0QJIdBt6K&|7
z?DFKt*Ds80|IN$uUU*&RFDCgPD&IJ&PDABi@eCOA=A@$=;qr
zO!v{#Ir-@xGP68zJ2WdUM=m${&Kq^nOI;_ZpZ2&$T5H9zefR%jq4BF<2`c{jfr3C`
zDY%j~BQ=z&z?B|g5myt;Qcl_`VJiY#Q=~zy^0>HYin%N?U1_+;0N0%0~O1;c}tRnbQjtn#Ad)_#^&D%U)6045LLaXdz?wQHH>92<
z-!O>SF^1h#fSVL{bCG;a2^%OZ21b3-EaQ!{9lD{xm(Z$%E*3GymEBJ6d~W=6RzLL3
z$&pS`Z?ITo)aQe(3f2e~`hu5E!LCgi$&HqDph?gw6KO$m=>)z9($Ppyp*~!~-#v=w
zSHSHt`}Vs`95?jh0@bEvq>_;=#7L`$MQ`E3|N8R1FKJ=yUSqQ@{YauP+&r3tF!W-{
zYv%-~&bL`L;NiFdox`(;1ZPz*l0#1iP8?_R?sT+85@8c$%XlVfBJTWd~pdKDQfGA_;U#r+|#AFfDb#hrMclB&XJzp+)
zb1F>-tmERP3A=AGeD$CPAu%(OIBpYPPVlxC3HG*dOGQL1p=1#c6|lx9er=X$a+<|%
z%GGw0%xVG;cB~Wlj!TxNavaAc
z*j&dXitzXpM&_h#gLt*g)!CFN?cqBO9@}AQ)?Fm0RrTEMF0>{E0!~K}EZ_ctgizvF5+1eFE4g*UmZ3J@#k8+Z6
zv@bboOWd)+;bXTXI3mYJ8F8Fo&EjZ)d@9pvTgP4diZ?&=Kyhf0Xl5GIiP0s&`dW`q
z-&5lY2UhTJNe6NZGT=Yb2xW5yx`xz9I;kMdB=j|qAe75ktH|%(lToEhG9MxYx{Wsve8s(#7Tt71!A$sed`tP?5J>dsz$3RIeFRQ$`W_nsMvi=
zLN^ci<_|3=-%V*%EK7Y$j^v47Fx(u>5MJ)0D*?JvK?@I0+oe2>zh|4x9|)G6_{PT`
zC>FiHSEb6T&eA+dw@*CNMfnO-DzOy1)C!WruO|#vB{z+EjEuQRzsZ5gkPGJ**|^eh
z_F_&Z9qt~Q!%I5If=_wn08XKV&P|xK7hmWJp4#%M7taWmSvxMz?>qJhw0%lDa#Oz>
zl7ulfPO-V6G+ZS~6zNQxG|I?;=K4X5QG}g7;Y=6lI4B`V`hB|Xi0WX4!eEI)QKOaU
zT5DcNF<)5!@bj;*Oz=Lhe(CNfnnS_gNZ+p|LX-AVOn(XOIRy0*X*VToM<`FBMNYI7
z({IPjFA0WLm#EY<(-%YhQh{RKLzCcpCJe*u`wO$-XYc&u!>@CVVA;WgJGK8x^apvC
zJt3;ajkTeQ4~ooalxZU!f#jUzfUZNh$rkP;&_
z##sD?;
zRV?5Xd~yWZ529+LFqO^E98R+Ag`&t_j%ux`HTV2u#QO+-3VU!|U*JN?$-|-UY
-
- {{ t('footer.copyRight', [getYearByOffset()]) }}
-
{{ t('footer.license_1') }}
{{ t('footer.license_2') }}
+
+
+ {{ t('footer.copyRight', [getYearByOffset()]) }}
+
+
+