Kinect for Windows Powers Gesture-based Digital Signage

Kinect for Windows Powers Gesture-based Digital Signage

We’ve all seen passive digital signage where the flow of information is in one direction only. These are the digital displays in restaurants, digital bulletin boards on school campuses or digital information displays in corporate offices. While compelling and entertaining, they do not engage audiences directly.

Then we have touch screens. Consumers already have high expectations and have placed increased importance on touch technologies. From tablets to smartphones to getting digital content via your car, the relationship between technology and people has had a major impact on how information is shared. This trend gave birth to interactive digital signage via touch. Consumers are more likely to respond to digital signage if they can interact with it in the same way that they interact with the devices they use everyday.

What About Gesture-based Digital Signage?

How about using your own body as a controller? The Open Foodservice Systems Consortium (OFSC) collaborated with Intel and Tokyo Electron Device Limited to test interactive digital signage using Kinect for Windows. OFSC is a consortium of food service businesses and IT vendors that seek to standardize information systems and infrastructure that underpin business operations for food service companies. The Sales and Promotion Working Group, one of OFSC’s 8 working groups, hypothesized that they could better attract customers by using interactive digital signage that reacts to their movements.

How Does Gesture-based Digital Signage Work?

They fitted a digital signage display with Kinect for Windows. When it detected someone approaching, the screen would display a promotional video. When the person got closer, the system would give them two beverage choices. The customer would then pick using gestures e.g raise right or left arm to indicate their choice. An audio guidance function was also added to the setup. It included audio effects, such as drinks being poured into a glass.

The Results

OFSC found that the number of customers stopping to interact with the display increased day by day. This customer interest in gesture-based interactive digital signage shows that they are willing and want to engage with brands they frequent. It is often such unique experiences that customers recall even more than the service they received or the product they purchased. These little details are what foster customer loyalty. They add value to the customer’s visit. It makes them feel good about not only making the purchase, but making the purchase from you.

The performance and maintenance of the OFSC’s digital signage implementation were key in the success of the test. Intel provided the technology that allowed OFSC to perform operations such as diagnosis and repair remotely. You can access the digital signage setup even when it is turned off. This made administration more efficient and faster. Intel’s technology also provided device security, by locking functions to unauthorized access.

Closing Thoughts

So what’s next? With the digital signage market projected to grow at 65% in 2015 alone, it’s more than likely that gesture-based digital signage will be arriving soon at a business near you, and we can only look forward to far more interesting customer experiences.

Ready to get started?

Are you exploring your digital signage project needs (hardware, software and content)? Looking for just the software or a full-scope proposal? Would you like you a personalized software demo?

Starting at

$ 299

One time cost

  • Free software
  • Unlimited users
  • Unlimited cloud storage
Get a Free Trial

Have a project in mind?

Get a Quote

Lets discuss your project and we’ll put together a customized, line-itemized estimate and proposal.

Set Up a Call

Let's Connect

Contact a Mvix Solutions Consultant below or call us at +1 866.310.4923 to discuss your digital signage needs.
  • This field is for validation purposes and should be left unchanged.

Ask an Mvix expert how we can help:

  • Request a demo and see how Xhibitsignage integrates with the content apps you rely on for more effective communication
  • Get a free quote for our software (when using your own hardware), software and digital signage players, or full-service solutions that include software, hardware, content, and implementation
  • Learn how to use digital signage to grow your business by communicating relevant and useful information

If you’re already an Mvix customer and would like technical support, you can open a support ticket here.

[gravityform id="9" title="false" description="false"]
<div class='gf_browser_unknown gform_wrapper gform_legacy_markup_wrapper' id='gform_wrapper_9' ><form method='post' enctype='multipart/form-data' id='gform_9' action='/blog/kinect-for-windows-gesture-based-digital-signage/' novalidate autocomplete="nope"> <div class='gform_body gform-body'><ul id='gform_fields_9' class='gform_fields top_label form_sublabel_below description_below'><li id="field_9_1" class="gfield w-50 gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible" ><label class='gfield_label' for='input_9_1' >First Name<span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></label><div class='ginput_container ginput_container_text'><input autocomplete="nope" name='input_1' id='input_9_1' type='text' value='' class='medium' aria-required="true" aria-invalid="false" /> </div></li><li id="field_9_8" class="gfield w-50 gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible" ><label class='gfield_label' for='input_9_8' >Last Name<span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></label><div class='ginput_container ginput_container_text'><input autocomplete="nope" name='input_8' id='input_9_8' type='text' value='' class='medium' aria-required="true" aria-invalid="false" /> </div></li><li id="field_9_2" class="gfield w-50 gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible" ><label class='gfield_label' for='input_9_2' >Email<span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></label><div class='ginput_container ginput_container_email'> <input autocomplete="nope" name='input_2' id='input_9_2' type='email' value='' class='medium' aria-required="true" aria-invalid="false" /> </div></li><li id="field_9_3" class="gfield w-50 field_sublabel_below field_description_below gfield_visibility_visible" ><label class='gfield_label' for='input_9_3' >Phone Number</label><div class='ginput_container ginput_container_phone'><input autocomplete="nope" name='input_3' id='input_9_3' type='tel' value='' class='medium' aria-invalid="false" /></div></li><li id="field_9_5" class="gfield field_sublabel_below field_description_below gfield_visibility_visible" ><label class='gfield_label' for='input_9_5' >Company</label><div class='ginput_container ginput_container_text'><input autocomplete="nope" name='input_5' id='input_9_5' type='text' value='' class='medium' aria-invalid="false" /> </div></li><li id="field_9_6" class="gfield field_sublabel_below field_description_below gfield_visibility_visible" ><label class='gfield_label' for='input_9_6' >How can we help you?</label><div class='ginput_container ginput_container_textarea'><textarea autocomplete="nope" name='input_6' id='input_9_6' class='textarea medium' placeholder='Please give us a brief description of your project so we can assist you better' aria-invalid="false" rows='10' cols='50'></textarea></div></li><li id="field_9_9" class="gfield gform_hidden field_sublabel_below field_description_below gfield_visibility_visible" ><div class='ginput_container ginput_container_text'><input autocomplete="nope" name='input_9' id='input_9_9' type='hidden' class='gform_hidden' aria-invalid="false" value='' /></div></li><li id="field_9_12" class="gfield gfield--width-full gform_hidden field_sublabel_below field_description_below gfield_visibility_visible" ><div class='ginput_container ginput_container_text'><input autocomplete="nope" name='input_12' id='input_9_12' type='hidden' class='gform_hidden' aria-invalid="false" value='' /></div></li><li id="field_9_13" class="gfield gfield--width-full gform_hidden field_sublabel_below field_description_below gfield_visibility_visible" ><div class='ginput_container ginput_container_text'><input autocomplete="nope" name='input_13' id='input_9_13' type='hidden' class='gform_hidden' aria-invalid="false" value='' /></div></li><li id="field_9_14" class="gfield gfield--width-full gform_hidden field_sublabel_below field_description_below gfield_visibility_visible" ><div class='ginput_container ginput_container_text'><input autocomplete="nope" name='input_14' id='input_9_14' type='hidden' class='gform_hidden' aria-invalid="false" value='' /></div></li><li id="field_9_15" class="gfield gfield--width-full gform_hidden field_sublabel_below field_description_below gfield_visibility_visible" ><div class='ginput_container ginput_container_text'><input autocomplete="nope" name='input_15' id='input_9_15' type='hidden' class='gform_hidden' aria-invalid="false" value='' /></div></li><li id="field_9_16" class="gfield gfield--width-full gform_hidden field_sublabel_below field_description_below gfield_visibility_visible" ><div class='ginput_container ginput_container_text'><input autocomplete="nope" name='input_16' id='input_9_16' type='hidden' class='gform_hidden' aria-invalid="false" value='' /></div></li><li id="field_9_17" class="gfield gfield--width-full gform_hidden field_sublabel_below field_description_below gfield_visibility_visible" ><div class='ginput_container ginput_container_text'><input autocomplete="nope" name='input_17' id='input_9_17' type='hidden' class='gform_hidden' aria-invalid="false" value='' /></div></li><li id="field_9_11" class="gfield helped-input field_sublabel_below field_description_below gfield_visibility_visible" ><label class='gfield_label' for='input_9_11' >Home Address</label><div class='ginput_container ginput_container_text'><input autocomplete="nope" name='input_11' id='input_9_11' type='text' value='' class='medium' placeholder='Home Address' aria-invalid="false" /> </div></li><li id="field_9_18" class="gfield gform_validation_container field_sublabel_below field_description_below gfield_visibility_visible" ><label class='gfield_label' for='input_9_18' >Comments</label><div class='ginput_container'><input autocomplete="nope" name='input_18' id='input_9_18' type='text' value='' autocomplete='new-password'/></div><div class='gfield_description' id='gfield_description_9_18'>This field is for validation purposes and should be left unchanged.</div></li></ul></div> <div class='gform_footer top_label'> <input type='submit' id='gform_submit_button_9' class='gform_button button' value='Send Info' onclick='if(window["gf_submitting_9"]){return false;} if( !jQuery("#gform_9")[0].checkValidity || jQuery("#gform_9")[0].checkValidity()){window["gf_submitting_9"]=true;} ' onkeypress='if( event.keyCode == 13 ){ if(window["gf_submitting_9"]){return false;} if( !jQuery("#gform_9")[0].checkValidity || jQuery("#gform_9")[0].checkValidity()){window["gf_submitting_9"]=true;} jQuery("#gform_9").trigger("submit",[true]); }' /> <input type='hidden' class='gform_hidden' name='is_submit_9' value='1' /> <input type='hidden' class='gform_hidden' name='gform_submit' value='9' /> <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' /> <input type='hidden' class='gform_hidden' name='state_9' value='WyJbXSIsIjQwZDExOTMzOTMyMTFlN2IzYzhjNjFjODcwMzRmNThjIl0=' /> <input type='hidden' class='gform_hidden' name='gform_target_page_number_9' id='gform_target_page_number_9' value='0' /> <input type='hidden' class='gform_hidden' name='gform_source_page_number_9' id='gform_source_page_number_9' value='1' /> <input type='hidden' name='gform_field_values' value='' /> </div> </form> </div>
[gravityform id="8" ajax="true" description="false" title="false"]
<div class='gf_browser_unknown gform_wrapper btn-prev-next-hidden_wrapper gform_legacy_markup_wrapper' id='gform_wrapper_8' ><div id='gf_8' class='gform_anchor' tabindex='-1'></div><form method='post' enctype='multipart/form-data' target='gform_ajax_frame_8' id='gform_8' class='btn-prev-next-hidden gform_legacy_markup' action='/blog/kinect-for-windows-gesture-based-digital-signage/#gf_8' novalidate autocomplete="nope"><div id='gf_page_steps_8' class='gf_page_steps'><div id='gf_step_8_1' class='gf_step gf_step_active gf_step_first'><span class='gf_step_number'>1</span><span class='gf_step_label'></span></div><div id='gf_step_8_2' class='gf_step gf_step_next gf_step_pending'><span class='gf_step_number'>2</span><span class='gf_step_label'></span></div><div id='gf_step_8_3' class='gf_step gf_step_pending'><span class='gf_step_number'>3</span><span class='gf_step_label'></span></div><div id='gf_step_8_4' class='gf_step gf_step_last gf_step_pending'><span class='gf_step_number'>4</span><span class='gf_step_label'></span></div></div> <div class='gform_body gform-body'><div id='gform_page_8_1' class='gform_page' > <div class='gform_page_fields'><ul id='gform_fields_8' class='gform_fields top_label form_sublabel_below description_below'><li id="field_8_2" class="gfield field_sublabel_below field_description_below gfield_visibility_visible" ><label class='gfield_label' >How Do You Plan On Using Your Digital Signage Screens?</label><div class='ginput_container ginput_container_radio'><ul class='gfield_radio' id='input_8_2'> <li class='gchoice gchoice_8_2_0'> <input autocomplete="nope" name='input_2' type='radio' value='Use as an Employee Communications' id='choice_8_2_0' /> <label for='choice_8_2_0' id='label_8_2_0'>Use as an Employee Communications</label> </li> <li class='gchoice gchoice_8_2_1'> <input autocomplete="nope" name='input_2' type='radio' value='Use as a Client Communications' id='choice_8_2_1' /> <label for='choice_8_2_1' id='label_8_2_1'>Use as a Client Communications</label> </li> <li class='gchoice gchoice_8_2_2'> <input autocomplete="nope" name='input_2' type='radio' value='Other' id='choice_8_2_2' /> <label for='choice_8_2_2' id='label_8_2_2'>Other</label> </li></ul></div></li></ul> </div> <div class='gform_page_footer top_label'> <input type='button' id='gform_next_button_8_3' class='gform_next_button button' value='Next' onclick='jQuery("#gform_target_page_number_8").val("2"); jQuery("#gform_8").trigger("submit",[true]); ' onkeypress='if( event.keyCode == 13 ){ jQuery("#gform_target_page_number_8").val("2"); jQuery("#gform_8").trigger("submit",[true]); } ' /> </div> </div> <div id='gform_page_8_2' class='gform_page' style='display:none;'> <div class='gform_page_fields'> <ul id='gform_fields_8_2' class='gform_fields top_label form_sublabel_below description_below'><li id="field_8_4" class="gfield field_sublabel_below field_description_below gfield_visibility_visible" ><label class='gfield_label' >Have you used Digital Signage before?</label><div class='ginput_container ginput_container_radio'><ul class='gfield_radio' id='input_8_4'> <li class='gchoice gchoice_8_4_0'> <input autocomplete="nope" name='input_4' type='radio' value='Yes, we currently have digital signage' id='choice_8_4_0' /> <label for='choice_8_4_0' id='label_8_4_0'>Yes, we currently have digital signage</label> </li> <li class='gchoice gchoice_8_4_1'> <input autocomplete="nope" name='input_4' type='radio' value='No, this is my first digital signage project.' id='choice_8_4_1' /> <label for='choice_8_4_1' id='label_8_4_1'>No, this is my first digital signage project.</label> </li></ul></div></li></ul> </div> <div class='gform_page_footer top_label'> <input type='button' id='gform_previous_button_8_5' class='gform_previous_button button' value='Back' onclick='jQuery("#gform_target_page_number_8").val("1"); jQuery("#gform_8").trigger("submit",[true]); ' onkeypress='if( event.keyCode == 13 ){ jQuery("#gform_target_page_number_8").val("1"); jQuery("#gform_8").trigger("submit",[true]); } ' /> <input type='button' id='gform_next_button_8_5' class='gform_next_button button' value='Next' onclick='jQuery("#gform_target_page_number_8").val("3"); jQuery("#gform_8").trigger("submit",[true]); ' onkeypress='if( event.keyCode == 13 ){ jQuery("#gform_target_page_number_8").val("3"); jQuery("#gform_8").trigger("submit",[true]); } ' /> </div> </div> <div id='gform_page_8_3' class='gform_page' style='display:none;'> <div class='gform_page_fields'> <ul id='gform_fields_8_3' class='gform_fields top_label form_sublabel_below description_below'><li id="field_8_6" class="gfield two-col field_sublabel_below field_description_below gfield_visibility_visible" ><label class='gfield_label' >How Many Digital Signage Displays Are You Currently Looking For?</label><div class='ginput_container ginput_container_radio'><ul class='gfield_radio' id='input_8_6'> <li class='gchoice gchoice_8_6_0'> <input autocomplete="nope" name='input_6' type='radio' value='1 to 5' id='choice_8_6_0' /> <label for='choice_8_6_0' id='label_8_6_0'>1 to 5</label> </li> <li class='gchoice gchoice_8_6_1'> <input autocomplete="nope" name='input_6' type='radio' value='6 to 10' id='choice_8_6_1' /> <label for='choice_8_6_1' id='label_8_6_1'>6 to 10</label> </li> <li class='gchoice gchoice_8_6_2'> <input autocomplete="nope" name='input_6' type='radio' value='11 to 20' id='choice_8_6_2' /> <label for='choice_8_6_2' id='label_8_6_2'>11 to 20</label> </li> <li class='gchoice gchoice_8_6_3'> <input autocomplete="nope" name='input_6' type='radio' value='More than 20' id='choice_8_6_3' /> <label for='choice_8_6_3' id='label_8_6_3'>More than 20</label> </li></ul></div></li></ul> </div> <div class='gform_page_footer top_label'> <input type='button' id='gform_previous_button_8_7' class='gform_previous_button button' value='Back' onclick='jQuery("#gform_target_page_number_8").val("2"); jQuery("#gform_8").trigger("submit",[true]); ' onkeypress='if( event.keyCode == 13 ){ jQuery("#gform_target_page_number_8").val("2"); jQuery("#gform_8").trigger("submit",[true]); } ' /> <input type='button' id='gform_next_button_8_7' class='gform_next_button button' value='Next' onclick='jQuery("#gform_target_page_number_8").val("4"); jQuery("#gform_8").trigger("submit",[true]); ' onkeypress='if( event.keyCode == 13 ){ jQuery("#gform_target_page_number_8").val("4"); jQuery("#gform_8").trigger("submit",[true]); } ' /> </div> </div> <div id='gform_page_8_4' class='gform_page' style='display:none;'> <div class='gform_page_fields'> <ul id='gform_fields_8_4' class='gform_fields top_label form_sublabel_below description_below'><li id="field_8_8" class="gfield label text-center gfield_html gfield_no_follows_desc field_sublabel_below field_description_below gfield_visibility_visible" >Please Enter Your Company & Contact Information.</li><li id="field_8_10" class="gfield w-50 field_sublabel_below field_description_below gfield_visibility_visible" ><label class='gfield_label' for='input_8_10' >First Name</label><div class='ginput_container ginput_container_text'><input autocomplete="nope" name='input_10' id='input_8_10' type='text' value='' class='medium' aria-invalid="false" /> </div></li><li id="field_8_15" class="gfield w-50 field_sublabel_below field_description_below gfield_visibility_visible" ><label class='gfield_label' for='input_8_15' >Last Name</label><div class='ginput_container ginput_container_text'><input autocomplete="nope" name='input_15' id='input_8_15' type='text' value='' class='medium' aria-invalid="false" /> </div></li><li id="field_8_12" class="gfield w-50 field_sublabel_below field_description_below gfield_visibility_visible" ><label class='gfield_label' for='input_8_12' >Phone</label><div class='ginput_container ginput_container_phone'><input autocomplete="nope" name='input_12' id='input_8_12' type='tel' value='' class='medium' aria-invalid="false" /></div></li><li id="field_8_13" class="gfield w-50 gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible" ><label class='gfield_label' for='input_8_13' >Email<span class="gfield_required"><span class="gfield_required gfield_required_asterisk">*</span></span></label><div class='ginput_container ginput_container_email'> <input autocomplete="nope" name='input_13' id='input_8_13' type='email' value='' class='medium' aria-required="true" aria-invalid="false" /> </div></li><li id="field_8_14" class="gfield field_sublabel_below field_description_below gfield_visibility_visible" ><label class='gfield_label' for='input_8_14' >Company</label><div class='ginput_container ginput_container_text'><input autocomplete="nope" name='input_14' id='input_8_14' type='text' value='' class='medium' aria-invalid="false" /> </div></li><li id="field_8_16" class="gfield gform_hidden field_sublabel_below field_description_below gfield_visibility_visible" ><div class='ginput_container ginput_container_text'><input autocomplete="nope" name='input_16' id='input_8_16' type='hidden' class='gform_hidden' aria-invalid="false" value='' /></div></li><li id="field_8_19" class="gfield gfield--width-full gform_hidden field_sublabel_below field_description_below gfield_visibility_visible" ><div class='ginput_container ginput_container_text'><input autocomplete="nope" name='input_19' id='input_8_19' type='hidden' class='gform_hidden' aria-invalid="false" value='' /></div></li><li id="field_8_20" class="gfield gfield--width-full gform_hidden field_sublabel_below field_description_below gfield_visibility_visible" ><div class='ginput_container ginput_container_text'><input autocomplete="nope" name='input_20' id='input_8_20' type='hidden' class='gform_hidden' aria-invalid="false" value='' /></div></li><li id="field_8_21" class="gfield gfield--width-full gform_hidden field_sublabel_below field_description_below gfield_visibility_visible" ><div class='ginput_container ginput_container_text'><input autocomplete="nope" name='input_21' id='input_8_21' type='hidden' class='gform_hidden' aria-invalid="false" value='' /></div></li><li id="field_8_22" class="gfield gfield--width-full gform_hidden field_sublabel_below field_description_below gfield_visibility_visible" ><div class='ginput_container ginput_container_text'><input autocomplete="nope" name='input_22' id='input_8_22' type='hidden' class='gform_hidden' aria-invalid="false" value='' /></div></li><li id="field_8_23" class="gfield gfield--width-full gform_hidden field_sublabel_below field_description_below gfield_visibility_visible" ><div class='ginput_container ginput_container_text'><input autocomplete="nope" name='input_23' id='input_8_23' type='hidden' class='gform_hidden' aria-invalid="false" value='' /></div></li><li id="field_8_24" class="gfield gfield--width-full gform_hidden field_sublabel_below field_description_below gfield_visibility_visible" ><div class='ginput_container ginput_container_text'><input autocomplete="nope" name='input_24' id='input_8_24' type='hidden' class='gform_hidden' aria-invalid="false" value='' /></div></li><li id="field_8_18" class="gfield helped-input field_sublabel_below field_description_below gfield_visibility_visible" ><label class='gfield_label' for='input_8_18' >Home Address</label><div class='ginput_container ginput_container_text'><input autocomplete="nope" name='input_18' id='input_8_18' type='text' value='' class='medium' placeholder='Home Address' aria-invalid="false" /> </div></li><li id="field_8_25" class="gfield gform_validation_container field_sublabel_below field_description_below gfield_visibility_visible" ><label class='gfield_label' for='input_8_25' >Comments</label><div class='ginput_container'><input autocomplete="nope" name='input_25' id='input_8_25' type='text' value='' autocomplete='new-password'/></div><div class='gfield_description' id='gfield_description_8_25'>This field is for validation purposes and should be left unchanged.</div></li></ul></div> <div class='gform_page_footer top_label'><input type='submit' id='gform_previous_button_8' class='gform_previous_button button' value='Back' onclick='if(window["gf_submitting_8"]){return false;} if( !jQuery("#gform_8")[0].checkValidity || jQuery("#gform_8")[0].checkValidity()){window["gf_submitting_8"]=true;} ' onkeypress='if( event.keyCode == 13 ){ if(window["gf_submitting_8"]){return false;} if( !jQuery("#gform_8")[0].checkValidity || jQuery("#gform_8")[0].checkValidity()){window["gf_submitting_8"]=true;} jQuery("#gform_8").trigger("submit",[true]); }' /> <input type='submit' id='gform_submit_button_8' class='gform_button button' value='Get a Free Quote' onclick='if(window["gf_submitting_8"]){return false;} if( !jQuery("#gform_8")[0].checkValidity || jQuery("#gform_8")[0].checkValidity()){window["gf_submitting_8"]=true;} ' onkeypress='if( event.keyCode == 13 ){ if(window["gf_submitting_8"]){return false;} if( !jQuery("#gform_8")[0].checkValidity || jQuery("#gform_8")[0].checkValidity()){window["gf_submitting_8"]=true;} jQuery("#gform_8").trigger("submit",[true]); }' /> <input type='hidden' name='gform_ajax' value='form_id=8&amp;title=&amp;description=&amp;tabindex=0' /> <input type='hidden' class='gform_hidden' name='is_submit_8' value='1' /> <input type='hidden' class='gform_hidden' name='gform_submit' value='8' /> <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' /> <input type='hidden' class='gform_hidden' name='state_8' value='WyJbXSIsIjQwZDExOTMzOTMyMTFlN2IzYzhjNjFjODcwMzRmNThjIl0=' /> <input type='hidden' class='gform_hidden' name='gform_target_page_number_8' id='gform_target_page_number_8' value='2' /> <input type='hidden' class='gform_hidden' name='gform_source_page_number_8' id='gform_source_page_number_8' value='1' /> <input type='hidden' name='gform_field_values' value='' /> </div> </div></div> </form> </div> <iframe style='display:none;width:0px;height:0px;' src='about:blank' name='gform_ajax_frame_8' id='gform_ajax_frame_8' title='This iframe contains the logic required to handle Ajax powered Gravity Forms.'></iframe> <script type='text/javascript'>gform.initializeOnLoaded( function() {gformInitSpinner( 8, 'https://mvixdigitalsignage.com/wp-content/themes/mvix/assets/dist/img/black-loader.svg' );jQuery('#gform_ajax_frame_8').on('load',function(){var contents = jQuery(this).contents().find('*').html();var is_postback = contents.indexOf('GF_AJAX_POSTBACK') >= 0;if(!is_postback){return;}var form_content = jQuery(this).contents().find('#gform_wrapper_8');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_8').length > 0;var is_redirect = contents.indexOf('gformRedirect(){') >= 0;var is_form = form_content.length > 0 && ! is_redirect && ! is_confirmation;var mt = parseInt(jQuery('html').css('margin-top'), 10) + parseInt(jQuery('body').css('margin-top'), 10) + 100;if(is_form){jQuery('#gform_wrapper_8').html(form_content.html());if(form_content.hasClass('gform_validation_error')){jQuery('#gform_wrapper_8').addClass('gform_validation_error');} else {jQuery('#gform_wrapper_8').removeClass('gform_validation_error');}setTimeout( function() { /* delay the scroll by 50 milliseconds to fix a bug in chrome */ jQuery(document).scrollTop(jQuery('#gform_wrapper_8').offset().top - mt); }, 50 );if(window['gformInitDatepicker']) {gformInitDatepicker();}if(window['gformInitPriceFields']) {gformInitPriceFields();}var current_page = jQuery('#gform_source_page_number_8').val();gformInitSpinner( 8, 'https://mvixdigitalsignage.com/wp-content/themes/mvix/assets/dist/img/black-loader.svg' );jQuery(document).trigger('gform_page_loaded', [8, current_page]);window['gf_submitting_8'] = false;}else if(!is_redirect){var confirmation_content = jQuery(this).contents().find('.GF_AJAX_POSTBACK').html();if(!confirmation_content){confirmation_content = contents;}setTimeout(function(){jQuery('#gform_wrapper_8').replaceWith(confirmation_content);jQuery(document).scrollTop(jQuery('#gf_8').offset().top - mt);jQuery(document).trigger('gform_confirmation_loaded', [8]);window['gf_submitting_8'] = false;wp.a11y.speak(jQuery('#gform_confirmation_message_8').text());}, 50);}else{jQuery('#gform_8').append(contents);if(window['gformRedirect']) {gformRedirect();}}jQuery(document).trigger('gform_post_render', [8, current_page]);} );} );</script>