OpenBeta / open-tacos

Rock climbing route catalog (openbeta.io)
https://openbeta.io
GNU Affero General Public License v3.0
119 stars 114 forks source link

Sort button by grade on the crag page only sorts climbs with YDS grading scale #520

Open DarrenZLew opened 1 year ago

DarrenZLew commented 1 year ago

When selecting the "Grade" option for sorting climbs on a /crag page, climbs will only be sorted if they use the YDS grading scale. If a climb is not of the YDS grading scale, it does not get properly sorted. This should be updated to allow sorting of climbs for any grading scale.

ex: https://openbeta.io/crag/9cdbb058-ff55-5451-91c1-b887735e1593 image

Things to consider: If there are climbs from multiple grading scales located within one crag, how should these climbs be sorted?

  1. Would they all be organized based on grading scale (or type of climbing) first, then sorted within that organization?
  2. Would they all be sorted against each other regardless of grading scale?

Notes:

DarrenZLew commented 1 year ago

I can look into this one. It seems like we may need to complete https://github.com/OpenBeta/sandbag/issues/14 first, which I can also look into.

Could I be assigned to this issue?

vnugent commented 1 year ago

If there are climbs from multiple grading scales located within one crag, how should these climbs be sorted?

I'd go with option 1. As you said, we can improve the page and display those sport routes in a separate section, and sort them only within that section.

The convention I see at places with a large amount of bouldering is to split the data into bouldering-only, not mixing problems with route climbs.

Example: Red Rock bouldering: https://openbeta.io/areas/37ff48e8-ef70-5be1-b9a3-8a7f154d75d5

Though your example is a good one where it may not be worth it to create a separate sport climbing area just to add 1 route. It's probably not uncommon for high ball bouders to have some bolted climbs.


As mentioned in the non-goal I think https://github.com/OpenBeta/sandbag/issues/14 is about conversion between systems, for example, YDS <--> French

FYI related issue: Support French https://github.com/OpenBeta/openbeta-graphql/issues/111