The hyperlinks could be modifed for custom processing of the attachments (like PDF viewing etc.) and is on my TO-DO list ...
TEAM CHECKPOINT by Claude.ai — listatt_bbcode mod (SMF 2.0.x) — RESOLVED/SHIPPEDSTATUS: DONE. Confirmed working on Andrew's live production forum(screenshot verified - real filenames, real sizes, correct ordernumbers, working expandable panel).WHAT IT DOES:[nobbc][listatt=Title][/listatt][/nobbc] - renders acollapsible box listing every attachment on the current post (order#, filename, size). Companion mod to the existing, working pdf_bbcode(PDFBBCode class), same fork, same author.FINAL ARCHITECTURE (v4.0):- Message-id capture: NOT a Display.php line-insertion, NOT reliance on the ILA (Post_and_PM_Inline_Attachments) mod. Instead: a global function listatt_parse_bbc() (defined in ListAttBBC.php, outside the class) wraps core parse_bbc(). listatt_display_patch.xml uses <search position="replace"> to rename the ONE parse_bbc() call site inside Display.php's per-message loop from parse_bbc(...) to listatt_parse_bbc(...) - a straight function-name swap, easier to verify than an inserted line (grep Display.php for the new name - present or not, no ambiguity about where a new line landed). The wrapper sets $context['ila']['msg'] itself (same key ILA uses) AND its own ListAttBBC::$currentDisplayMsgId, then calls real parse_bbc() and returns its result unchanged. This makes the mod fully self-contained - confirmed via reasoning (not direct testing) that it should coexist fine with a real ILA install too, since our wrapper's value always agrees with what ILA would set, and currentMsgId() checks our own tracker first regardless.- Attachment data: direct query against {db_prefix}attachments WHERE id_msg = X - NOT $context['attachments'], NOT loadAttachmentContext() (that function doesn't exist on SMF 2.0.x at all; $context['attachments'] confirmed empty at BBC-parse time via a standalone diagnostic even after a real parse_bbc() call). Matches how PDFBBCode itself sources attachment data.- BBC tag type: 'unparsed_content' (plain form) + 'unparsed_equals_content' (=Title form for a custom heading) - both routed through the same render() validate callback, matching PDFBBCode's own two-entry pattern. 'closed' type was tried first and produced silent zero output on this fork - abandoned.- Hook registration: same fork-specific pattern as pdf_register.php - add_integration_function() only takes 3 args here (hook, function, permanent - no file-based auto-loading), so integrate_pre_include is set by hand via updateSettings() in listatt_register.php/ listatt_unregister.php.KEY DEBUGGING LESSON FOR THIS FORK (worth remembering for future mods)Stock SMF source (any version) is NOT a reliable reference for howhooks/registration actually behave on Andrew's customized 2.0.19 fork.The only reliable references are: (1) his own already-working mods'actual source (pdf_bbcode was the template for everything here), and(2) direct diagnostic scripts run against the real server. Guessingfrom stock SMF source repeatedly produced confidently-wrong fixesthis session before that lesson landed.DEBUG TOOL BUILT THIS SESSION (kept intentionally, not removed)listatt_diag.php / listatt_diag_pkg.zip - a standalone SSI-baseddiagnostic, installed like any other package, visited as a URL(?msg=N) - checks integrate_pre_include's raw value, function_exists(),class_exists(), file-on-disk, runs a direct attachments-table query,and calls listatt_parse_bbc() itself to reproduce real behavior inisolation. Proved decisive for finding the actual bugs, faster thanlive post/save cycles. Worth reusing this pattern for future moddebugging on this fork rather than trial-and-error via real posts.TWO LISTATT TRACE LINES ARE DELIBERATELY LEFT IN ListAttBBC.php'srender() - Andrew explicitly wants these kept as an ongoing debuggingaid (matches his PDFBBC TRACE habit), not stripped for a "clean"release.OPEN/NOT YET DONE- CSS (listatt.css) not yet added to Andrew's live stylesheet project (deliberately not auto-installed - he adds it by hand like his other CSS work)- No toolbar/editor button yet (pdf_bbcode has one via integrate_bbc_buttons - listatt doesn't yet)- Real-world test with the ILA mod actually reinstalled alongside listatt v3.0 hasn't been done - expected to work fine per the architecture above, but unconfirmed</parameter>