=== CodeMoksha Forms ===
Contributors: kundankb
Tags: contact form, forms, contact form 7, cf7 importer, form builder
Requires at least: 6.9
Tested up to: 7.1
Stable tag: 1.0.0
Requires PHP: 8.3
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Contact form builder with a one-click Contact Form 7 importer. All the essentials, free.

== Description ==

CodeMoksha Forms is a complete contact form builder with a built-in importer for moving your Contact Form 7 forms over without rebuilding them.

= Moving from Contact Form 7 =

Many importers convert your forms into a different engine — new syntax, new shortcodes, new habits. CodeMoksha Forms uses a compatible form engine, so your existing form templates, mail-tags, and hash ids continue to work, and the importer rewrites your `[contact-form-7]` shortcodes for you. Nothing is rebuilt by hand.

**One-click Contact Form 7 import.** The built-in importer copies your Contact Form 7 forms — fields, mail settings, messages, additional settings, and integration credentials — into CodeMoksha Forms. It can also rewrite the `[contact-form-7]` shortcodes in your pages, and your Contact Form 7 data is never modified or deleted.

**Everything you need, with no locked features:**

* All field types: text, email, URL, tel, textarea, number, date, select, checkboxes, radio buttons, acceptance, quiz, hidden, and file uploads
* Flexible mail engine with a second mail template (auto-reply), special mail tags, and selectable recipients
* Client- and server-side validation with a real-time configuration validator
* Spam protection: reCAPTCHA, Akismet, and disallowed-list filtering
* Stripe payments and Brevo (Sendinblue) email marketing integration
* Block editor (Gutenberg) block and REST API

**Smart Forms Pro** (our paid product) additionally offers database submission storage with a Messages screen, Cloudflare Turnstile, and priority support. Forms created here work in Smart Forms Pro as-is.

= Credits =

CodeMoksha Forms is based on [Contact Form 7](https://wordpress.org/plugins/contact-form-7/) by Takayuki Miyoshi / Rock Lobster, LLC (GPLv2+). We're grateful for the years of work that went into it. This plugin is not affiliated with or endorsed by Rock Lobster, LLC.

== External services ==

This plugin integrates with the following third-party services. Each one is optional and is only contacted after you enable and configure it. No data is sent to any of them out of the box, and no data is ever sent to the plugin author.

**Google reCAPTCHA** (optional spam protection)
Used to tell human submissions apart from bots. When you enable reCAPTCHA and add your site/secret keys, the plugin loads Google's reCAPTCHA script from `www.recaptcha.net` on pages containing a form and, on submission, sends the reCAPTCHA token together with the visitor's IP address to Google (`www.google.com/recaptcha/api/siteverify`) for verification. This happens only on forms you protect with reCAPTCHA.
Terms: https://policies.google.com/terms — Privacy: https://policies.google.com/privacy

**Stripe** (optional payments)
Used to collect payments through a form. When you enable Stripe and add your API keys, the plugin loads Stripe.js from `js.stripe.com` on pages with a payment form and, on submission, sends payment intent details (amount, currency, and the payment token created in the browser) to the Stripe API at `api.stripe.com`. This happens only for forms that include a Stripe payment field.
Terms: https://stripe.com/legal/ssa — Privacy: https://stripe.com/privacy

**Brevo (formerly Sendinblue)** (optional email marketing)
Used to add form submitters to your Brevo contact lists and send transactional email. When you enable Brevo and add your API key, the plugin sends the submitted contact fields you map (such as name and email) to the Brevo API at `api.sendinblue.com` (Brevo's API host, also reachable as `api.brevo.com`) at submission time. This happens only for forms where you enable the Brevo integration.
Terms: https://www.brevo.com/legal/termsofuse/ — Privacy: https://www.brevo.com/legal/privacypolicy/

**Akismet** (optional spam filtering)
Used to check submissions for spam via the Akismet plugin, if it is installed and configured. When enabled, submission content (message, and the submitter's name, email, IP, and user agent) is sent to the Akismet API (`rest.akismet.com`, via the Akismet plugin) for a spam verdict. This happens only when Akismet is active and enabled for a form.
Terms: https://akismet.com/tos/ — Privacy: https://automattic.com/privacy/

== Installation ==

1. Upload the plugin to `/wp-content/plugins/` or install it through the WordPress plugins screen.
2. Activate the plugin.
3. Go to CodeMoksha Forms → CF7 Importer to migrate your Contact Form 7 forms, or CodeMoksha Forms → Add Contact Form to start fresh.

== Frequently Asked Questions ==

= Does the importer delete my Contact Form 7 data? =

No. The importer only reads Contact Form 7 data and copies it. You can optionally deactivate Contact Form 7 after the import, but its forms remain in the database until you delete them yourself.

= Will my existing [contact-form-7] shortcodes keep working? =

Yes — the importer rewrites them for you. Tick the "Rewrite [contact-form-7] shortcodes" option during the import and every one of them in your posts and pages becomes a `[codemoksha-forms ...]` shortcode pointing at the imported form. Imported forms keep the same hash ids, so the rewritten shortcodes resolve to the same forms. Nothing needs editing by hand.

= What happens if I upgrade to Smart Forms Pro? =

Smart Forms Pro uses the same data structures as this plugin. Activate it and it picks up all your forms, settings, and integrations; CodeMoksha Forms goes dormant automatically.

== Screenshots ==

1. The contact forms list — every form with its ready-to-copy shortcode.
2. The form editor: the same tag-based form templates you know from Contact Form 7.
3. The one-click Contact Form 7 importer — copies forms, settings, and credentials, and can rewrite your shortcodes.
4. A form rendered on the frontend with validation and acceptance checkbox.

== Changelog ==

= 1.0.0 =
* Initial release: full form builder with Contact Form 7 importer.
