Module
DivisionDesk Publishing
News, articles, editorial content, publishing workflows, distribution, and content analytics.
About
DivisionDesk publishing tools for creating and managing news, articles, announcements, and other editorial content with permissions, publication controls, distribution capabilities, and analytics integration.
Features
- News and article publishing
- DivisionDesk visual editor
- Publication and unpublication controls
- Author and byline support
- Content permissions
- Distribution tools
- Publishing analytics
- Public content pages
What's New in 1.0.13
View full package changelog
## 1.0.13
- Requires Core 4.6.27+ and uses `App\Core\Editor::render()`, whose toolbar is now the same centralized Core toolbar rendered by Visual Builder.
- No module-local WYSIWYG toolbar markup or imitation is used.
# Changelog
## 1.0.12 — 2026-09-08
- Replaced Publishing’s module-local WYSIWYG toolbar/rendering with the canonical `App\Core\Editor::render()` using Core’s `page` profile.
- Removed the Publishing editor explanatory notice from admin and member authoring screens.
- Preserved existing publication save/edit, featured image, preview, distribution, permissions, and analytics workflows.
## 1.0.11 — 2026-08-31
- Switched Publishing to the canonical Core editor contract: `EditorRegistry::get('publishing')` plus Core `/assets/js/divisiondesk-editor.js` / `window.DivisionDeskEditor`.
- Removed Publishing's registration of a replacement editor profile. Publishing now consumes the Core-owned `publishing` profile so Core profile changes flow through automatically.
- Toolbar controls are profile-driven and delegate formatting, HTML sanitization, linking, images, font sizing and grammar behavior to `DivisionDeskEditor`; Publishing no longer implements formatting behavior itself.
- Removed Publishing-local Analytics administration, Analytics action/capability and local page-view recording. Existing analytics tables are intentionally preserved but no longer read/written by Publishing.
- Added Core 4.5 Unified Analytics events through `App\Core\Integration::analytics()` for create, update, publish, unpublish, article-specific views, social handoffs and successful shares.
- Publishing does not access Core analytics tables directly. Core owns persistence and reporting.
- Raised the minimum Core contract to 4.5.0 because this release consumes Unified Analytics.
## 1.0.10 — 2026-08-30
- Final Publishing polish pass for the current release line.
- Enforced a hard 300-character Description/Excerpt limit in both authoring UI and server validation, with a live characters-remaining counter.
- Social distribution text now contains publication title, brief description, and canonical article link while preserving the working featured-image handoff.
- Article bylines now display first name + last name only. Middle names and suffixes are not used for normal Article attribution.
- Added optional Public byline / Issued by override for News Releases and Announcements (for example, “ABC Organization”) while retaining the real creator/editor internally.
- Added upgrade-safe `public_byline` persistence and search support.
- Upgraded Featured Image authoring to accept URL, normal file upload, or drag-and-drop upload with preview/removal. Uploaded images use Core Media validation/storage and remain available to public pages and social distribution.
- Preserved the Core WYSIWYG focus correction and editor-selection behavior from 1.0.9.
- Publishing analytics remains self-contained for now and is intentionally left replaceable by the planned Core-wide Analytics dashboard integration.
## 1.0.9 — 2026-08-30
- Fixed Core WYSIWYG focus regression by removing the editor/toolbar from an implicit `<label>` control group and no longer eagerly activating the editor during initialization.
- Added explicit accessible textbox semantics (`tabindex`, `role=textbox`, `aria-multiline`) to the editable surface.
- Restored Featured Image as a first-class visible authoring field instead of hiding it under Advanced presentation.
- Added featured-image preview in member and administrator authoring, and included the hero image in Preview.
- Preserves an existing featured image on edit when a caller omits the `featured_image` field.
- Keeps inline WYSIWYG images separate from the publication Featured Image/hero image.
# DivisionDesk Publishing Changelog
## 1.0.8 — Distribution reliability corrective release
### Fixed
- Distribution now sends the full canonical publication URL instead of a query-only relative URL.
- Publishing now supplies a normalized cross-module content payload (`reference`, `title`, `description`, `text`, `message`, `html`, `canonical_url`, featured media, author and publication metadata) through Core `Integration::distribute()`.
- Distribution failures are no longer silently swallowed. Website publication can succeed while the UI clearly reports a failed optional destination.
- Every delivery attempt is persisted in `publishing_distribution` with pending/scheduled/queued/accepted/sent/failed state, response/error details and any returned external post/queue ID.
- Scheduled publications retain their selected distribution destinations and deliver them when the Core Scheduler publishes the item.
- Added a stable idempotency/dedupe key so a retry of the same publication revision does not create duplicate distribution attempts.
- Publishing administration now shows the latest distribution state per destination under each publication.
- Search indexing now records the canonical public publication URL.
### Compatibility
- Uses only the frozen Core 4.4.4 distribution contract: `Integration::destinations()` / `Integration::distribute()`. Publishing still does not import or access Social Media internals directly.
- Migration 004 is idempotent and adds the distribution dedupe index/column to existing installs.
# Changelog
## 1.0.12 — 2026-09-08
- Replaced Publishing’s module-local WYSIWYG toolbar/rendering with the canonical `App\Core\Editor::render()` using Core’s `page` profile.
- Removed the Publishing editor explanatory notice from admin and member authoring screens.
- Preserved existing publication save/edit, featured image, preview, distribution, permissions, and analytics workflows.
## 1.0.7 — 2026-08-30
- Fixed the 1.0.5/1.0.6 upgrade defect that could leave `publishing_items.editorial_note`, `editorial_note_at`, and `editorial_note_by` missing while the migration was nevertheless recorded as applied.
- Rewrote the editorial-note migration so it is self-contained and cannot accidentally call an older in-memory `Schema` class during an in-process module update.
- Added `003_schema_repair_1_0_7.php`, an idempotent repair/verification migration that repairs the known schema delta and then verifies every current Publishing table and required column before Core records the migration complete.
- Changed schema helpers to fail loudly on required column/index creation errors instead of swallowing exceptions that could hide an incomplete upgrade.
- Verified both fresh-install and upgrade paths, including the exact broken-1.0.6 state where migration 002 is already recorded but the editorial-note columns are absent.
- Verified the SQLite `ALTER TABLE` repair preserves existing publication records and that the repository update containing editorial-note fields succeeds after repair.
- Removed obsolete, unreferenced legacy asset files that contained superseded editor/AJAX behavior.
## 1.0.6 — 2026-08-30
- Replaced Publishing's miniature editor behavior with the reusable Core publishing WYSIWYG profile and `divisiondesk-editor.js` controls (headings, font, size, bold/italic/underline, alignment, lists, text/highlight color, links, images, grammar check and HTML source).
- Fixed the admin Edit submit URL collision caused by the hidden `action` input shadowing `form.action`; Publishing now reads the form action attribute explicitly.
- Added View, Analytics, Unpublish and Republish management actions with confirmation and preserved revisions/audit history.
- Added optional public editorial-note workflow when an administrator edits another author's already-published content.
- Resolved member bylines through the active Core role/member provider so existing surname-only snapshots can display the member's full name.
- Converted stored UTC timestamps to the site's configured timezone/date/time format and appends the active timezone abbreviation (CST/CDT, EST/EDT, UTC, etc.).
- Distribution now shows only SDK destinations that actually provide a delivery handler; navigation-only destinations are no longer shown.
- Added per-publication 30-day analytics views.
# DivisionDesk Publishing Changelog
## 1.0.5 — 2026-08-29
- Fixed the Publishing schema lifecycle by adding a real Core `migrations/001_schema.php` migration. Existing 1.0.4 installations receive the missing tables during update; fresh installs receive them before lifecycle hooks.
- Replaced legacy closure-style Install/Update/Uninstall hooks with the current Core 4.4.4 `Addons\\Publishing` lifecycle class shapes.
- Moved the Publishing administration entry to **Website → Content → Publishing**, explicitly visible in Novice/Advanced/Webmaster modes and searchable through Core Administration search.
- Kept the secure `module-admin.php` dispatcher for the actual management workspace.
- Removed public references to non-public `/addons/publishing/assets/...` files. Publishing CSS/behavior is now emitted by the registered component itself while Core continues to own the page shell.
- Reworked the member Write & Publish screen into a polished responsive authoring card with clear fields, WYSIWYG controls, HTML source mode, preview and optional CSS.
- Fixed Smart Action request shape in the administration composer (`input[...]`) and corrected response parsing/redirect behavior.
- Member article publishing no longer relies on the administrator-only `/integration-actions.php` endpoint; the protected Write an Article module page handles authenticated member submissions directly with Core CSRF validation.
- Public News & Articles listing and individual article URLs are installation-base aware.
- Core Site Search provider remains authoritative for published Publishing content and now has the schema it requires to execute successfully.
- Improved admin publication editing by loading existing content into the composer.
## 1.0.4 — 2026-08-29
- Added the Core 4.4.4 root `Addon.php` boot contract and public module pages.
Release History
1.0.13 development published
2026-09-13T06:32:25+00:00
2026-09-13T06:32:25+00:00