=== Blocdash – Frontend Dashboard & User Management Toolkit ===
Contributors: digitaldive
Tags: frontend dashboard, user dashboard, login, registration, profile, user management, membership, block editor, google login, announcements, frontend forms
Requires at least: 5.8
Tested up to: 6.9
Requires PHP: 7.4
Stable tag: 1.0.1
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Blocdash is a powerful frontend dashboard and user management system for WordPress. Create login, registration, profile, and announcement systems entirely on the front end — no admin access required.

== Description ==

**Blocdash** is a modular frontend dashboard framework built for modern WordPress block themes.

It allows you to create a complete **frontend user dashboard**, including:

• Frontend login, registration, and profile management
• Role-based dashboard access
• Frontend announcements with replies and badges
• Optional Google OAuth / One Tap login
• Modular system — enable only what you need
• Designed for block themes and modern WordPress installs

Perfect for:

* Membership sites
* Client dashboards
* Community portals
* Internal business tools
* SaaS-style WordPress projects

No page builders required. No bloat. Fully extensible.

== Features ==

✔ Frontend login, registration, and profile editing
✔ Role-based dashboard access
✔ Frontend announcements with replies
✔ Reply notifications & unread indicators
✔ Modular feature system
✔ Optional Google OAuth & One Tap login
✔ Block-theme friendly
✔ Secure account deletion options
✔ Developer-friendly filters & hooks

== Installation ==

1. Upload the plugin to `/wp-content/plugins/` or install via the WordPress Plugin Directory.
2. Activate **Blocdash – Backend Dashboard Toolkit**.
3. Visit **Blocdash → Dashboard** to enable modules.
4. (Optional) Auto-create frontend pages from the settings panel.

== Frequently Asked Questions ==

= Does Blocdash automatically create pages? =
Yes. On activation, Blocdash can generate Login, Register, Profile, and Dashboard pages. You can disable this behavior using the `blocdash_create_default_pages` filter.

= Can I disable features I don’t need? =
Yes. All major features are modular and can be toggled from the admin dashboard.

= Can users edit their profiles on the front end? =
Yes. Users can update profile information, passwords, and account settings without accessing wp-admin.

= Can users delete their own accounts? =
Yes. You can enable account deletion from:
**Blocdash → Register Form → Account Management**

= Can admins delete their own accounts or reassign content? =
Yes. Use the following filters:

```
add_filter( 'blocdash_allow_admin_account_delete', '__return_true' );

add_filter( 'blocdash_account_delete_reassign', function( $reassign_id, $user_id ) {
	return 1; // Reassign posts to user ID 1
}, 10, 2 );
```

== External Services ==

Blocdash optionally integrates with **Google Identity Services** for authentication.

**Service:** Google OAuth / Google One Tap
**Purpose:** Frontend authentication
**Data Processed:**

* OAuth authorization code
* Client ID and secret
* Google user profile (email, name, ID)

**When used:**
Only when the Google Login or One Tap feature is enabled.

**Google policies:**

* [https://policies.google.com/terms](https://policies.google.com/terms)
* [https://policies.google.com/privacy](https://policies.google.com/privacy)

== Privacy ==

Blocdash does not collect or transmit personal data by default.

If Google Login is enabled:

* Authentication occurs directly between the user and Google
* Only required account data is retrieved
* No data is stored or transmitted externally beyond authentication

== Changelog ==

= 1.0.1 =

* Security: sanitize password reset inputs
* Security: escape announcement author output
* Security: fix JS-context encoding for Google One Tap
* I18n: align text domain across all plugin files
* Docs: add external services disclosure

= 1.0.0 =

* Initial public release

== Upgrade Notice ==

= 1.0.1 =
Security and compliance improvements. Recommended update.

= 1.0.0 =
Initial release.

