=== Petal Forms ===
Contributors: satbirgandhi
Tags: contact form, form builder, forms, drag and drop, file upload
Requires at least: 5.8
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 1.0.1
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

A free drag-and-drop form builder: unlimited forms, fields and entries, with phone, date, time and file upload fields included.

== Description ==

Petal Forms is a lightweight WordPress form builder. Unlike the free tier of most
form plugins, it does not lock common fields (Phone, Date, Time, Number) behind
a paid upgrade, and it does not cap forms, fields, or entries.

**Features**

* Drag-and-drop-style form builder in wp-admin
* 13 field types out of the box, including Phone, Date, and Time — free
* Entries stored in the database, viewable and exportable to CSV
* Email notifications to the site admin, with optional confirmation email to the submitter
* Honeypot spam trap + submission rate limiting, no configuration required
* Optional Google reCAPTCHA v2 integration
* Shortcode (`[petal_form id="1"]`) and a native Gutenberg block
* File uploads with an extension allow-list
* Clean uninstall option — leaves no orphaned database tables unless you opt in

**What this is not**

The free plugin does not include payment processing (Stripe) or Mailchimp sync;
those come with an optional paid upgrade available from within the plugin. It also
has no Salesforce or HubSpot integrations. Petal Forms is built for people who just
want a solid, unrestricted form builder.

== Installation ==

1. Upload the `petal-forms` folder to `/wp-content/plugins/`.
2. Activate the plugin through the "Plugins" screen in WordPress.
3. Go to Petal Forms → Add New to build your first form.
4. Paste the generated shortcode into any page or post, or use the Petal Forms block.

== Frequently Asked Questions ==

= Does this cost anything? =

The plugin is free, with no caps on forms, fields or entries. An optional paid upgrade adds Stripe payments and Mailchimp sync; nothing described above requires it.

= Where are entries stored? =

In two dedicated database tables (`wp_petalforms_forms` and `wp_petalforms_entries`),
created on activation. Deactivating the plugin keeps your data; deleting it does too,
unless you check "Delete all forms and entries" under Petal Forms → Settings first.

= Can I export entries? =

Yes — Petal Forms → Entries → Export CSV.

== External services ==

This plugin optionally integrates with Google reCAPTCHA to help block spam submissions. It only connects to Google's servers if you enter a Site Key and Secret Key under Petal Forms → Settings; with no keys entered, no data is ever sent to Google.

When enabled, on every form submission the visitor's reCAPTCHA response token and IP address are sent to Google's siteverify API to confirm the submission is human. The reCAPTCHA widget script is also loaded from Google on any page showing a form.

This service is provided by Google: [Terms of Service](https://policies.google.com/terms), [Privacy Policy](https://policies.google.com/privacy).

This plugin includes the Freemius SDK, which handles optional licensing and upgrades. On activation you may be asked to opt in to sharing basic usage data; nothing is sent to Freemius unless you choose to opt in, and the plugin works fully if you skip it. If you opt in, Freemius receives your name, email address, site URL and WordPress/plugin/PHP version details.

This service is provided by Freemius: [Terms of Service](https://freemius.com/terms/), [Privacy Policy](https://freemius.com/privacy/).

== Screenshots ==

1. All Forms — every form you've built, at a glance, with entry counts and shortcodes.
2. The drag-and-drop builder — add and arrange fields with a live preview.
3. Entries — every submission stored and searchable, with one-click CSV export.
4. The finished form on the front end — clean, unstyled-by-default, and ready to match your theme.

== Changelog ==

= 1.0.1 =
* Clearer readme, tags and screenshots.
* A single, dismissible review request on Petal Forms screens after a week of use and five entries. "Maybe later" snoozes it for 30 days; "No thanks" ends it.

= 1.0.0 =
* Initial release.
