=== 1 Click Form Sync for Elementor Forms, WPForms and Google Sheets ===
Contributors: tajamalhussain
Donate link: https://taj.fectodigital.com/
Tags: elementor, google sheets, wpforms, forms, sync
Requires at least: 6.4
Tested up to: 7.0.4
Requires PHP: 8.0
Stable tag: 1.0.2
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Sync Elementor Pro Forms, WPForms & Gravity Forms to Google Sheets with 1-click OAuth, smart field mapping, and background retry queue.

== Description ==

1 Click Form Sync for Elementor Forms, WPForms and Google Sheets is a reliable, high-performance WordPress plugin that links your Google Account to send form submissions directly to Google Spreadsheets in real-time.

=== Key Features ===

* **Multi-Account Support**: Connect multiple named Google accounts effortlessly.
* **Smart Field Mapping**: Automatic column header detection or custom field layout configuration.
* **Exponential Retry Queue**: Failed requests (API rate limits, timeouts, server errors) are automatically retried in the background using WP-Cron.
* **Enterprise Security**: Symmetrical token encryption using Libsodium or OpenSSL AES-256-GCM, plus built-in defense against Spreadsheet Formula Injection (CSV Injection).
* **Developer Friendly**: Built on PSR-4 standards, DI container, and clean extensible hooks.

== Installation ==

= From the WordPress Dashboard =

1. Navigate to **Plugins** > **Add New** in your WordPress Admin Menu.
2. Search for `1 Click Form Sync`.
3. Click **Install Now**, then click **Activate**.
4. Navigate to **1 Click Form Sync** in your admin menu and complete the interactive **Setup Wizard** to connect your Google Account.
5. Add the **Google Sheets** action to your Elementor Pro Forms or WPForms settings and select your spreadsheet.

= Manual Installation =

1. Download the plugin ZIP file (`1-click-form-sync.zip`) from the WordPress.org Plugin Directory.
2. Log into your WordPress Dashboard and navigate to **Plugins** > **Add New** > **Upload Plugin**.
3. Click **Choose File**, select the downloaded ZIP file, and click **Install Now**.
4. Click **Activate Plugin**.
5. Go to **1 Click Form Sync** in your dashboard to complete the authorization setup.

= Support =

If you need assistance configuring your form connections or have questions:
* Check the built-in **System Status** tab inside the plugin dashboard for diagnostics and requirements checks.
* Post your questions on the official [WordPress.org Plugin Support Forum](https://wordpress.org/support/plugin/1-click-form-sync/).
* Visit our official site at [Fecto Digital](https://taj.fectodigital.com/).

== Frequently Asked Questions ==

= Does this plugin require paid Google Cloud API credentials? =

No. You can connect instantly using the built-in 1-Click authorization proxy or use your own custom Google Cloud OAuth credentials.

= What happens if Google Sheets API is temporarily unavailable? =

The plugin captures form entries locally and queues them for background processing via WP-Cron with exponential backoff retries.

= Is my form data secure? =

Yes. Credentials are encrypted using industry-standard AES-256-GCM / Libsodium encryption, and field values are sanitized to protect against formula injection.

== Screenshots ==

1. Setup Wizard Step 1 - Connect your Google Sheets Account.
2. Setup Wizard Step 2 - Add Google Sheets Action to Elementor Forms.
3. Setup Wizard Step 3 - Test and Verify Integration.
4. Plugin Dashboard overview showing connected accounts, submission stats, activity log, and form integration statuses.
5. Connections Management page for connected Google Accounts and custom credentials.
6. Form Submissions history table displaying captured entry status, form names, pages, and submission dates.
7. Activity Log table showing detailed background sync statuses, spreadsheet destinations, and payload JSON responses.
8. System Status page displaying environment requirements checklist, encryption status, and background WP-Cron services.
9. Elementor Pro Form Editor - Selecting "Google Sheets" in Actions After Submit menu.
10. Elementor Pro Form Settings - Configuring Google Connection, Spreadsheet URL, Worksheet Name, and Metadata Columns.
11. Elementor Pro Form Settings - Custom Tracking Parameters, UTM parameters, and Header Row styling options.
12. Live Google Sheet displaying real-time synced form submission entries with formatted headers.

== Changelog ==

= 1.0.2 =
* Excluded multi-step form step elements, reCAPTCHA, honeypot, and structural fields from Google Sheets exports to prevent blank columns.

= 1.0.1 =
* Fixed PSR-4 autoloader resolution on clean WordPress installations.
* Added native autoloader fallback for class OneClickFormSync\Core\Activator.

= 1.0.0 =
* Initial release of 1 Click Form Sync for Elementor Forms, WPForms, and Google Sheets.
* Integrated Elementor Pro Forms and WPForms form provider support.
* Added automatic field mapping, OAuth 2.0 authentication, and background retry queue.

== Upgrade Notice ==

= 1.0.2 =
Prevents multi-step form step elements and reCAPTCHA fields from creating blank columns in Google Sheets. Recommended upgrade for all users.

= 1.0.1 =
Fixes plugin activation autoloader resolution. Recommended upgrade for all users.

= 1.0.0 =
Initial release. Upgrade to get seamless Google Sheets integration for Elementor Pro and WPForms.

== External Services ==

This plugin connects to external third-party services to establish OAuth connections and transmit form submissions.

1. **Google OAuth 2.0 API**
   - **Service Description**: Authenticates users, verifies identity, and manages OAuth tokens.
   - **Data Transmitted**: Client consent codes, client IDs, secrets, and refresh/access tokens.
   - **Privacy Policy**: https://policies.google.com/privacy
   - **Terms of Service**: https://policies.google.com/terms

2. **Google Sheets API v4**
   - **Service Description**: Reads spreadsheet headers, creates worksheets, and appends submission rows.
   - **Data Transmitted**: Form field values, headers, and spreadsheet identifiers.
   - **Privacy Policy**: https://policies.google.com/privacy
   - **Terms of Service**: https://policies.google.com/terms

3. **Fecto Digital Auth Proxy (https://auth-gsheet.fectodigital.com)**
   - **Service Description**: Redirect proxy used to return Google OAuth authorization codes to your local WordPress dashboard safely.
   - **Data Transmitted**: Callback URL, state parameters, and authorization tokens.
   - **Privacy Policy**: https://fectodigital.com/privacy-policy/
   - **Terms of Service**: https://fectodigital.com/privacy-policy/
