bx-843-testing #8
|
@ -96,6 +96,11 @@ a[href^="#"] {
|
|||
@apply relative h-[50vh] min-h-[600px];
|
||||
}
|
||||
}
|
||||
&_content {
|
||||
> .container {
|
||||
@apply items-start;
|
||||
}
|
||||
}
|
||||
|
||||
&-content {
|
||||
@apply col-span-full xl:col-span-8 h-full flex flex-col justify-between min-w-full prose;
|
||||
|
|
|
@ -3,8 +3,8 @@ const config = useRuntimeConfig()
|
|||
const apiBase = config.public.apiBase
|
||||
import k_logo from '@/assets/icons/logo.svg'
|
||||
|
||||
const { data: footerData } = await useFetch<ApiFooterType[]>(`${apiBase}/footer/?ordering=small_text`)
|
||||
const { data: social_networkData } = await useFetch<ApiSocial_networkType[]>(`${apiBase}/social_network/`)
|
||||
const { data: footerData } = await useFetch<ApiFooterType[]>(`${apiBase}/footer/?ordering=small_text`, { headers: useRequestHeaders(['referer']) })
|
||||
const { data: social_networkData } = await useFetch<ApiSocial_networkType[]>(`${apiBase}/social_network/`, { headers: useRequestHeaders(['referer']) })
|
||||
</script>
|
||||
<template>
|
||||
<div class="footer" id="contacts">
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
const config = useRuntimeConfig()
|
||||
const apiBase = config.public.apiBase
|
||||
|
||||
const { data: pagesData } = await useFetch<ApiPagesType[]>(`${apiBase}/pages/?ordering=order`)
|
||||
const { data: pagesData } = await useFetch<ApiPagesType[]>(`${apiBase}/pages/?ordering=order`, { headers: useRequestHeaders(['referer']) })
|
||||
const route = useRoute()
|
||||
</script>
|
||||
<template>
|
||||
|
|
|
@ -4,7 +4,7 @@ import type { ralTypes } from '@/components/ral'
|
|||
|
||||
const config = useRuntimeConfig()
|
||||
const apiBase = config.public.apiBase
|
||||
const { data: calculatorData } = await useFetch<ApiCalcType>(`${apiBase}/calculator/5/`)
|
||||
const { data: calculatorData } = await useFetch<ApiCalcType>(`${apiBase}/calculator/5/`, { headers: useRequestHeaders(['referer']) })
|
||||
const isModalOpen = useState('modal_open', () => false)
|
||||
|
||||
const lamelle_height = useState<number>('lamelle_height')
|
||||
|
|
|
@ -6,7 +6,7 @@ import '@/assets/main.scss'
|
|||
import type { NuxtError } from '#app'
|
||||
import og_img from '/og_img.png'
|
||||
|
||||
const { data: seoData } = await useFetch<ApiKpType>(`${apiBase}/kp/2`)
|
||||
const { data: seoData } = await useFetch<ApiKpType>(`${apiBase}/kp/2`, { headers: useRequestHeaders(['referer']) })
|
||||
useSeoMeta({
|
||||
title: seoData.value?.title,
|
||||
ogTitle: seoData.value?.title,
|
||||
|
|
|
@ -7,7 +7,7 @@ import { marked } from 'marked';
|
|||
|
||||
import og_img from '/og_img.png'
|
||||
|
||||
const { data: seoData } = await useFetch<ApiKpType>(`${apiBase}/kp/1`)
|
||||
const { data: seoData } = await useFetch<ApiKpType>(`${apiBase}/kp/1`, { headers: useRequestHeaders(['referer']) })
|
||||
useSeoMeta({
|
||||
title: seoData.value?.title,
|
||||
ogTitle: seoData.value?.title,
|
||||
|
@ -17,15 +17,15 @@ useSeoMeta({
|
|||
// twitterCard: 'summary_large_image',
|
||||
})
|
||||
|
||||
const { data: pagesData } = await useFetch<ApiPagesType[]>(`${apiBase}/pages/?ordering=order`)
|
||||
const { data: pagesData } = await useFetch<ApiPagesType[]>(`${apiBase}/pages/?ordering=order`, { headers: useRequestHeaders(['referer']) })
|
||||
|
||||
const { data: reviewsData } = await useFetch<ApiReviewsType[]>(`${apiBase}/review/`)
|
||||
const { data: calculatorData } = await useFetch(`${apiBase}/calculator/5/`)
|
||||
const { data: reviewsData } = await useFetch<ApiReviewsType[]>(`${apiBase}/review/`, { headers: useRequestHeaders(['referer']) })
|
||||
const { data: calculatorData } = await useFetch(`${apiBase}/calculator/5/`, { headers: useRequestHeaders(['referer']) })
|
||||
|
||||
const about = (pagesData.value as ApiPagesType[]).find(el => el.slug == 'about')
|
||||
const reviews = (pagesData.value as ApiPagesType[]).find(el => el.slug == 'clients')
|
||||
const delivery = (pagesData.value as ApiPagesType[]).find(el => el.slug == 'how_to')
|
||||
const advantages = (pagesData.value as ApiPagesType[]).find(el => el.slug == 'advantages')
|
||||
const about = (pagesData.value as ApiPagesType[]).find(el => el.slug == 'about', { headers: useRequestHeaders(['referer']) })
|
||||
const reviews = (pagesData.value as ApiPagesType[]).find(el => el.slug == 'clients', { headers: useRequestHeaders(['referer']) })
|
||||
const delivery = (pagesData.value as ApiPagesType[]).find(el => el.slug == 'how_to', { headers: useRequestHeaders(['referer']) })
|
||||
const advantages = (pagesData.value as ApiPagesType[]).find(el => el.slug == 'advantages', { headers: useRequestHeaders(['referer']) })
|
||||
|
||||
const roubleSign = new Intl.NumberFormat('ru-RU', {
|
||||
style: 'currency',
|
||||
|
@ -36,13 +36,13 @@ const aboutText = computed(() => marked.parse(about?.content || ''))
|
|||
const deliveryText = computed(() => delivery?.content.split('[col]').map(el => marked.parse(el || '')))
|
||||
const advantagesText = computed(() => {
|
||||
let c = advantages?.content || ''
|
||||
Object.entries(calculatorData.value || {}).map(item => {
|
||||
Object.entries(calculatorData.value || {}).map(item => {
|
||||
c = c.replaceAll(`[${item[0]}]`, roubleSign.format(item[1]))
|
||||
})
|
||||
return marked.parse(c)
|
||||
})
|
||||
|
||||
const { data: advData } = await useFetch<ApiAdvantageType[]>(`${apiBase}/advantage/`)
|
||||
const { data: advData } = await useFetch<ApiAdvantageType[]>(`${apiBase}/advantage/`, { headers: useRequestHeaders(['referer']) })
|
||||
</script>
|
||||
<template>
|
||||
<div>
|
||||
|
@ -69,14 +69,16 @@ const { data: advData } = await useFetch<ApiAdvantageType[]>(`${apiBase}/advanta
|
|||
</div>
|
||||
<div class="siteblock siteblock_imgbg bg-slate-500"
|
||||
:style="[{ backgroundImage: `url(${[imgBase, reviews?.image].join('/')})` }]" v-if="reviews">
|
||||
<NuxtImg :src="[imgBase, reviews?.image].join('/')" class="invisible" alt="отзыв" title="" format="webp" loading="lazy" />
|
||||
<NuxtImg :src="[imgBase, reviews?.image].join('/')" class="invisible" alt="отзыв" title="" format="webp"
|
||||
loading="lazy" />
|
||||
</div>
|
||||
<div class="siteblock bg-white" :id="reviews?.slug" v-if="reviews">
|
||||
<div class="container">
|
||||
<template v-for="item in reviewsData?.slice(0, 3)">
|
||||
<div class="review">
|
||||
<div class="review-image">
|
||||
<NuxtImg :src="[imgBase, item.image].join('/')" :alt="item.text" title="" format="webp" loading="lazy" />
|
||||
<NuxtImg :src="[imgBase, item.image].join('/')" :alt="item.text" title="" format="webp"
|
||||
loading="lazy" />
|
||||
</div>
|
||||
<div class="review-content">
|
||||
{{ item.comment }}
|
||||
|
@ -109,7 +111,7 @@ const { data: advData } = await useFetch<ApiAdvantageType[]>(`${apiBase}/advanta
|
|||
<LazyCalcModels />
|
||||
</Suspense>
|
||||
</div>
|
||||
<div class="siteblock bg-white" :id="delivery?.slug" v-if="deliveryText">
|
||||
<div class="siteblock bg-white siteblock_content" :id="delivery?.slug" v-if="deliveryText">
|
||||
<div class="container">
|
||||
<div class="prose col-span-12 xl:col-span-6">
|
||||
<span v-html="deliveryText[0]"></span>
|
||||
|
|
Loading…
Reference in New Issue