=== Nex Directory ===
Contributors: alexplayer
Tags: directory, listing, events
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Requires at least: 6.0
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 1.4.7

Build a searchable directory or event site with frontend submissions, moderation, maps, calendars, imports, and member dashboards.

== Description ==

Nex Directory helps you launch a searchable directory on WordPress, with the important day-to-day workflow already handled: submissions, moderation, maps, calendars, imports, notifications, and member dashboards.

Use it for event directories, local business directories, job boards, simple marketplaces, member portals, and community hubs. Start from a guided setup, then rename labels, choose pages, control who can submit, and decide what needs approval.

With the WordPress.org plugin, you can publish unlimited listings and events. There is no built-in three-listing or three-event cap: you can publish as much as your site, hosting, storage, roles, and moderation settings allow.

= What you can build =

- Event directories and community calendars
- Local business and service directories
- Job boards and opportunity boards
- Simple listing marketplaces
- Member, organizer, or vendor portals

= What is included =

- Guided setup for Events, Local Directory, Jobs, and Marketplace sites
- Optional demo content that imports only after an administrator confirms it
- Frontend submissions with draft auto-save, owner editing, and moderation
- Categories, tags, custom wording, and structured listing details
- List, grid, map, and calendar views
- CSV and JSON imports with preview mapping
- Elementor widgets for the included shortcodes

= Better browsing for visitors =

- Search and filter by distance, category, tag, and listing fields
- Helpful zero-result screens with clear ways to broaden the search
- Saved listings and attending views
- RSVP, capacity, waitlist, and waitlist-status tools for events
- Public site calendar and organizer calendar subscriptions
- Claim-listing workflow for directories that need ownership requests

= Tools for site owners =

- Moderation queue with approve, reject, and reviewer-note actions
- Dashboard views for listings, messages, saved items, and settings
- Notifications for messages, claims, moderation, RSVPs, and waitlist changes
- Organizer directory and organizer profiles
- Contact and attendee-visibility privacy settings
- Role and capability controls
- Email verification, honeypot protection, rate limits, and optional reCAPTCHA

= For agencies and developers =

Nex Directory includes shortcodes, Elementor widgets, REST endpoints for approved integrations, CSV/JSON import tools, and readable local browser assets. It is designed to be useful out of the box while still giving developers a clear structure to customize.

= Optional Chrome extension =

The plugin includes a Chrome Extension setup screen for the official Nex Directory Scanner. It shows connection status, recent activity, policy checks, and a secure connection key you can rotate.

Official Nex Directory Chrome extension:

https://chromewebstore.google.com/detail/nexdirectory-scanner/dnijcccaedhkbbekcbacgbhldmminpip

The extension is optional. Nex Directory opens the Chrome Web Store only when an administrator clicks the download link.

= Optional Pro add-on =

Nex Directory Pro is a separate add-on for sites that need more advanced workflows, such as AI-assisted setup, custom templates, advanced fields and filters, private attending calendars, ticketing, paid boosts, QR check-in, analytics exports, team tools, white-label controls, and search indexing hooks.

Those Pro tools and any services they use are not bundled in this WordPress.org plugin. The directory, event, submission, moderation, map, calendar, and member features listed here continue to work without Pro.

== External services ==

Nex Directory avoids contacting outside providers unless a related optional feature is configured, shown on the page, or deliberately clicked. These notes explain what may be shared when you choose to use those features. Requests can include normal browser data such as IP address, browser details, and referrer, along with the feature-specific data described below.

= NexDirectory.com and Chrome Web Store =

NexDirectory.com receives normal browser request data only when an administrator clicks a product, documentation, or support link. The Chrome Web Store receives the same type of data after an administrator clicks the extension download link.

NexDirectory terms: https://nexdirectory.com/terms-of-service/
NexDirectory privacy: https://nexdirectory.com/privacy-policy/
Google terms: https://policies.google.com/terms
Google privacy: https://policies.google.com/privacy

= Google services =

reCAPTCHA loads only after a site owner configures it; browser data and verification tokens are sent to Google. Google Maps and geocoding are used only when selected and can receive an API key, entered location, coordinates, or map position. Clicking “Google Calendar” sends the listing title, dates, description, and location to Google Calendar. Opening a Google Docs preview sends the document URL to Google Docs Viewer.

Google terms/privacy: https://policies.google.com/terms and https://policies.google.com/privacy
Google Maps terms: https://cloud.google.com/maps-platform/terms

= Map, tile, and geocoding providers =

When a site owner selects OpenStreetMap, OSM France HOT, OpenTopoMap, Mapbox, Google Maps, CARTO or a custom provider, map/tile requests can include map position, tile coordinates, zoom level and entered location text. Server-side geocoding sends location text; Mapbox validation can send the configured token and style path.

OpenStreetMap policies/privacy: https://operations.osmfoundation.org/policies/tiles/ and https://osmfoundation.org/wiki/Privacy_Policy
Nominatim policy: https://operations.osmfoundation.org/policies/nominatim/
OSM France terms: https://www.openstreetmap.fr/mentions-legales/
OpenTopoMap usage: https://opentopomap.org/about
Mapbox terms/privacy: https://www.mapbox.com/legal/tos and https://www.mapbox.com/legal/privacy/
CARTO terms/privacy: https://carto.com/legal/ and https://carto.com/privacy/

= Media previews and sharing =

When an owner adds YouTube or Vimeo media, the provider can receive normal browser request data when its thumbnail/player loads or a visitor opens it. Google Docs previews are covered above. Clicking a Facebook, X, LinkedIn or WhatsApp share control sends the public listing URL and, where supported, its title to that provider.

YouTube terms/privacy: https://www.youtube.com/t/terms and https://policies.google.com/privacy
Vimeo terms/privacy: https://vimeo.com/terms and https://vimeo.com/privacy
Facebook terms/privacy: https://www.facebook.com/terms/ and https://www.facebook.com/privacy/policy/
X terms/privacy: https://x.com/en/tos and https://x.com/en/privacy
LinkedIn terms/privacy: https://www.linkedin.com/legal/user-agreement and https://www.linkedin.com/legal/privacy-policy
WhatsApp terms/privacy: https://www.whatsapp.com/legal/terms-of-service and https://www.whatsapp.com/legal/privacy-policy

= Source code and build tools =

All plugin-owned PHP, JavaScript, and CSS needed to inspect and modify the release is included. No build step is required to install or run it.

Bundled third-party browser libraries are versioned upstream runtime files. Exact versions, licenses, and public source URLs are listed in `docs/THIRD_PARTY_LICENSES.md`. The portable source and commands for regenerating the Tailwind utility bundle are in `docs/SOURCE_AND_BUILD.md`.

== Installation ==

1. Upload the `nexdirectory` folder, or install Nex Directory from WordPress.org.
2. Activate the plugin.
3. Open the Nex Directory setup wizard.
4. Choose a starter template, or build your directory manually.
5. Review the pages Nex Directory creates and adjust your settings in **WP Admin -> Nex Directory**.

== Screenshots ==

1. Event calendar view for browsing upcoming listings.
2. Directory landing page with search, filters, and listing cards.
3. Member workspace for managing submissions, saved items, and settings.
4. Event SEO fields with a search snippet preview.

== Frequently Asked Questions ==

= How many listings or events can I publish? =

Nex Directory does not add a three-item publishing cap. You can publish as many listings or events as your site, hosting, storage, roles, and moderation settings allow.

= Do I need Pro to publish more content? =

No. Pro adds advanced workflows and integrations, but it is not needed to publish more listings or events.

= Is Nex Directory only for events? =

No. The included starters cover Events, Local Directory, Jobs, and Marketplace sites. You can also change the wording and structure to fit another type of directory.

= Will demo content import automatically? =

No. Demo content is optional and only imports after an administrator confirms it in the setup flow.

= Do I need coding skills? =

No. You can use the guided setup, ready-made pages, shortcodes, and settings screens without writing code. Developers can still customize the output when a project needs more control.

= Does Nex Directory work with Elementor? =

Yes. The plugin includes Elementor widgets for the included shortcodes.

= Does it support maps and calendar subscriptions? =

Yes. The WordPress.org plugin includes interactive map discovery plus public site and organizer iCalendar feeds. Private personal attending-calendar subscriptions are part of the separate Pro add-on.

= Is the Chrome extension required? =

No. It is optional. The connection screen provides setup guidance and links directly to the official Chrome Web Store listing.

= Can I uninstall and remove all data? =

Yes. Nex Directory includes an uninstall cleanup setting that can remove plugin data when the plugin is deleted.

== Upgrade Notice ==

= 1.4.7 =
Fixes an admin display conflict, responsive onboarding labels, and encoded punctuation in event titles.

= 1.4.6 =
Addresses WordPress.org review feedback for upload storage, secret sanitization, nonce checks, submitted input, and output escaping.

= 1.4.5 =
Improves admin and frontend wording so setup, settings, unlimited publishing, and Pro guidance are clearer for everyday users.

= 1.4.4 =
Refreshes WordPress.org release packaging, source references, and final review metadata.

= 1.4.3 =
Resolves WordPress.org review feedback around naming, packaging, upload paths, request checks, and submitted input handling.

= 1.4.2 =
Routes frontend login, registration, and password recovery through WordPress core authentication screens.

= 1.4.1 =
Security hardening for WordPress.org review feedback, including stricter request checks and safer demo import behavior.

= 1.4.0 =
Confirms unlimited Free publishing, keeps four starters and core community workflows in Free, and defines a clean boundary for the separate Pro add-on.

== Changelog ==

= 1.4.7 =
- Fixes a WordPress admin CSS class conflict that could hide pending moderation submissions and User Management tables at desktop widths.
- Corrects responsive onboarding labels and encoded punctuation in event titles.
- Verifies the WordPress.org package on WordPress 7.1.
- Keeps the WordPress.org package focused on maintenance fixes only, with no premium functionality or new external services added.

= 1.4.6 =
- Removes PHP file creation from uploads-based private storage and routes demo media imports through WordPress media handling.
- Preserves valid SMTP password characters while still keeping masked saved secrets unchanged.
- Tightens frontend action nonces, moderation handlers, redirect sanitization, gallery input handling, and request-derived schema data.
- Escapes generated plugin markup through WordPress `wp_kses()` allow-lists at output time.
- Updates compatibility metadata for WordPress 7.0.4.

= 1.4.5 =
- Rewrites key admin, onboarding, settings, and frontend notices in clearer, more natural language.
- Improves settings explanations for setup templates, page links, submissions, uploads, notifications, and Chrome extension imports.
- Keeps the unlimited publishing and optional Pro add-on messaging clear without confusing product or review wording.

= 1.4.4 =
- Moves the maintained Tailwind source entry into docs/source so the release ZIP does not contain a build-tooling directory.
- Updates source rebuild instructions to use explicit npx commands without requiring bundled package files.
- Bumps release metadata for a clean WordPress.org resubmission package.

= 1.4.3 =
- Removes "Free" from the public plugin name and bundled placeholder branding.
- Removes prohibited local build tooling from the plugin package.
- Stores plugin-created private files beneath uploads/nexdirectory using WordPress upload-directory APIs.
- Adds earlier nonce checks and tighter sanitization for frontend submission, claim, report, contact, upload, and calendar flows.

= 1.4.2 =
- Routes frontend login, registration, and password recovery through WordPress core authentication endpoints.
- Removes the plugin-owned account creation/login handlers to preserve compatibility with security and membership plugins.

= 1.4.1 =
- Uses WordPress-recognized nonce checks before reading submitted values in state-changing handlers.
- Stops the demo importer from creating demo WordPress users or assigning roles.
- Escapes generated filter-control markup at output.
- Uses WordPress upload-directory APIs for plugin private-storage paths.

= 1.4.0 =
- Confirms that Nex Directory has no three-listing, three-post, or three-event cap.
- Keeps Events, Local Directory, Jobs, and Marketplace setup templates available.
- Keeps core RSVP, waitlist, unified notifications, basic Needs Attention, and organizer privacy workflows in Free.
- Keeps public site and organizer iCalendar subscriptions in Free.
- Makes the official Chrome extension download prominent in the Free Connection Centre and release documentation.
- Adds an in-plugin Free versus Pro comparison and separates licensed advanced implementations into the existing Nex Directory Pro add-on.
- Hardens private-file cleanup and includes local license copies for bundled browser libraries.
- Aligns WordPress.org packaging, source, and third-party notices with the actual Free bundle.
