bastislack / highline-freestyle

Webapp for Highline Freestyle
GNU General Public License v3.0
10 stars 9 forks source link

feat: trick details page #334

Closed JulianDietzel closed 6 months ago

JulianDietzel commented 6 months ago

After a lot more work than expected, here is the PR addressing #279. All requirements of that issue were addressed except for the very last one: "When info is missing, show that it is missing except for established by / date". This field is simply missing if there is no info. I found this to be a much cleaner look and nothing being lost from not displaying that the info was missing - it now simply is missing. The page looks good both on mobile and on desktop.

Errors

Additionally there are error pages for all errors that I could conceive of that could occur when accessing the page. All error pages have fitting and proper error codes, titles and descriptions. All these texts have been translated into Spanish and French as well using DeepL and the little French knowledge that I have. I also created a custom vector graphic for the error page - me, taking a leashfall - which I thought was cute.

Translation

Lastly all text of the page and the video components (exept for the content) is translated into Spanish and French, again using a mixture of DeepL, Linguee, dict.cc and what is left of 5 years of French in highschool.

Sorryyy

I know this PR is excessively large, sorry for that. With the video components I got quite large in scope. I'll try to keep my next PR smaller.

Comments

I am open and happy about feedback both in regards to the ui and the code. If you have major changes that you want to see done to the UI I would suggest opening a new issue though, so we can make the changes more incrementally and not bloat this PR any further. If I do any weird stuff code wise, please let me know though. Especially having the TrickDetailsContent component separated from TrickDetails feels slightly unorthorthodox though it made the code look quite a lot cleaner since the checking of the URL parameters and the loading of the trick are separated into different files this way.

Remaining issues

How it looks:

Standard (top) Standard (bottom) Error
Bildschirmfoto am 2024-02-02 um 21 04 46 Bildschirmfoto am 2024-02-03 um 17 34 44 Bildschirmfoto am 2024-02-03 um 17 36 22
Desktop (top) Desktop (bottom)
Bildschirmfoto am 2024-02-03 um 17 35 41 Bildschirmfoto am 2024-02-03 um 17 35 46
WaldemarLehner commented 6 months ago

I found that the current impl does not support youtube clips. I ill do a fix which lets the Youtube component also display Clips