=== Entry Ranger for Contact Form 7 ===
Contributors: lruizcode, bubuku
Tags: contact-form-7, cf7, submissions, csv, export
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 8.0
Requires Plugins: contact-form-7
Stable tag: 1.0.1
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Save, view, edit, import, and export Contact Form 7 submissions, with migration from Advanced CF7 DB.

== Description ==

Entry Ranger for Contact Form 7 stores every submission from your Contact Form 7 forms in its own table with indexing and search, and lets you manage them from a single screen:

* List view with search, date and status filters, server-side pagination, and bulk actions.
* Detail panel with inline editing, attachments, and automatic read marking.
* Streaming CSV export without row or memory limits.
* Batch CSV import with automatic column detection, preview, and error reporting.
* Guided migration from Advanced CF7 DB (legacy tables are not deleted).
* Per-form permissions, GDPR/privacy support (export/delete personal data), and configurable retention.

== Installation ==

1. Upload the plugin folder to `/wp-content/plugins/`.
2. Activate the plugin from the Plugins menu.
3. Open “Contact → Submissions” in the admin.

== Screenshots ==

1. Submissions list with search, status filters (All, Unread, Read, Starred), pagination, and CSV export.
2. Appearance panel: sort order, row density, items per page, and visible columns.
3. Row actions menu: mark as read/unread, star, or delete a submission.
4. Forms screen with submission and unread counts for each Contact Form 7 form.
5. CSV import wizard: choose the target form and upload the file.
6. Guided migration from Advanced CF7 DB, with legacy capabilities cleanup.
7. Settings: IP handling, retention days, excluded forms, import size limit, and form columns.

== Frequently Asked Questions ==

= Do I need Contact Form 7? =

Yes. The plugin declares `Requires Plugins: contact-form-7` and shows a notice if it is not active.

= What happens to the data from Advanced CF7 DB? =

It is copied into the new tables in batches through the migration wizard. The old tables are not deleted.

= Are attachments protected against direct access? =

Files are stored in `wp-content/uploads/entrafo-private/`, and the plugin automatically creates an `.htaccess` file and an `index.php` file that block direct access on Apache servers. If your hosting uses nginx or IIS, `.htaccess` is not interpreted, so it is advisable to add a server rule:

    location ~* /wp-content/uploads/entrafo-private/ {
        deny all;
    }

In any case, file names are random (128-bit) and are only served from the plugin via the REST API after checking permissions on every request.

== Privacy Policy ==

Entry Ranger for Contact Form 7 does not send data to any external server and does not include analytics, telemetry, or license checks.

Submissions from your Contact Form 7 forms are stored in the `wp_entrafo_submissions` and `wp_entrafo_files` tables in your own database, and may include the fields entered by the person submitting the form, their IP address, user agent, and any attached files. You can delete them from the plugin screen, limit their retention using configurable retention settings, or use the WordPress privacy tools (Export Personal Data / Remove Personal Data), which this plugin registers natively.

== SUPPORT ==

**Need help or have a suggestion?**
Please use the [official WordPress.org Support Forum](https://wordpress.org/support/plugin/entry-ranger-for-contact-form-7/) for any issues related to the plugin.

**Official Website**
For additional information or to get in touch with the development team, please visit our [official website](https://www.bubuku.com/).

**Like the plugin?**
Please [leave a 5-star review](https://wordpress.org/support/plugin/entry-ranger-for-contact-form-7/reviews/?filter=5) and help others discover Entry Ranger for Contact Form 7.

== ABOUT BUBUKU_CODE ==

We develop custom solutions for WordPress focused on performance, accessibility, and maintainable code. Our work includes plugins, themes, and integrations designed to improve the daily workflow of marketing and content teams.

== Changelog ==

= 1.0.1 =
* Imported legacy submissions are now marked as read.
* Bulk delete shows a single confirmation dialog.
* New "Empty form" button to delete all submissions of the selected form.

= 1.0.0 =
* Capture Contact Form 7 submissions in dedicated tables.
* Single screen with search, filters, pagination, and bulk actions.
* Streaming CSV export and batch CSV import.
* Guided migration from Advanced CF7 DB.
* Per-form permissions, GDPR/privacy support, and configurable retention.
