var i = 2;
var j = 2;
$(document).ready(function(){
    if (document.body.filters) true;   
    
    $('select.auto-submit').change(function(){
        $('#cal-form').submit();
    });
    
    bindDelButton();
    
	$('#slider').cycle({ 
	    fx:    'scrollRight',
	    timeout: 5000,  
    	delay: -1000
 	});   
    initContactForm();
    initDonateForm();
    initRegisterForm();
    initUpdateForm();   
    initUpdInfoForm();
    initLoginForm();
    initMyAccountForm();
	
	$('input[type=checkbox]').prettyCheckboxes({
		checkboxWidth: 13, 
		checkboxHeight: 13
	});
    $('input[type=radio]').prettyCheckboxes({
		checkboxWidth: 13, 
		checkboxHeight: 13
	});
	if ($('#calendar').length == 0 && $('#reg').length == 0) {
		$('SELECT').each(function(){
        if (!$(this).hasClass('state-select')){
            $(this).selectbox();
        }
    });
	}
    
	$('.profile-block .headline a').click(function(){
		var elem = $(this).attr('rel');
		$(elem).toggle();
		if ($(this).html() == 'hide'){
			$(this).text('show');
		}else{
			$(this).text('hide');
			$('SELECT').each(function(){
                if (!$(this).hasClass('state-select')){
                    $(this).selectbox();
                }
            });
		}
	});
	
    initPopup();
    initPopupInfoBox();
	initInfoBox();
    
	$('.becomemember-form input[type=radio]').click(function(){
		if($(this).attr('id') == 'business'){
			$('.becomemember-form .form-row.business').show();
		}else{
			$('.becomemember-form .form-row.business').hide();
		};
	});
	
    $('.block .head').click(function(){
       if ($(this).hasClass('close')){
            $(this).parent().find('.text').slideDown(1000);
            $(this).removeClass('close');
        } else {
            $(this).parent().find('.text').slideUp(1000);
            $(this).addClass('close');
        }
       
       return false;
    });
    
    $('a.open').click(function(){
        var el = $('#' + $(this).attr('rel'));
        var img = $(this).find('img');
		//var box = $(this).parents('.infobox');
        if ($(el).css('display') == 'block'){
            $(el).slideUp(1000);
            //$(this).parent().parent().removeClass('opens');
			//$(box).removeClass('opens');
            $(img).attr('src', $(img).attr('src').replace('close','open'));
        } else {
            $(el).slideDown(1000);            
            //$(this).parent().parent().addClass('opens');
			//$(box).addClass('opens');
            $(img).attr('src', $(img).attr('src').replace('open','close'));
        }
       
       return false;
    });
    
    autoHint();
    
    /*$('.content .block ul li a').click(function(){
        var obj = $(this).parent().find('.hide');
        if ( isVisible(obj) ) {
            $(obj).slideUp(1000);
        } else {
            $(obj).slideDown(1000);
        }
        return false;
    });*/
	
    bindAddButton();
	
});

function bindAddButton(){
    i = parseInt($('#child_count').val()) + 1;
    j = parseInt($('#adult_count').val()) + 1;
    $('button.add-child').click(function(){
		var innerHtml = "<div class='form-row'>"+
						"<label for='child_name1'>&bull; Child "+i+"</label>"+
						"<input type='text' class='auto-hint w-160' title='FULL NAME' value='FULL NAME' id='child_name"+i+"' name='child_name"+i+"' />"+
						"<input type='text' class='auto-hint w-60' title='AGE' value='AGE' id='child_age"+i+"' name='child_age"+i+"' /></div>"+
						"<div class='form-row gender'>"+
						"<input type='text' class='auto-hint w-122' value='RELATIONSHIP' title='RELATIONSHIP' id='child_relationship"+i+"' name='child_relationship"+i+"' />"+
						"<select id='child_gender"+i+"' class='gender' name='child_gender"+i+"'>"+
						"<option value='GENDER'>GENDER</option>"+
						"<option value='MALE'>MALE</option>"+
						"<option value='FEMALE'>FEMALE</option></select>"+
						"<button type='button' class='del-child'>Delete This Child</button></div>";
		$('#childrens-end').before("<div id='child"+i+"'>"+innerHtml+"</div>");
		$('#child_count').val(i);
		$('button.del-child').hide();
		$('button.del-child:last').show();        
		i = i+1;		
		$('button.del-child').unbind('click');
		$('button.del-child').bind('click', function(){
			$(this).parent().parent().remove();
			i = i-1;            
            var child = $(this).parent().parent().find('.child_id');
			if ( child.val() > 0 ){
                $.post('my-account.html',{S2XEvent:'DeleteChild', id: child.val()});
            }
			$('button.del-child').hide();
			$('button.del-child:last').show();
		});
        autoHint();
	});
	
	$('button.add-adult').click(function(){
		var innerHtml = "<div class='form-row'>"+
						"<label for='child_name1'>&bull; Adult "+j+"</label>"+
						"<input type='text' class='auto-hint w-160' value='FULL NAME' title='FULL NAME' id='adult_name"+j+"' name='adult_name"+j+"' />"+
						"<input type='text' class='auto-hint w-60' value='AGE' title='AGE' id='adult_age"+j+"' name='adult_age"+j+"' /></div>"+
						"<div class='form-row gender'>"+
						"<input type='text' class='auto-hint w-122' title='RELATIONSHIP' value='RELATIONSHIP' id='adult_relationship"+j+"' name='adult_relationship"+j+"' />"+
						"<select id='adult_gender"+j+"' class='gender' name='adult_gender"+j+"'>"+
						"<option value='GENDER'>GENDER</option>"+
						"<option value='MALE'>MALE</option>"+
						"<option value='FEMALE'>FEMALE</option></select>"+
						"<button type='button' class='del-adult'>Delete This Adult</button></div>";
		$('#child_adult').append("<div id='adult"+j+"'>"+innerHtml+"</div>");
		$('#adult_count').val(j);
		$('button.del-adult').hide();
		$('button.del-adult:last').show();
        autoHint();
		j = j+1;
		
		$('button.del-adult').unbind('click');
		$('button.del-adult').bind('click', function(){
			$(this).parent().parent().remove();
			j = j-1;                        
            var child = $(this).parent().parent().find('.child_id');
			if ( child.val() > 0 ){
                $.post('my-account.html',{S2XEvent:'DeleteChild', id: child.val()});
            }
			$('#adult_count').val(j);
			$('button.del-adult').hide();
			$('button.del-adult:last').show();
		});
	});


}

function bindDelButton(){
    
    
    $('button.del-child').bind('click', function(){
        $(this).parent().parent().remove();
        i = i-1;
        $('#child_count').val(i - 1);        
        var child = $(this).parent().parent().find('.child_id');
        if ( child.val() > 0 ){
            $.post('my-account.html',{S2XEvent:'DeleteChild', id: child.val()});
        }
        $('button.del-child').hide();
        $('button.del-child:last').show();
    });
    
    $('button.del-adult').bind('click', function(){
        $(this).parent().parent().remove();
        j = j-1;                        
        $('#adult_count').val(j - 1);
        var child = $(this).parent().parent().find('.child_id');
        if ( child.val() > 0 ){
            $.post('my-account.html',{S2XEvent:'DeleteChild', id: child.val()});
        }
        $('#adult_count').val(j);
        $('button.del-adult').hide();
        $('button.del-adult:last').show();
    });
}

function autoHint(){    
    $('INPUT.auto-hint').each(function(i, el){
        $(this).css('color','#000000');
        if($(this).val() == ''){
            $(this).val($(this).attr('title'));            
        }
        $(el).focus(function(){
            $(this).css('color','#000000');
            if ($(this).val() == $(this).attr('title')) {
                $(this).val('');
            }       
        });
        $(el).blur(function(){            
            if ($(this).val() == '') {
                $(this).css('color','#ABA9A9');
                $(this).val($(this).attr('title'));
            }
        });
    });
    if ($('#calendar').length == 0 && $('#reg').length == 0) {
		$('SELECT').each(function(){
        if (!$(this).hasClass('state-select')){
            $(this).selectbox();
        }
    });
	}
    
}

function initPopup(){
    $('.ajax').unbind('click');
    $('.ajax').bind('click',function(){
        var href = '';
        if ( $(this).attr('href').indexOf('?') == -1 ){
            href = $(this).attr('href') + '?ajax=1';
        } else {
            href = $(this).attr('href') + '&ajax=1';
        }
       $('#modal-box').load(href ,function(){
            hideInfoBox();
           showBox();
           sign_in();
           initPopup();
           initSessionForm();
           initContactForm();
           initRegisterForm();
           initUpdateForm();   
           initUpdInfoForm();
           initLoginForm();
           initMyAccountForm();
		   autoHint();
		   InitCheckBoxExplain();	
		   initPopupInfoBox();
       }); 
       return false;
    });
}

function initPopupInfoBox(){
	
    $('.ajax-info').unbind('click');
    $('.ajax-info').bind('click',function(){
        var href = '';
        if ( $(this).attr('href').indexOf('?') == -1 ){
            href = $(this).attr('href') + '?ajax=1';
        } else {
            href = $(this).attr('href') + '&ajax=1';
        }
		hideBox();
       $('#info-box').load(href ,function(){
           initMyAccountForm();
		   autoHint();
           initPopup();
		   showInfoBox();           
		   InitCheckBoxExplain();	
       }); 
       return false;
    });
}

function initInfoBox(){
    $('a.help, a.consent').click(function(){
       $('#info-box').load($(this).attr('href'),function(){
           showInfoBox();
      //     initInfoBox();
       }); 
       return false;
    });
}

function isVisible(obj) { return (obj.css('display') == 'block'); } 

function showBox(){    
    $('.area').height($(document).height());
    $('.area').width($(document).width());
    $('.area').show();    
    var win = $(window).width();
    var w_mod = $('.modal-box').width();
    var left = 0;
    if( w_mod  < win ){
        left = parseInt( ( win - w_mod) / 2 );        
    }
    $('.modal-box').css('left', left + 'px');
    $('.modal-box').slideDown(1000);
    $('.modal-box A.close, .area').click(function(){
        hideBox();
    });    
    $('.modal-box input[type=radio]').prettyCheckboxes({
		checkboxWidth: 13, 
		checkboxHeight: 13
	});
	$('SELECT').each(function(){
        if (!$(this).hasClass('state-select')){
            $(this).selectbox();
        }
    });
	initInfoBox();
}

function showInfoBox(){    
    $('.area').height($(document).height());
    $('.area').width($(document).width());
    $('.area').show();    
    $('.info-box').slideDown(1000);
    $('.info-box A.close, .area').click(function(){
        hideInfoBox();
    }); 
    var win = $(window).width();
    var w_mod = $('.info-box').width();
    var left = 0;
    if( w_mod  < win ){
        left = parseInt( ( win - w_mod) / 2 );        
    }
    $('.info-box').css('left', left + 'px');    
    initMyAccountForm();    
	$('.info-box input[type=radio]').prettyCheckboxes({
		checkboxWidth: 13, 
		checkboxHeight: 13
	});
    $('input[type=checkbox]').prettyCheckboxes({
		checkboxWidth: 13, 
		checkboxHeight: 13
	});
    $('SELECT').each(function(){
        if (!$(this).hasClass('state-select')){
            $(this).selectbox();
        }
    });
}

function hideBox(){    
        if ($.browser.msie && $.browser.version < 7) {
            $('.modal-box').hide(1000);
        }
        else {
            $('.modal-box').slideUp(1000); 
        }
        $('.area').hide();
        return false;
}

function hideInfoBox(){    
        if ($.browser.msie && $.browser.version < 7) {
            $('.info-box').hide(1000);
        }
        else {
            $('.info-box').slideUp(1000); 
        }
		if(!isVisible($('.modal-box'))){
			$('.area').hide();
		}
        return false;
}

function sign_in(){
    if ($('.signed-in').length>0) {
	    $('input[type=checkbox]').prettyCheckboxes({
		    checkboxWidth: 13, // The width of your custom checkbox
		    checkboxHeight: 13 // The height of your custom checkbox
	    });
	}
    $('.signed-in label').click(function(){
        if ($(this).hasClass('checked')) 
        {    
            if ($(this).attr('for')=='all')
            {
				$('.signed-in label').each(function(){
					if ($(this).hasClass('close')){
				
					}else{
						$(this).addClass('checked').parent().next().text('open');
					}
				});
				
                $('.signed-in input:checkbox').attr('checked', 'checked');
            }
            else {
                //$(this).parent().next().text('open');                
                //$(this).parent().find('input:checkbox').attr('checked', 'checked');
            }
        }
        else {
            if ($(this).attr('for')=='all'){
			
                $('.signed-in label').each(function(){
					if ($(this).hasClass('close')){
				
					}else{
						$(this).removeClass('checked').parent().next().text('closed');
					}
				});				
                $('.signed-in input:checkbox').removeAttr('checked');
            }
            else {
                $('.signed-in input#all').removeAttr('checked');
                $('.signed-in input#all').next().removeClass('checked');
                //$(this).parent().next().text('closed');
                //$(this).parent().find('input:checkbox').removeAttr('checked');
            }
        }
    });
    
}


function initMyAccountForm(){
    $('.forms').unbind('submit');
	$('.forms').submit(function(){
		var form = $(this);
		var formData = $(this).serialize();
		var error = '';
        hideError();
        var err = form.find('.red-text');
        if(form.attr('id') == 'top_error'){ err = $('.red-text');}        
        err.slideUp('normal');
            $.ajax({
                type: 'POST', url: form.attr('action'), data: formData, 
                success: function ( responseData ){
                    if((error = ProcessLogin(responseData)) != ''){
                        err.html(error);
                        err.css('color','#DF1959');
                        viewError(responseData);
                        err.slideDown('normal');                        
                    } else{
                        list = responseData.split(':');
						if(form.hasClass('sess2')){
							//var doneText = form.find('#sess_done').val();
							//err.html(doneText + list[1]);
                            //form.slideUp(1000);
                            $('#modal-box').load('session-js.html?ajax=1&step=3',function(){									
                                    initInfoBox();
							}); 
                            return;
						}else if ( form.hasClass('surv')){
                            window.location.href = 'my-account.html'; 
                        } else if ( form.hasClass('recovery')){
                            err.html('Information on how to change your password has been sent to your email address. Please follow the directions provided in the  email.');               
						}else if ( form.hasClass('cap-sess')){
                            //err.html('Your data sucessfully updated');
                            //form.slideUp(1000);
                            $('#modal-box').load('session-js.html?ajax=1&step=3',function(){									
                                    initInfoBox();
							}); 
                            return;
						} else if ( form.hasClass('steps')){							
							step = responseData.split(':');
							$('#info-box').load('application-form.html?step='+ step[1],function(){
									hideBox();
                                    InitAllEvents();                                    
                                    back();
							});
                        } else {
							err.html('Your data sucessfully updated');
						}
                        if ( !form.hasClass('steps')){
                            err.css('color','green');
                            err.slideDown('normal');
                        }
                        if (form.find('#child_adult').size() > 0 ){
                            $('#child_adult').load(form.attr('action'),{S2XEvent:'UpdateFormChild', id: form.find('#person_id').val() }, function(){
                                autoHint();
                                bindAddButton();
                                bindDelButton();
                                $('#child_adult input[type=radio]').prettyCheckboxes({
                                    checkboxWidth: 13, 
                                    checkboxHeight: 13
                                });
                            
                            });
                        }
                    }
                }
        });		
        
		return false;
	});
}

function initLoginForm(){
	$('#login').submit(function(){
		var form = $(this);
		var formData = $(this).serialize();
		var error = '';
        hideError();
        $('#error').slideUp('normal');
            $.ajax({
                type: 'POST', url: form.attr('action'), data: formData, 
                success: function ( responseData ){
                    if((error = ProcessLogin(responseData)) != ''){
                        $('#error').html(error);
                        $('#error').css('color','#DF1959');
                        viewError(responseData);
                        $('#error').slideDown('normal');
                    } else{
                        document.getElementById('login').reset();
                        var id_sess = $('#login input[name="id"]').val();
                        var app = $('#login input[name="app"]').val();
                        if (app != '') {
                            $('#info-box').load('application-form.html?ajax=1' ,function(){
                               hideBox();
                               initMyAccountForm();
                               autoHint();
                               initPopup();
                               showInfoBox();           
                               InitCheckBoxExplain();	
                           });
                        } else if ( id_sess == '' ){
                            window.location.href = 'my-account.html';
                        } else {
                            $('#modal-box').load('session-js.html?id='+ id_sess +'&ajax=1' ,function(){
                               showBox();
                               sign_in();
                               initPopup();
                               initSessionForm();
                               initPopupInfoBox();
                            }); 
                        }
                    }
                }
        });		
        
		return false;
	});
}

function initRegisterForm(){
	$('#reg').submit(function(){
		var form = $(this);
		var formData = $(this).serialize();
		var error = '';
        hideError();
        $('#error').slideUp('normal');
            $.ajax({
                type: 'POST', url: form.attr('action'), data: formData, 
                success: function ( responseData ){
                    if((error = Process(responseData)) != ''){
                        $('#error').html(error);
                        $('#error').css('color','#DF1959');
                        viewError(responseData);
                        $('#error').slideDown('normal');
                    } else{
						$.post('login.html',{email:$('#reg input[name="email"]').val(), password:$('#reg input[name="password"]').val()}, function(){
							window.location.href = 'my-account.html';
						});
						document.getElementById('reg').reset();
                        
                    }
                }
        });		
        
		return false;
	});
}

function initUpdateForm(){
	$('#upd').submit(function(){
		var form = $(this);
		var formData = $(this).serialize();
		var error = '';
        hideError();
        $('#error').slideUp('normal');
            $.ajax({
                type: 'POST', url: form.attr('action'), data: formData, 
                success: function ( responseData ){
                    if((error = Process(responseData)) != ''){
                        $('#error').html(error);
                        $('#error').css('color','#DF1959');
                        viewError(responseData);
                        $('#error').slideDown('normal');
                    } else{
                        document.getElementById('upd').reset();
                        
                        $('#error').html('Your password has been successfuly updated!');
                        $('#error').css('color','green');
                        $('#error').slideDown('normal');
                        setTimeout('$("#upd").parent().slideUp(1000)', 2000);
                        setTimeout('$("#error").hide();', 2000);
                    }
                }
        });		
        
		return false;
	});
}

function initUpdInfoForm(){
	$('#inf').submit(function(){
		var form = $(this);
		var formData = $(this).serialize();
		var error = '';
        hideError();
        $('#error2').slideUp('normal');
            $.ajax({
                type: 'POST', url: form.attr('action'), data: formData, 
                success: function ( responseData ){
                    if((error = Process(responseData)) != ''){
                        $('#error2').html(error);
                        $('#error2').css('color','#DF1959');
                        viewError(responseData);
                        $('#error2').slideDown('normal');
                    } else{
                        document.getElementById('upd').reset();
                        
                        $('#error2').html('Your Profile Info has been successfuly updated!');
                        $('#error2').css('color','green');
                        $('#error2').slideDown('normal');
                        setTimeout('$("#inf").parent().slideUp(1000)', 2000);
                        setTimeout('$("#error2").hide();', 2000);
                    }
                }
        });		
        
		return false;
	});
}

function initContactForm(){
	$('#cont').submit(function(){
		var form = $(this);
		var formData = $(this).serialize();
		var error = '';
        hideError();
        $('#error').slideUp('normal');
            $.ajax({
                type: 'POST', url: form.attr('action'), data: formData, 
                success: function ( responseData ){
                    if((error = Process(responseData)) != ''){
                        $('#error').html(error);
                        $('#error').css('color','#DF1959');
                        viewError(responseData);
                        $('#error').slideDown('normal');
                    } else{
                        document.getElementById('cont').reset();
                        form.slideUp(1000);
                        $('#error').html('Thank you for your interest.  Someone will respond to your inquiry as soon as possible.');
                        $('#error').css('color','#DF1959');
                        $('#error').slideDown('normal');
                    }
                }
        });		
        
		return false;
	});
}

function initDonateForm(){
	$('#donation').submit(function(){
		var form = $(this);
		var formData = $(this).serialize();
		var error = '';
        hideError();
        $('#error').slideUp('normal');
            $.ajax({
                type: 'POST', url: form.attr('action'), data: formData, 
                success: function ( responseData ){
                    if((error = Process(responseData)) != ''){
                        $('#error').html(error);
                        viewError(responseData);
                        $('#error').css('color','#DF1959');
                        $('#error').slideDown('normal');
                    } else{
                        document.getElementById('donation').reset();
                        form.slideUp(1000);        
                        list = responseData.replace('done:','');
                        $('#pay').html(list);
                    }
                }
        });		
        
		return false;
	});
}

function initSessionForm(){
	$('#sess').submit(function(){
		var form = $(this);
		var formData = $(this).serialize();
		var error = '';
        hideError();
        $('#error').slideUp('normal');
            $.ajax({
                type: 'POST', url: form.attr('action'), data: formData, 
                success: function ( responseData ){
                    if((error = Process(responseData)) != ''){
                        $('#error').html(error);
                        $('#error').css('color','#DF1959');
                        viewError(responseData);
                        $('#error').slideDown('normal');
                    } else{
                        document.getElementById('sess').reset();
                        //$('#error').html('Your message has been successfuly sended!');
                        //$('#error').css('color','green');
                        //$('#error').slideDown('normal');
						var sessId = form.find('#sess_id').val();
                        $('#modal-box').load(form.attr('action') + '?ajax=1&step=2&id='+sessId,function(){
                           showBox();
                           sign_in();
                           initPopup();
                           autoHint();     
                           bindDelButton();
                           bindAddButton();
                           initMyAccountForm();
                       }); 
                        //setTimeout('hideBox();', 2000);
                    }
                }
        });		
        
		return false;
	});
}


function Process(str){
	list = str.split(':');
	if(list[0].toLowerCase() != 'done'){
		return list[1];
	} else {
		return '';
	}
}

function ProcessLogin(str){
	list = str.split(':');
	if(list[0].toLowerCase() == 'error'){
		return list[1];
	} else {
		return '';
	}
}