- - {/* +
-*/}
diff --git a/frontend/src/pages/blog/index.astro b/frontend/src/pages/blog/index.astro index 1b9731b..04d75d2 100644 --- a/frontend/src/pages/blog/index.astro +++ b/frontend/src/pages/blog/index.astro @@ -15,11 +15,11 @@ const { posts, total, totalPages } = await getPosts({ page: currentPage, perPage const categories = await getAllCategories(); const formatDate = (date: string) => { - return new Date(date).toLocaleDateString('ru-RU', { - day: 'numeric', - month: 'long', - year: 'numeric' - }); + const d = new Date(date); + const day = d.getDate().toString().padStart(2, '0'); + const month = (d.getMonth() + 1).toString().padStart(2, '0'); + const year = new Date().getFullYear().toString().slice(-2); + return `${day}/${month}/${year}`; }; --- diff --git a/frontend/src/pages/blog/page/[page].astro b/frontend/src/pages/blog/page/[page].astro index a4d4512..59c215d 100644 --- a/frontend/src/pages/blog/page/[page].astro +++ b/frontend/src/pages/blog/page/[page].astro @@ -18,11 +18,11 @@ const { posts, total, totalPages } = await getPosts({ page: currentPage, perPage const categories = await getAllCategories(); const formatDate = (date: string) => { - return new Date(date).toLocaleDateString('ru-RU', { - day: 'numeric', - month: 'long', - year: 'numeric' - }); + const d = new Date(date); + const day = d.getDate().toString().padStart(2, '0'); + const month = (d.getMonth() + 1).toString().padStart(2, '0'); + const year = new Date().getFullYear().toString().slice(-2); + return `${day}/${month}/${year}`; }; --- diff --git a/frontend/src/pages/blog/search.astro b/frontend/src/pages/blog/search.astro index 25ababf..f1d9bbf 100644 --- a/frontend/src/pages/blog/search.astro +++ b/frontend/src/pages/blog/search.astro @@ -19,11 +19,11 @@ const breadcrumbsItems = [ ]; const formatDate = (date: string) => { - return new Date(date).toLocaleDateString('ru-RU', { - day: 'numeric', - month: 'long', - year: 'numeric' - }); + const d = new Date(date); + const day = d.getDate().toString().padStart(2, '0'); + const month = (d.getMonth() + 1).toString().padStart(2, '0'); + const year = new Date().getFullYear().toString().slice(-2); + return `${day}/${month}/${year}`; }; --- diff --git a/scripts/create-post.ts b/scripts/create-post.ts new file mode 100644 index 0000000..836befa --- /dev/null +++ b/scripts/create-post.ts @@ -0,0 +1,155 @@ +import PocketBase from 'pocketbase'; + +const PB_URL = process.env.POCKETBASE_URL || 'http://127.0.0.1:8090'; +const ADMIN_EMAIL = process.env.PB_ADMIN_EMAIL; +const ADMIN_PASSWORD = process.env.PB_ADMIN_PASSWORD; + +const NEW_POST = { + title: 'Независимая экспертиза после ДТП в Сургуте ХМАО-Югры', + description: 'Профессиональная независимая экспертиза автомобиля после ДТП в Сургуте. Оценка ущерба для страховой и суда. Быстрые сроки и гарантия качества.', + author: 'Автоюрист', + category: 'ДТП', + categoryColor: 'bg-red', + date: '2026-04-28', + readTime: '8 мин', + readmeTime: '8', + image: '', + slug: 'nezavisimaya-ekspertiza-posle-dtp', + draft: false, + content: `

Введение

+

После дорожно-транспортного происшествия потерпевший имеет право на возмещение ущерба. Однако страховые компании нередко занижают сумму выплаты, ссылаясь на износ деталей, некорректные данные калькуляторов или намеренное завышение СТО-расценок. В такой ситуации независимая экспертиза — единственный способ объективно оценить ущерб и отстоять свои интересы.

+ +

Что такое независимая экспертиза?

+

Независимая техническая экспертиза — это исследование транспортного средства, проводимое квалифицированным специалистом-оценщиком для определения стоимости восстановительного ремонта. В отличие от оценки страховой компании, эксперт не заинтересован в занижении суммы и опирается исключительно на объективные данные.

+ +
+

Важно: Согласно ФЗ № 135 «Об оценочной деятельности», заказчиком экспертизы может быть любая из сторон: страхователь, страховщик или суд.

+
+ +

Когда необходима независимая экспертиза?

+

Существует ряд ситуаций, когда обращение к независимому эксперту не просто рекомендовано, а необходимо:

+ +
    +
  • +

    Страховая занизила выплату. Если сумма, предложенная страховой компанией, существенно отличается от реальной стоимости ремонта (разница более 10-15%), это повод заказать альтернативную оценку.

    +
  • +
  • +

    Отказ в выплате. Страховые компании могут отказать в возмещении, ссылаясь на форс-мажор, нарушение условий договора или другие причины. Независимая экспертиза поможет доказать обратное.

    +
  • +
  • +

    Скрытые повреждения. После ДТП могут быть повреждены элементы, которые не ��идны при внешнем осмотре: подвеска, элементы кузова, электропроводка. Эксперт выявит все дефекты.

    +
  • +
  • +

    Спор со страховой в суде. Если дело дошло до суда, независимая экспертиза станет главным доказательством вашей позиции.

    +
  • +
+ +

Как выбрать эксперта в Сургуте?

+

От качества экспертизы зависит результат всего спора. При выборе специалиста обратите внимание на следующие критерии:

+ +
    +
  1. +

    Квалификация и образование. Эксперт должен иметь высшее образование в области автотехнической экспертизы и действующий квалификационный аттестат.

    +
  2. +
  3. +

    Стаж работы. Опыт работы менее 3 лет — повод задуматься. Лучше выбирать специалистов с солидной практикой.

    +
  4. +
  5. +

    Членство в СРО. Оценщик должен состоять в саморегулируемой организации оценщиков.

    +
  6. +
  7. +

    Отзывы и репутация. Изучите отзывы клиентов, запросите примеры выполненных экспертиз.

    +
  8. +
+ +
+

💡 Совет автоюриста: Не связывайтесь с экспертами, которые обещают «нужную» сумму или работают только с определенными юридическими фирмами. Это признак недобросовестности.

+
+ +

Процедура проведения экспертизы

+

Процесс независимой экспертизы включает несколько этапов:

+ +
    +
  1. +

    Заключение договора. С экспертом или оценочной организацией заключается договор на проведение экспертизы.

    +
  2. +
  3. +

    Предоставление документов. Вам потребуются: документы на автомобиль (ПТС, СТС), справка о ДТП, заключение страховой компании (если есть), акты осмотра.

    +
  4. +
  5. +

    Осмотр транспортного средства. Эксперт проводит осмотр автомобиля, фиксирует все повреждения с фотографиями и измерениями.

    +
  6. +
  7. +

    Составление заключения. По результатам осмотра составляется экспертное заключение с расчетом стоимости восстановительного ремонта.

    +
  8. +
+ +

Стоимость экспертизы в Сургуте

+

Стоимость экспертизы зависит от сложности дела и региона. В среднем по ХМАО-Югре цена варьируется от 8 000 до 30 000 рублей. Важно помнить: эти расходы можно взыскать со страховой компании в случае успешного исхода дела.

+ +
+

💡 Важно знать: Если страховая компания неправомерно отказала в выплате или занизила сумму, расходы на экспертизу относятся к судебным расходам и подлежат возмещению ответчиком.

+
+ +

Как использовать результаты?

+

Получив экспертное заключение, вы можете действовать несколькими способами:

+ +
    +
  • +

    Досудебное урегулирование. Направить претензию в страховую компанию с приложением экспертного заключения. Страховщик обязан рассмотреть претензию в течение 10 дней.

    +
  • +
  • +

    Обращение в суд. Если страховая отказывается пересматривать сумму — подавайте исковое заявление. Экспертиза станет основным доказательством.

    +
  • +
  • +

    Страховая выплата. По решению суда страховая компания обязана будет выплатить разницу между заниженной суммой и реальным ущербом, а также штраф, неустойку и компенсацию морального вреда.

    +
  • +
+ +

Заключение

+

Независимая экспертиза — это мощный инструмент защиты прав автовладельцев. Не позволяйте страховым компаниям экономить на вашем имуществе. Закажите объективную оценку ущерба и получите справедливую компенсацию.

+ +

Если страховая компания затягивает с выплатой или отказывает в возмещении — обращайтесь к автоюристу. Специалист поможет правильно организовать экспертизу и отстоять ваши интересы в споре со страховщиком.

`, +}; + +const UPDATE_EXISTING = true; +const EXISTING_POST_ID = 'sn1u55h21wdphti'; + +async function createPost() { + if (!ADMIN_EMAIL || !ADMIN_PASSWORD) { + console.error('❌ Укажите PB_ADMIN_EMAIL и PB_ADMIN_PASSWORD в .env'); + process.exit(1); + } + + const pb = new PocketBase(PB_URL); + + try { + await pb.admins.authWithPassword(ADMIN_EMAIL, ADMIN_PASSWORD); + console.log('✅ Подключено к PocketBase'); + } catch (e) { + console.error('❌ Ошибка авторизации admin'); + process.exit(1); + } + + try { + let post; + if (UPDATE_EXISTING && EXISTING_POST_ID) { + post = await pb.collection('posts').update(EXISTING_POST_ID, NEW_POST); + console.log('✅ Пост обновлён'); + } else { + post = await pb.collection('posts').create(NEW_POST); + console.log('✅ Пост создан'); + } + console.log(' ID:', post.id); + console.log(' title:', post.title); + console.log(' slug:', post.slug); + } catch (e: any) { + if (e.data?.message?.includes('already exists')) { + console.log('ℹ️ Пост уже существует'); + } else { + console.error('❌ Ошибка:', e.data || e.message); + } + } +} + +createPost(); \ No newline at end of file