Skip to main content

2 posts tagged with "v3.8.2"

Version 3.8.2 specific posts

View All Tags

ABCD 3.8.3 – Bug fixes for this version

· 3 min read
Roger C. Guilherme
Programmer and librarian at ABCD

Version 3.8.3 brings a major overhaul to ABCD's cataloging capabilities, introducing full support for modern cataloging standards like RDA, alongside critical improvements to subfield data handling and system localizations.

Key Features & Updates

1. Universal Fixed-Field Manager

The legacy fixed-field engine has been completely refactored. Moving away from the hardcoded 008 field limitation, the system now features a dynamic, fully adaptable engine for handling multiple and repeatable fixed fields (such as 006 and 007).

  • Smart Cataloging Interface: Catalogers can now add multiple occurrences of fixed fields seamlessly within a single record—essential for mixed-material items (e.g., a book with a CD-ROM). The UI now intelligently reads routing files, automatically deduces material categories from the Leader, and safely parses line breaks.
  • Dynamic Administration Hub: A centralized hub dynamically scans the FDT for 'M' (Matrix) type fields. Administrators can now edit .tab routing files directly from the UI and automatically generate missing .fdt matrices, bypassing legacy restrictions.

2. Core Data Handling & Output Sanitization

Rendering engines and subfield parsers have been hardened to improve data integrity and prevent encoding issues.

  • Subfield Helper & Implicit Support: Introduced a new SubfieldHelper to explicitly extract, decode, and manage the implicit _ subfield without losing data during rendering.
  • Custom Sanitization: Replaced standard htmlspecialchars calls with a robust, custom sanitization implementation across the Group, Table, and Text renderers. This ensures consistent escaping and preserves compatibility with legacy JavaScript dependencies.

3. Localization & i18n Improvements

Extensive updates have been made to the system dictionaries to ensure a fully multilingual cataloging and administrative experience.

  • Fixed-Field Interface Translations: Hardcoded strings in the fixed-field UI have been replaced with dynamic $msgstr variables, with complete translations added for English, Spanish, and Portuguese across both Linux and Windows environments.
  • Comprehensive Spanish UI Update: The admin.tab file for Spanish users received a massive update. Typos and encoding issues were resolved, keys were harmonized, and numerous new UI messages were added covering modules like Z39.50, backups, the thesaurus, file uploads, and search functionalities.

ABCD 3.8.2 – Bug fixes for this version

· 2 min read
Roger C. Guilherme
Programmer and librarian at ABCD

What's Changed

  • Rebuild SubC JS and handle picklists/indicators by @rogercgui in https://github.com/ABCD-DEVCOM/ABCD/pull/656

    • Refactor campos.php parsing to collect IND/S rows into a JS-friendly SubC string and simplify picklist/label population. The PHP now accumulates relevant rows into subc_js_array, handles both "S" and "IND" marker types (with a historical fallback), builds picklist/name entries with proper escaping, and emits SubC as a single \n-separated JS string. Update editarocurrencias.js to dynamically reconstruct the actual subfields (subc_reais) from SubCampos and inject them into Tx[5], ensuring the renderer sees indicators/subfields even when they were omitted from the main FDT. Improves compatibility with older DB formats and makes picklist/indicator handling more robust.
  • New layouts by @rogercgui in https://github.com/ABCD-DEVCOM/ABCD/pull/657

  • Fix browseby behavior and record checkbox by @rogercgui in https://github.com/ABCD-DEVCOM/ABCD/pull/658

    • Fix browseby behavior and record checkbox
    • menu_main.php: Prevent programmatic updates to the "browseby" select from triggering onButtonClick (avoids unintended recursive/user-action side effects), add logic to call top.Menu('same') when keeping the current record after changing browse mode, add error logging, and translate several comments to English. toolbar_record.php: Correct MFN handling (properly derive mfn_val), guard against missing DOM element before updating, and set the "Select Record" checkbox via the checked property so it accurately reflects selection state.

Full Changelog: https://github.com/ABCD-DEVCOM/ABCD/compare/v3.8.1...v3.8.2