Issue 426 Missing dashio templates - sebiboga/testlink-upgraded GitHub Wiki

Issue 426 โ€” Audit: 8 templates existed only under tl-classic (dashio pages fatal)

Source: https://github.com/sebiboga/testlink-upgraded/issues/426 Status: CLOSED (fix already on default branch; verification & docs completed by this run)

The HOW โ€” root cause and fix approach

TLSmarty hardcodes its Smarty search path to gui/templates/dashio/โ€ฆ (lib/functions/tlsmarty.inc.php:102), while templateConfiguration() (lib/functions/common.php:901) derives the template name from the script path. Eight scripts therefore rendered .tpl files that existed only under the legacy gui/templates/tl-classic/ tree โ†’ every visit died with Smarty: Unable to load template 'file:<name>.tpl' (HTTP 500).

Method chosen: straight port (copy) of the 8 templates into dashio โ€” the intended approach per the audit (the sibling resultsTCFlatLauncher.tpl is byte-identical between themes). This landed on the default branch as commit 764d625e1. Alternatives rejected: remapping via $g_tpl (would keep legacy markup alive), rewriting pages as modern HTML screens (belongs to the screen modernization workflow).

This run reproduced the failure mechanism experimentally (removed one ported template โ†’ exact Smarty fatal + HTTP 500; restored โ†’ HTTP 200), then executed a per-page verification matrix with legacy-UI-equivalent arguments.

Verification results

Page Invocation Result
Baselines L1&L2 baselinel1l2.php?tplan_id=2&tproject_id=1&format=0 โœ… 200
Absolute Latest (launcher) resultsTCAbsoluteLatest.php?โ€ฆ&doAction=choose โœ… 200
Absolute Latest (matrix) โ€ฆ&doAction=result&platform_id=20&format=0 โœ… 200
Assign TC Execution tc_exec_assignment.php?โ€ฆ&doAction=std&level=testsuite&build_id=10 โœ… 200
Inventory inventoryView.php โœ… 200
Req Mgmt view / edit reqMgrSystemView.php ยท reqMgrSystemEdit.php?doAction=create โœ… 200
Test Automation Spec testAutomationSpec.php?โ€ฆ&format=0 โŒ 500 via specview.php:807 โ†’ separate root cause, tracked in #604

Regression suite: Suite 426 in tmp/TLU_Test_Cases.md.

Screenshots

Baselines L1L2 Absolute Latest launcher Absolute Latest matrix Inventory ReqMgr System View ReqMgr System Edit

Residual defects discovered during verification (filed separately)

  • #637 โ€” aside-menu report links carry no query args at all (asideMenu.php:79): every legacy report from the modernized menu 500s or renders empty.
  • #638 โ€” resultsTCAbsoluteLatest.php:313: count(null) TypeError when the plan has no builds.
  • #604 โ€” pre-existing: testAutomationSpec fatals inside specview.php regardless of templates.
โš ๏ธ **GitHub.com Fallback** โš ๏ธ