var MT_Wait = 'Czekaj...';

function initAjaxForm(formId){
    var form = document.getElementById(formId);
    if (!form) {
        return;
    }
    
    
    var formContainerId = formId + "__Container";
    var formContainer = document.getElementById(formContainerId);
    var divMess = document.createElement('div');
    var divMessId = formId + '-messages';
    var submitId = formId + '-submit';
    var submit = $("#" + submitId);
    
    divMess.id = divMessId
    form.appendChild(divMess);
    
    
    // prepare the form when the DOM is ready
    var options = {
        //target:       '#footer',   // target element(s) to be updated with server response
        beforeSubmit: showRequest, // pre-submit callback
        success: showResponse, // post-submit callback
        // other available options:
        //url:       url         // override for form's 'action' attribute
        //type:      type        // 'get' or 'post', override for form's 'method' attribute
        //dataType:  null        // 'xml', 'script', or 'json' (expected server response type)
        clearForm: true, // clear all form fields after successful submit
        resetForm: true // reset the form after successful submit
        // $.ajax options can be used here too, for example:
        //timeout:   3000
    };
    
    // bind to the form's submit event
    $('#' + formId).submit(function(){
        if (formId == 'productForm') {
        }
        $(this).ajaxSubmit(options);
        // !!! Important !!!
        return false;
    });
    
    // pre-submit callback
    function showRequest(formData, jqForm, options){
    
        var loaderImage = fwBaseUrl + "/public/themes/pdk/img/form/main_loader.gif";
        var image = new Image();
        image.src = loaderImage;
        image.onload = function(evt){
            submit.css({
                'backgroundImage': 'url(' + loaderImage + ')',
                'backgroundRepeat': 'no-repeat',
                'backgroundPosition': 'top center'
            });
        };
        
        // If image not loaded
        image.onerror = function(evt){
            submit.val(MT_Wait);
        };
        
        submit.val(' ');
        
        
        return true;
    }
    
    // post-submit callback
    function showResponse(responseText, statusText){
        form.style.backgroundColor = 'transparent';
        if (isRedirect(responseText)) {
        
            var url = responseText.replace('redirect=', '');
            window.location.href = url;
            
        }
        else {
        
            var tmpDiv = $(document.createElement('div')).html(responseText);
            formContainer.innerHTML = tmpDiv.find("div#" + formContainerId).html();
            initAjaxForm(formId);
            ajaxCallbackHandlers(); // handler create in form/render/abstract
        }
        $('#rightFormBox #productForm-CONTACT_TIME #CONTACT_TIME').selectbox();
        $('#rightFormBox #productForm-fk_product_id #fk_product_id').selectbox();
        $('#form_contact-fk_state_id #fk_state_id').selectbox();
        
//        $('.jquery-selectbox-item').click(function(){
//            $('#productForm-NIP').slideUp();
//        });
//        
//        $('#productForm-fk_product_id .formElementHtml .jquery-selectbox .jquery-selectbox-list .value-6').click(function(){
//            $('#productForm-NIP').slideDown();
//        });
        
		
		$('#CALL_NOW').change(function() {
	
			 if ($(this).is(":checked")){
			 	

				
				$('#productForm-CONTACT_TIME .formElementHtml .jquery-selectbox .jquery-selectbox-moreButton').hide();
		  		$('#productForm-CONTACT_TIME .formElementHtml .jquery-selectbox .jquery-selectbox-disable').show();
			}
			else{
				$('#productForm-CONTACT_TIME .formElementHtml .jquery-selectbox .jquery-selectbox-moreButton').show();
				$('#productForm-CONTACT_TIME .formElementHtml .jquery-selectbox .jquery-selectbox-disable').hide();
			}
		
		});
		
		if($('#CALL_NOW').is(":checked")){
			$('#productForm-CONTACT_TIME .formElementHtml .jquery-selectbox .jquery-selectbox-moreButton').hide();
		  	$('#productForm-CONTACT_TIME .formElementHtml .jquery-selectbox .jquery-selectbox-disable').show();
		}
		
		
//        if ($('#fk_product_id').val()=='6') {
//            $('#productForm-NIP').show();
//        }
        
        
    }
    
    // check form response is redirect
    function isRedirect(sText){
        var reRedirUrl = /redirect=/gi;
        return reRedirUrl.test(sText);
    }
}

/**
 * This function each all elements and setup hint
 * @return
 */
function setupViewJQueryTooltipForm(){
    $('div.formElement').each(function(){
        var el = $(this);
        var hint = el.find('.formElementHint');
        if ($(hint).hasClass('.formElementHint')) {
            hint.hide();
            $(hint).wrap('<div class="formElementHintRel"></div>');
            $(hint).wrap('<div class="formElementHintWrapper"></div>');
            $(el).hover(function(){
                hint.show();
            }, function(){
                hint.hide();
            });
        }
    });
}

