TheCSharpAcademy / TCSA.V2

A revamp of The C# Academy using all the power of .NET 8's new Blazor!
5 stars 8 forks source link

398 create a gallery page allowing users to share their project videos #401

Closed Doc415 closed 2 weeks ago

Doc415 commented 3 weeks ago

Completed Gallery Page:

Visitor Access: Visitors can only view videos with filter options.

User Interaction: Users can add new videos and delete their own videos.

Admin Features: Admins can mark videos as "golden projects," which will appear at the top of the view list.

Video Submission: Users need to copy the YouTube video embed code and paste it into the submission form. This code is validated using a custom data annotation validator.

Dynamic Dropdowns: The "Area" and "Project" dropdowns in the add video form are used instead of InputSelect to avoid displaying areas without projects. The "Project" dropdown is updated based on the selected area.

Responsiveness: The page is responsive and has been tested on PC. Mobile testing is still required.

Design Improvements Needed: The add video form design and color scheme can be enhanced.

Theme Handling: The top menu passes the current theme boolean to the gallery page. If the theme changes before navigating to the gallery page, the dropdowns will reflect the current theme. However, the theme will not update dynamically when the theme change switch is clicked on the gallery page. This was a temporary fix. The CSS styles for the dark theme dropdown should be added to the dark-theme class in the application CSS file. Other dropdowns dark theme issues in the top menu can also be fixed with the CSS fix.

Top Menu Fix: I adjusted the right-side class to correct misalignment when an admin user is logged in. I decreased the margin to 250, and it appears fine now.