add maintenance page

This commit is contained in:
Sergey Krylov 2023-06-26 08:17:38 +03:00
parent f30a7301c2
commit 1809d83cfd
4 changed files with 86 additions and 2 deletions

View File

@ -63,6 +63,12 @@ const themedCombosPageBreadcrumbs: BreadcrumbsType[] = [
{ href: PAGE_LINK.THEMED_COMBOS, label: PAGE_LINK_LABEL[PAGE_LINK.THEMED_COMBOS] },
];
const maintenancePageBreadcrumbs: BreadcrumbsType[] = [
{ href: PAGE_LINK.HOME, label: PAGE_LINK_LABEL[PAGE_LINK.HOME] },
{ label: PAGE_LINK_LABEL[PAGE_LINK.SERVICES] },
{ href: PAGE_LINK.MAINTENANCE, label: PAGE_LINK_LABEL[PAGE_LINK.MAINTENANCE] },
];
const pricePageBreadcrumbs: BreadcrumbsType[] = [
{ href: PAGE_LINK.HOME, label: PAGE_LINK_LABEL[PAGE_LINK.HOME] },
{ href: PAGE_LINK.PRICE, label: PAGE_LINK_LABEL[PAGE_LINK.PRICE] },
@ -117,6 +123,10 @@ export const getBreadcrumbs = (req: Request, res: Response) => {
return res.status(200).json(themedCombosPageBreadcrumbs);
}
case PAGE_LINK.MAINTENANCE: {
return res.status(200).json(maintenancePageBreadcrumbs);
}
default:
return res.status(404);
}

View File

@ -127,6 +127,25 @@ const themedCombosQuestions: QuestionType[] = [
},
];
const maintenanceQuestions: QuestionType[] = [
{
answer: 'Ответ на вопрос как забронировать зал для проведения выездного праздника?',
id: uuid(),
question: 'Как забронировать зал для проведения Дня рождения?',
},
{
answer: 'Мы не требуем предоплату. Для бронирования мероприятия достаточно Вашего номера телефона. '
+ 'Мероприятие оплачивается на месте перед его началом.',
id: uuid(),
question: 'Как производится оплата мероприятия?',
},
{
answer: 'Ответ на вопрос какое максимальное количество детей допустимо на празднике?',
id: uuid(),
question: 'Какое максимальное количество детей допустимо на празднике?',
},
];
type QuestionsType = {
categories: QuestionCategoryType[];
group: string;
@ -162,6 +181,10 @@ export const getFaq = (req: Request, res: Response) => {
return res.status(200).json(themedCombosQuestions);
}
case PAGE_LINK.MAINTENANCE: {
return res.status(200).json(maintenanceQuestions);
}
case PAGE_LINK.QUESTS: {
switch (id) {
case 'eger':

View File

@ -61,6 +61,43 @@ const priceTitleText = {
title: 'Ценовая политика ',
};
const maintenanceTitleText = {
description: 'Едете с детьми на свадьбу, корпоратив или сами организуете\n'
+ 'выездное мероприятие? Мы знаем, как помочь Вам отдохнуть\n'
+ 'и организовать детский досуг!',
title: 'СОПРОВОЖДЕНИЕ ДЕТЕЙ на мероприятиях',
};
const maintenanceSteps = [
{
description: 'Заполните заявку на странице,\\n'
+ 'указав контактную информацию,\\n'
+ 'формат мероприятия и адрес',
id: uuid(),
},
{
description:
'Обсуждаем с Вами дату, программу\\n'
+ 'и развлечения, учитываем интересы\\n'
+ 'детей и пожелания родителей',
id: uuid(),
},
{
description:
'Составляем план мероприятия\\n'
+ '(сборы, игры, тематика, тайминг)\\n'
+ 'и согласовываем стоимость',
id: uuid(),
},
{
description:
'Теперь можно не переживать за детей\\n'
+ 'и спокойно отдыхать: организацию\\n'
+ 'досуга маленьких гостей мы взяли на себя!',
id: uuid(),
},
];
const themedCombosTitleText = {
age: {
text: '2-15',
@ -284,6 +321,19 @@ export const getTitle = (req: Request, res: Response) => {
}
}
case PAGE_LINK.MAINTENANCE: {
switch (section) {
case TextSection.TITLE:
return res.status(200).json(maintenanceTitleText);
case TextSection.STEPS:
return res.status(200).json(maintenanceSteps);
default:
return res.status(404);
}
}
default:
return res.status(404);
}

View File

@ -5,7 +5,6 @@ export const enum PAGE_LINK {
BIRTHDAY = '/holidays/birthday',
CONTACTS = '/contacts',
COOPERATION = '/cooperation',
ESCORT = '/escort',
FAQ = '/faq',
FEEDBACK = '/feedback',
FRANCHISE = '/franchise',
@ -13,6 +12,7 @@ export const enum PAGE_LINK {
GRADUATION = '/holidays/graduation',
HOLIDAYS = '/holidays',
HOME = '/',
MAINTENANCE = '/services/maintenance',
MASTER_CLASSES = '/services/master-classes',
NEW_YEAR = '/new_year',
OUTDOORS = '/holidays/outdoors',
@ -36,7 +36,7 @@ export const PAGE_LINK_LABEL: PAGE_LINK_LABEL_TYPE = {
[PAGE_LINK.HOME]: 'Главная',
[PAGE_LINK.CONTACTS]: 'Контакты',
[PAGE_LINK.COOPERATION]: 'Сотрудничество',
[PAGE_LINK.ESCORT]: 'Сопровождение',
[PAGE_LINK.MAINTENANCE]: 'Сопровождение детей',
[PAGE_LINK.FAQ]: 'Частые вопросы',
[PAGE_LINK.FEEDBACK]: 'Отзывы',
[PAGE_LINK.FRANCHISE]: 'Франшиза',
@ -59,6 +59,7 @@ export enum TextSection {
DESCRIPTION = 'description',
INFO = 'info',
PARK = 'parkInfo',
STEPS = 'steps',
TITLE = 'title',
}