Files
homekeeper/beekeeper/R/utils.R
T
2026-07-06 19:25:38 +02:00

102 lines
2.8 KiB
R

`%||%` <- function(a, b) if (!is.null(a) && length(a) > 0 && !is.na(a[1]) && a[1] != "") a else b
colony_status_label <- function(status) {
labels <- c(
wirtschaftsvolk = "Wirtschaftsvolk",
ableger = "Ableger",
jungvolk = "Jungvolk",
schwarmstimmung = "Schwarmstimmung",
eingegangen = "Eingegangen"
)
labels[status] %||% status
}
colony_status_color <- function(status) {
colors <- c(
wirtschaftsvolk = "success",
ableger = "info",
jungvolk = "warning",
schwarmstimmung = "danger",
eingegangen = "secondary"
)
colors[status] %||% "secondary"
}
colony_status_badge <- function(status) {
sprintf(
'<span class="badge bg-%s">%s</span>',
colony_status_color(status),
colony_status_label(status)
)
}
trait_label <- function(trait) {
labels <- c(
sanftmut = "Sanftmut",
schwarmtrieb = "Schwarmtrieb",
wabensitz = "Wabensitz",
honigertrag = "Honigertrag",
varroa_hygiene = "Varroa-Hygiene"
)
labels[trait] %||% trait
}
COLONY_STATUSES <- c(
"Wirtschaftsvolk" = "wirtschaftsvolk",
"Ableger" = "ableger",
"Jungvolk" = "jungvolk",
"Schwarmstimmung" = "schwarmstimmung",
"Eingegangen" = "eingegangen"
)
TRAITS <- c(
"Sanftmut" = "sanftmut",
"Schwarmtrieb" = "schwarmtrieb",
"Wabensitz" = "wabensitz",
"Honigertrag" = "honigertrag",
"Varroa-Hygiene" = "varroa_hygiene"
)
VARROA_PRODUCTS <- c("Ameisensäure", "Oxalsäure", "Thymol", "Apibioxal", "MAQS")
VARROA_APPLICATION_METHODS <- list(
"Ameisensäure" = c("Kurzzeitbehandlung (4h)", "Langzeitbehandlung (3 Wo.)", "Schwammtuch"),
"Oxalsäure" = c("Träufeln", "Sublimation / Verdampfen", "Sprühen"),
"Thymol" = c("Apilife VAR", "Thymovar", "Thymol-Kristalle"),
"Apibioxal" = c("Träufeln", "Sublimation / Verdampfen"),
"MAQS" = c("Streifen-Einlage")
)
VARROA_METHODS <- c(
"Natürlicher Totenfall" = "natuerlicher_totenfall",
"Alkoholwäsche" = "alkoholwaesche",
"Puderzucker" = "puderzucker"
)
HONEY_TYPES <- c(
"Frühtracht" = "fruehtracht",
"Sommertracht" = "sommertracht",
"Waldhonig" = "waldhonig",
"Rapshonig" = "rapshonig",
"Akazienhonig" = "akazienhonig",
"Sonstiges" = "sonstiges"
)
COLONY_ACTION_TYPES <- c(
"Ablegerbildung" = "ablegerbildung",
"Zwischenbödenableger" = "zwischenbodenableger",
"Brutentnahme" = "brutentnahme",
"Standwechsel" = "standwechsel",
"Fütterung" = "futterung",
"Völkervereinigung" = "vereinigung",
"Sonstige Maßnahme" = "sonstiges"
)
QUEEN_COLORS <- c(
"Weiß (2021, 2026)" = "weiss",
"Gelb (2022, 2027)" = "gelb",
"Rot (2023, 2028)" = "rot",
"Grün (2024, 2029)" = "gruen",
"Blau (2025, 2030)" = "blau"
)