feat(fields): ren statusfunktion til Fields-listen
This commit is contained in:
@@ -79,3 +79,21 @@ function ADFieldView.distanceText(meters)
|
||||
if meters < 1000 then return string.format("%d m", math.floor(meters + 0.5)) end
|
||||
return (string.gsub(string.format("%.1f km", meters / 1000), "%.", ","))
|
||||
end
|
||||
|
||||
-- ---- status pr. mark (Fields-listen) ----
|
||||
|
||||
-- Årsager der betyder "kan ikke" (rød) — resten er "venter" (gul).
|
||||
ADFieldView.ERROR_REASONS = {
|
||||
spu_field_reason_noRig = true, spu_field_reason_cannotDo = true, spu_field_reason_tooWide = true,
|
||||
spu_field_reason_tooNarrow = true, spu_field_reason_widthUnknown = true, spu_field_reason_noSowFruit = true,
|
||||
}
|
||||
|
||||
-- s = {hasMarker, working, awaiting, startRequested, reasonKey} -> "running"|"waiting"|"error"|"stopped"
|
||||
function ADFieldView.fieldStatus(s)
|
||||
if not s.hasMarker then return "error" end
|
||||
if s.reasonKey ~= nil and ADFieldView.ERROR_REASONS[s.reasonKey] then return "error" end
|
||||
if s.awaiting or s.startRequested then return "waiting" end
|
||||
if s.working then return s.reasonKey ~= nil and "waiting" or "running" end
|
||||
if s.reasonKey ~= nil then return "waiting" end
|
||||
return "stopped"
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user