=== EHx Members ===
Contributors: ehstudio, iamsujitsarkar
Tags: user registration, frontend forms, custom fields, membership, roles
Requires at least: 5.8
Tested up to: 6.8
Requires PHP: 8.0
Stable tag: 1.0.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

The **EHx Members** plugin is a powerful tool designed to simplify and streamline the user registration process on your WordPress site.

== Description ==

The **EHx Members** plugin is a powerful tool designed to simplify and streamline the user registration process on your WordPress site. This plugin allows you to create customizable, mobile-friendly frontend registration forms with support for AJAX submissions, robust validation, and error handling. Ideal for membership websites, the plugin enables the creation of new WordPress users with specific roles, integrates seamlessly with WordPress’s user management system, and supports custom fields for collecting additional user information.

== Key Features ==

- **Fully customizable frontend registration forms**: Create forms tailored to your needs.
- **AJAX-based form submission**: Provides a seamless user experience without page reloads.
- **Create and assign WordPress roles automatically**: Assign roles to new users during registration.
- **Support for custom fields**: Collect additional user information like phone, address, and membership type.
- **Multilingual ready**: Supports translation via the `ehx-members` text domain.
- **Lightweight and optimized for performance**: Built for speed and efficiency.
- **Easy to integrate**: Works seamlessly with any WordPress theme.

== Installation ==

1. Download the plugin ZIP file.
2. Go to your WordPress admin dashboard.
3. Navigate to **Plugins > Add New > Upload Plugin**.
4. Upload the ZIP file and click **Install Now**.
5. Once installed, click **Activate Plugin**.

Alternatively, you can install the plugin manually:
1. Extract the ZIP file.
2. Upload the `ehx-members` folder to the `/wp-content/plugins/` directory.
3. Go to **Plugins** in your WordPress admin dashboard and activate the **EHx Members** plugin.

== Configuration ==

After activating the plugin, you can start using it immediately. No additional configuration is required. However, you can customize the registration forms and validation rules by editing the plugin's code or using hooks and filters.

== Usage ==

= Creating Registration Forms =
1. Use the provided shortcode `[ehx_member_form]` to display the registration form on any page or post.
2. Customize the form fields and validation rules in the plugin's code.

= AJAX Form Submission =
The plugin uses AJAX for form submissions, ensuring a smooth user experience without page reloads.

= Custom Fields =
Add custom fields to the registration form by modifying the plugin's code. Supported field types include text, email, phone, and more.

= Multilingual Support =
The plugin is translation-ready. Use the `ehx-members` text domain to translate the plugin into your preferred language.

== Screenshots ==

1. Registration Form.
2. All members.
3. Settings integration.
4. Email settings.
5. All forms.
6. Frontend form design.

== Frequently Asked Questions (FAQ) ==

= How do I customize the registration form? =
You can customize the form fields and validation rules by editing the plugin's code. Look for the `EHX_Member` class and modify the form logic as needed.

= Can I use this plugin for membership websites? =
Yes, the plugin is ideal for membership websites. It supports custom fields, role assignment, and robust validation.

= Is the plugin compatible with multilingual sites? =
Yes, the plugin is translation-ready. Use the `ehx-members` text domain to translate the plugin into your preferred language.

= How do I handle errors during form submission? =
The plugin includes built-in error handling. If validation fails, error messages will be displayed to the user.

== External Services ==

This plugin integrates with the following third-party services:

1. **Stripe PHP Library**
   - Purpose: Server-side payment processing for donations
   - Data Sent: Payment tokens, transaction amounts, customer metadata
   - When: During donation processing and payment verification
   - Links:
     - [Terms of Service](https://stripe.com/legal)
     - [Privacy Policy](https://stripe.com/privacy)
     - [GitHub Repository](https://github.com/stripe/stripe-php)
2. **Stripe.js v3 (https://js.stripe.com/v3)**
   - Purpose: Securely collects payment information on the frontend via Stripe Elements
   - Data Sent: Card details (directly to Stripe), browser metadata
   - When: When users interact with the payment form
   - Notes: This library is loaded from Stripe's CDN to ensure PCI compliance and secure client-side processing
   - Links:
     - [Stripe.js Documentation](https://docs.stripe.com/js)
     - [Terms of Service](https://stripe.com/legal/ssa)
     - [Privacy Policy](https://stripe.com/privacy)
     - [GitHub Repository](https://github.com/stripe/stripe-php)

== Data Handling ==

All communication with external services is done securely via HTTPS. The plugin implements:

1. **Payment Processing**:
   - Uses the official Stripe PHP library (stripe/stripe-php) for server-side operations
   - Sensitive payment details are processed directly by Stripe's systems
   - Our servers only receive and store payment tokens for transaction verification

2. **Security Measures:**:
   - Follows Stripe's recommended practices for PCI compliance
   - All sensitive communication is encrypted and routed through secure endpoints
   
== Changelog ==

= 1.0.0 =
- Initial release of the EHx Members plugin.
- Added support for customizable frontend registration forms.
- Implemented AJAX-based form submission.
- Integrated role assignment for new users.
- Added support for custom fields.
- Made the plugin translation-ready.

== License ==

This plugin is licensed under the **GPLv2 or later**. See the [LICENSE](https://www.gnu.org/licenses/gpl-2.0.html) file for more details.

== Support ==

For support, feature requests, or bug reports, please visit the [plugin's support page](https://wordpress.org/plugins/ehx-members) or contact the developer at [EH Studio](https://eh.studio).

---

Thank you for using **EHx Members**! We hope this plugin simplifies your user registration process and enhances your WordPress site.