Repository navigation
Task Issue 961 issuetracker Env Column
Task 961 — Restore per-tracker Environment column (checkEnv) in the Issue Trackers screen (gap vs legacy)
Issue: #961 Status: IMPLEMENTED & VERIFIED (2026-09-23)
Legacy surfaced each tracker's environment state and rendered every tracker URL:
-
lib/issuetrackers/issueTrackerView.php:23→getAll(array('output'=>'add_link_count','checkEnv'=>true)) -
tlIssueTracker.class.php:610-616ran$impl::checkEnv()per tracker →env_check_ok+env_check_msg(base interface →['status'=>true,'msg'=>'OK']; jira/mantis/gforge SOAP →extension_loaded('soap')) -
issueTrackerView.tpl:16,77rendered the Environment column (th_issuetracker_env)
The modern screen dropped both: the BFF called getAll() without checkEnv, and the
Server URL cell regex-matched ONLY <uribase> — trackers whose cfg writes <url>
(redmine, gitlab, and GitHub-OAuth-created github trackers) rendered an EMPTY cell.

BFF api/issuetracker/index.php — GET / → getAll(['output'=>'add_link_count','checkEnv'=>true]);
trackerToJSON() emits env_check_ok (bool) + env_check_msg (string).
Screen gui/templates/issuetracker/issuetrackerView.html — new Environment
column between Type and Active (legacy th_issuetracker_env parity, shown to ALL
viewers); URL extraction now matches <uribase> or <url>; env cell renders a
green OK badge (it.envOk) or a red badge showing the impl message (e.g.
"You need to enable SOAP extension") — same raw output as legacy.

i18n — new keys it.environment, it.envOk, it.envKo in all 10 locale bundles.
- Admin: all 4 tracker URLs render; Environment column shows green OK.
- KO path: red
badge-env-kowith the impl message (verified via injected fake item). - View-only user
itview(right 32 only): Environment column visible, write UI hidden. - Event Viewer: 0 Error/Warning rows; console clean.

Test suite: tmp/TLU_Test_Cases.md → "Suite 961" (6/6 PASS).