From 6f727aae7ba947da84ceaa7955c4a018fbcc9595 Mon Sep 17 00:00:00 2001 From: Web-serfer Date: Sat, 18 Apr 2026 18:25:10 +0500 Subject: [PATCH] =?UTF-8?q?=D0=9D=D0=BE=D0=B2=D1=8B=D0=B5=20=D0=BF=D1=80?= =?UTF-8?q?=D0=B0=D0=B2=D0=BA=D0=B8=20=D0=B2=20=D0=BA=D0=BE=D0=BC=D0=BF?= =?UTF-8?q?=D0=BE=D0=B5=D0=BD=D1=82=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../1776514159_created_comments.js | 126 +++++++ .../1776514585_updated_comments.js | 28 ++ bun.lockb | Bin 0 -> 309624 bytes frontend/astro.config.mjs | 3 +- frontend/package.json | 4 +- frontend/src/components/blog/BlogCard.astro | 4 +- .../components/blog/PostReactionButtons.astro | 27 +- .../src/components/blog/RelatedPosts.astro | 2 + .../components/blog/comments/CommentForm.tsx | 197 ++++++++++ .../components/blog/comments/CommentLock.tsx | 73 ++++ .../src/components/blog/comments/Comments.tsx | 351 ++++++++++++++++++ frontend/src/globalInterfaces.ts | 1 + frontend/src/layouts/ArticleLayout.astro | 21 +- frontend/src/lib/pb.ts | 14 +- .../pages/api/auth/confirm-password-reset.ts | 109 ++++++ frontend/src/pages/api/auth/me.ts | 73 ++++ .../pages/api/auth/request-password-reset.ts | 124 +++++++ frontend/src/pages/api/comments/index.ts | 248 +++++++++++++ frontend/src/pages/api/votes.ts | 58 ++- frontend/src/pages/auth/forgot-password.astro | 2 +- frontend/src/pages/auth/reset-password.astro | 4 +- frontend/src/pages/blog/[slug].astro | 12 +- frontend/src/types/comments.ts | 39 ++ 23 files changed, 1483 insertions(+), 37 deletions(-) create mode 100644 backend/pb_migrations/1776514159_created_comments.js create mode 100644 backend/pb_migrations/1776514585_updated_comments.js create mode 100644 bun.lockb create mode 100644 frontend/src/components/blog/comments/CommentForm.tsx create mode 100644 frontend/src/components/blog/comments/CommentLock.tsx create mode 100644 frontend/src/components/blog/comments/Comments.tsx create mode 100644 frontend/src/pages/api/auth/confirm-password-reset.ts create mode 100644 frontend/src/pages/api/auth/me.ts create mode 100644 frontend/src/pages/api/auth/request-password-reset.ts create mode 100644 frontend/src/pages/api/comments/index.ts create mode 100644 frontend/src/types/comments.ts diff --git a/backend/pb_migrations/1776514159_created_comments.js b/backend/pb_migrations/1776514159_created_comments.js new file mode 100644 index 0000000..00f2597 --- /dev/null +++ b/backend/pb_migrations/1776514159_created_comments.js @@ -0,0 +1,126 @@ +/// +migrate((app) => { + const collection = new Collection({ + "createRule": null, + "deleteRule": null, + "fields": [ + { + "autogeneratePattern": "[a-z0-9]{15}", + "hidden": false, + "id": "text3208210256", + "max": 15, + "min": 15, + "name": "id", + "pattern": "^[a-z0-9]+$", + "presentable": false, + "primaryKey": true, + "required": true, + "system": true, + "type": "text" + }, + { + "autogeneratePattern": "", + "hidden": false, + "id": "text4274335913", + "max": 0, + "min": 0, + "name": "content", + "pattern": "", + "presentable": false, + "primaryKey": false, + "required": false, + "system": false, + "type": "text" + }, + { + "autogeneratePattern": "", + "hidden": false, + "id": "text1372126313", + "max": 0, + "min": 0, + "name": "post_slug", + "pattern": "", + "presentable": false, + "primaryKey": false, + "required": false, + "system": false, + "type": "text" + }, + { + "cascadeDelete": false, + "collectionId": "_pb_users_auth_", + "hidden": false, + "id": "relation2375276105", + "maxSelect": 1, + "minSelect": 0, + "name": "user", + "presentable": false, + "required": false, + "system": false, + "type": "relation" + }, + { + "autogeneratePattern": "", + "hidden": false, + "id": "text1032740943", + "max": 0, + "min": 0, + "name": "parent", + "pattern": "", + "presentable": false, + "primaryKey": false, + "required": false, + "system": false, + "type": "text" + }, + { + "autogeneratePattern": "", + "hidden": false, + "id": "text2063623452", + "max": 0, + "min": 0, + "name": "status", + "pattern": "", + "presentable": false, + "primaryKey": false, + "required": false, + "system": false, + "type": "text" + }, + { + "hidden": false, + "id": "autodate2990389176", + "name": "created", + "onCreate": true, + "onUpdate": false, + "presentable": false, + "system": false, + "type": "autodate" + }, + { + "hidden": false, + "id": "autodate3332085495", + "name": "updated", + "onCreate": true, + "onUpdate": true, + "presentable": false, + "system": false, + "type": "autodate" + } + ], + "id": "pbc_533777971", + "indexes": [], + "listRule": null, + "name": "comments", + "system": false, + "type": "base", + "updateRule": null, + "viewRule": null + }); + + return app.save(collection); +}, (app) => { + const collection = app.findCollectionByNameOrId("pbc_533777971"); + + return app.delete(collection); +}) diff --git a/backend/pb_migrations/1776514585_updated_comments.js b/backend/pb_migrations/1776514585_updated_comments.js new file mode 100644 index 0000000..d7e21f7 --- /dev/null +++ b/backend/pb_migrations/1776514585_updated_comments.js @@ -0,0 +1,28 @@ +/// +migrate((app) => { + const collection = app.findCollectionByNameOrId("pbc_533777971") + + // update collection data + unmarshal({ + "createRule": "@request.auth.id != \"\"", + "deleteRule": "user.id = @request.auth.id ", + "listRule": " status = \"published\" || @request.auth.id != \"\" ", + "updateRule": " user.id = @request.auth.id ", + "viewRule": " status = \"published\" || @request.auth.id != \"\" " + }, collection) + + return app.save(collection) +}, (app) => { + const collection = app.findCollectionByNameOrId("pbc_533777971") + + // update collection data + unmarshal({ + "createRule": null, + "deleteRule": null, + "listRule": null, + "updateRule": null, + "viewRule": null + }, collection) + + return app.save(collection) +}) diff --git a/bun.lockb b/bun.lockb new file mode 100644 index 0000000000000000000000000000000000000000..7a2b718d88ff2c4d450a96fa6e10a5f04dc02851 GIT binary patch literal 309624 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 Rh~GQ>Up} page.includes(path)); }, - })], + }), solidJs()], vite: { plugins: [tailwindcss()], build: { diff --git a/frontend/package.json b/frontend/package.json index 9fa0dc3..1300204 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -13,14 +13,16 @@ }, "dependencies": { "@astrojs/mdx": "^5.0.3", - "nodemailer": "^6.9.14", "@astrojs/node": "^10.0.4", "@astrojs/sitemap": "^3.7.2", + "@astrojs/solid-js": "^6.0.1", "@tailwindcss/vite": "^4.2.2", "astro": "^6.0.8", "astro-icon": "^1.1.5", "marked": "^18.0.0", + "nodemailer": "^6.9.14", "pocketbase": "^0.21.0", + "solid-js": "^1.9.12", "tailwindcss": "^4.2.2" }, "devDependencies": { diff --git a/frontend/src/components/blog/BlogCard.astro b/frontend/src/components/blog/BlogCard.astro index 8f050d7..0509663 100644 --- a/frontend/src/components/blog/BlogCard.astro +++ b/frontend/src/components/blog/BlogCard.astro @@ -6,6 +6,7 @@ export interface Props { categoryColor?: string; date: string; readTime: string; + readmeTime?: string; image?: string; slug?: string; } @@ -17,6 +18,7 @@ const { categoryColor = 'bg-gold', date, readTime, + readmeTime, image, slug = '#' } = Astro.props; @@ -52,7 +54,7 @@ const imageUrl = image || '/images/blog/default.avif'; - {readTime} + {readmeTime || readTime} diff --git a/frontend/src/components/blog/PostReactionButtons.astro b/frontend/src/components/blog/PostReactionButtons.astro index 9446a03..8180083 100644 --- a/frontend/src/components/blog/PostReactionButtons.astro +++ b/frontend/src/components/blog/PostReactionButtons.astro @@ -224,18 +224,25 @@ const { initialLikes = 0, initialDislikes = 0, postId } = Astro.props; const dislikeBtn = container.querySelector('.dislike-btn'); async function loadUserVote() { - if (!pb.authStore.isValid) return; - try { + console.log('[Vote] Загрузка голосов для post:', postId); const response = await fetch(`/api/votes?post_id=${postId}`, { credentials: 'include', }); + console.log('[Vote] Ответ:', response.status); if (response.ok) { const result = await response.json(); - if (result.userVote === 'like') { - likeBtn?.classList.add('active'); - } else if (result.userVote === 'dislike') { - dislikeBtn?.classList.add('active'); + console.log('[Vote] Данные:', result); + // Обновляем счетчики + if (likesCount) likesCount.textContent = result.likes.toString(); + if (dislikesCount) dislikesCount.textContent = result.dislikes.toString(); + // Показываем голос пользователя + if (pb.authStore.isValid) { + if (result.userVote === 'like') { + likeBtn?.classList.add('active'); + } else if (result.userVote === 'dislike') { + dislikeBtn?.classList.add('active'); + } } } } catch (e) { @@ -243,7 +250,15 @@ const { initialLikes = 0, initialDislikes = 0, postId } = Astro.props; } } + // Вызываем при загрузке и при изменении авторизации loadUserVote(); + + // Также при изменении авторизации + window.addEventListener('storage', (e) => { + if (e.key === 'pb_auth') { + loadUserVote(); + } + }); likeBtn?.addEventListener('click', () => { if (postId) handleVote(postId, 'like'); diff --git a/frontend/src/components/blog/RelatedPosts.astro b/frontend/src/components/blog/RelatedPosts.astro index 93b30f6..5e8da5b 100644 --- a/frontend/src/components/blog/RelatedPosts.astro +++ b/frontend/src/components/blog/RelatedPosts.astro @@ -11,6 +11,7 @@ interface Post { categoryColor: string; date: string; readTime: string; + readmeTime?: string; image: string; } @@ -48,6 +49,7 @@ const filteredPosts = currentSlug categoryColor={post.categoryColor} date={formatDate(post.date)} readTime={post.readTime} + readmeTime={post.readmeTime} image={getPostImageUrl(post)} slug={`/blog/${post.slug}`} /> diff --git a/frontend/src/components/blog/comments/CommentForm.tsx b/frontend/src/components/blog/comments/CommentForm.tsx new file mode 100644 index 0000000..ad092d6 --- /dev/null +++ b/frontend/src/components/blog/comments/CommentForm.tsx @@ -0,0 +1,197 @@ +import { createSignal, Show } from "solid-js"; + +interface CommentFormData { + content: string; +} + +interface ValidationErrors { + content?: string; +} + +interface CommentFormProps { + onSubmit: (data: CommentFormData) => void; + isReply?: boolean; + onCancel?: () => void; + user?: { + name: string; + email: string; + avatar?: string; + }; +} + +const MAX_MESSAGE_LENGTH = 2000; +const MIN_MESSAGE_LENGTH = 10; + +const DANGEROUS_PATTERNS = [ + /)<[^<]*)*<\/script>/gi, + /javascript:/gi, + /on\w+\s*=/gi, + /)<[^<]*)*<\/iframe>/gi, + /)<[^<]*)*<\/object>/gi, + //gi, + /data:text\/html/gi, + /expression\s*\(/gi, + /url\s*\(\s*['"]*\s*javascript:/gi, +]; + +export default function CommentForm(props: CommentFormProps) { + const [content, setContent] = createSignal(""); + const [errors, setErrors] = createSignal({}); + const [touched, setTouched] = createSignal<{ [key: string]: boolean }>({}); + + const sanitizeInput = (input: string): string => { + return input + .replace(/[<>]/g, "") + .replace(/"/g, """) + .replace(/'/g, "'") + .replace(/&/g, "&"); + }; + + const containsDangerousContent = (input: string): boolean => { + return DANGEROUS_PATTERNS.some((pattern) => pattern.test(input)); + }; + + const validateContent = (value: string): string | undefined => { + const trimmed = value.trim(); + if (!trimmed) return "Комментарий обязателен"; + if (trimmed.length < MIN_MESSAGE_LENGTH) + return `Минимум ${MIN_MESSAGE_LENGTH} символов`; + if (trimmed.length > MAX_MESSAGE_LENGTH) + return `Максимум ${MAX_MESSAGE_LENGTH} символов`; + if (containsDangerousContent(trimmed)) return "Обнаружен опасный контент"; + return undefined; + }; + + const handleContentChange = (e: Event) => { + const target = e.target as HTMLTextAreaElement; + let value = target.value; + + if (containsDangerousContent(value)) { + DANGEROUS_PATTERNS.forEach((pattern) => { + value = value.replace(pattern, ""); + }); + } + + if (value.length > MAX_MESSAGE_LENGTH) { + value = value.slice(0, MAX_MESSAGE_LENGTH); + } + + setContent(value); + if (touched().content) { + setErrors((prev) => ({ ...prev, content: validateContent(value) })); + } + }; + + const validateForm = (): boolean => { + const contentError = validateContent(content()); + setErrors({ content: contentError }); + setTouched({ content: true }); + return !contentError; + }; + + const handleSubmit = (e: Event) => { + e.preventDefault(); + if (!validateForm()) return; + + props.onSubmit({ + content: sanitizeInput(content().trim()), + }); + + setContent(""); + setErrors({}); + setTouched({}); + }; + + const handleBlur = () => { + setTouched((prev) => ({ ...prev, content: true })); + setErrors((prev) => ({ ...prev, content: validateContent(content()) })); + }; + + const isValid = () => { + return !errors().content && content().trim(); + }; + + return ( +

+

+ + + + {props.isReply ? "Написать ответ" : "Оставить комментарий"} +

+ +
+
+