Commit Graph

1136 Commits

Author SHA1 Message Date
sebastjanartic
c26d16da3d Fix issue with video preview functionality not working as expected
Introduce console logging to diagnose and fix an issue where video previews were not generating correctly, specifically when the video source was not an MP4.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1/d05DGZF
2025-09-02 15:24:40 +00:00
sebastjanartic
4ffdf7f960 Improve video update process by removing unnecessary logging
Refactor `HybridStorage.updateVideo` to only update the PostgreSQL database, removing console logs and comments related to Bunny CDN caching.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1/d05DGZF
2025-09-02 15:24:15 +00:00
sebastjanartic
aef9d6e04a Update video information only in the database
Modify the `updateVideo` method in `HybridStorage` to exclusively update video details in the PostgreSQL database, removing the previous logic that also updated the Bunny cache.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1/d05DGZF
2025-09-02 15:10:58 +00:00
sebastjanartic
af87e190e0 Improve video data caching and synchronization logic
Modify BunnyStorage to update local cache directly instead of invalidating it, improving performance by avoiding external synchronization calls after successful database updates.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1/d05DGZF
2025-09-02 15:06:58 +00:00
sebastjanartic
fef1b66bd7 Prioritize database updates for videos over Bunny cache
Update video metadata in PostgreSQL and invalidate Bunny.net cache to ensure data consistency.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1/d05DGZF
2025-09-02 15:04:37 +00:00
sebastjanartic
dec09b7b2f Improve storage logic to support hybrid and CDN options
Refactor storage initialization to prioritize hybrid (Bunny.net + Database) storage, then Bunny.net only, falling back to Database or Memory storage. Remove debug logs from NetflixGrid component.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1/d05DGZF
2025-09-02 15:02:36 +00:00
sebastjanartic
06185bf445 Improve video display by adding logging for better debugging
Add console logs to the NetflixGrid component to track video data and improve debugging when no videos are present.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1/d05DGZF
2025-09-02 15:01:10 +00:00
sebastjanartic
c12c2c8486 Use only the database for storing all content and user data
Force PostgreSQL database storage by removing Bunny.net and hybrid storage options.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1/xrPE0Pj
2025-09-02 14:56:41 +00:00
sebastjanartic
090645d74c Add visual representation of recent changes
Attach image file: image_1756824701125.png

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1/n7jzC7R
2025-09-02 14:52:28 +00:00
sebastjanartic
98df8d8deb Set default content type for videos to music_video
Update the EditVideoDialog component in the admin page to default the contentType to "music_video" when it is not provided.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1/n7jzC7R
2025-09-02 14:34:09 +00:00
sebastjanartic
19e957153f Improve AI description generation to handle different content types
Update the AI service to allow specifying content type (e.g., 'oddaja' for shows) and adjust prompts accordingly to generate more relevant descriptions for various media formats.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1/n7jzC7R
2025-09-02 14:32:40 +00:00
sebastjanartic
fb4aea7b25 Improve AI description saving and logging in the admin interface
Add console logging for AI data processing and API responses in the admin video editing dialog.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1/n7jzC7R
2025-09-02 14:23:30 +00:00
sebastjanartic
c1fa3898f5 Improve handling of automatically generated video descriptions in admin
Update client-side logic in `admin.tsx` to correctly set and process AI-generated descriptions, ensuring type safety for `episodeNumber` and `tags` when updating form data.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1/n7jzC7R
2025-09-02 14:21:53 +00:00
sebastjanartic
289c3c028a Update video details in the administration panel
Add logging to the /api/admin/videos/:id PATCH endpoint and the BunnyStorage updateVideo method in server/storage.ts to capture video update requests and parsed data.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1/n7jzC7R
2025-09-02 14:19:26 +00:00
sebastjanartic
246ddc7160 Update video information and refresh cached content
Update video record in the database with new information and a timestamp. If the database update is successful, invalidate the cache to ensure the latest video data is loaded.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1/n7jzC7R
2025-09-02 14:17:40 +00:00
sebastjanartic
5fb9842ad0 Allow admins to edit and save video details correctly
Update the admin video editing interface to correctly save changes and refresh data by making cache invalidation and refetching asynchronous operations. Also, implement saving without closing the modal for AI description generation.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1/n7jzC7R
2025-09-02 14:15:01 +00:00
sebastjanartic
1054a4c972 Update admin interface to display video titles instead of filenames
Modify the admin page to show the `video.title` field in the edit dialog instead of the CDN filename for better content identification.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1/n7jzC7R
2025-09-02 14:12:23 +00:00
sebastjanartic
9ab4582ca2 Rearrange fields in the admin video editing dialog
Reorder the 'Song Title'/'Show Name' field to appear before the 'Artist / Band' field in the admin interface for editing video metadata.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1/n7jzC7R
2025-09-02 14:09:24 +00:00
sebastjanartic
e2ec1209fe Improve video editing form with data type conversion and Slovenian localization
Update the video editing form to correctly process episode numbers and tags before submission, ensuring proper data types. Localize UI elements such as "Visibility Status" and its options to Slovenian.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1/ezyc5gl
2025-09-02 14:04:03 +00:00
sebastjanartic
ae27c6f87e Improve content type selection and input field behavior for videos
Update admin page dialog to conditionally disable and style input fields (Song Title, Artist/Band, Episode Title) based on the selected content type (e.g., 'oddaja', 'music_video').

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/2cd2c0bc-434c-4bc9-ad3f-b99d3897a0d1/EnQhtBc
2025-09-02 13:58:14 +00:00
sebastjanartic
c1289e38bf Update video editing options and improve app stability
Update the `admin.tsx` file to include `episodeNumber` in the `EditVideoDialog` component and modify the genre select options. Also, remove deprecated integrations from the `.replit` file.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: b8acb3b1-9903-4862-bc2d-326c35e48b18
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/b8acb3b1-9903-4862-bc2d-326c35e48b18/2cCVHe3
2025-09-02 13:52:49 +00:00
sebastjanartic
ec2034f097 Saved your changes before starting work
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: b8acb3b1-9903-4862-bc2d-326c35e48b18
Replit-Commit-Checkpoint-Type: full_checkpoint
2025-09-02 13:50:41 +00:00
sebastjanartic
4bf0501f11 Update video editing interface to better support shows and episodes
Remove episode number input and adjust labels/placeholders for show titles and episode details in the video editing form. Modify submission logic to directly use form data.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 170e18f0-0f13-4eca-8643-546bba1dd8cc
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/170e18f0-0f13-4eca-8643-546bba1dd8cc/uPMtWcA
2025-09-02 13:48:30 +00:00
sebastjanartic
9b39f101c2 Increase the number of videos displayed in the admin panel
Update the default limit for fetching videos in the admin panel from 50 to 500, and display the total number of videos available.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 170e18f0-0f13-4eca-8643-546bba1dd8cc
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/170e18f0-0f13-4eca-8643-546bba1dd8cc/OcXjVeJ
2025-09-02 13:44:14 +00:00
sebastjanartic
a755ddb6bb Improve layout and spacing of administrative video editing form elements
Adjusted padding, gap, and height for select components and labels in the admin video editing dialog for better UI presentation.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 170e18f0-0f13-4eca-8643-546bba1dd8cc
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/170e18f0-0f13-4eca-8643-546bba1dd8cc/5qUegOb
2025-09-02 13:42:29 +00:00
sebastjanartic
7fe22b5f46 Add visibility status to videos in the admin panel
Implement a new 'isPublic' field for videos, allowing administrators to control the visibility status (Published or Draft) of videos through the admin interface and display this status in the video management list. Updates the EditVideoDialog to include a select component for managing this status.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 170e18f0-0f13-4eca-8643-546bba1dd8cc
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/170e18f0-0f13-4eca-8643-546bba1dd8cc/VKclsor
2025-09-02 13:41:33 +00:00
sebastjanartic
d7e3dfe56f Improve video content type and field labels for clarity
Update various content type labels and placeholder text within the admin interface for better user experience and clarity. This includes refining music genres and show episode descriptions, as well as updating the placeholder for original filenames.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 170e18f0-0f13-4eca-8643-546bba1dd8cc
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/170e18f0-0f13-4eca-8643-546bba1dd8cc/I3Y90ej
2025-09-02 13:39:28 +00:00
sebastjanartic
a61edee033 Add content type and genre selection to video editing for better categorization
Update the admin interface to include dropdowns for selecting content type and genre when editing videos, improving content organization.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 170e18f0-0f13-4eca-8643-546bba1dd8cc
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/170e18f0-0f13-4eca-8643-546bba1dd8cc/mBFpYYY
2025-09-02 13:38:02 +00:00
sebastjanartic
d45aedfc0d Adapt video and episode editing forms to show distinct fields
Update the admin interface to conditionally display labels, placeholders, and input fields based on whether the content is a video or an episode, differentiating between song titles/artists and episode titles/performers.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 170e18f0-0f13-4eca-8643-546bba1dd8cc
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/170e18f0-0f13-4eca-8643-546bba1dd8cc/wfkjaU4
2025-09-02 13:36:36 +00:00
sebastjanartic
57c6462561 Ensure episode numbers are correctly formatted before updating video data
Fix: Correctly parse and submit episodeNumber as an integer in the updateMutation within the admin page's EditVideoDialog component to prevent potential data type mismatches.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 170e18f0-0f13-4eca-8643-546bba1dd8cc
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/170e18f0-0f13-4eca-8643-546bba1dd8cc/Zb44Vx1
2025-09-02 13:32:51 +00:00
sebastjanartic
f17747a814 Add fields for video episode details and tags for shows
Updates `client/src/pages/admin.tsx` to include inputs for `filename`, `episodeNumber`, `episodeTitle`, and `tags`. Modifies `server/storage.ts` to include these fields in `MemStorage` and `shared/schema.ts` to add these columns to the `videos` table in PostgreSQL.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 170e18f0-0f13-4eca-8643-546bba1dd8cc
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/170e18f0-0f13-4eca-8643-546bba1dd8cc/ik6JrhN
2025-09-02 13:31:12 +00:00
sebastjanartic
e117f3617b Add artist/performer information to videos and admin interface
Update database schema and admin UI to include an 'artist' field for videos, and configure agent integrations for database access.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 170e18f0-0f13-4eca-8643-546bba1dd8cc
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/170e18f0-0f13-4eca-8643-546bba1dd8cc/QfqdFa4
2025-09-02 13:27:34 +00:00
sebastjanartic
3d303ea68a Improve AI description generation by automatically saving the output
Update the admin page to automatically save the AI-generated video description and provide a confirmation toast message.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 170e18f0-0f13-4eca-8643-546bba1dd8cc
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/170e18f0-0f13-4eca-8643-546bba1dd8cc/LY6xmBI
2025-09-02 13:23:32 +00:00
sebastjanartic
1c71b0f6f4 Improve AI description generation by using existing description as instructions
Refactor EditVideoDialog to use the description field for custom AI generation instructions and consolidate input fields.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 170e18f0-0f13-4eca-8643-546bba1dd8cc
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/170e18f0-0f13-4eca-8643-546bba1dd8cc/LY6xmBI
2025-09-02 13:19:50 +00:00
sebastjanartic
15e57c3294 Enhance AI description generation with custom instructions for users
Add a custom instructions input field to the admin video edit dialog and backend to allow users to guide the AI description generation process.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 170e18f0-0f13-4eca-8643-546bba1dd8cc
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/170e18f0-0f13-4eca-8643-546bba1dd8cc/LY6xmBI
2025-09-02 13:18:56 +00:00
sebastjanartic
6b80ac00c6 Improve AI description generation to prevent repetitive content and support German
Enhance the AI service to include memory for previously generated descriptions, implement German language support for prompts, and refine prompt instructions to avoid mentioning unknown information.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 170e18f0-0f13-4eca-8643-546bba1dd8cc
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/170e18f0-0f13-4eca-8643-546bba1dd8cc/LY6xmBI
2025-09-02 13:16:05 +00:00
sebastjanartic
b8eb1642e9 Update video editing form to reflect changes automatically
Add a useEffect hook to the EditVideoDialog component to automatically update the form state when the `video` prop changes, and force immediate refetch of video data after successful updates.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 170e18f0-0f13-4eca-8643-546bba1dd8cc
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/170e18f0-0f13-4eca-8643-546bba1dd8cc/LY6xmBI
2025-09-02 13:12:32 +00:00
sebastjanartic
d0443dc1b3 Improve AI video description generation and error handling
Enhance AI video description generation by adding detailed error logging in `aiService.ts` and implementing debug logs within `routes.ts` to track video processing and description generation.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 170e18f0-0f13-4eca-8643-546bba1dd8cc
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/170e18f0-0f13-4eca-8643-546bba1dd8cc/LY6xmBI
2025-09-02 13:10:51 +00:00
sebastjanartic
befb0d2e98 Improve AI description generation by using a newer model and adjusting parameters
Update server/aiService.ts to use the gpt-4o model, adjust max_tokens, and add temperature for AI-generated descriptions.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 170e18f0-0f13-4eca-8643-546bba1dd8cc
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/170e18f0-0f13-4eca-8643-546bba1dd8cc/LY6xmBI
2025-09-02 13:09:53 +00:00
sebastjanartic
7b2008baff Improve AI description generation for video content and fix errors
Update the AI description generation process to correctly handle and display AI-generated descriptions in the admin interface, including error handling and success notifications.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 170e18f0-0f13-4eca-8643-546bba1dd8cc
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/170e18f0-0f13-4eca-8643-546bba1dd8cc/LY6xmBI
2025-09-02 13:09:04 +00:00
sebastjanartic
e948249a96 Adjust AI model settings and improve video metadata update functionality
Modify AI service to remove temperature setting and update storage logic to allow all metadata updates for admin edits in BunnyStorage.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 170e18f0-0f13-4eca-8643-546bba1dd8cc
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/170e18f0-0f13-4eca-8643-546bba1dd8cc/LY6xmBI
2025-09-02 13:04:39 +00:00
sebastjanartic
82fd6bed09 Update admin page to refresh video data after edits
Refactor: Invalidate cache for '/api/admin/videos' and '/api/videos' in EditVideoDialog to refresh video data upon successful update.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 170e18f0-0f13-4eca-8643-546bba1dd8cc
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/170e18f0-0f13-4eca-8643-546bba1dd8cc/LY6xmBI
2025-09-02 13:02:47 +00:00
sebastjanartic
9202e323bc Improve AI service to better estimate token completion for responses
Update `server/aiService.ts` to use `max_completion_tokens` instead of `max_tokens` for more accurate AI response length estimation.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 170e18f0-0f13-4eca-8643-546bba1dd8cc
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/170e18f0-0f13-4eca-8643-546bba1dd8cc/td5Y4HG
2025-09-02 13:00:29 +00:00
sebastjanartic
475534134c Add AI-powered description generation for video content
Integrates OpenAI API to generate video descriptions using AI, with new API endpoints for single and bulk generation, and a UI button in the admin panel to trigger the process. Includes OpenAI dependency and a new `aiService.ts` file.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 170e18f0-0f13-4eca-8643-546bba1dd8cc
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/170e18f0-0f13-4eca-8643-546bba1dd8cc/td5Y4HG
2025-09-02 12:59:45 +00:00
sebastjanartic
a9d7322fa8 Improve admin panel by refining user role checks and API calls
Refactors useAuth hook with type assertion for isAdmin and isSuperAdmin properties. Updates AdminPage component to use type assertion for user's first and last names. Modifies VideoManagement component to use a more robust async query function for fetching videos, including proper JSON parsing. Updates EditVideoDialog component to use a cleaner mutation function for updating video data.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 170e18f0-0f13-4eca-8643-546bba1dd8cc
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/170e18f0-0f13-4eca-8643-546bba1dd8cc/e8Bo3CR
2025-09-02 12:54:10 +00:00
sebastjanartic
18d07fb8eb Improve UUID generation for user identification
Refactor the `generateDeterministicUUID` function in `server/routes.ts` to use an arrow function syntax and update the UUID generation logic for user identification.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 170e18f0-0f13-4eca-8643-546bba1dd8cc
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/170e18f0-0f13-4eca-8643-546bba1dd8cc/7eNxwas
2025-09-02 12:50:47 +00:00
sebastjanartic
d91a94675c Improve user ID generation for consistent authentication
Implement deterministic UUID generation using SHA256 hashing for Replit user IDs to ensure consistent user identification across sessions and database operations.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 170e18f0-0f13-4eca-8643-546bba1dd8cc
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/170e18f0-0f13-4eca-8643-546bba1dd8cc/vqbrWR9
2025-09-02 12:47:24 +00:00
sebastjanartic
68bb99739b Add admin capabilities for managing users on the platform
Introduce new API endpoints and backend logic for administrative user management, including fetching, viewing, and updating user roles, while ensuring sensitive data like password hashes are excluded from responses. Implement Replit user ID formatting for internal consistency and extend storage interfaces to support user retrieval and counting.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 170e18f0-0f13-4eca-8643-546bba1dd8cc
Replit-Commit-Checkpoint-Type: full_checkpoint
2025-09-02 12:19:53 +00:00
sebastjanartic
d283a0d4a5 Update user data handling and password storage mechanisms
Refactor user model and storage implementations to correctly handle password hashing (using `passwordHash` instead of `password`), update field names for profile images to `avatar`, and ensure consistent user data mapping between database and in-memory storage. Includes schema adjustments for `users` table.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 68e1a8f7-084c-4a75-801e-34657bd7a71b
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/8cc42625-c1f5-4e43-99bd-77f2c4dedee2/68e1a8f7-084c-4a75-801e-34657bd7a71b/IiSxX58
2025-09-02 12:10:11 +00:00
sebastjanartic
ced02be9dc Saved your changes before starting work
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: b29d692b-c506-4340-87cf-a94a2ee269ac
Replit-Commit-Checkpoint-Type: full_checkpoint
2025-09-02 12:07:10 +00:00