=== NexJob Online Booking ===
Contributors: sguilkey6
Tags: booking, scheduling, field service, appointments, service business
Requires at least: 5.0
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 1.1.1
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Add a NexJob online booking button to your WordPress site. Let customers request service, schedule appointments, and submit jobs — no coding required.

== Description ==

**NexJob Online Booking** adds a floating "Book Now" button to your website that connects directly to your NexJob account. When a customer clicks the button, a booking form opens where they can describe their service need, pick a preferred time, and submit a request — all without leaving your site.

**Perfect for:**

* Plumbers
* HVAC technicians
* Electricians
* Landscapers
* Cleaning services
* Any field service business

**Features:**

* One-click install — no code or theme editing required
* Customize button text, color, and position
* Live preview in the admin panel
* Bookings flow directly into your NexJob dashboard
* Mobile-friendly floating button
* Lightweight — no impact on site speed

**How it works:**

1. Install and activate the plugin
2. Enter your NexJob company slug (found in Settings > Booking Widget in NexJob)
3. Choose your button color and position
4. Save — the booking button appears on every page of your site

== Installation ==

1. Upload the `nexjob-booking` folder to `/wp-content/plugins/`
2. Activate the plugin through the **Plugins** menu in WordPress
3. Go to **Settings > NexJob Booking**
4. Enter your NexJob company slug
5. Customize the button appearance
6. Click **Save Settings**

You can find your company slug in your NexJob dashboard under **Settings > Booking Widget**.

Don't have a NexJob account? [Sign up free at nex-job.com](https://www.nex-job.com/signup).

== Frequently Asked Questions ==

= Where do I find my company slug? =

Log in to NexJob, go to **Settings > Booking Widget**. Your slug is the last part of your booking URL (e.g., `nex-job.com/book/your-slug`).

= Can I change the button text? =

Yes. Go to **Settings > NexJob Booking** and change the "Button Text" field to anything you like.

= Does this slow down my website? =

No. The widget script is lightweight and loads asynchronously. It won't affect your page load speed.

= Can I disable the widget temporarily? =

Yes. Uncheck "Enable booking widget on this site" in the plugin settings. The plugin stays installed but the button won't appear.

= Does this work with page builders like Elementor or Divi? =

Yes. The plugin injects the widget via WordPress's footer hook, so it works with any theme and any page builder.

== Screenshots ==

1. Plugin settings page with live preview
2. Floating booking button on a sample website
3. Customer booking form

== Changelog ==

= 1.1.1 =
* Readme: the External services section now also describes the estimator frame that loads from www.nex-job.com on pages with the shortcode, what that request includes, and that the estimator page uses Google Analytics. No code change.

= 1.1.0 =
* Added the [nexjob_estimator] shortcode, which embeds the NexJob Instant Roof Estimator on any page or post (NexJob Roofing plans, once the estimator is switched on in NexJob). Optional slug="" attribute; defaults to the workspace slug in Settings.

= 1.0.3 =
* Refactored widget script loading to use wp_enqueue_script() and the script_loader_tag filter instead of injecting a raw <script> tag from a wp_footer printf(), per the WordPress.org plugin review guideline that all scripts must be enqueued via the WP Scripts API.
* Moved the admin settings-page color-picker initializer out of an inline <script> block and into admin/assets/admin.js, enqueued through the existing admin_enqueue_scripts hook.

= 1.0.2 =
* Documented external service usage in readme (api.nex-job.com/widget.js)

= 1.0.0 =
* Initial release
* Floating booking button with customizable text, color, and position
* Admin settings page with live preview
* WordPress color picker integration

== Upgrade Notice ==

= 1.1.1 =
Documentation only: fuller description of what the estimator loads and sends. No change to how the plugin works.

= 1.1.0 =
Adds the [nexjob_estimator] shortcode for the NexJob Instant Roof Estimator. Nothing changes on your site unless you place the shortcode.

= 1.0.3 =
Script loading refactored to use wp_enqueue_script(), per WordPress.org plugin review guidelines. No user-visible change.

= 1.0.2 =
Documented external service usage for WP.org compliance.

= 1.0.0 =
Initial release.

== External services ==

This plugin connects to NexJob (api.nex-job.com), the SaaS platform that powers the booking button and the Instant Roof Estimator. It can load two JavaScript files from NexJob:

* https://api.nex-job.com/widget.js — on every frontend page of your site (admin pages are excluded) when the booking widget is enabled and a company slug is configured in the plugin settings.
* https://api.nex-job.com/estimator.js — only on pages or posts where you place the [nexjob_estimator] shortcode.

What is sent: the visitor's NexJob workspace slug (configured by you, the site owner) and the visitor's interactions with the booking button — clicks, form input, and the submitted booking request (name, email, phone, service requested, preferred time). The widget script is fetched on every page where the button is displayed; booking-request data is sent only when a visitor submits the form.

What the estimator sends: your NexJob workspace slug, and the address and roof details a visitor enters to get a price range. If the visitor asks to be contacted, their name, email and phone are sent too, and NexJob creates a lead for your business. Estimator data is sent only when a visitor uses the estimator on a page where you placed the shortcode.

When a page with the shortcode loads, the estimator opens in a frame from www.nex-job.com. That request includes your workspace slug, the page's path, the referring page and any UTM tags on the link, and, like any web request, the visitor's IP address. The estimator page uses Google Analytics to count visits, as described in NexJob's privacy policy.

This service is provided by NexJob LLC.
- Terms of Service: https://www.nex-job.com/terms
- Privacy Policy: https://www.nex-job.com/privacy
