diff --git a/src/App.vue b/src/App.vue
index a4c76f4..6735d88 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -23,28 +23,44 @@
-
-
-
![]()
-
![]()
-
-
-
![]()
-
![]()
-
+
+
+
+
![]()
+
![]()
+
+
+
![]()
+
![]()
+
+
-
![]()
+
-
نسخه: {{ pkg.version }}
+
+ نسخه: {{ pkg.version }}
+
@@ -107,17 +123,19 @@ import img_bottomGradiant from '@/views/login/assets/img/gr_bottom_white.svg'
import {DotLottieVue} from '@lottiefiles/dotlottie-vue'
import BasicButton from '@/components/BasicPacks/BasicButton.vue'
import {useConfigStore} from "@/store/configStore";
+import {getProjectFontFamily, getProjectLoginLogo, getProjectSplashBackground, isBoursecuProject} from "@/utils/config";
import {ConfigProvider as AConfigProvider} from 'ant-design-vue'
import BasicIcon from "@/components/BasicPacks/BasicIcon.vue";
const {offlineReady, needRefresh, updateServiceWorker} = useRegisterSW()
const config = useConfigStore()
-const indicator = h(LoadingOutlined, {
+const splashIndicator = computed(() => h(LoadingOutlined, {
style: {
- fontSize: '24px'
+ fontSize: '24px',
+ color: isBoursecuProject() ? '#ffffff' : undefined,
},
spin: true
-})
+}))
const showSplash = ref(true)
const popVisible = ref(false)
@@ -130,6 +148,7 @@ const antTheme = computed(() => {
colorLink: config.config.color,
colorLinkActive: config.config.color,
colorLinkHover: config.config.color,
+ fontFamily: getProjectFontFamily(),
},
}
})
diff --git a/src/assets/css/fonts.less b/src/assets/css/fonts.less
index 2615ae1..3b28872 100644
--- a/src/assets/css/fonts.less
+++ b/src/assets/css/fonts.less
@@ -42,3 +42,45 @@
font-style: normal;
}
+@font-face {
+ font-family: 'dana';
+ src: url("../fonts/Dana/Dana-Regular.ttf") format("truetype");
+ font-weight: 400;
+ font-style: normal;
+}
+
+@font-face {
+ font-family: 'dana';
+ src: url("../fonts/Dana/Dana-Light.ttf") format("truetype");
+ font-weight: 300;
+ font-style: normal;
+}
+
+@font-face {
+ font-family: 'dana';
+ src: url("../fonts/Dana/Dana-Medium.ttf") format("truetype");
+ font-weight: 500;
+ font-style: normal;
+}
+
+@font-face {
+ font-family: 'dana';
+ src: url("../fonts/Dana/Dana-DemiBold.ttf") format("truetype");
+ font-weight: 600;
+ font-style: normal;
+}
+
+@font-face {
+ font-family: 'dana';
+ src: url("../fonts/Dana/Dana-Bold.ttf") format("truetype");
+ font-weight: 700;
+ font-style: normal;
+}
+
+@font-face {
+ font-family: 'dana';
+ src: url("../fonts/Dana/Dana-Black.ttf") format("truetype");
+ font-weight: 900;
+ font-style: normal;
+}
+
diff --git a/src/assets/css/main.less b/src/assets/css/main.less
index 0e3a115..504e09b 100644
--- a/src/assets/css/main.less
+++ b/src/assets/css/main.less
@@ -7,10 +7,27 @@ html {
}
body {
- font-family: @prefixCls-font-family !important;
+ font-family: var(--App-font-family) !important;
background-color: @prefixCls-background-color !important;
//color:#555 !important;
}
+
+html.font-dana,
+html.font-dana body,
+html.font-dana .ant-btn,
+html.font-dana .ant-input,
+html.font-dana .ant-select,
+html.font-dana .ant-form,
+html.font-dana .ant-table,
+html.font-dana .ant-modal,
+html.font-dana .ant-drawer,
+html.font-dana .ant-picker,
+html.font-dana .van-button,
+html.font-dana .van-dialog,
+html.font-dana .van-tabbar,
+html.font-dana .van-nav-bar {
+ font-family: var(--App-font-family) !important;
+}
body {
color-scheme: only light;
@apply flex justify-center relative;
diff --git a/src/assets/css/var.less b/src/assets/css/var.less
index d742695..9aca3ca 100644
--- a/src/assets/css/var.less
+++ b/src/assets/css/var.less
@@ -10,4 +10,5 @@
--App-primary-color: #0A1B37;
--App-secondary-color: #e0be7f;
--App-background-color: #ffffff;
+ --App-font-family: 'iran-sans', sans-serif;
}
\ No newline at end of file
diff --git a/src/assets/fonts/Dana/Dana-Black.ttf b/src/assets/fonts/Dana/Dana-Black.ttf
new file mode 100644
index 0000000..09128c5
Binary files /dev/null and b/src/assets/fonts/Dana/Dana-Black.ttf differ
diff --git a/src/assets/fonts/Dana/Dana-Bold.ttf b/src/assets/fonts/Dana/Dana-Bold.ttf
new file mode 100644
index 0000000..57013c7
Binary files /dev/null and b/src/assets/fonts/Dana/Dana-Bold.ttf differ
diff --git a/src/assets/fonts/Dana/Dana-DemiBold.ttf b/src/assets/fonts/Dana/Dana-DemiBold.ttf
new file mode 100644
index 0000000..1c7d1de
Binary files /dev/null and b/src/assets/fonts/Dana/Dana-DemiBold.ttf differ
diff --git a/src/assets/fonts/Dana/Dana-ExtraBold.ttf b/src/assets/fonts/Dana/Dana-ExtraBold.ttf
new file mode 100644
index 0000000..32aa27b
Binary files /dev/null and b/src/assets/fonts/Dana/Dana-ExtraBold.ttf differ
diff --git a/src/assets/fonts/Dana/Dana-ExtraLight.ttf b/src/assets/fonts/Dana/Dana-ExtraLight.ttf
new file mode 100644
index 0000000..435016f
Binary files /dev/null and b/src/assets/fonts/Dana/Dana-ExtraLight.ttf differ
diff --git a/src/assets/fonts/Dana/Dana-Light.ttf b/src/assets/fonts/Dana/Dana-Light.ttf
new file mode 100644
index 0000000..6ab3d11
Binary files /dev/null and b/src/assets/fonts/Dana/Dana-Light.ttf differ
diff --git a/src/assets/fonts/Dana/Dana-Medium.ttf b/src/assets/fonts/Dana/Dana-Medium.ttf
new file mode 100644
index 0000000..75fda24
Binary files /dev/null and b/src/assets/fonts/Dana/Dana-Medium.ttf differ
diff --git a/src/assets/fonts/Dana/Dana-Regular.ttf b/src/assets/fonts/Dana/Dana-Regular.ttf
new file mode 100644
index 0000000..93200a1
Binary files /dev/null and b/src/assets/fonts/Dana/Dana-Regular.ttf differ
diff --git a/src/assets/fonts/Dana/Dana-Thin.ttf b/src/assets/fonts/Dana/Dana-Thin.ttf
new file mode 100644
index 0000000..a958703
Binary files /dev/null and b/src/assets/fonts/Dana/Dana-Thin.ttf differ
diff --git a/src/assets/fonts/Dana/Dana-UltraBold.ttf b/src/assets/fonts/Dana/Dana-UltraBold.ttf
new file mode 100644
index 0000000..c5bd1b2
Binary files /dev/null and b/src/assets/fonts/Dana/Dana-UltraBold.ttf differ
diff --git a/src/assets/img/boursemes_logofull.png b/src/assets/img/boursemes_logofull.png
new file mode 100644
index 0000000..e6a4be8
Binary files /dev/null and b/src/assets/img/boursemes_logofull.png differ
diff --git a/src/main.ts b/src/main.ts
index 696dcfc..b9fef2a 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -15,7 +15,7 @@ import VueLazyLoad from 'vue3-lazyload'
import { getMe } from '@/api/me'
import type { NavigationGuardNext, RouteLocationNormalized } from 'vue-router'
import { useAuthStore } from '@/store/useAuthStore'
-import {getConfigApp} from "@/utils/config";
+import {applyProjectFont, getConfigApp} from "@/utils/config";
const app = createApp(App)
@@ -192,6 +192,8 @@ app.mount('#app')
// }
nextTick(() => {
+ applyProjectFont()
+
const color = window.__APP_CONFIG__?.user?.color
const secondary_color = window.__APP_CONFIG__?.user?.secondary_color
diff --git a/src/utils/config.ts b/src/utils/config.ts
index 5a7135b..3c5197b 100644
--- a/src/utils/config.ts
+++ b/src/utils/config.ts
@@ -1,3 +1,4 @@
+import boursecuLogo from '@/assets/img/boursemes_logofull.png'
export function getConfigApp(key: string) {
const config = window.__APP_CONFIG__ ? window.__APP_CONFIG__.user:{}
@@ -7,3 +8,81 @@ export function getConfigApp(key: string) {
}
return null
}
+
+export function isBoursecuProject() {
+ return getConfigApp('name') === 'boursecu'
+}
+
+export function getProjectLoginLogo(avatar?: string | null) {
+ if (isBoursecuProject()) {
+ return boursecuLogo
+ }
+ return avatar ?? getConfigApp('avatar')
+}
+
+export function getProjectLoginTaglineLines() {
+ if (!isBoursecuProject()) {
+ return null
+ }
+
+ return [
+ 'بورس مس',
+ 'مرجع هوشمند معاملات و سرمایهگذاری در صنعت مس',
+ ]
+}
+
+export function getProjectSplashBackground() {
+ return isBoursecuProject() ? '#133050' : '#ffffff'
+}
+
+export function getProjectFontFamily() {
+ return getConfigApp('name') === 'boursecu' ? "'dana', sans-serif" : "'iran-sans', sans-serif"
+}
+
+export function applyProjectFont() {
+ document.documentElement.style.setProperty('--App-font-family', getProjectFontFamily())
+ if (getConfigApp('name') === 'boursecu') {
+ document.documentElement.classList.add('font-dana')
+ }
+}
+
+export function getReferralShareTitle(projectName?: string | null) {
+ return projectName ?? getConfigApp('name_fa') ?? getConfigApp('name') ?? 'طلا'
+}
+
+export function getReferralShareText(options: {
+ userName?: string | null
+ projectName?: string | null
+ referralId?: string | number | null
+}) {
+ const userName = options.userName ?? ''
+ const referralId = options.referralId ?? ''
+ const link = `${window.location.hostname}/login?id=${referralId}`
+ const marketText = options.projectName
+ ? `بازار طلای ${options.projectName}`
+ : 'بازار طلا'
+
+ if (isBoursecuProject()) {
+ return `مس؛ فلز آینده جهان
+
+⭐️ امروز در آینده مس سرمایهگذاری کن؛ ثمره آن را در سالهای پیش رو برداشت کن!
+
+رشد صنایع انرژی پاک، خودروهای برقی و زیرساختهای نوین، تقاضا برای مس را در سالهای آینده افزایش خواهد داد.
+
+با سرمایهگذاری تدریجی و مستمر در بازار مس، از رشد بلندمدت یکی از مهمترین فلزات استراتژیک جهان بهرهمند شوید.
+
+این دعوتنامه از طرف «${userName}» برای شما ارسال شده است تا شما نیز از فرصتهای سرمایهگذاری در بورس مس جا نمانید.
+
+برای مشاهده قیمتها، تحلیل بازار و تکمیل ثبتنام، روی لینک زیر کلیک کنید
+
+${link}`
+ }
+
+ return `⭐️الان طلا بخر؛ آخر ماه سودشو ببر!
+با خرید طلای آبشده در مقدارهای کم ولی مستمر، سود بیشتری ببر!
+
+این دعوت نامه از طرف "${userName}" عزیز برای شما ارسال شده تا شما هم از ${marketText} جا نمونید.
+روی لینک زیر کلیک کنید و ثبت نام خود را تکمیل کنید.
+
+${link}`
+}
diff --git a/src/views/base/about/aboutContent.ts b/src/views/base/about/aboutContent.ts
new file mode 100644
index 0000000..6ea80d4
--- /dev/null
+++ b/src/views/base/about/aboutContent.ts
@@ -0,0 +1,68 @@
+export interface AboutSection {
+ title?: string
+ paragraphs?: string[]
+ items?: string[]
+}
+
+export function getAboutSections(nameProject: string, isBoursecu: boolean): AboutSection[] {
+ if (isBoursecu) {
+ return [
+ {
+ title: 'درباره بورس مس',
+ paragraphs: [
+ 'بورس مس یک پلتفرم تخصصی برای تسهیل معاملات، کشف قیمت، تبادل اطلاعات و ایجاد ارتباط مستقیم میان فعالان زنجیره ارزش مس است. ما با هدف شفافسازی بازار، کاهش واسطههای غیرضروری و افزایش دسترسی به اطلاعات معتبر، بستری هوشمند و امن را برای خریداران، فروشندگان، تولیدکنندگان، بازرگانان و سرمایهگذاران فراهم کردهایم.',
+ 'در بازاری که اطلاعات پراکنده، عدم شفافیت قیمتها و دشواری دسترسی به تأمینکنندگان معتبر از مهمترین چالشها محسوب میشود، بورس مس تلاش میکند با بهرهگیری از فناوریهای نوین، فرآیند معامله و سرمایهگذاری در صنعت مس را سادهتر، سریعتر و قابل اعتمادتر کند.',
+ 'ما باور داریم که مس، فلز آینده جهان است؛ فلزی که نقش کلیدی در توسعه زیرساختها، انرژیهای تجدیدپذیر، خودروهای برقی، صنایع الکترونیک و رشد اقتصادی ایفا میکند. از این رو، ایجاد یک اکوسیستم تخصصی برای فعالان این صنعت را مأموریت اصلی خود میدانیم.',
+ ],
+ },
+ {
+ title: 'چشمانداز ما',
+ paragraphs: [
+ 'تبدیل شدن به معتبرترین مرجع دیجیتال معاملات، اطلاعات بازار و خدمات تخصصی صنعت مس در ایران و منطقه.',
+ ],
+ },
+ {
+ title: 'مأموریت ما',
+ items: [
+ 'افزایش شفافیت در بازار مس',
+ 'تسهیل ارتباط میان خریداران و فروشندگان',
+ 'فراهمسازی دسترسی به قیمتها و اطلاعات معتبر بازار',
+ 'توسعه ابزارهای نوین سرمایهگذاری و معامله',
+ 'حمایت از رشد تجارت داخلی و بینالمللی محصولات مسی',
+ ],
+ },
+ {
+ title: 'ارزشهای ما',
+ items: ['شفافیت', 'اعتماد', 'نوآوری', 'مسئولیتپذیری', 'توسعه پایدار'],
+ },
+ {
+ paragraphs: [
+ 'بورس مس تنها یک پلتفرم معاملاتی نیست؛ بلکه بستری برای شکلگیری شبکهای قدرتمند از فعالان صنعت مس است که با همکاری، دانش و اعتماد متقابل، آیندهای روشنتر برای این صنعت استراتژیک رقم میزنند.',
+ ],
+ },
+ ]
+ }
+
+ return [
+ {
+ paragraphs: [
+ 'طلا علاوه بر کاربرد در ساخت زیورآلات، از دوران کهن به عنوان یک فلز ارزشمند و دارایی مقاوم در برابر تورم شناخته میشود، به طوری که سرمایهگذاران حرفهای همواره بخشی از سبد سرمایهگذاریشان را به طلا اختصاص میدهند.',
+ ],
+ },
+ {
+ paragraphs: [
+ `با وجود گسترش فناوریهای نوین در همه حوزهها، ما در شرکت پخش طلای حاجی ابوالفتح با تلفیق تجربه سنتی خود در بازار طلا و با دانش تخصصی خود و با بهرهگیری از سوابق موفق قبلی در حوزه فینتک، اقدام به ایجاد ${nameProject} نمودیم.`,
+ ],
+ },
+ {
+ paragraphs: [
+ `مهمترین ارزش پیشنهادی ${nameProject}، امکان پس انداز تدریجی طلا با سرمایههای خرد و بدون پرداخت هزینههای جانبی است و در این راستا ${nameProject} تمام تلاش خود را نموده است تا از ابتدای سال 1401 با رونمایی محصول اولیه، برای همه افراد با هر سطحی از دارایی، بستری امن و مطمئن ایجاد نماید.`,
+ ],
+ },
+ {
+ paragraphs: [
+ `علاوه بر این ${nameProject} به عنوان یک واحد فناور از سال 1403 با رونمایی نسخه کاملا آنلاین و نرم افزاری وارد فاز جدیدی از خرید و فروش طلای آب شده، شده است.`,
+ ],
+ },
+ ]
+}
diff --git a/src/views/base/about/index.vue b/src/views/base/about/index.vue
index bb26bc1..1cfcfc1 100644
--- a/src/views/base/about/index.vue
+++ b/src/views/base/about/index.vue
@@ -13,29 +13,28 @@
-
+
-
-
- طلا علاوه بر کاربرد در ساخت زیورآلات، از دوران کهن به عنوان یک فلز ارزشمند و دارایی
- مقاوم در برابر تورم شناخته میشود، به طوری که سرمایهگذاران حرفهای همواره بخشی از
- سبد سرمایهگذاریشان را به طلا اختصاص میدهند.
-
-
- با وجود گسترش فناوریهای نوین در همه حوزهها، ما در شرکت پخش طلای حاجی ابوالفتح با
- تلفیق تجربه سنتی خود در بازار طلا و با دانش تخصصی خود و با بهرهگیری از سوابق موفق
- قبلی در حوزه فینتک، اقدام به ایجاد {{ nameProject }} نمودیم.
-
-
- مهمترین ارزش پیشنهادی {{ nameProject }}، امکان پس انداز تدریجی طلا با سرمایههای خرد و بدون
- پرداخت هزینههای جانبی است و در این راستا {{ nameProject }} تمام تلاش خود را نموده است تا از
- ابتدای سال 1401 با رونمایی محصول اولیه، برای همه افراد با هر سطحی از دارایی، بستری
- امن و مطمئن ایجاد نماید.
-
-
- علاوه بر این {{ nameProject }} به عنوان یک واحد فناور از سال 1403 با رونمایی نسخه کاملا آنلاین
- و نرم افزاری وارد فاز جدیدی از خرید و فروش طلای آب شده، شده است.
-
+
+
+
+ {{ section.title }}
+
+
+ {{ paragraph }}
+
+
+ • {{ item }}
+
+
@@ -63,7 +62,7 @@
-