$(function(){
	//if($("#dealFrame").length>0)$("#dealFrame").iframeResize();

	jQuery.fn.hashValue = function() {
    var href = this.attr('href');
    return href ? href.replace(/^.*#/, '') : href;
	
}
$(document).ready(function() {
        $("body").iframeResize();
});
var urlParams = {};
(function () {
    var e,
        a = /\+/g,  // Regex for replacing addition symbol with a space
        r = /([^&=]+)=?([^&]*)/g,
        d = function (s) { return decodeURIComponent(s.replace(a, " ")); },
        q = window.location.search.substring(1);

    while (e = r.exec(q))
       urlParams[d(e[1])] = d(e[2]);
})();
jQuery(document).ready(function($) {
        var O=$("#rent-tabs").children('div').children('a');
        var Model = {
            pages: [],
            currentLevel: 0,
            setPage: function(level, page, isUserAction) {
                if(page == this.pages[level]) {
                    return;
                }
                this._updateState(level, page);
                if(isUserAction) {
                    $.history.load(this.dump());
                } else {
                    render();
                }
            },
            incLevel: function() {
                this.currentLevel++;
                render();
            },
            _updateState: function(level, page) {
                var pages = [];
                for(var i = 0; i < level; i++) {
                    pages[i] = this.pages[i];
                }
                pages[level] = page;
                this.pages = pages;
                this.currentLevel = level;
            },
            dump: function() {
                return this.pages.join(",");
            },
            restore: function(hash) {
                if(this.dump() != hash) {
                    var pages = hash.split(/,/);
                    this.currentLevel = 0;
                    this.pages = pages;
                }
                render();
            }
        }
        function render() {
            if(Model.pages[Model.currentLevel]) {
				var tabOn=Model.pages[Model.currentLevel];
				if(Model.pages[Model.currentLevel].match('#')) tabOn=Model.pages[Model.currentLevel].split('#')[1];
                var elm = getElement(Model.currentLevel, '#rendData');
                var url = "../inc/rendData.asp?s="+ Model.pages[Model.currentLevel] ;	 $("#rent-tabs").children('div').children('a').each(function(index, element) {
				 $(this).removeClass('tabOn');
                if((tabOn)==index)$(this).addClass('tabOn');
				
            });  
                elm.load(url, loadHandler);
            }
        }
        $("#rent-tabs").children('div').children('a').live('click', clickHandler);
        function clickHandler(e) {
            var page = $(this).hashValue();
            var level = $(this).parents('.container').length - 1;
            Model.setPage(level, page, true);
            return false;
        } 
        function loadHandler(responseText, textStatus, xhr) { 
		   fixTip();  
			  $("#rendData").find("input,select,textarea,checkbox").not('.noIndex').each(function(index, element) {
						$(this).attr("tabindex",index+1);
				});
			$("#carPic img").load(function() {
			 $("#carDataContainer").css("height",$("#carDataContainer").height()+'px') ;	
			});
			if($("#extras").height()<$("#technical").height()){
				$("#extras").height($("#technical").height());
			}else{
				$("#technical").height($("#extras").height());
			}
            var defaultPage = getDefaultPage(Model.currentLevel + 1);
            if(defaultPage && !Model.pages[Model.currentLevel + 1]) {
                Model.setPage(Model.currentLevel + 1, defaultPage, false);
            } else {
                Model.incLevel();
            }
        }

        // ----- Initializes history plugin -----
        $.history.init(function(hash) {
                if(hash == "") {
                    var defaultPage = getDefaultPage(0);
                    if(defaultPage) {
                        Model.restore(defaultPage);
                    }
                } else {
                    Model.restore(hash);
                }
            },
            { unescape: "," });

        // ----- Utility functions -----
        function strRepeat(str, num) {
            var ret = "";
            for(var i = 0; i < num; i++) {
                ret+= str;
            }
            return ret;
        }

        function getElement(level, className) {
            var selector = strRepeat(".container ", level + 1) + className;
            return $(selector).first();
        }

        function getDefaultPage(level) {
            return getElement(level, '.ajax-links .default-content').hashValue();
        }

    });
	$("#page_sell_console #sell-home-console-23_").removeClass('btn71_20').html('<img src="../images_2011/searchSale.png"/>').click(function(){
		var saleBrand=$("#saleBrand").attr('value');
		var saleModel=$("#saleModel").attr('value');
		var saleYear=$("#saleYear").attr('value');
	    showCarsForSale(saleBrand,saleModel,saleYear);
	 	}).css('cursor','pointer');
	$(".subCar").live("mouseover",function(){
		$(this).addClass("subCarover");
	});
	$(".subCar").live("mouseout",function(){
	  $(this).removeClass("subCarover");
	});
     $(".sendForm").live('click',function(){
		 var form=$(this).closest('form');
		 if(validator(form))form.submit();
		 return false;
		 });
	$("ul.mainMenu li li").hover(function(){
		$(this).parent("ul").prev("a").addClass("onSub");
		},function(){
		$(this).parent("ul").prev("a").removeClass("onSub");
		})
	$("ul.mainMenu li.sep").html('<img src="../images_2011/sep.png" alt="" width="3" height="55" />');
	$("select.sale").live('change',function () {
		$("select.sale:first").not(this).html('');
          var idArray = "";
		  var boxToFill=$(this).attr("class").split(" ")[1];
		  var box=$(this).attr("id") ;
		  var selectIndex=$(this).index("select.sale");
         $(this).children("option:selected").each(function () {
                idArray += $(this).attr('value') + ",";
              }); 
		 if(selectIndex>0)$.get('../inc/options.asp',{'idArray':$(this).attr("value"),'box':box},function(data){
			  $("#"+boxToFill).html(data);
			  if(urlParams[boxToFill])$('#'+boxToFill+' option[value="'+urlParams[boxToFill]+'"]').attr('selected', 'selected').change(); 
			 }) 
		  
        }) 
	 $(".action a").live('click',function(){
		 var id=$(this).attr('href');
		 if($('#form_'+id).length==0){
			 $(".sellForm").not($('#form_'+id)).prev().css('margin-bottom','6px');
			 $(".sellForm").not($('#form_'+id)).remove();
			 $(this).parent().parent('ul').after('<ul id="form_'+id+'" class="sellForm"><li></li></ul>');
			
			 $('#form_'+id).load('inc/sell_form.asp?sale_id='+id,function(){
				  $(this).prev().css('margin-bottom','0px');
				 $(this).slideDown('fast');
				 
	$('.numeric').ForceNumericOnly();
			 });
		 $(".action a").not($(this)).css("background-position",'0px 0px');
		 $(this).css("background-position",'0px 22px');
		 }else{
			 $('#form_'+id).prev().css('margin-bottom','6px');
			 $('#form_'+id).remove(); 
		  $(this).css("background-position",'0px 0px');
		 }
		 return false;
		 
		 });	
	$(".callMe").live("click",function(){
		var v=$("#rentForm-16_").attr("value"); 
		if(isNumeric(v)&&v.length>8&&v.length<12){
			$.post('inc/callme.asp',{'number':v},function(){
				$("#rentForm-16_").attr("value",'');
				alert('תודה, ניצור עמך קשר בדקות הקרובות');
				});
			}else{
		alert('יש להכניס מספר בין 9-11 ספרות, מספרים בלבד');	
		}
	});	 

	//$('.numeric').keydown(function(event){  
	//	if(event.keyCode!=109&&event.keyCode!=8)return isNumeric(String.fromCharCode(event.keyCode) );
	//});
	$("form").find("input,select,textarea,checkbox").not('.noIndex').each(function(index, element) {
	   $(this).attr("tabindex",index+20);
	});	
	$(".changeDate").click(function(){
		tb_show('','#TB_inline?height=158&amp;width=860&amp;inlineId=smc&modal=true','');
		$("#TB_window").css({"border":"none","background":"none"});
		$(".btn71_20").unbind('click')
		$(".btn71_20").click(function(){
			 setFields(false);
			tb_remove();
			}).css("background-image","url(../images_2011/changeDate.png)").html('&nbsp;');
	});
	if($("#smc").length>0) {
		setFields(false);
	}  
	$("#rent-home-console-45_.btn71_20").click(function(){
			if(validator($(this).parents('form')))setFields(true);
	}).html('המשך');
 
	$("#sell-home-console-23_.btn71_20").click(function(){
		var saleBrand=$("#saleBrand").attr('value');
		var saleModel=$("#saleModel").attr('value');
		var saleYear=$("#saleYear").attr('value');
		window.location='car_sale.asp?saleBrand='+saleBrand+'&saleModel='+saleModel+'&saleYear='+saleYear ;
		});
 if($('#slideshow').length>0 && $('#slideshow a').length>1 )setInterval( "slideSwitch()", 5000 );
   
if(urlParams["saleBrand"]){
	$('#saleBrand option[value="'+urlParams["saleBrand"]+'"]').attr('selected', 'selected').change(); 
  
		var saleBrand=urlParams["saleBrand"];
		var saleModel=urlParams["saleModel"];
		var saleYear=urlParams["saleYear"];
	    showCarsForSale(saleBrand,saleModel,saleYear);
 } 
}); 
  
function showCarsForSale(saleBrand,saleModel,saleYear){
	
		if(saleBrand){
			$('#carListContainer').load('inc/sellData.asp',{'saleBrand':saleBrand,'saleModel':saleModel,'saleYear':saleYear});	
		}
	}
function setFields(l){
	 
	var startDate=$("#startPicker").attr("value");
	var endDDate=$("#endPicker").attr("value");
	var startTime=$("#collectTime").attr("value");
	var endTime=$("#returnTime").attr("value");
	var startLocation=$("#take option:selected").text();
	var endLocation=$("#return option:selected").text();
	var startLocationName=$("#take").attr("value");
	var endLocationName=$("#return").attr("value");
	var branch_id=$("#take").attr("value");
	var startRent="לקיחת הרכב: יום "+startDate+" שעה: "+startTime+" מסניף: "+startLocation;
	var endrent="החזרת הרכב: יום "+endDDate+" שעה: "+endTime+" מסניף: "+endLocation;
	$("#startRent").html(startRent);
	$("#endrent").html(endrent);
	$("#branch_id").attr("value",branch_id)
	$.get('inc/setSession.asp',{'branch_id':branch_id,'startDate':startDate,'endDDate':endDDate,'startTime':startTime,'endTime':endTime,'startLocation':startLocation,'endLocation':startLocationName,'startLocationName':startLocation,'endLocationName':endLocation},function(){
      if(l==true)window.location='rent.asp#0';
		});
	} 
 function validator(f) {
    var valid = true;
    var mailError = false;
    f.find(".req").each(function () { 
        var e = $(this);
        var v = e.attr("value");
        var n = e.attr("name");  
            if (v == ''){
				valid = false;
				e.validationError(false);
			}else if (!IsEmail(v)&&n=='email'){
				mailError=true;
				e.validationError(true);
			}
    });
     if (!valid||mailError) { 
        return false;
    } else {
        return true;
    }
}
function IsEmail(email) {
            var regex = /^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
            if (regex.test(email)) return true;
            else return false;
        } 
function isNumeric(o) {
            var regex = /([0-9])/;
            if (regex.test(Number(o))) return true;
            else return false; 
}
$.fn.validationError = function(e){ 
  		$(this).addClass('notValid').bind("click",function(){ 
			$(this).next(".mailError").hide();
			$(this).removeClass('notValid').unbind("click");
			});
	   if(e)$(this).next(".mailError").show();
  return  ;
};
function fixTip(){
	
$(".tip").wrapInner('<span/>').width(Number($(".tip").children("span").width())+Number($(".tip").css("text-indent").replace("px",""))+20).wrap('<div/>').parent().css({"width":$(".tip").width()}).addClass('tipContainer');
	
	}

function slideSwitch() {
    var $active = $('#slideshow A.active');

    if ( $active.length == 0 ) $active = $('#slideshow A:last');

    var $next =  $active.next().length ? $active.next()
        : $('#slideshow A:first');

    $active.addClass('last-active');

    $next.css({opacity: 0.0})
        .addClass('active')
        .animate({opacity: 1.0}, 1000, function() {
            $active.removeClass('active last-active');
        });
}
$(function(){ 
if($('.swf').length>0)$('.swf').flash({swf:$(".swf").html(),height:602,width:122,wmode:'transparent'  }); 
	});
jQuery.fn.ForceNumericOnly =
function()
{
    return this.each(function()
    {
        $(this).keydown(function(e)
        {
            var key = e.charCode || e.keyCode || 0;
            // allow backspace, tab, delete, arrows, numbers and keypad numbers ONLY
            return (
                key == 8 || 
                key == 9 ||
                key == 46 ||
                (key >= 37 && key <= 40) ||
                (key >= 48 && key <= 57) ||
                (key >= 96 && key <= 105));
        });
    });
};
$(function(){
	
	
	$('.numeric').ForceNumericOnly();
	
	
	});
