You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

561 lines
20 KiB

<template>
<div class="footer">
<v-card flat width="100%" color="transparent" :height="width > 960 ? '335' : 'auto'"
class="d-flex align-center flex-column pt-14" style="background: #f8f8f8; font-size: 12px">
<v-card flat color="transparent" class="d-none d-sm-flex flex-row justify-space-around"
style="width: 100%; max-width: 1366px">
<v-card flat color="transparent" class="hidden-sm-and-down">
<v-img max-width="180px" max-height="127px" contain :src="require('@/assets/svg/logo_footer_v3.svg')"
class="mx-auto my-auto"></v-img>
</v-card>
<v-card flat color="transparent" class="px-10">
<v-card width="100%" height="100%" color="transparent" flat>
<div v-for="i in showEasy.length" :key="i" width="100%" :class="i == 1 ? 'primary--text mb-3' : 'mb-2'"
:style="i == 1 ? 'font-size: 14px' : ''">
<nuxt-link v-if="
showEasy[i - 1] === 'About Us' || showEasy[i - 1] === 'FAQ'
" :to="localePath(showEasyPath[i - 1])" class="remove-underline">
{{ $t(showEasy[i - 1]) }}
</nuxt-link>
<a v-else-if="showEasy[i - 1] === 'Recruitment'" :href="showEasyPath[i - 1]" class="remove-underline"
target="_blank">
{{ $t(showEasy[i - 1]) }}
</a>
<div v-else>
{{ $t(showEasy[i - 1]) }}
</div>
</div>
<!-- <nuxt-link
v-for="i in showEasy.length"
:key="i"
:to="localePath(showEasyPath[i - 1])"
class="remove-underline"
>
<div
width="100%"
:class="i == 1 ? 'primary--text mb-3' : 'mb-2'"
:style="i == 1 ? 'font-size: 14px' : ''"
>
{{ $t(showEasy[i - 1]) }}
</div>
</nuxt-link> -->
</v-card>
</v-card>
<v-card flat color="transparent" class="px-10">
<v-card v-if="$i18n.locale == 'zh-tw'" width="100%" height="50%" color="transparent" flat>
<div v-for="i in forExhibitorAndVIsitor.length" :key="i" width="100%"
:class="i == 1 ? 'primary--text mb-3' : 'mb-2'" :style="i == 1 ? 'font-size: 14px' : ''">
<!-- <nuxt-link v-if="forExhibitorAndVIsitor[i-1] !== 'Blog'" :to="localePath(forExhibitorAndVIsitorPath[i - 1])"
class="remove-underline">
{{ $t(forExhibitorAndVIsitor[i - 1]) }}
</nuxt-link> -->
<a v-if="forExhibitorAndVIsitor[i - 1] === 'Blog'" :href="forExhibitorAndVIsitorPath[i - 1]"
class="remove-underline" target="_blank">
{{ $t(forExhibitorAndVIsitor[i - 1]) }}
</a>
<div v-else>
{{ $t(forExhibitorAndVIsitor[i - 1]) }}
</div>
</div>
</v-card>
<v-card v-else width="100%" height="50%" color="transparent" flat>
<div v-for="i in forExhibitorAndVIsitor.length" :key="i" width="100%"
:class="i == 1 ? 'primary--text mb-3' : 'mb-2'" :style="i == 1 ? 'font-size: 14px' : ''">
<!-- <nuxt-link v-if="forExhibitorAndVIsitor[i-1] !== 'Blog'" :to="localePath(forExhibitorAndVIsitorPath[i - 1])"
class="remove-underline">
{{ $t(forExhibitorAndVIsitor[i - 1]) }}
</nuxt-link> -->
<a v-if="forExhibitorAndVIsitor[i - 1] === 'Blog'" :href="forExhibitorAndVIsitorPath_en[i - 1]"
class="remove-underline" target="_blank">
{{ $t(forExhibitorAndVIsitor[i - 1]) }}
</a>
<div v-else>
{{ $t(forExhibitorAndVIsitor[i - 1]) }}
</div>
</div>
</v-card>
<div v-show="$i18n.locale == 'zh-tw'">
<v-card width="100%" height="50%" color="transparent" flat :class="width > 960 ? '' : 'mt-10'">
<div v-for="i in forPartner.length" :key="i" width="100%" :class="i == 1 ? 'primary--text mb-3' : 'mb-2'"
:style="i == 1 ? 'font-size: 14px' : ''">
<a v-if="forPartner[i - 1] === 'Become Partner'" :href="forPartnerPath[i - 1]" class="remove-underline"
target="_blank">
{{ $t(forPartner[i - 1]) }}
</a>
<div v-else>
{{ $t(forPartner[i - 1]) }}
</div>
</div>
</v-card>
</div>
</v-card>
<v-card flat color="transparent">
<v-card width="100%" height="50%" color="transparent" flat>
<div width="100%" :class="i == 1 ? 'primary--text mb-3' : 'mb-2'" :style="i == 1 ? 'font-size: 14px' : ''"
v-for="i in termsOfUse.length" :key="i">
<span v-if="i === 1">{{ $t(termsOfUse[i - 1]) }}</span>
<nuxt-link :to="localePath(termsOfUsePath[i - 1])" class="remove-underline" v-if="i > 1">
{{ $t(termsOfUse[i - 1]) }}
</nuxt-link>
</div>
</v-card>
<v-card flat color="transparent" width="100%" height="50%" class="hidden-sm-and-down">
<div width="100%" class="primary--text mb-3 mt-8" style="font-size: 14px; line-height: 30px">
{{ $t("Follow Us") }}
</div>
<div>
<div class="d-flex flex-row" v-if="$i18n.locale == 'zh-tw'">
<a :href="FollowUsPath[i - 1]" v-for="i in FollowUsIcon.length" :key="i" style="margin: 0 10px 0 0"
target="_blank">
<v-img max-width="24" :src="require(`@/assets/svg/${FollowUsIcon[i - 1]}.svg`)"></v-img>
</a>
</div>
<div v-else class="d-flex flex-row">
<a :href="FollowUsPath_en[i - 1]" v-for="i in FollowUsIcon.length" :key="i" style="margin: 0 10px 0 0"
target="_blank">
<v-img max-width="24" :src="require(`@/assets/svg/${FollowUsIcon[i - 1]}.svg`)"></v-img>
</a>
</div>
<!-- <nuxt-link
:to="localePath(FollowUsPath[i - 1])"
v-for="i in FollowUsIcon.length"
:key="i"
style="margin: 0 10px 0 0;"
>
<v-img
max-width="24"
:src="require(`@/assets/svg/${FollowUsIcon[i - 1]}.svg`)"
></v-img>
</nuxt-link> -->
</div>
</v-card>
<div width="100%" height="50%" class="hidden-md-and-up" :class="width > 960 ? '' : 'mt-10'">
<div width="100%" class="primary--text mb-3" style="font-size: 14px">
{{ $t("Contact Us") }}
</div>
<a :href="contactPath[i - 1]" class="remove-underline" v-for="i in contact.length" :key="i">
<div class="d-flex flex-row mb-2">
<v-img max-width="20" contain class="mr-3" :src="
i == 1
? require('@/assets/svg/phone.svg')
: require('@/assets/svg/envelop.svg')
"></v-img>
<div>{{ $t(contact[i - 1]) }}</div>
</div>
</a>
</div>
</v-card>
<v-card flat color="transparent" cols="2" class="hidden-sm-and-down">
<div width="100%" height="50%">
<div width="100%" class="primary--text mb-3" style="font-size: 14px">
{{ $t("Contact Us") }}
</div>
<a :href="contactPath[i - 1]" class="remove-underline" v-for="i in contact.length" :key="i">
<div class="d-flex flex-row mb-1">
<v-img max-width="20" contain class="mr-3" :src="
i == 1
? require('@/assets/svg/phone.svg')
: require('@/assets/svg/envelop.svg')
"></v-img>
<div>{{ $t(contact[i - 1]) }}</div>
</div>
</a>
</div>
</v-card>
</v-card>
<!-- phone menu -->
<v-card width="100%" height="auto" flat color="transparent" class="hidden-sm-and-up">
<v-expansion-panels accordion flat style="font-size: 12px">
<v-expansion-panel v-for="i in titles.length" :key="i" style="background: #f8f8f8">
<v-expansion-panel-header class="primary--text" expand-icon="mdi-plus">
{{ $t(titles[i - 1]) }}
</v-expansion-panel-header>
<v-expansion-panel-content>
<div v-if="$i18n.locale == 'zh-tw'">
<template v-for="j in total[i - 1].length">
<div :key="j" v-if="!!total[i - 1][j - 1]" class="my-2">
<a class="remove-underline my-n2" v-if="
total[i - 1][j - 1] === 'Recruitment' ||
total[i - 1][j - 1] === 'Blog'
" :href="totalPath[i - 1][j - 1]" target="_blank">
{{ $t(total[i - 1][j - 1]) }}
</a>
<span class="my-n2" v-else-if="
total[i - 1][j - 1] === 'Become Partner' ||
total[i - 1][j - 1] === 'Partner Login' ||
total[i - 1][j - 1] === 'ShowEasy Advantage' ||
total[i - 1][j - 1] === 'Press' ||
total[i - 1][j - 1] === 'News' ||
total[i - 1][j - 1] === 'Our Partner'
">
{{ $t(total[i - 1][j - 1]) }}
</span>
<nuxt-link v-else-if="i !== 4" :to="totalPath[i - 1][j - 1]" class="remove-underline my-n2">
{{ $t(total[i - 1][j - 1]) }}
</nuxt-link>
<div width="100%" class="my-2 d-flex flex-row" v-if="i === 4">
<v-img max-width="20" contain class="mr-3" :src="
j == 1
? require('@/assets/svg/phone.svg')
: require('@/assets/svg/envelop.svg')
"></v-img>
<div>
<a class="remove-underline" :href="totalPath[i - 1][j - 1]">
{{ $t(total[i - 1][j - 1]) }}
</a>
</div>
</div>
</div>
</template>
</div>
<div v-else>
<template v-for="j in total[i - 1].length">
<div :key="j" v-if="!!total[i - 1][j - 1]" class="my-2">
<a class="remove-underline my-n2" v-if="
total[i - 1][j - 1] === 'Recruitment' ||
total[i - 1][j - 1] === 'Blog'
" :href="totalPath_en[i - 1][j - 1]" target="_blank">
{{ $t(total[i - 1][j - 1]) }}
</a>
<span class="my-n2" v-else-if="
total[i - 1][j - 1] === 'Become Partner' ||
total[i - 1][j - 1] === 'Partner Login' ||
total[i - 1][j - 1] === 'ShowEasy Advantage' ||
total[i - 1][j - 1] === 'Press' ||
total[i - 1][j - 1] === 'News' ||
total[i - 1][j - 1] === 'Our Partner'
">
{{ $t(total[i - 1][j - 1]) }}
</span>
<nuxt-link v-else-if="i !== 4" :to="totalPath[i - 1][j - 1]" class="remove-underline my-n2">
{{ $t(total[i - 1][j - 1]) }}
</nuxt-link>
<div width="100%" class="my-2 d-flex flex-row" v-if="i === 4">
<v-img max-width="20" contain class="mr-3" :src="
j == 1
? require('@/assets/svg/phone.svg')
: require('@/assets/svg/envelop.svg')
"></v-img>
<div>
<a class="remove-underline" :href="totalPath[i - 1][j - 1]">
{{ $t(total[i - 1][j - 1]) }}
</a>
</div>
</div>
</div>
</template>
</div>
<!-- <nuxt-link
v-for="j in total[i - 1].length"
:key="j"
:to="localePath(totalPath[i - 1][j - 1])"
class="remove-underline"
v-if="!!total[i - 1][j - 1]"
>
<div width="100%" class="my-2 d-flex flex-row">
<v-img
max-width="20"
contain
class="mr-3"
v-if="i == 5"
:src="
j == 1
? require('@/assets/svg/phone.svg')
: require('@/assets/svg/envelop.svg')
"
></v-img>
<div>
<a class="remove-underline" :href="totalPath[i - 1][j - 1]">
{{ total[i - 1][j - 1] }}
</a>
</div>
</div>
</nuxt-link> -->
</v-expansion-panel-content>
<div v-if="i !== titles.length" class="mx-5 my-2" style="border-bottom: 1px solid #e5e5e5"></div>
</v-expansion-panel>
</v-expansion-panels>
<!-- <v-expansion-panels accordion flat style="font-size: 12px">
<v-expansion-panel style="background: #f8f8f8">
<v-expansion-panel-header
class="primary--text"
expand-icon="mdi-plus"
>
{{ $t(titles[0]) }}
</v-expansion-panel-header>
</v-expansion-panel>
<div
class="mx-5 my-2"
style="border-bottom: 1px solid #e5e5e5"
></div>
<v-expansion-panel style="background: #f8f8f8">
<v-expansion-panel-header
class="primary--text"
expand-icon="mdi-plus"
>
{{ $t(titles[1]) }}
</v-expansion-panel-header>
</v-expansion-panel>
<div
class="mx-5 my-2"
style="border-bottom: 1px solid #e5e5e5"
></div>
<v-expansion-panel style="background: #f8f8f8">
<v-expansion-panel-header
class="primary--text"
expand-icon="mdi-plus"
>
{{ $t(titles[2]) }}
</v-expansion-panel-header>
</v-expansion-panel>
<div
class="mx-5 my-2"
style="border-bottom: 1px solid #e5e5e5"
></div>
<v-expansion-panel style="background: #f8f8f8">
<v-expansion-panel-header
class="primary--text"
expand-icon="mdi-plus"
>
{{ $t(titles[3]) }}
</v-expansion-panel-header>
</v-expansion-panel>
<div
class="mx-5 my-2"
style="border-bottom: 1px solid #e5e5e5"
></div>
<v-expansion-panel style="background: #f8f8f8">
<v-expansion-panel-header
class="primary--text"
expand-icon="mdi-plus"
>
{{ $t(titles[4]) }}
</v-expansion-panel-header>
</v-expansion-panel>
</v-expansion-panels> -->
</v-card>
<!-- phone menu -->
<v-card width="100%" height="auto" flat color="transparent" class="hidden-md-and-up">
<v-card v-if="$i18n.locale == 'zh-tw'" flat color="transparent" :height="width > 600 ? '120' : '60'"
class="d-flex flex-row align-end" :class="width > 600 ? 'justify-center' : 'justify-start ml-3'">
<a :href="FollowUsPath[i - 1]" v-for="i in FollowUsIcon.length" :key="i" style="margin: 0 15px"
target="_blank">
<v-img width="32" :src="require(`@/assets/svg/${FollowUsIcon[i - 1]}.svg`)"></v-img>
</a>
</v-card>
<v-card v-else flat color="transparent" :height="width > 600 ? '120' : '60'" class="d-flex flex-row align-end"
:class="width > 600 ? 'justify-center' : 'justify-start ml-3'">
<a :href="FollowUsPath_en[i - 1]" v-for="i in FollowUsIcon.length" :key="i" style="margin: 0 15px"
target="_blank">
<v-img width="32" :src="require(`@/assets/svg/${FollowUsIcon[i - 1]}.svg`)"></v-img>
</a>
</v-card>
<v-card flat color="transparent" height="60" class="d-flex align-end"
:class="width > 600 ? 'justify-center' : 'justify-start ml-3'">
<v-img max-width="200" class="mb-2" :class="width > 600 ? 'mx-auto' : 'ml-4'"
:src="require('@/assets/svg/logo_v2.svg')"></v-img>
</v-card>
</v-card>
<v-card width="100%" flat color="transparent" class="grey--text text--lighten-1 mb-2 mt-auto"
:class="width > 600 ? 'text-center' : 'text-start pl-6'">
{{ $t("Copyright © 2022 ShowEasy All Rights Reserved.") }}
</v-card>
</v-card>
</div>
</template>
<script>
export default {
data() {
return {
showEasy: [],
showEasyPath: [
"/",
"/aboutus",
/*"/",
"/",*/
"https://www.104.com.tw/company/1a2x6bltae",
//"/",
"/faq",
],
forExhibitorAndVIsitor: [],
forExhibitorAndVIsitorPath: [
"/",
"https://medium.com/showeasy",
//"/"
],
forExhibitorAndVIsitorPath_en: [
"/",
"https://medium.com/showeasy-eng",
//"/"
],
forPartner: [],
forPartnerPath: [
"/",
"https://forms.gle/83ysunPvPcpetYvH8",
// "/"
],
termsOfUse: [],
termsOfUsePath: [
"/",
"/termsandconditions",
"/privacypolicy",
"/cookiepolicy",
],
contact: ["886-2-2725-5000", "info@showeasy.com"],
contactPath: ["tel:886-2-2725-5000", "mailto:info@showeasy.com"],
FollowUsIcon: ["fb", "ig", "medium"],
FollowUsPath: [
"https://www.facebook.com/MakeYourShowEasy",
"https://www.instagram.com/showeasy_/",
"https://medium.com/showeasy",
],
FollowUsPath_en: [
"https://www.facebook.com/MakeYourShowEasy",
"https://www.instagram.com/showeasy_/",
"https://medium.com/showeasy-eng",
],
total: [],
totalPath: [],
totalPath_en: [],
titles: [],
width: undefined,
};
},
created() {
if (process.client) {
this.width = window.innerWidth;
}
this.showEasy = [
"ShowEasy",
"About Us",
/* "Press",
"News",*/
"Recruitment",
//"Our Partner",
"FAQ",
];
this.forExhibitorAndVIsitor = [
"For Exhibitor.Visitor",
"Blog",
//"ShowEasy Advantage",
];
this.forPartner = [
// "For Partner",
// "Become Partner",
// "Partner Login"
];
this.termsOfUse = [
"Terms of Use",
"Terms & Conditions",
"Privacy Policy",
"Cookie Policy",
];
this.total = [
this.showEasy.slice(1),
this.forExhibitorAndVIsitor.slice(1),
// this.forPartner.slice(1),
this.termsOfUse.slice(1),
this.contact,
];
this.totalPath = [
this.showEasyPath.slice(1),
this.forExhibitorAndVIsitorPath.slice(1),
// this.forPartnerPath.slice(1),
this.termsOfUsePath.slice(1),
this.contactPath,
];
this.totalPath_en = [
this.showEasyPath.slice(1),
this.forExhibitorAndVIsitorPath_en.slice(1),
// this.forPartnerPath.slice(1),
this.termsOfUsePath.slice(1),
this.contactPath,
];
this.titles = [
"ShowEasy",
"For Exhibitor・Visitor",
// "For Partner",
"Terms of Use",
"Contact Us",
];
},
mounted() {
this.$nextTick(() => {
window.addEventListener("resize", this.onResize);
});
},
beforeDestroy() {
window.removeEventListener("resize", this.onResize);
},
methods: {
onResize() {
if (process.client) {
this.width = window.innerWidth;
}
},
},
};
</script>
<style lang="scss" scoped>
.bottom-line {
position: relative;
}
.bottom-line:after {
content: "";
height: 1px;
width: 85%;
position: absolute;
left: 5%;
bottom: 0;
background-color: #ddd;
}
.block p {
position: relative;
top: 50%;
transform: translateY(-50%);
margin-left: 10px;
}
.block2 p {
position: relative;
top: 50%;
transform: translateY(-50%);
margin-left: 10px;
}
.row-extend {
width: 140% !important;
}
.text-dont-wrap {
clear: both;
display: inline-block;
overflow: hidden;
white-space: nowrap;
}
.my-container {
max-width: 100% !important;
}
.footer {
background-color: $Neutrals-100;
}
</style>