Documentation

Here you will find all of the possible customization options that can be applied to the Inquiry Form & Exam Scheduler. We recommend you take a look at the following resources before you dive into the documentation.

Getting Started

Getting Started

Our getting started section will help get the form set up and working to the most basic state on your website. Here you'll find all the information you need to just get it working.

Sample Layouts

Sample Layouts

Check out our sample layouts page for ideas on how the form can be changed to behave differently for a number of situations, needs, and drive certain behaviors.

Once you've read through the Getting Started and Sample Layouts pages, we just want to let you know what you'll find in the documentation here. Click on the link to go to that section.

Debug Mode

Debug mode should be used to help you diagnose issues and problems with the form not loading. Don't forget to turn it off when the form is live and running.

Troubleshooting

Troubleshooting

If you're having problems getting the form to work as expected, the troubleshooting page is here to help you diagnose and fix your issues.

Exam Scheduler

Learn more about how the Exam Scheduler works and some special case situations that may apply in your situation.

Wave Settings

The Wave settings will make changes that affect the way the form renders in every location.

Per-Page Settings

The per-page settings will affect only the current page that you are working on. Any changes here won't affect how the form behaves or is displayed on any other page.

JavaScript Methods

The Inquiry Form & Exam Scheduler also has a number of attached JavaScript methods to help you take more control over the form.

Debug Mode

Use the debug mode to diagnose issues and problems with the inquiry form from rendering correctly. The debug mode will help you learn where in the library the software is breaking by logging to the console a series of messages and a summary of relevant data at that time. When diagnosing issues in the browser, we recommend using Google Chrome. To learn more about using the console, click here for getting started and here for using the console to read JavaScript logs.

Attribute Description Type
data-debug-mode Set debug mode to true when you are having trouble getting the inquiry form to work as expected boolean

Wave Settings

The Wave settings will affect the behavior of the form on any and all pages that it is rendered on. These are important features to enable, so we recommend you take the time to set them properly so you know what is happening.

Locations

Setting the locations properly is an important feature of the inquiry form. Set the names of the locations so that a user would be able to differentiate between multiple potentially similar names. You may consider adding an address to the name if the user may have trouble finding the difference between two office names.

Email Notifications

The WaveOrtho application also offers you the ability to send an email to multiple people each time a patient submits a query or schedules an exam to your office.

Adding Appointments to the Exam Scheduler (Setting Templates for the Exam Scheduler)

Setting the templates for the Exam Scheduler is vitally important, and doing it wrong can mean patients are signing up for appointments that aren't meant for examinations.

The appointments that you've just updated may take some time to appear on the Exam Scheduler, so be patient, but it shouldn't take more than 30 minutes. If they don't appear within 30 minutes, re-try these steps and contact us if doing it a second time doesn't fix it.

Adjusting the Exam Scheduler Behavior

There are a few more behavioral settings that can affect the way your Exam Scheduler can be used.

Showing Unavailable Appointment Times on Closed Days

This option will give the appearance of the office looking busier, or making it harder to decipher what days an office might not be working at all.

Showing Appointment Times that have Already Been Booked and are Unavailable

This option also helps fill the scheduler and makes the office look busier

Skipping Weeks with no Available Appointments

This option will skip weeks with no available appointments when the user clicks the arrows to view the next/previous weeks.

Showing or Hiding Today's Appointments

There is another option here that, if the client wants their today appointments to show, they can hide all appointments that are within "X" hours, which would give them the flexibility to decide how long it would take to verify an appointment.

Per-Page Settings

The per-page settings will only affect the inquiry form for the page that the settings are put in place. There are a number of things that these settings can do, including:

If you find any of these customization options interesting, and want to learn more about them, read through the following for more information.

If you are using the HTML, CSS, and Javascript files to integrate the form, these settings are implemented by setting the attribute to the desired value on the same HTML element where you have "data-doctor-id".

If you are using the iframe to integrate the form, these settings are implemented by setting the attribute to the desired value as a parameter in the iframe url in the same way that the "data-doctor-id" is set. You will need to url encode any attribute values that contain spaces or other special characters.

Settings


Classes

Here you can customize the classes of each individual group of form components that are generated.
If you are using a standard CSS library, click here to view the list of pre-set default css libraries to save you some time.


Exam Scheduler Classes


Pre-set Default CSS Libraries

Check the following list to see if our library includes default class settings to work quickly with your CSS library


Text, Labels, and Placeholders

Here you can change the text generated in the form


Exam Scheduler Text


Required Fields

Change the required fields and remove the requirements from default fields


Javascript Methods

These are all of the javascript methods that become available when the library is loaded

Note: The use of these methods requires the form to be manually initialized manually initialized


onFormRender

Each time the user makes a change to an input, the form is re-rendered. This method allows you call a second function after the form is finished rendering.

WaveInquiryForm.onFormRender = () => {
    //form was rendered
};

onFormRenderError

When the form fails to render properly, this function will be called with an error message.

WaveInquiryForm.onFormRenderError = (error) => {
    //form error occurred
};

onFormReset

When the user clicks the reset button and the form is reset, the function will be called

WaveInquiryForm.onFormReset = () => {
    //form was reset
};

onFormSubmission

When the user clicks the submit button and the form is submitted, the function will be called

WaveInquiryForm.onFormSubmission = (submissionResponse) => {
    //form was submitted
    if (submissionResponse.error) {
        //error occurred
    } else {
        //form was successfully submitted
    }
};

Redirecting on Form Submission using JavaScript

If you want to direct the user to a new page when the form is submitted, use the onFormSubmission method.

WaveInquiryForm.onFormSubmission = (submissionResponse) => {
    //form was submitted
    if (submissionResponse.error) {
        //error occurred
    } else {
        var newPage = '/submission-success.html'; //new page to be redirected to
        document.location = newPage;
    }
};

These methods must be set before the createForm method is called, otherwise they will not be called.


createForm

To manually generate the inquiry form you'll need to call the createForm method from the WaveInquiryForm variable with the parameter as the ID of the tag you want to generate the form inside of.

WaveInquiryForm.createForm('myContactForm');

Note: to manually create the form and use the default "waveInquiryForm" id, you must ensure that the data-wait attribute is set to "true"



Need Help?
Check out our troubleshooting and FAQ page Check out our troubleshooting and FAQ page