/*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 i1903852897 = new FrameBuilder("1903852897", 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:10px;\n    }\n    .form-label-right{\n        width:150px !important;\n    }\n    body, html{\n        margin:0;\n        padding:0;\n        background:#FFF2EB;\n    }\n\n    .form-all{\n        margin:0px auto;\n        padding-top:0px;\n        width:650px;\n        background:#FFF2EB;\n        color:#00004C !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(function(){\n      JotForm.description('input_7', 'We would like to know who we are link partnering with so please let us know your name.');\n      $('input_6').hint('myemail@you.com');\n      JotForm.description('input_6', 'Please enter your email address in the box. This is in case we need to contact you about your link.<br \/>Your email address will not be added to the links page.');\n      JotForm.description('input_5', 'Please select the category you\\'d like your link in.');\n      $('input_3').hint('http:\/\/www.your-link-here.com');\n      JotForm.description('input_3', 'Please enter the web URL or the page you would like us to link to from this page.');\n      $('input_4').hint('My Text Link Title!');\n      JotForm.description('input_4', 'Please enter a short title of your link in this box.');\n      JotForm.description('input_8', 'Tell us about your website! This information will be added underneath your link on this links page, so make it descriptive and make it relevant to your website.');\n      JotForm.description('input_11', 'Please copy this HTML source code and paste it on your links page.');\n      JotForm.description('input_9', 'Please copy and paste the URL address where our link will be on your website that will link back to our site.<br \/>We will check to make sure our link is on your website before we can link back to you.');\n      JotForm.initCaptcha('input_10');\n   });\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_1903852897\" id=\"1903852897\" accept-charset=\"utf-8\">\n  <input type=\"hidden\" name=\"formID\" value=\"1903852897\" \/>\n  <div class=\"form-all\">\n    <ul class=\"form-section\">\n      <li id=\"cid_1\" class=\"form-input-wide\">\n        <div class=\"form-header-group\">\n          <h2 id=\"header_1\" class=\"form-header\">\n            Link Partner request form.\n          <\/h2>\n          <div id=\"subHeader_1\" class=\"form-subHeader\">\n            Please fill in this form to set up a link partnership between our website and yours:\n          <\/div>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_7\">\n        <label class=\"form-label-left\" id=\"label_7\" for=\"input_7\">\n          Your Name:<span class=\"form-required\">*<\/span>\n        <\/label>\n        <div id=\"cid_7\" class=\"form-input\">\n          <input type=\"text\" class=\"form-textbox validate[required, Alphabetic]\" id=\"input_7\" name=\"q7_yourName\" size=\"20\" \/>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_6\">\n        <label class=\"form-label-left\" id=\"label_6\" for=\"input_6\">\n          Email:<span class=\"form-required\">*<\/span>\n        <\/label>\n        <div id=\"cid_6\" class=\"form-input\">\n          <input type=\"text\" class=\"form-textbox validate[required, Email]\" id=\"input_6\" name=\"q6_email\" size=\"20\" \/>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_5\">\n        <label class=\"form-label-left\" id=\"label_5\" for=\"input_5\">\n          Categroy<span class=\"form-required\">*<\/span>\n        <\/label>\n        <div id=\"cid_5\" class=\"form-input\">\n          <select class=\"form-dropdown validate[required]\" style=\"width:150px\" id=\"input_5\" name=\"q5_categroy\">\n            <option>  <\/option>\n            <option selected=\"selected\" value=\"English School\"> English School <\/option>\n            <option value=\"English study\"> English study <\/option>\n            <option value=\"Language learning related\"> Language learning related <\/option>\n            <option value=\"Japan related\"> Japan related <\/option>\n            <option value=\"Other - (May not get added)\"> Other - (May not get added) <\/option>\n          <\/select>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_3\">\n        <label class=\"form-label-left\" id=\"label_3\" for=\"input_3\">\n          Link URL:<span class=\"form-required\">*<\/span>\n        <\/label>\n        <div id=\"cid_3\" class=\"form-input\">\n          <input type=\"text\" class=\"form-textbox validate[required]\" id=\"input_3\" name=\"q3_linkUrl\" size=\"20\" \/>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_4\">\n        <label class=\"form-label-left\" id=\"label_4\" for=\"input_4\">\n          Link Title:<span class=\"form-required\">*<\/span>\n        <\/label>\n        <div id=\"cid_4\" class=\"form-input\">\n          <input type=\"text\" class=\"form-textbox validate[required]\" id=\"input_4\" name=\"q4_linkTitle4\" size=\"20\" \/>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_8\">\n        <label class=\"form-label-left\" id=\"label_8\" for=\"input_8\"> Link description: <\/label>\n        <div id=\"cid_8\" class=\"form-input\">\n          <textarea id=\"input_8\" class=\"form-textarea\" name=\"q8_linkDiscription\" cols=\"40\" rows=\"6\"><\/textarea>\n        <\/div>\n      <\/li>\n      <li class=\"form-line form-line-column form-line-column-clear\" id=\"id_11\">\n        <label class=\"form-label-left\" id=\"label_11\" for=\"input_11\"> Our link code for your link page. <\/label>\n        <div id=\"cid_11\" class=\"form-input\">\n          <textarea id=\"input_11\" class=\"form-textarea\" name=\"q11_clickTo11\" cols=\"40\" rows=\"5\">\n            <a href=\".\/\">Queen's English School \u30a4\u30ae\u30ea\u30b9\u4eba\u30a8\u30c7\u30a3\u5148\u751f\u306e\u82f1\u4f1a\u8a71\u5b66\u6821\uff08\u57fc\u7389\u770c\u8d8a\u8c37\u5e02\uff09<\/a>\n            <br>\n            &nbsp;\u57fc\u7389\u770c\u8d8a\u8c37\u5e02\u3067,\u30a8\u30c7\u30a3\u5148\u751f\u306e\u82f1\u4f1a\u8a71\u30ec\u30c3\u30b9\u30f3\u3092\u53d7\u3051\u3066\u307f\u307e\u305b\u3093\u304b\uff1f\uff08\u5b50\u3069\u3082\u5411\u3051,\u5927\u4eba\u5411\u3051,\u30d7\u30e9\u30a4\u30d9\u30fc\u30c8\u30ec\u30c3\u30b9\u30f3\u3082\u3042\u308a\u307e\u3059\uff01\u304a\u5f97\u306a\u5927\u4eba\u5411\u3051\u30d5\u30ea\u30fc\u30d1\u30b9\u3001\u6708\u3005\u305f\u3063\u305f\u306e1\u4e07\u5186\u3067\u30ec\u30c3\u30b9\u30f3\u53d7\u3051\u653e\u984c\uff01\uff09\n            <\/p>\n          <\/textarea>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_9\">\n        <label class=\"form-label-left\" id=\"label_9\" for=\"input_9\">\n          Our link location on your site:<span class=\"form-required\">*<\/span>\n        <\/label>\n        <div id=\"cid_9\" class=\"form-input\">\n          <input type=\"text\" class=\"form-textbox validate[required]\" id=\"input_9\" name=\"q9_ourLink\" size=\"20\" \/>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_10\">\n        <label class=\"form-label-left\" id=\"label_10\" for=\"input_10\">\n          Enter the message as it's shown<span class=\"form-required\">*<\/span>\n        <\/label>\n        <div id=\"cid_10\" class=\"form-input\">\n          <div class=\"form-captcha\">\n            <label for=\"input_10\"> <img alt=\"Captcha - Reload if it's not displayed\" id=\"input_10_captcha\" class=\"form-captcha-image\" style=\"background:url(http:\/\/www.jotform.com\/images\/loader-big.gif) no-repeat center;\" src=\"http:\/\/www.jotform.com\/images\/blank.gif\" width=\"150\" height=\"41\" \/> <\/label>\n            <div style=\"white-space:nowrap;\">\n              <input type=\"text\" id=\"input_10\" class=\"form-textbox validate[required]\" name=\"captcha\" style=\"width:130px;\" \/>\n              <img src=\"http:\/\/www.jotform.com\/images\/reload.png\" alt=\"Reload\" align=\"absmiddle\" style=\"cursor:pointer\" onclick=\"JotForm.reloadCaptcha('input_10');\" \/>\n              <input type=\"hidden\" name=\"captcha_id\" id=\"input_10_captcha_id\" value=\"0\">\n            <\/div>\n          <\/div>\n        <\/div>\n      <\/li>\n      <li id=\"cid_12\" class=\"form-input-wide\">\n        <div class=\"form-header-group\">\n          <h3 id=\"header_12\" class=\"form-header\">\n            Thank you for submitting your site details!\n          <\/h3>\n          <div id=\"subHeader_12\" class=\"form-subHeader\">\n            We look forward to becoming link partners with you! We always check each website manually so it could take up to 10 hours to get your link added on our page, in most cases it will take only a few hours. Please feel free to contact us any time.\n          <\/div>\n        <\/div>\n      <\/li>\n      <li class=\"form-line\" id=\"id_2\">\n        <div id=\"cid_2\" class=\"form-input-wide\">\n          <div style=\"margin-left:156px\" class=\"form-buttons-wrapper\">\n            <button id=\"input_2\" type=\"submit\" class=\"form-submit-button\">\n              Submit you link for review\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=\"1903852897\" \/>\n  <script type=\"text\/javascript\">\n  document.getElementById(\"si\" + \"mple\" + \"_spc\").value = \"1903852897-1903852897\";\n  <\/script>\n<\/form><\/body>\n<\/html>\n");

