Skip to content

Commit

Permalink
feat: hide register by setting
Browse files Browse the repository at this point in the history
  • Loading branch information
BrianJiang2021 authored and CarlLiu2023 committed Jul 28, 2023
1 parent d9f6fcd commit 21286e5
Show file tree
Hide file tree
Showing 9 changed files with 85 additions and 25 deletions.
27 changes: 19 additions & 8 deletions apps/storefront/src/App.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ import {
getQuoteEnabled,
getStoreTaxZoneRates,
getTemPlateConfig,
handleHideRegisterPage,
loginInfo,
setStorefrontConfig,
} from '@/utils'
Expand Down Expand Up @@ -55,6 +56,7 @@ export default function App() {
productQuoteEnabled,
emailAddress,
// showPageMask
registerEnabled,
},
dispatch,
} = useContext(GlobaledContext)
Expand Down Expand Up @@ -194,26 +196,35 @@ export default function App() {

useEffect(() => {
if (quoteConfig.length > 0 && storefrontConfig) {
const { productQuoteEnabled, cartQuoteEnabled, shoppingListEnabled } =
getQuoteEnabled(
quoteConfig,
storefrontConfig,
role,
isB2BUser,
isAgenting
)
const {
productQuoteEnabled,
cartQuoteEnabled,
shoppingListEnabled,
registerEnabled,
} = getQuoteEnabled(
quoteConfig,
storefrontConfig,
role,
isB2BUser,
isAgenting
)

dispatch({
type: 'common',
payload: {
productQuoteEnabled,
cartQuoteEnabled,
shoppingListEnabled,
registerEnabled,
},
})
}
}, [isB2BUser, isAgenting, role, quoteConfig, storefrontConfig])

useEffect(() => {
handleHideRegisterPage(registerEnabled)
}, [registerEnabled, storefrontConfig])

useEffect(() => {
if (isOpen) {
showPageMask(dispatch, false)
Expand Down
4 changes: 2 additions & 2 deletions apps/storefront/src/components/layout/B3Nav.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ export default function B3Nav({ closeSidebar }: B3NavProps) {
const { dispatch } = useContext(DynamicallyVariableedContext)

const { state: globalState } = useContext(GlobaledContext)
const { quoteDetailHasNewMessages } = globalState
const { quoteDetailHasNewMessages, registerEnabled } = globalState

const theme = useTheme()
const primaryColor = theme.palette.primary.main
Expand Down Expand Up @@ -68,7 +68,7 @@ export default function B3Nav({ closeSidebar }: B3NavProps) {
? 'Please create an account, or login to create a shopping list.'
: 'To receive full access to buyer portal, please register. It will take 2 minutes.',
cancelText: 'Cancel',
saveText: 'Register',
saveText: registerEnabled ? 'Register' : '',
saveFn: jumpRegister,
},
},
Expand Down
14 changes: 11 additions & 3 deletions apps/storefront/src/hooks/dom/useRegisteredbctob2b.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ const useRegisteredbctob2b = (
const b3Lang = useB3Lang()

const {
state: { isB2BUser, customerId, companyInfo },
state: { isB2BUser, customerId, companyInfo, registerEnabled },
} = useContext(GlobaledContext)

const {
Expand Down Expand Up @@ -45,10 +45,18 @@ const useRegisteredbctob2b = (
document.querySelector(globalB3['dom.navUserLoginElement'])
) {
// already exist
if (document.querySelector('.navUser-item.navUser-convert-b2b')) {
const b2ToB2b = document.querySelector(
'.navUser-item.navUser-convert-b2b'
)

if (b2ToB2b) {
if (!registerEnabled) b2ToB2b.remove()

return
}

if (!registerEnabled) return

const convertB2BNavNode = createConvertB2BNavNode()
const accountNode = document.querySelector(
globalB3['dom.navUserLoginElement']
Expand All @@ -68,7 +76,7 @@ const useRegisteredbctob2b = (
} else {
document.querySelector('.navUser-item.navUser-convert-b2b')?.remove()
}
}, [isB2BUser, customerId, openQuickView, b2b])
}, [isB2BUser, customerId, openQuickView, b2b, registerEnabled])
}

export default useRegisteredbctob2b
35 changes: 23 additions & 12 deletions apps/storefront/src/pages/login/Login.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,14 @@ export default function Login(props: RegisteredProps) {
const b3Lang = useB3Lang()

const {
state: { isCheckout, logo, B3UserId, salesRepCompanyId = 0, isAgenting },
state: {
isCheckout,
logo,
B3UserId,
salesRepCompanyId = 0,
isAgenting,
registerEnabled,
},
dispatch,
} = useContext(GlobaledContext)

Expand Down Expand Up @@ -316,6 +323,7 @@ export default function Login(props: RegisteredProps) {
margin: '20px 0',
display: 'flex',
flexDirection: isMobile ? 'column' : 'row',
justifyContent: 'center',
}}
>
<Box
Expand All @@ -324,6 +332,7 @@ export default function Login(props: RegisteredProps) {
paddingRight: isMobile ? 0 : '2%',
ml: '16px',
mr: isMobile ? '16px' : '',
pb: registerEnabled ? '' : '36px',
}}
>
<LoginForm
Expand All @@ -334,17 +343,19 @@ export default function Login(props: RegisteredProps) {
/>
</Box>

<Box
sx={{
flex: '1',
paddingLeft: isMobile ? 0 : '2%',
}}
>
<LoginPanel
loginInfo={loginInfo}
handleSubmit={handleCreateAccountSubmit}
/>
</Box>
{registerEnabled && (
<Box
sx={{
flex: '1',
paddingLeft: isMobile ? 0 : '2%',
}}
>
<LoginPanel
loginInfo={loginInfo}
handleSubmit={handleCreateAccountSubmit}
/>
</Box>
)}
</Box>

{loginInfo.widgetFooterText && (
Expand Down
3 changes: 3 additions & 0 deletions apps/storefront/src/shared/global/context/config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,7 @@ export interface GlobalState {
enabledStatus: boolean
}
shoppingLists: boolean
tradeProfessionalApplication: boolean
}
storeEnabled: boolean
storeName: string
Expand All @@ -103,6 +104,7 @@ export interface GlobalState {
productQuoteEnabled: boolean
cartQuoteEnabled: boolean
shoppingListEnabled: boolean
registerEnabled: boolean
quoteConfig: CustomFieldItems[]
currencies: {
channelCurrencies: ChannelCurrenciesProps
Expand Down Expand Up @@ -157,6 +159,7 @@ export const initState = {
productQuoteEnabled: false,
cartQuoteEnabled: false,
shoppingListEnabled: false,
registerEnabled: true,
quoteConfig: [],
currencies: B3SStorage.get('currencies') || {},
openAPPParams: {
Expand Down
21 changes: 21 additions & 0 deletions apps/storefront/src/utils/b3HideRegister.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
import globalB3 from '@b3/global-b3'

const handleHideRegisterPage = (registerEnabled: boolean) => {
const registerPageAll = document.querySelectorAll(globalB3['dom.register'])
// Text between sign in and register - [or]
const navUserOrText = document.querySelectorAll('.navUser-or')

if (registerPageAll.length > 0) {
registerPageAll.forEach((page: CustomFieldItems) => {
page.style.display = registerEnabled ? 'block' : 'none'
})
}

if (navUserOrText.length > 0) {
navUserOrText.forEach((text: CustomFieldItems) => {
text.style.display = registerEnabled ? 'block' : 'none'
})
}
}

export default handleHideRegisterPage
3 changes: 3 additions & 0 deletions apps/storefront/src/utils/b3Init.ts
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ export const getQuoteEnabled = (
enabledStatus: boolean
}
shoppingLists: boolean
tradeProfessionalApplication: boolean
},
role: number | string,
isB2BUser: boolean,
Expand All @@ -34,6 +35,7 @@ export const getQuoteEnabled = (
const quoteEnabled = storefrontConfig.quotes || false

const shoppingListEnabled = storefrontConfig.shoppingLists
const registerEnabled = storefrontConfig.tradeProfessionalApplication

quoteConfig.forEach((config) => {
if (config.key === 'quote_customer') {
Expand Down Expand Up @@ -82,5 +84,6 @@ export const getQuoteEnabled = (
productQuoteEnabled,
cartQuoteEnabled,
shoppingListEnabled,
registerEnabled,
}
}
2 changes: 2 additions & 0 deletions apps/storefront/src/utils/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ import {
displayFormat,
getUTCTimestamp,
} from './b3DateFormat'
import handleHideRegisterPage from './b3HideRegister'
import { getLogo, getQuoteEnabled } from './b3Init'
import { showPageMask } from './b3PageMask'
import distanceDay from './b3Picker'
Expand Down Expand Up @@ -76,6 +77,7 @@ export {
getUTCTimestamp,
globalSnackbar,
handleGetCurrentProductInfo,
handleHideRegisterPage,
isAllRequiredOptionFilled,
isModifierNumberTextValid,
isModifierTextValid,
Expand Down
1 change: 1 addition & 0 deletions packages/global-b3/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ const globalB3 = {
'dom.cartElement':
'[href="/cart.php"], #form-action-addToCart, [data-button-type="add-cart"], [data-event-type="product-click"], .card-body a, [data-emthemesmodez-cart-item-add]',
'dom.productView': '.productView',
'dom.register': '[href^="/login.php?action=create_account"]',
before_login_goto_page: '/account.php?action=order_status',
checkout_super_clear_session: 'true',
setting: {
Expand Down

0 comments on commit 21286e5

Please sign in to comment.