From 93832023b7c2f560bd90a02e9768d0fccec79078 Mon Sep 17 00:00:00 2001 From: Rafi Zadanly Date: Wed, 3 May 2023 16:03:45 +0700 Subject: whatsapp url --- .../components/elements/Footer/BasicFooter.jsx | 3 ++- .../components/elements/Footer/SimpleFooter.jsx | 2 +- .../components/elements/Navbar/NavbarDesktop.jsx | 3 ++- src/core/components/layouts/BasicLayout.jsx | 6 +++++- src/core/utils/slug.js | 6 ++++-- src/core/utils/whatsappUrl.js | 22 ++++++++++++++++++++++ 6 files changed, 36 insertions(+), 6 deletions(-) create mode 100644 src/core/utils/whatsappUrl.js (limited to 'src/core') diff --git a/src/core/components/elements/Footer/BasicFooter.jsx b/src/core/components/elements/Footer/BasicFooter.jsx index 325d7d7b..d340ff3e 100644 --- a/src/core/components/elements/Footer/BasicFooter.jsx +++ b/src/core/components/elements/Footer/BasicFooter.jsx @@ -8,6 +8,7 @@ import { import Link from '../Link/Link' import MobileView from '../../views/MobileView' import DesktopView from '../../views/DesktopView' +import whatsappUrl from '@/core/utils/whatsappUrl' const BasicFooter = () => { return ( @@ -190,7 +191,7 @@ const InformationCenter = () => (
  • - + 0812-8080-622
  • diff --git a/src/core/components/elements/Footer/SimpleFooter.jsx b/src/core/components/elements/Footer/SimpleFooter.jsx index 41ca6094..343f041d 100644 --- a/src/core/components/elements/Footer/SimpleFooter.jsx +++ b/src/core/components/elements/Footer/SimpleFooter.jsx @@ -20,7 +20,7 @@ const SimpleFooter = () => (
  • - + 0812-8080-622
  • diff --git a/src/core/components/elements/Navbar/NavbarDesktop.jsx b/src/core/components/elements/Navbar/NavbarDesktop.jsx index 43407fab..3da0035a 100644 --- a/src/core/components/elements/Navbar/NavbarDesktop.jsx +++ b/src/core/components/elements/Navbar/NavbarDesktop.jsx @@ -15,6 +15,7 @@ import useAuth from '@/core/hooks/useAuth' import NavbarUserDropdown from './NavbarUserDropdown' import { getCart } from '@/core/utils/cart' import TopBanner from './TopBanner' +import whatsappUrl from '@/core/utils/whatsappUrl' const Search = dynamic(() => import('./Search')) @@ -89,7 +90,7 @@ const NavbarDesktop = () => { Wishlist import('../elements/Navbar/Navbar')) const AnimationLayout = dynamic(() => import('./AnimationLayout')) @@ -12,7 +13,10 @@ const BasicLayout = ({ children }) => { {children}
    - + Whatsapp { +const createSlug = (prefix, name, id, withHost = false) => { let slug = name ?.trim() @@ -19,7 +19,9 @@ const createSlug = (prefix, name, id) => { id let splitSlug = slug.split('-') let filterSlugFromEmptyChar = splitSlug.filter((x) => x != '') - return prefix + filterSlugFromEmptyChar.join('-') + slug = prefix + filterSlugFromEmptyChar.join('-') + if (withHost) slug = process.env.NEXT_PUBLIC_SELF_HOST + slug + return slug } /** diff --git a/src/core/utils/whatsappUrl.js b/src/core/utils/whatsappUrl.js new file mode 100644 index 00000000..696e01d8 --- /dev/null +++ b/src/core/utils/whatsappUrl.js @@ -0,0 +1,22 @@ +const whatsappUrl = (template = 'default', payload) => { + let url = 'https://wa.me/628128080622' + let text = '' + switch (template) { + case 'product': + text = `Halo, saya mau tanya ${payload.name}, bisa tolong bantu saya?\n\nBerikut ini linknya: ${payload.url}` + break + case 'productWeight': + text = `Mau tanya untuk berat ${payload.name}, bisa minta tolong informasikan beratnya?\n\nBerikut ini linknya: ${payload.url}` + break + case 'productSearch': + text = `Saya lagi cari-cari produk ${payload.name}, bisa bantu saya cari produknya?` + break + default: + text = 'Halo, saya mau tanya-tanya seputar produk, bisa tolong bantu saya?' + break + } + if (text) url += `?text=${encodeURI(text)}` + return url +} + +export default whatsappUrl -- cgit v1.2.3