Skip to content

Commit

Permalink
Merge branch 'feat/banner' into canary
Browse files Browse the repository at this point in the history
  • Loading branch information
linxin committed Nov 15, 2024
2 parents 308d8d7 + 1dccb59 commit 2a74d22
Show file tree
Hide file tree
Showing 11 changed files with 201 additions and 30 deletions.
3 changes: 1 addition & 2 deletions components/block.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -53,13 +53,12 @@ export const BlockBetween = ({
return (
<div
className={classNames(
'flex items-center pb-5 :lg:pb-10 lg:flex-row',
'flex items-center pb-5 :lg:pb-10 lg:flex-row lg:space-x-10 space-y-5 lg:space-y-0',
reverse ? 'flex-col-reverse' : 'flex-col',
className
)}
>
<div className="flex-1 block-left">{left}</div>
<div className="mr-10"></div>
<div className="flex-1 block-right">{right}</div>
</div>
)
Expand Down
120 changes: 118 additions & 2 deletions features/block/top-banner.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,123 @@ export const IndexBanner = () => {
}
return (
<Carousel className="bg-cover" autoplay effect="fade">
<TopBlock className="bg-repeat-round bg-[#0B0550] relative">
<TopBlock
className="relative bg-center bg-no-repeat"
imageUrl="https://assets.lbctrl.com/uploads/88cd3d2c-343f-49e1-a236-aa9ef8eecb96/zero.png"
>
<Block className={classNames('py-10 lg:max-h-[530px] px-6 md:px-0')}>
<BlockBetween
left={
<>
<div
className={classNames(
'flex flex-col items-center',
isEn ? 'xl:flex-row xl:items-end' : 'md:flex-row md:items-end'
)}
>
<img
src="https://assets.lbctrl.com/uploads/deac44c1-b518-46ee-8b1c-8fb70d9ea2a3/zero.png"
alt="zero"
className="w-48 h-auto lg:w-52 xl:w-60"
/>
<div
className={classNames('font-bold text-7xl text-brand_color', {
'relative xl:-left-6 text-6xl': isEn,
})}
>
{i18n.t('features_block_top_banner_891192')}
</div>
</div>
{isEn && (
<div className="mt-4 text-3xl font-medium text-front-bg-color-1">
to Expand Your Brokerage Business Online
</div>
)}
</>
}
right={
<div className={classNames({ 'max-w-[570px]': isEn })}>
<div className="text-3xl font-normal md:text-5xl text-front-bg-color-1">
{i18n.t('features_block_top_banner_891193')}
{isEn && (
<span>
<sup>*</sup>:
</span>
)}
</div>
{isEn ? (
<div className="mt-4">
<span className="mr-2 text-6xl font-extrabold text-brand_color">ZERO</span>
<span className="text-3xl font-normal text-front-bg-color-1 xl:whitespace-nowrap">
System Fees for HK Securities Trading
</span>
</div>
) : (
<div className="flex flex-col mt-4 mb-6 text-4xl font-bold md:text-6xl text-front-bg-color-1 xl:flex-row xl:space-x-4">
<span>{i18n.t('features_block_top_banner_891194')}</span>
<span>
<span>{i18n.t('features_block_top_banner_891192')}</span>
<span className="text-brand_color">
{i18n.t('features_block_top_banner_891195')}
<sup>*</sup>
</span>
</span>
</div>
)}
{isEn ? (
<div className="my-4 text-2xl font-normal xl:my-8 text-front-bg-color-1">
Flexible Platform Fees Based on Transaction Volume
</div>
) : (
<ul className="mb-6">
<li className="mb-4">
<div className="flex flex-col items-start xl:space-x-2 xl:items-center xl:flex-row">
<span className="text-xl font-bold text-brand_color">
{i18n.t('features_block_top_banner_891196')}
</span>
<span className="text-sm font-bold text-white">
{i18n.t('features_block_top_banner_891197')}
</span>
</div>
</li>
{/* <li>
<div className="flex flex-col items-start md:space-x-2 md:items-center md:flex-row">
<span className="text-xl font-bold text-brand_color">
{i18n.t('features_block_top_banner_891198')}
</span>
<span className="text-sm font-bold text-white">
{i18n.t('features_block_top_banner_891199')}
</span>
</div>
</li> */}
</ul>
)}

<div className="flex items-center space-x-12">
<Button
link
url="https://longbridge.feishu.cn/share/base/form/shrcnOorQd1IMb0pcb26rYCSvrh"
size="medium"
className="!bg-transparent border-2 border-front-bg-color-1 justify-self-start"
>
{i18n.t('features_block_top_banner_891200')}
</Button>
<img
src="https://assets.lbctrl.com/uploads/a7cf0138-5514-4d2a-9e44-e4d78e8aef06/coffee.png"
alt="coffee"
className="h-12"
/>
</div>
<div className="absolute self-end text-sm font-thin text-front-bg-color-1 bottom-4 right-4 left-4 md:relative md:-bottom-10 xl:-bottom-20 md:left-0">
<sup>*</sup>
{i18n.t('features_block_top_banner_891201')}
</div>
</div>
}
></BlockBetween>
</Block>
</TopBlock>
{/* <TopBlock className="bg-repeat-round bg-[#0B0550] relative">
<Block>
<BlockBetween
left={
Expand Down Expand Up @@ -188,7 +304,7 @@ export const IndexBanner = () => {
}
></BlockBetween>
</Block>
</TopBlock>
</TopBlock> */}
</Carousel>
)
}
18 changes: 5 additions & 13 deletions features/contact-form/index.tsx
Original file line number Diff line number Diff line change
@@ -1,15 +1,10 @@
import { Form, Tabs, Input, Button, DatePicker, TimePicker, Checkbox, message } from 'antd'
import { createClient } from '@supabase/supabase-js'
import styles from './index.module.scss'
import { useMemo, useState } from 'react'
import { useTranslation } from 'next-i18next'
// @ts-ignore
import debounce from 'lodash/debounce'

const supabaseUrl = 'https://fttapltgubuovrbvgvjg.supabase.co'
const supabaseKey =
'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6ImZ0dGFwbHRndWJ1b3ZyYnZndmpnIiwicm9sZSI6ImFub24iLCJpYXQiOjE3MjQ5MjE0MDAsImV4cCI6MjA0MDQ5NzQwMH0.5lpEBaKxHXoQfE-rJksy9Et-e5A3EXUzkTc52lGpAyc'
const supabaseClient = createClient(supabaseUrl, supabaseKey)
import { submitContactUsForm } from '@/services'

type IPrivacyPolicy = { [key: string]: string }

Expand All @@ -32,7 +27,6 @@ const ContactForm = () => {
}

const handleSubmit = () => {
if (!supabaseClient) return
if (isLoading) return

const {
Expand Down Expand Up @@ -73,18 +67,16 @@ const ContactForm = () => {
} else {
delete insertData.enquiry_type
delete insertData.description
const { time } = insertData
const { date, time } = insertData
insertData.date = date.format('YYYY-MM-DD')
insertData.time = time.format('HH:mm')
}
const { data, error } = await supabaseClient.from('contact_us').insert([insertData])
if (!error) {
message.success(i18n.t('features_contact_form_index_891178'))
}
await submitContactUsForm(insertData)

setIsLoading(false)
return
} catch (err) {
console.log('submit form error:', err)
// console.log('submit form error:', err)
}

setIsLoading(false)
Expand Down
2 changes: 1 addition & 1 deletion features/home/home-solution-swiper.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ const HomeSolutionSwiper = () => {
'zh-CN': 'https://assets.lbctrl.com/uploads/259f1573-bfca-4e61-b056-3b39a10a45b6/wm.png',
'zh-HK': 'https://assets.lbctrl.com/uploads/259f1573-bfca-4e61-b056-3b39a10a45b6/wm.png',
},
localLink: '/solutions/us-stock',
localLink: '/solutions/wealth-management',
},
title: i18n.t('pages_virtual_assets36_1'),
},
Expand Down
14 changes: 7 additions & 7 deletions features/wm-contact-us/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,11 @@ const ContactUs = () => {
value: '+852 3851 1711',
type: 'tel:',
},
{
label: i18n.t('features_wm_contact_us_index_891161'),
value: i18n.t('features_wm_contact_us_index_891180'),
type: '',
},
// {
// label: i18n.t('features_wm_contact_us_index_891161'),
// value: i18n.t('features_wm_contact_us_index_891180'),
// type: '',
// },
],
},
// {
Expand Down Expand Up @@ -98,10 +98,10 @@ const ContactUs = () => {
<span>{' / '}</span>
<a href={'tel:+852 3851 1711'}>{'+852 3851 1711'}</a>
</span>
<span className="label">
{/* <span className="label">
{i18n.t('features_wm_contact_us_index_891161')}
{i18n.t('features_wm_contact_us_index_891181')}
</span>
</span> */}
</div>
</div>
<div
Expand Down
2 changes: 1 addition & 1 deletion pages/_app.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ const AppWithTranslation = appWithTranslation(({ Component, pageProps, router }:
return (
<div className="app">
<Head>
<script src={'https://static.lbctrl.com/npm/sensorsdata@1.16.10.min.js'} defer />
<script src={'https://assets.lbctrl.com/pkg/sensorsdata/1.21.13.min.js'} defer />
<link rel="icon" type="image/x-icon" href="https://pub.pbkrs.com/files/202205/xAwaQmCk1cD1AUsm/favicon.png" />
</Head>
<Script
Expand Down
12 changes: 11 additions & 1 deletion public/locales/en/common.json
Original file line number Diff line number Diff line change
Expand Up @@ -1660,5 +1660,15 @@
"pages_locale_about_891188": "In wealth management, Whale's All-in-1 Wealth Management Digital Solution, integrated with multiple custodian banks, empowers external asset managers(EAMs), single family offices(SFOs), institutional investors, and ultra-high-net-worth individuals (UHNWIs) to automate and streamline their business processes, as well as manage multiple assets more efficiently and reliably. The solution integrates front and back-office processes, covering asset aggregation, trading management, risk management, client reporting, and CRM.",
"features_wm_contact_us_index_891189": "Wealth Management Platform",
"features_block_top_banner_891190": "Cost-effetive Remote Access · Seamless Trading Experience",
"features_block_top_banner_891191": "Severe Weather Trading Solution"
"features_block_top_banner_891191": "Severe Weather Trading Solution",
"features_block_top_banner_891192": "Threshold",
"features_block_top_banner_891193": "Wellcome Offer",
"features_block_top_banner_891194": "港股柜台",
"features_block_top_banner_891195": "全免",
"features_block_top_banner_891196": "真正的低成本:",
"features_block_top_banner_891197": "根据交易量灵活计算平台费用,最低 5000 港币/月即可开启线上业务",
"features_block_top_banner_891198": "真正的一站式:",
"features_block_top_banner_891199": "功能涵盖前中后台全流程,助您「0 门槛」迈入数字化",
"features_block_top_banner_891200": "Sign Up Now",
"features_block_top_banner_891201": "Terms & Conditions apply. The offer is valid until December 31, 2024."
}
12 changes: 11 additions & 1 deletion public/locales/zh-CN.json
Original file line number Diff line number Diff line change
Expand Up @@ -1063,5 +1063,15 @@
"pages_locale_about_891188": "在财富管理领域,我们为外部资产管理公司(EAMs)、家族办公室(SFOs)、机构投资者和超高净值人士(UHNWIs)提供一站式、多资产、跨托管银行的财富管理数字解决方案,提供投资组合管理、交易管理、风险管理、分析报告、客戶关系管理(CRM)等服务,以数字化科技提升业务流程自动化水平,帮助客户更便捷高效、安全稳定地管理资产和投资。",
"features_wm_contact_us_index_891189": "财富管理平台",
"features_block_top_banner_891190": "恶劣天气远程交易解决方案",
"features_block_top_banner_891191": "打风不停市 交易不间断"
"features_block_top_banner_891191": "打风不停市 交易不间断",
"features_block_top_banner_891192": "系统费",
"features_block_top_banner_891193": "新客专享",
"features_block_top_banner_891194": "港股柜台",
"features_block_top_banner_891195": "全免",
"features_block_top_banner_891196": "真正的低成本:",
"features_block_top_banner_891197": "根据交易量灵活计算平台费用,最低 5000 港币/月即可开启线上业务",
"features_block_top_banner_891198": "真正的一站式:",
"features_block_top_banner_891199": "功能涵盖前中后台全流程,助您「0 门槛」迈入数字化",
"features_block_top_banner_891200": "即刻登记,锁定优惠",
"features_block_top_banner_891201": "受优惠条款及细则约束。优惠期至 2024 年 12 月 31 日。"
}
12 changes: 11 additions & 1 deletion public/locales/zh-CN/common.json
Original file line number Diff line number Diff line change
Expand Up @@ -1656,5 +1656,15 @@
"pages_locale_about_891188": "在财富管理领域,我们为外部资产管理公司(EAMs)、家族办公室(SFOs)、机构投资者和超高净值人士(UHNWIs)提供一站式、多资产、跨托管银行的财富管理数字解决方案,提供投资组合管理、交易管理、风险管理、分析报告、客戶关系管理(CRM)等服务,以数字化科技提升业务流程自动化水平,帮助客户更便捷高效、安全稳定地管理资产和投资。",
"features_wm_contact_us_index_891189": "财富管理平台",
"features_block_top_banner_891190": "恶劣天气远程交易解决方案",
"features_block_top_banner_891191": "打风不停市 交易不间断"
"features_block_top_banner_891191": "打风不停市 交易不间断",
"features_block_top_banner_891192": "系统费",
"features_block_top_banner_891193": "新客专享",
"features_block_top_banner_891194": "港股柜台",
"features_block_top_banner_891195": "全免",
"features_block_top_banner_891196": "真正的低成本:",
"features_block_top_banner_891197": "根据交易量灵活计算平台费用,最低 5000 港币/月即可开启线上业务",
"features_block_top_banner_891198": "真正的一站式:",
"features_block_top_banner_891199": "功能涵盖前中后台全流程,助您「0 门槛」迈入数字化",
"features_block_top_banner_891200": "即刻登记,锁定优惠",
"features_block_top_banner_891201": "受优惠条款及细则约束。优惠期至 2024 年 12 月 31 日。"
}
12 changes: 11 additions & 1 deletion public/locales/zh-HK/common.json
Original file line number Diff line number Diff line change
Expand Up @@ -1672,5 +1672,15 @@
"pages_locale_about_891188": "在財富管理領域,我們為外部資產管理公司(EAMs)、家族辦公室(SFOs)、私人銀行及超高淨值人士(UHNWIs)提供一站式、多資產、跨託管銀行的財富管理數字解決方案,提供投資組合管理、交易管理、風險管理、分析報告及客戶關係管理(CRM)等服務,以數字化科技提升業務流程的自動化水平,幫助客戶更便捷高效、安全穩定地管理資產與投資。",
"features_wm_contact_us_index_891189": "財富管理平台",
"features_block_top_banner_891190": "惡劣天氣遠程交易解決方案",
"features_block_top_banner_891191": "打風不停市 交易不間斷"
"features_block_top_banner_891191": "打風不停市 交易不間斷",
"features_block_top_banner_891192": "系統費",
"features_block_top_banner_891193": "新客專享",
"features_block_top_banner_891194": "港股櫃台",
"features_block_top_banner_891195": "全免",
"features_block_top_banner_891196": "至抵價格:",
"features_block_top_banner_891197": "根據交易量靈活計算平台費用,最低 5000 港幣/月即可線上展業",
"features_block_top_banner_891198": "至優服務:",
"features_block_top_banner_891199": "功能涵蓋前中後台前流程,助您「0 門檻」邁入數字化",
"features_block_top_banner_891200": "即刻登記,鎖定優惠",
"features_block_top_banner_891201": "受優惠條款及細則約束。優惠期至 2024 年 12 月 31 日。"
}
24 changes: 24 additions & 0 deletions services/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -151,3 +151,27 @@ export const getSupportLinks = async () => {
})
return transformRes(resp)
}

type FormData = {
full_name: string
phone: string
email: string
company: string
job_title: string
region: string
enquiry_type: string
description: string
date: string
time: string
}
const FeishuWebhookUrl = 'https://longbridge.feishu.cn/base/automation/webhook/event/QIbCandqswNUIPhcN3Zck1DWnkg'
export const submitContactUsForm = async (data: FormData) => {
const _data = {
record: data,
}
const resp = await fetch(FeishuWebhookUrl, {
method: 'POST',
body: JSON.stringify(_data),
})
return transformRes(resp)
}

0 comments on commit 2a74d22

Please sign in to comment.