/*jslint nomen:false, debug:true, evil:true, vars:false, browser:true, forin:true, undef:false, white:false */
/**
 * Includes a Form with javascript
 * @param {Object} formId
 * @param {Object} initialHeight
 * @param {Object} iframeCode
 */
function FrameBuilder (formId, appendTo, initialHeight, iframeCode){
    this.formId = formId;
    this.initialHeight = initialHeight;
    this.iframeCode = iframeCode;
    this.frame = null;
    this.timeInterval= 200;
    this.appendTo = appendTo || false;
    
    // initialize function for object
    this.init = function(){
        this.createFrame();
        this.addFrameContent(this.iframeCode);
    };
    
    // Create the frame
    this.createFrame = function(){
        var htmlCode = "<"+"iframe src=\"\" allowtransparency=\"true\" frameborder=\"0\" name=\""+this.formId+"\" id=\""+this.formId+"\" style=\"width:100%; height:"+this.initialHeight+"px; border:none;\" scrolling=\"no\"></if"+"rame>";
        if(this.appendTo === false){
            document.write(htmlCode);
        }else{
            var tmp = document.createElement('div');
            tmp.innerHTML = htmlCode;
            var a = this.appendTo;
            document.getElementById(a).appendChild(tmp.firstChild);            
        }
        // also get the frame for future use.
        this.frame = document.getElementById(this.formId);
        // set the time on the on load event of the frame
        this.addEvent(this.frame, 'load', this.bindMethod(this.setTimer, this));
    };
    
    // add event function for different browsers
    this.addEvent = function( obj, type, fn ) {
        if ( obj.attachEvent ) {
            obj["e"+type+fn] = fn;
            obj[type+fn] = function() { obj["e"+type+fn]( window.event ); };
            obj.attachEvent( "on"+type, obj[type+fn] );
        }
        else{
            obj.addEventListener( type, fn, false );   
        }
    };
    
    this.addFrameContent = function (string){
        string = string.replace(new RegExp('src\\=\\"[^"]*captcha.php\"><\/scr'+'ipt>', 'gim'), 'src="http://api.recaptcha.net/js/recaptcha_ajax.js"></scr'+'ipt><'+'div id="recaptcha_div"><'+'/div>'+
                '<'+'style>#recaptcha_logo{ display:none;} #recaptcha_tagline{display:none;} #recaptcha_table{border:none !important;} .recaptchatable .recaptcha_image_cell, #recaptcha_table{ background-color:transparent !important; } <'+'/style>'+
                '<'+'script defer="defer"> window.onload = function(){ Recaptcha.create("6Ld9UAgAAAAAAMon8zjt30tEZiGQZ4IIuWXLt1ky", "recaptcha_div", {theme: "clean",tabindex: 0,callback: function (){'+
                'if (document.getElementById("uword")) { document.getElementById("uword").parentNode.removeChild(document.getElementById("uword")); } if (window["validate"] !== undefined) { if (document.getElementById("recaptcha_response_field")){ document.getElementById("recaptcha_response_field").onblur = function(){ validate(document.getElementById("recaptcha_response_field"), "Required"); } } } if (document.getElementById("recaptcha_response_field")){ document.getElementsByName("recaptcha_challenge_field")[0].setAttribute("name", "anum"); } if (document.getElementById("recaptcha_response_field")){ document.getElementsByName("recaptcha_response_field")[0].setAttribute("name", "qCap"); }}})'+
                ' }<'+'/script>');
        string = string.replace(/(type="text\/javascript">)\s+(validate\(\"[^"]*"\);)/, '$1 jTime = setInterval(function(){if("validate" in window){$2clearTimeout(jTime);}}, 1000);');
        var frameDocument = (this.frame.contentWindow) ? this.frame.contentWindow : (this.frame.contentDocument.document) ? this.frame.contentDocument.document : this.frame.contentDocument;
        frameDocument.document.open();
        frameDocument.document.write(string);
        setTimeout( function(){
            frameDocument.document.close();
            try{
                if('JotFormFrameLoaded' in window){
                    JotFormFrameLoaded();
                }
            }catch(e){}
        },200);
    };
    
    this.setTimer = function(){
        var self = this;
        this.interval = setTimeout(function(){self.changeHeight();},this.timeInterval);
    };
    
    this.changeHeight = function (){
        var actualHeight = this.getBodyHeight();
        var currentHeight = this.getViewPortHeight();
        if(actualHeight === undefined){
            this.frame.style.height = "100%";
            if(!this.frame.style.minHeight){
                this.frame.style.minHeight = "300px";
            }
        }else if  (Math.abs(actualHeight - currentHeight) > 18){
            this.frame.style.height = (actualHeight)+"px";
        }
        this.setTimer();
    };
    
    this.bindMethod = function(method, scope) {
        return function() {
            method.apply(scope,arguments);
        };
    };
    
    this.getBodyHeight = function (){
        var height;
        var scrollHeight;
        var offsetHeight;
        try{  // Prevent IE from throw errors
            if (this.frame.contentWindow.document.height){
                
                height = this.frame.contentWindow.document.height;
                //Emre: to prevent "iframe height"  problem (61059)
                if (this.frame.contentWindow.document.body.scrollHeight){
                    height = scrollHeight = this.frame.contentWindow.document.body.scrollHeight;
                }
                
                if (this.frame.contentWindow.document.body.offsetHeight){
                    height = offsetHeight = this.frame.contentWindow.document.body.offsetHeight;
                }
                
            } else if (this.frame.contentWindow.document.body){
                
                if (this.frame.contentWindow.document.body.scrollHeight){
                    height = scrollHeight = this.frame.contentWindow.document.body.scrollHeight;
                }
                
                if (this.frame.contentWindow.document.body.offsetHeight){
                    height = offsetHeight = this.frame.contentWindow.document.body.offsetHeight;
                }
                
                if (scrollHeight && offsetHeight){
                    height = Math.max(scrollHeight, offsetHeight);
                }
            }            
        }catch(e){ }
        return height;
    };
    
    this.getViewPortHeight = function(){
        var height = 0;
        try{ // Prevent IE from throw errors
            if (this.frame.contentWindow.window.innerHeight)
            {
                height = this.frame.contentWindow.window.innerHeight - 18;
            }
            else if ((this.frame.contentWindow.document.documentElement) &&
                     (this.frame.contentWindow.document.documentElement.clientHeight))
            {
                height = this.frame.contentWindow.document.documentElement.clientHeight;
            }
            else if ((this.frame.contentWindow.document.body) &&
                     (this.frame.contentWindow.document.body.clientHeight))
            {
                height = this.frame.contentWindow.document.body.clientHeight;
            }            
        }catch(e){ }
        return height;
    };
    
    this.init();
}
FrameBuilder.get = [];
var i92385455029 = new FrameBuilder("92385455029", false, "", "<!DOCTYPE HTML PUBLIC \"-\/\/W3C\/\/DTD HTML 4.01\/\/EN\" \"http:\/\/www.w3.org\/TR\/html4\/strict.dtd\">\n<html><head>\n<meta http-equiv=\"Content-Type\" content=\"text\/html; charset=utf-8\" \/>\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0\" \/>\n<meta name=\"HandheldFriendly\" content=\"true\" \/>\n<title>Form<\/title>\n<link href=\"http:\/\/max.jotfor.ms\/min\/g=formCss?3.0.2435\" rel=\"stylesheet\" type=\"text\/css\" \/>\n<style type=\"text\/css\">\n    .form-label{\n        width:150px !important;\n    }\n    .form-label-left{\n        width:150px !important;\n    }\n    .form-line{\n        padding:5px;\n    }\n    .form-label-right{\n        width:150px !important;\n    }\n    body, html{\n        margin:0;\n        padding:0;\n        background:white;\n    }\n\n    .form-all{\n        margin:0px auto;\n        padding-top:0px;\n        width:690px;\n        background:white;\n        color:black !important;\n        font-family:Verdana;\n        font-size:12px;\n    }\n<\/style>\n\n<script src=\"http:\/\/max.jotfor.ms\/min\/g=jotform?3.0.2435\" type=\"text\/javascript\"><\/script>\n<script type=\"text\/javascript\">\n var jsTime = setInterval(function(){try{\n   JotForm.jsForm = true;\n\n   JotForm.init();\n\n   clearInterval(jsTime);\n }catch(e){}}, 1000);\n<\/script>\n<\/head>\n<body>\n<form class=\"jotform-form\" action=\"http:\/\/submit.jotform.com\/submit.php\" method=\"post\" name=\"form_92385455029\" id=\"92385455029\" accept-charset=\"utf-8\">\n  <input type=\"hidden\" name=\"formID\" value=\"92385455029\" \/>\n  <div class=\"form-all\">\n    <ul class=\"form-section\">\n      <li id=\"cid_19\" class=\"form-input-wide\">\n        <div class=\"form-header-group\">\n          <h2 id=\"header_19\" class=\"form-header\">\n            Registration Form\n          <\/h2>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_11\">\n        <label class=\"form-label-left\" id=\"label_11\" for=\"input_11\"> Course Or Trip: <\/label>\n        <div id=\"cid_11\" class=\"form-input\">\n          <input type=\"text\" class=\"form-textbox\" id=\"input_11\" name=\"q11_courseOr\" size=\"20\" maxlength=\"100\" \/>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_12\">\n        <label class=\"form-label-left\" id=\"label_12\" for=\"input_12\"> Date(s): <\/label>\n        <div id=\"cid_12\" class=\"form-input\">\n          <input type=\"text\" class=\"form-textbox\" id=\"input_12\" name=\"q12_dates\" size=\"20\" maxlength=\"100\" \/>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_13\">\n        <label class=\"form-label-left\" id=\"label_13\" for=\"input_13\"> First Name: <\/label>\n        <div id=\"cid_13\" class=\"form-input\">\n          <input type=\"text\" class=\"form-textbox\" id=\"input_13\" name=\"q13_firstName\" size=\"20\" maxlength=\"100\" \/>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_14\">\n        <label class=\"form-label-left\" id=\"label_14\" for=\"input_14\"> Last Name: <\/label>\n        <div id=\"cid_14\" class=\"form-input\">\n          <input type=\"text\" class=\"form-textbox\" id=\"input_14\" name=\"q14_lastName\" size=\"20\" maxlength=\"100\" \/>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_9\">\n        <label class=\"form-label-left\" id=\"label_9\" for=\"input_9\"> Phone: <\/label>\n        <div id=\"cid_9\" class=\"form-input\">\n          <input type=\"text\" class=\"form-textbox\" id=\"input_9\" name=\"q9_phone\" size=\"20\" maxlength=\"100\" \/>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_15\">\n        <label class=\"form-label-left\" id=\"label_15\" for=\"input_15\"> Email: <\/label>\n        <div id=\"cid_15\" class=\"form-input\">\n          <input type=\"text\" class=\"form-textbox\" id=\"input_15\" name=\"q15_email\" size=\"20\" maxlength=\"100\" \/>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_10\">\n        <label class=\"form-label-left\" id=\"label_10\" for=\"input_10\"> Address: <\/label>\n        <div id=\"cid_10\" class=\"form-input\">\n          <textarea id=\"input_10\" class=\"form-textarea\" name=\"q10_address\" cols=\"30\" rows=\"2\"><\/textarea>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_0\">\n        <label class=\"form-label-left\" id=\"label_0\" for=\"input_0\"> Town\/City: <\/label>\n        <div id=\"cid_0\" class=\"form-input\">\n          <input type=\"text\" class=\"form-textbox\" id=\"input_0\" name=\"q0_towncity\" size=\"20\" maxlength=\"100\" \/>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_16\">\n        <label class=\"form-label-left\" id=\"label_16\" for=\"input_16\"> State\/Province: <\/label>\n        <div id=\"cid_16\" class=\"form-input\">\n          <input type=\"text\" class=\"form-textbox\" id=\"input_16\" name=\"q16_stateprovince\" size=\"20\" maxlength=\"100\" \/>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_7\">\n        <label class=\"form-label-left\" id=\"label_7\" for=\"input_7\"> Zip\/Postal code: <\/label>\n        <div id=\"cid_7\" class=\"form-input\">\n          <input type=\"text\" class=\"form-textbox\" id=\"input_7\" name=\"q7_zippostalCode\" size=\"20\" maxlength=\"100\" \/>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_17\">\n        <label class=\"form-label-left\" id=\"label_17\" for=\"input_17\"> Date Of Birth: <\/label>\n        <div id=\"cid_17\" class=\"form-input\">\n          <input type=\"text\" class=\"form-textbox\" id=\"input_17\" name=\"q17_dateOf\" size=\"20\" maxlength=\"100\" \/>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_18\">\n        <label class=\"form-label-left\" id=\"label_18\" for=\"input_18\"> Gender: <\/label>\n        <div id=\"cid_18\" class=\"form-input\">\n          <input type=\"text\" class=\"form-textbox\" id=\"input_18\" name=\"q18_gender\" size=\"20\" maxlength=\"100\" \/>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_41\">\n        <div id=\"cid_41\" class=\"form-input-wide\">\n          <div id=\"text_41\" class=\"form-html\">\n            Please enter your payment preferences. When we receive your registration we'll contact you with specifics.\n          <\/div>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_36\">\n        <label class=\"form-label-left\" id=\"label_36\" for=\"input_36\"> Method Of Payment <\/label>\n        <div id=\"cid_36\" class=\"form-input\">\n          <select class=\"form-dropdown\" style=\"width:150px\" id=\"input_36\" name=\"q36_methodOf\">\n            <option>  <\/option>\n            <option value=\"Credit Card Via PayPal\"> Credit Card Via PayPal <\/option>\n            <option value=\"Check Or Money Order\"> Check Or Money Order <\/option>\n            <option value=\"Wire Transfer\"> Wire Transfer <\/option>\n          <\/select>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_39\">\n        <label class=\"form-label-left\" id=\"label_39\" for=\"input_39\"> Type Of Payment <\/label>\n        <div id=\"cid_39\" class=\"form-input\">\n          <select class=\"form-dropdown\" style=\"width:150px\" id=\"input_39\" name=\"q39_typeOf\">\n            <option>  <\/option>\n            <option value=\"Pay In Full\"> Pay In Full <\/option>\n            <option value=\"Pay A Deposit\"> Pay A Deposit <\/option>\n            <option value=\"Set Up Payment Plan\"> Set Up Payment Plan <\/option>\n          <\/select>\n        <\/div>\n      <\/li>\n      <li id=\"cid_20\" class=\"form-input-wide\">\n        <div class=\"form-header-group\">\n          <h2 id=\"header_20\" class=\"form-header\">\n            Emergency Contact Information\n          <\/h2>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_21\">\n        <label class=\"form-label-left\" id=\"label_21\" for=\"input_21\"> Name: <\/label>\n        <div id=\"cid_21\" class=\"form-input\">\n          <input type=\"text\" class=\"form-textbox\" id=\"input_21\" name=\"q21_name\" size=\"20\" maxlength=\"100\" \/>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_22\">\n        <label class=\"form-label-left\" id=\"label_22\" for=\"input_22\"> Phone: <\/label>\n        <div id=\"cid_22\" class=\"form-input\">\n          <input type=\"text\" class=\"form-textbox\" id=\"input_22\" name=\"q22_phone\" size=\"20\" maxlength=\"100\" \/>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_23\">\n        <label class=\"form-label-left\" id=\"label_23\" for=\"input_23\"> Email: <\/label>\n        <div id=\"cid_23\" class=\"form-input\">\n          <input type=\"text\" class=\"form-textbox\" id=\"input_23\" name=\"q23_email\" size=\"20\" maxlength=\"100\" \/>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_24\">\n        <label class=\"form-label-left\" id=\"label_24\" for=\"input_24\"> Relationship To You: <\/label>\n        <div id=\"cid_24\" class=\"form-input\">\n          <input type=\"text\" class=\"form-textbox\" id=\"input_24\" name=\"q24_relationshipTo\" size=\"20\" maxlength=\"100\" \/>\n        <\/div>\n      <\/li>\n      <li id=\"cid_27\" class=\"form-input-wide\">\n        <div class=\"form-header-group\">\n          <h2 id=\"header_27\" class=\"form-header\">\n            Health Information\n          <\/h2>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_28\">\n        <div id=\"cid_28\" class=\"form-input-wide\">\n          <div id=\"text_28\" class=\"form-html\">\n            For safety reasons, we need to be aware of any special health concerns you may have. This information is confidential and is collected solely for the purpose of ensuring your safety. If you need more room, email the information to us.\n          <\/div>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_29\">\n        <label class=\"form-label-left\" id=\"label_29\" for=\"input_29\"> Do you have any food allergies or dietary restrictions? <\/label>\n        <div id=\"cid_29\" class=\"form-input\">\n          <textarea id=\"input_29\" class=\"form-textarea\" name=\"q29_doYou\" cols=\"30\" rows=\"2\"><\/textarea>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_26\">\n        <label class=\"form-label-left\" id=\"label_26\" for=\"input_26\"> Are you allergic to bee stings or other insect bites? <\/label>\n        <div id=\"cid_26\" class=\"form-input\">\n          <input type=\"text\" class=\"form-textbox\" id=\"input_26\" name=\"q26_areYou\" size=\"20\" maxlength=\"100\" \/>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_30\">\n        <label class=\"form-label-left\" id=\"label_30\" for=\"input_30\"> Do you have any medical conditions we need to be aware of? <\/label>\n        <div id=\"cid_30\" class=\"form-input\">\n          <textarea id=\"input_30\" class=\"form-textarea\" name=\"q30_doYou\" cols=\"30\" rows=\"2\"><\/textarea>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_31\">\n        <label class=\"form-label-left\" id=\"label_31\" for=\"input_31\"> Do you take any medications about which we should be aware? If yes, please list them and describe what they are for: <\/label>\n        <div id=\"cid_31\" class=\"form-input\">\n          <textarea id=\"input_31\" class=\"form-textarea\" name=\"q31_doYou\" cols=\"30\" rows=\"2\"><\/textarea>\n        <\/div>\n      <\/li>\n      <li id=\"cid_33\" class=\"form-input-wide\">\n        <div class=\"form-header-group\">\n          <h2 id=\"header_33\" class=\"form-header\">\n            For Multi-Week Programs Only\n          <\/h2>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_34\">\n        <div id=\"cid_34\" class=\"form-input-wide\">\n          <div id=\"text_34\" class=\"form-html\">\n            Essay: Please email a short essay to tell us about you and why you want to participate in the program. Length is unimportant; helping us learn something about you is.\n          <\/div>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_35\">\n        <div id=\"cid_35\" class=\"form-input-wide\">\n          <div id=\"text_35\" class=\"form-html\">\n            Please provide (via email)the names and contact information of three people who know you well, at least two of whom are not related to you.\n          <\/div>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_1\">\n        <div id=\"cid_1\" class=\"form-input-wide\">\n          <div style=\"margin-left:156px\" class=\"form-buttons-wrapper\">\n            <button id=\"input_1\" type=\"submit\" class=\"form-submit-button\">\n              Submit\n            <\/button>\n            &nbsp;\n            <button id=\"input_reset_1\" type=\"reset\" class=\"form-submit-reset\">\n              Clear Form\n            <\/button>\n          <\/div>\n        <\/div>\n      <\/li>\n      <li style=\"display:none\">\n        Should be Empty:\n        <input type=\"text\" name=\"website\" value=\"\" \/>\n      <\/li>\n    <\/ul>\n  <\/div>\n  <input type=\"hidden\" id=\"simple_spc\" name=\"simple_spc\" value=\"92385455029\" \/>\n  <script type=\"text\/javascript\">\n  document.getElementById(\"si\" + \"mple\" + \"_spc\").value = \"92385455029-92385455029\";\n  <\/script>\n<\/form><\/body>\n<\/html>\n");

