Add bilingual uses fields (food/medicinal/other _de/_en) to species
Backend: add 6 new columns to Species and CreateSpecies structs, update INSERT/UPDATE queries, add migration 010. Frontend: add fields to Species type, use pick_desc() for language-aware display in species detail and cultivar species-info card.
This commit is contained in:
@@ -843,9 +843,9 @@ pub fn CultivarDetail(slug: String) -> Element {
|
||||
let sp_usda = opt_str(&sp.hardiness_zone_usda);
|
||||
let sp_nfix = opt_bool(sp.nitrogen_fixer);
|
||||
let sp_dynacc = opt_bool(sp.dynamic_accumulator);
|
||||
let sp_food = opt_str(&sp.food_uses);
|
||||
let sp_med = opt_str(&sp.medicinal_uses);
|
||||
let sp_other = opt_str(&sp.other_uses);
|
||||
let sp_food = pick_desc(¤t_lang, &sp.food_uses_de, &sp.food_uses_en, &sp.food_uses);
|
||||
let sp_med = pick_desc(¤t_lang, &sp.medicinal_uses_de, &sp.medicinal_uses_en, &sp.medicinal_uses);
|
||||
let sp_other = pick_desc(¤t_lang, &sp.other_uses_de, &sp.other_uses_en, &sp.other_uses);
|
||||
let sp_wildlife = opt_str(&sp.wildlife_value);
|
||||
let sp_native = opt_str(&sp.native_range);
|
||||
rsx! {
|
||||
|
||||
@@ -496,9 +496,9 @@ pub fn SpeciesDetail(slug: String) -> Element {
|
||||
let desc = pick_desc(¤t_lang, &s.description_de, &s.description_en, &s.description);
|
||||
|
||||
// Uses
|
||||
let food = os(&s.food_uses);
|
||||
let med = os(&s.medicinal_uses);
|
||||
let other = os(&s.other_uses);
|
||||
let food = pick_desc(¤t_lang, &s.food_uses_de, &s.food_uses_en, &s.food_uses);
|
||||
let med = pick_desc(¤t_lang, &s.medicinal_uses_de, &s.medicinal_uses_en, &s.medicinal_uses);
|
||||
let other = pick_desc(¤t_lang, &s.other_uses_de, &s.other_uses_en, &s.other_uses);
|
||||
let edibility = match s.edibility_rating {
|
||||
Some(r) => format!("{r}/5"),
|
||||
None => em.to_string(),
|
||||
|
||||
@@ -43,8 +43,14 @@ pub struct Species {
|
||||
pub salt_tolerance: Option<String>,
|
||||
pub edibility_rating: Option<i16>,
|
||||
pub food_uses: Option<String>,
|
||||
pub food_uses_de: Option<String>,
|
||||
pub food_uses_en: Option<String>,
|
||||
pub medicinal_uses: Option<String>,
|
||||
pub medicinal_uses_de: Option<String>,
|
||||
pub medicinal_uses_en: Option<String>,
|
||||
pub other_uses: Option<String>,
|
||||
pub other_uses_de: Option<String>,
|
||||
pub other_uses_en: Option<String>,
|
||||
pub native_range: Option<String>,
|
||||
pub plant_layer: Option<String>,
|
||||
pub nitrogen_fixer: Option<bool>,
|
||||
|
||||
Reference in New Issue
Block a user