Booking Form Sample with Auto Responder
1) Create a chunk for the form and add form code.
[[!FormIt? &hooks=`spam,email,FormItAutoResponder,redirect` &emailTpl=`bookingFormTpl` [[- 'This is the name of your email template chunk' ]] &emailTo=`[email protected]` &emailSubject=`[[++site_name]] Booking Form` &redirectTo=`6` &validate=`firstname:required, lastname:required, email:email:required, phone:required, address:required, suburb:required, propertytype:required, services:required` &fiarTpl=`bookingFormResponderTpl` [[- 'This is the name of your email response chunk' ]] &fiarSubject=`Subject` &fiarToField=`email` &fiarFrom=`[email protected]` &fiarFromName=`YourName` &fiarReplyTo=`[email protected]` ]]
<form action="[[~[[*id]]]]" method="post" class="txtbl">
<div class="row">
<div class="col-md-12">
<h2>Your Information</h2>
<div class="form-group col-md-6">
<label class="sr-only" for="firstname">First Name *</label>
<input type="text" class="form-control" id="firstname" name="firstname" placeholder="First Name *" value="[[+fi.firstname]]">[[!+fi.error.firstname]]
</div>
<div class="form-group col-md-6">
<label class="sr-only" for="lastname">Last Name *</label>
<input type="text" class="form-control" id="lastname" name="lastname" placeholder="Last Name *" value="[[+fi.lastname]]">[[!+fi.error.lastname]]
</div>
<div class="form-group col-md-6">
<label class="sr-only" for="email">Email address *</label>
<input type="email" class="form-control" id="email" name="email" placeholder="Email address *" value="[[+fi.email]]">[[!+fi.error.email]]
</div>
<div class="form-group col-md-6">
<label class="sr-only" for="phone">Phone Number *</label>
<input type="tel" class="form-control" id="phone" name="phone" placeholder="Phone Number *" value="[[+fi.phone]]">[[!+fi.error.phone]]
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<h2>Property Details</h2>
<div class="form-group col-md-12">
<label class="sr-only" for="firstname">Inspection Address *</label>
<input type="text" class="form-control" id="address" name="address" placeholder="Address *" value="[[+fi.address]]">[[!+fi.error.address]]
</div>
</div>
</div>
<div class="row">
<div class="form-group col-md-6">
<label class="sr-only" for="lastname">Suburb *</label>
<input type="text" class="form-control" id="suburb" name="suburb" placeholder="Suburb *" value="[[+fi.suburb]]">[[!+fi.error.suburb]]
</div>
<div class="form-group col-md-4">
<label class="sr-only" for="postcode">Post Code</label>
<input type="number" class="form-control" id="postcode" name="postcode" placeholder="Post Code" value="[[+fi.postcode]]">[[+fi.error.postcode]]
</div>
</div>
<div class="row">
<div class="form-group col-md-4">
<label class="sr-only" for="state">State</label>
<span>Select State</span>
<select name="state" value="[[!+fi.state]]">
<option value="QLD" [[!+fi.state:FormItIsSelected=`qld`]]>QLD</option>
<option value="NSW" [[!+fi.state:FormItIsSelected=`nsw`]]>NSW</option>
<option value="ACT" [[!+fi.state:FormItIsSelected=`act`]]>ACT</option>
<option value="VIC" [[!+fi.state:FormItIsSelected=`vic`]]>VIC</option>
<option value="SA" [[!+fi.state:FormItIsSelected=`sa`]]>SA</option>
<option value="WA" [[!+fi.state:FormItIsSelected=`wa`]]>WA</option>
<option value="NT" [[!+fi.state:FormItIsSelected=`nt`]]>NT</option>
<option value="TAS" [[!+fi.state:FormItIsSelected=`tas`]]>TAS</option>
</select>
</div>
</div>
<div class="row">
<div class="form-group col-md-6">
<label class="sr-only" for="propertytype">Type of Property * </label>
<span>* Type Of Property:</span> <span>[[!+fi.error.propertytype]]</span></br>
<input type="hidden" name="propertytype[]" value="" />
<label><input type="radio" id="propertytype1" name="propertytype[]" placeholder="House" value="House" [[!+fi.propertytype:FormItIsChecked=`House`]]> House</label>
<br>
<label><input type="radio" id="propertytype2" name="propertytype[]" placeholder="Unit/Apartment" value="Unit/Apartment" [[!+fi.propertytype:FormItIsChecked=`Unit/Apartment`]]> Unit/Apartment</label>
<br>
<label><input type="radio" id="propertytype3" name="propertytype[]" placeholder="Townhouse" value="Townhouse" [[!+fi.propertytype:FormItIsChecked=`Townhouse`]]> Townhouse</label>
<br>
<label><input type="radio" id="propertytype4" name="propertytype[]" placeholder="Property On Acreage" value="Property On Acreage" [[!+fi.propertytype:FormItIsChecked=`Property On Acreage`]]> Property On Acreage</label>
<br>
<label><input type="radio" id="propertytype5" name="propertytype[]" placeholder="Duplex" value="Duplex" [[!+fi.propertytype:FormItIsChecked=`Duplex`]]> Duplex</label>
<br>
<label><input type="radio" id="propertytype6" name="propertytype[]" placeholder="Commercial" value="Commercial" [[!+fi.propertytype:FormItIsChecked=`Commercial`]]> Commercial</label>
<br>
</div>
<div class="form-group col-md-6">
<label for="beds">Number of Bedrooms</label>
<select name="beds" value="[[!+fi.beds]]">
<option value="0" [[!+.fi.beds:FormItIsSelected='0']]>0</option>
<option value="1" [[!+.fi.beds:FormItIsSelected='1']]>1</option>
<option value="2" [[!+.fi.beds:FormItIsSelected='2']]>2</option>
<option value="3" [[!+.fi.beds:FormItIsSelected='3']]>3</option>
<option value="4" [[!+.fi.beds:FormItIsSelected='4']]>4</option>
<option value="5+" [[!+.fi.beds:FormItIsSelected='5+']]>5+</option>
</select>
<label for="baths">Number of Bathrooms</label>
<select name="baths" value="[[!+fi.baths]]">
<option value="0" [[!+.fi.baths:FormItIsSelected='0']]>0</option>
<option value="1" [[!+.fi.baths:FormItIsSelected='1']]>1</option>
<option value="2" [[!+.fi.baths:FormItIsSelected='2']]>2</option>
<option value="3" [[!+.fi.baths:FormItIsSelected='3']]>3</option>
<option value="4" [[!+.fi.baths:FormItIsSelected='4']]>4</option>
<option value="5+" [[!+.fi.baths:FormItIsSelected='5+']]>5+</option>
</select>
</div>
</div>
<div class="row">
<h2>Services Required <span>[[!+fi.error.services]]</span> </h2>
<div class="form-group col-md-6">
<label class="sr-only" for="services">Services Required *</label>
<input type="hidden" name="services[]" value="" />
<label><input type="checkbox" id="services1" name="services[]" placeholder="Building and Pest Inspections" value="Building and Pest Inspections <br>" [[!+fi.services:FormItIsChecked=`Building and Pest Inspections`]]> Building and Pest Inspections</label>
<br>
<label><input type="checkbox" id="services2" name="services[]" placeholder="Termite Barriers" value="Termite Barriers <br>" [[!+fi.services:FormItIsChecked=`Termite Barriers`]]> Termite Barriers</label>
<br>
<label> <input type="checkbox" id="services3" name="services[]" placeholder="New House/Unit Defect Report" value="New House/Unit Defect Report <br>" [[!+fi.services:FormItIsChecked=`New House/Unit Defect Report`]]> New House/Unit Defect Report</label>
<br>
<label> <input type="checkbox" id="services4" name="services[]" placeholder="Structural Failure" value="Structural Failure <br>" [[!+fi.services:FormItIsChecked=`Structural Failure`]]> Structural Failure</label>
<br>
<label><input type="checkbox" id="services5" name="services[]" placeholder="Home Hand Over Inspections" value="Home Hand Over Inspections <br>" [[!+fi.services:FormItIsChecked=`Home Hand Over Inspections`]]> Home Hand Over Inspections</label>
<br>
<label><input type="checkbox" id="services6" name="services[]" placeholder="Concrete Inspections" value="Concrete Inspections <br>" [[!+fi.services:FormItIsChecked=`Concrete Inspections`]]> Concrete Inspections</label>
<br>
<label><input type="checkbox" id="services7" name="services[]" placeholder="Pest Management" value="Pest Management <br>" [[!+fi.services:FormItIsChecked=`Pest Management`]]> Pest Management</label>
</div>
<div class="form-group col-md-6">
<label><input type="checkbox" id="services8" name="services[]" placeholder="General Pest Spray" value="General Pest Spray <br>" [[!+fi.services:FormItIsChecked=`General Pest Spray`]]> General Pest Spray</label>
<br>
<label><input type="checkbox" id="services9" name="services[]" placeholder="Asbestos Identifications" value="Asbestos Identifications <br>" [[!+fi.services:FormItIsChecked=`Asbestos Identifications`]]> Asbestos Identifications</label>
<br>
<label><input type="checkbox" id="services10" name="services[]" placeholder="Rental Maintenance Report" value="Rental Maintenance Report <br>" [[!+fi.services:FormItIsChecked=`Rental Maintenance Report`]]> Rental Maintenance Report</label>
<br>
<label><input type="checkbox" id="services11" name="services[]" placeholder="Storm Damage" value="Storm Damage <br>" [[!+fi.services:FormItIsChecked=`Storm Damage`]]> Storm Damage</label>
<br>
<label><input type="checkbox" id="services12" name="services[]" placeholder="Carpentry Inspections" value="Carpentry Inspections <br>" [[!+fi.services:FormItIsChecked=`Concrete Inspections`]]> Carpentry Inspections</label>
<br>
<label><input type="checkbox" id="services13" name="services[]" placeholder="Roofing and Guttering Inspections" value="Roofing and Guttering Inspections <br>" [[!+fi.services:FormItIsChecked=`Roofing and Guttering Inspections`]]> Roofing and Guttering Inspections</label>
<br>
</div>
</div>
<div class="row">
<div class="form-group col-md-6">
<label class="sr-only" for="comment">Comments/Details</label>
<textarea class="form-control" id="comment" name="comment" placeholder="Comments/Details">[[+fi.comment]]</textarea>
</div>
</div>
<div class="row">
<div class="form-group col-xs-12 text-xs-right">
<button type="submit" id="submit" class="btn btn-primary hvr-grow">Submit</button>
</div>
</div>
</form>
2) Create a chunk for the form email response:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Booking Form</title>
<style type="text/css">
body{font-family:Arial, Helvetica, sans-serif;font-size:12px;}
h1{font-size:18px;}
h2{font-size:16px;color:#dd3743;}
.form-row{background-color:#eee;}
</style>
</head>
<body>
<h1>[[++site_name]] Booking Form</h1>
<table border="0" cellspacing="0" cellpadding="5" width="620">
<tr>
<td><h2>Customer Details</h2></td>
</tr>
<tr>
<td width="30%" class="form-row"><strong>First Name</strong></td>
<td width="70%" class="form-row">[[+firstname]]</td>
</tr>
<tr>
<td><strong>Last Name</strong></td>
<td>[[+lastname]]</td>
</tr>
<tr>
<td class="form-row"><strong>Email</strong></td>
<td class="form-row">[[+email]]</td>
</tr>
<tr>
<td><strong>Phone Number</strong></td>
<td>[[+phone]]</td>
</tr>
<tr>
<td><h2>Property Details</h2></td>
</tr>
<tr>
<td class="form-row"><strong>Address</strong></td>
<td class="form-row">[[+address]]</td>
</tr>
<tr>
<td><strong>Suburb</strong></td>
<td>[[+suburb]]</td>
</tr>
<tr>
<td class="form-row"><strong>Post Code</strong></td>
<td class="form-row">[[+postcode]]</td>
</tr>
<tr>
<td><strong>State</strong></td>
<td>[[+state]]</td>
</tr>
<tr>
<td class="form-row"><strong>Property Type</strong></td>
<td class="form-row">[[+propertytype]]</td>
</tr>
<tr>
<td><strong>Number of Beds</strong></td>
<td>[[+beds]]</td>
</tr>
<tr>
<td class="form-row"><strong>Number of Bathrooms</strong></td>
<td class="form-row">[[+baths]]</td>
</tr>
<tr>
<td><h2>Services Required</h2></td>
</tr>
<tr>
<td class="form-row"><strong>Services</strong></td>
<td class="form-row">[[+services]]<br></td>
</tr>
<tr>
<td><strong>Additional Comments/Details</strong></td>
<td>[[+comment]]</td>
</tr>
</table>
</body>
</html>
3) Create a chunk for the form email responder that get sents to the form filler:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
<style type="text/css">
.form-row {
background-color: #eeeeee;
}
body {
font-family: Arial, Helvetica, sans-serif;
font-size: 12px;
}
h1 {
font-size: 18px;
}
h2 {
font-size: 16px;
color:#666;
}
</style>
</head>
<body>
<img src="a logo maybe" width="400" alt="logo">
<h1>[[++site_name]] Booking Form</h1>
<p>Thank you for contacting .</p>
<p style="color:red; font-size:15px;">*PLEASE NOTE YOUR BOOKING IS NOT FINALISED*</p>
<p>A member of our staff will get back to you as soon as possible to confirm your quote and the date and time of your inspection.</p>
<p>If you have any questions or if your matter is urgent, please phone .... or email <a href="mailto:">[email protected]</a> to get in touch with us straight away.</p>
</body>
</html>
4) Create your contact page (resource) and add the modx call for the contact form chunk in the content area
[[$contact_form]]
Get In Touch
Have a question? or perhaps spotted a problem?
Maybe you have something you would like to add. Drop us a line anytime!


