=== Countdown Rescue ===
Contributors: pluginlifeboat
Tags: countdown, timer, legacy, shortcode, recovery
Requires at least: 6.2
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 1.0.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Read-only preservation rendering and diagnostics for supported legacy Free Countdown Timer Ultimate records.

== Description ==

When an old Countdown Timer Ultimate Free installation can no longer provide its countdowns, its WordPress records and historical `[wpcdt-countdown id="..."]` references may still survive. Countdown Rescue reads supported surviving Free `wpcdt_countdown` records in place and restores compatible output for eligible published circle timers.

When no other provider owns `[wpcdt-countdown]`, it renders supported labels, enabled units, colors, sizing intent, and absolute deadlines with a responsive, accessible presentation and cache-safe local scheduler.

The plugin does not migrate, repair, rewrite, or delete legacy data. It includes a capability-protected read-only report under Tools → Countdown Rescue. That report inventories bounded legacy records, rendering eligibility, conventional literal shortcode references, ownership conflicts, safe normalization fallbacks, and possible unsupported/Pro-era indicators.

Countdown Rescue is an independent preservation utility. Plugin Lifeboat and Countdown Rescue are not affiliated with or endorsed by the original Countdown Timer Ultimate developer/vendor, WordPress.org, or the WordPress project. It does not claim to clean malware, remediate vulnerabilities, act as a security scanner, prove that a site is uncompromised, or make an abandoned plugin safe to reactivate.

== Installation ==

1. Resolve any security incident involving the historical plugin before preservation work.
2. Install and activate Countdown Rescue.
3. Leave the historical plugin inactive.
4. Review Tools → Countdown Rescue.
5. Verify representative pages containing `[wpcdt-countdown id="6"]` or another canonical record ID.

Activation creates no options, migrations, records, telemetry, or remote requests.

== Frequently Asked Questions ==

= Do I need the old plugin installed? =

No. The historical plugin is not required at runtime and should not be reactivated for Countdown Rescue.

= Does this modify old countdown records? =

No. Record, metadata, shortcode, diagnostic, and rendering paths are read-only.

= Does it support the historical shortcode? =

Yes, for the canonical `[wpcdt-countdown id="..."]` form and supported eligible Free records. Countdown Rescue registers it only when no other provider owns the shortcode.

= Does it support Countdown Timer Ultimate Pro behavior? =

No. Recurring or evergreen timers, schedules, completion actions, redirects, alternate Pro designs, visitor state, and Pro widgets or shortcodes are outside the supported contract.

= Does it find every shortcode reference? =

No. Diagnostics inspect a bounded set of literal shortcodes in standard post and page content. Widgets, options, builders, generated content, custom tables, and third-party storage may be outside coverage.

= What happens if another plugin owns the shortcode? =

Countdown Rescue does not remove or overwrite it. The Tools report describes the observed request-local ownership state.

= What happens to expired timers? =

Expired timers do not render publicly. A running countdown clamps to zero when its absolute deadline is reached and does not restart.

= Does Countdown Rescue send data anywhere? =

No. It has no telemetry, analytics, account, remote service, cloud dependency, or runtime data transmission.

= Does this make the historical plugin safe? =

No. Security remediation is a separate prerequisite. Countdown Rescue does not reactivate, patch, or depend on the historical plugin.

== Changelog ==

= 1.0.0 =

* Initial public release restoring compatible `[wpcdt-countdown]` rendering for supported legacy Countdown Timer Ultimate Free data.
* Preserves legacy records in place with responsive accessible circles and a cache-safe absolute-deadline countdown.
* Adds read-only diagnostics and non-destructive shortcode conflict handling.
