Skip to content

fix: restore the orphan image row's Created date to the Uptime column#2695

Open
chodeus wants to merge 1 commit into
unraid:masterfrom
chodeus:fix/orphan-image-row-colspan
Open

fix: restore the orphan image row's Created date to the Uptime column#2695
chodeus wants to merge 1 commit into
unraid:masterfrom
chodeus:fix/orphan-image-row-colspan

Conversation

@chodeus

@chodeus chodeus commented Jul 15, 2026

Copy link
Copy Markdown

Summary

Fixes #2694 — the orphan image row emits 1 + colspan='6' + 1 = 8 cells against a 10-column thead, so "Created ..." renders under CPU & Memory load instead of Uptime, and the Autostart/Uptime slots get no cell at all (which is why the row background stops at the Autostart boundary).

colspan='6' was correct until the thead grew. b5f2e9da9 (2023-03-25, "Fix table layout for orphan images") set it to 6 when the thead had 8 columns — 1+6+1 = 8 fit exactly and "Created" landed in Uptime. 8cabad6f0 (2024-08-08) split Port Mappings into Container IP / Container Port / LAN IP:Port, taking the thead to 10 without bumping the colspan.

Changes

  • include/DockerContainers.php (orphan image loop) — widen the Image ID cell from colspan='6' to colspan='8', so the row spans a full 1 + 8 + 1 = 10 slots. "Created" returns to column 10 (Uptime) and the row background spans the table. This matches the pre-split shape, where the colspan also covered through Autostart — orphan images have no autostart control, so nothing is displaced.

Testing (real hardware, per the README workflow)

Tested on Unraid 7.3.2 with two orphan images present, Docker tab in Advanced view.

The orphan image block (L303-311) is byte-identical between 7.3.2 and master at 369f0b2, so the patched master file was copied to the live server directly. (The server's only other delta in this file is L100, from my in-flight #2693, which is unrelated to the orphan row.)

  • php -l clean.

  • Measured the orphan row against the live thead, before → after:

    before (colspan='6') after (colspan='8')
    row span total 8 of 10 10 of 10
    Created cell x-range 1221→1395 1495→1692
    CPU & Memory load header 1221→1395 1221→1395
    Uptime header 1495→1692 1495→1692
    Created aligns with CPU & Memory load ✗ Uptime

    Before, the Created cell's x-range matched the CPU & Memory load header exactly; after, it matches the Uptime header exactly. (Absolute x-values are specific to this box's column widths — the load-bearing result is the exact alignment change and the 8 → 10 span. My test box runs my own folder plugin, which pins column widths on this table but does not touch orphan rows or cell/column assignment; the before/after pair above was measured on one page with identical widths, isolating the colspan as the only variable.)

  • Row background now spans the full table width instead of terminating at the Autostart boundary.

  • Both orphan rows on the box render correctly; container rows are unaffected (they already emit all 10 cells and this change does not touch them).

  • Basic view unchanged — orphan rows are tr.advanced and remain hidden there.

Summary by CodeRabbit

  • Bug Fixes
    • Fixed the orphan image table layout so image IDs display correctly across the table row.

The orphan image row emits 1 + colspan=6 + 1 = 8 cells against a 10-column
thead, so "Created" lands under "CPU & Memory load" and the Autostart and
Uptime columns get no cell at all.

colspan='6' was correct when the thead had 8 columns. Splitting Port Mappings
into Container IP / Container Port / LAN IP:Port took it to 10 without bumping
the colspan. Widening to 8 restores the row to a full 10 slots, matching the
pre-split shape where the colspan also covered through Autostart.
@coderabbitai

coderabbitai Bot commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 3a883395-2d42-4c3c-a7ce-7c83c0404c2d

📥 Commits

Reviewing files that changed from the base of the PR and between 369f0b2 and e972b86.

📒 Files selected for processing (1)
  • emhttp/plugins/dynamix.docker.manager/include/DockerContainers.php

Walkthrough

The orphan image row’s image ID cell now spans eight columns instead of six, aligning the row with the Docker table’s ten-column layout.

Changes

Docker orphan image row

Layer / File(s) Summary
Align orphan image row columns
emhttp/plugins/dynamix.docker.manager/include/DockerContainers.php
The image ID cell now uses colspan='8', allowing the Created cell to occupy the final table column.

Estimated code review effort: 1 (Trivial) | ~2 minutes

Suggested reviewers: elibosley

Poem

A bunny nudged the table wide,
Two columns joined the row’s soft side.
The image tags now stretch just right,
“Created” hops to uptime’s light.
🐇 Neat rows bloom from left to right!

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly describes the orphan image row fix and the Created-to-Uptime alignment.
Linked Issues check ✅ Passed The colspan change to 8 matches #2694 by restoring the orphan image row to 10 columns and placing Created under Uptime.
Out of Scope Changes check ✅ Passed The PR contains only the targeted orphan image row colspan adjustment and no unrelated changes.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Docker: orphan image row is 2 columns short — "Created" renders under "CPU & Memory load" instead of "Uptime"

1 participant