j$(function() {
	swapValue = [];
	j$("input.text, textarea.text").each(function(i){
		swapValue[i] = j$(this).val();
		j$(this).focus(function(){
			if (j$(this).val() == swapValue[i]) {
				j$(this).val("");
			}
		}).blur(function(){
			if (j$.trim(j$(this).val()) == "") {
				j$(this).val(swapValue[i]);
			}
		});
	});
	

});

function changeEcoValues(slideElement,values) {
    
    var selects = slideElement.find('.ecoSelect');
    var rangeWraps = slideElement.find('.ecoRangeWrap');
    var vals = rangeWraps.find('.val');
	var labels = new Array(
		selects.eq(0).find('option').eq(values[0]).parent('optgroup').attr('label'),
		selects.eq(1).find('option').eq(values[1]).parent('optgroup').attr('label')
	);
	
    j$.each(rangeWraps, function(i, val) {
		if (i == 0) { var posClass = 'ecoLow'; } 
		if (i == 1) { var posClass = 'ecoHigh'; }
		var ecoclass = 'ecoRangeWrap '+posClass+' '+labels[i];
		j$(this).removeClass().addClass(ecoclass);
    });
    
    var int = 0
    j$.each(selects, function(i, val) {
    	for(var j = 0; j <= 1; j++) {
    		vals.eq(int).html(j$(this).find('option').eq(values[i]).text().split(', ')[j]);
    		int++;
    		
    	}
    });
}


function changePriceValues(slideElement,values) {
    
    var selects = slideElement.find('.priceSelect');
    var priceRangeWrap = slideElement.find('.priceRangeWrap');    	
    j$.each(selects, function(i, val) {
    	j$(priceRangeWrap[i]).html(j$(this).find('option').eq(values[i]).text());
	});
}

function setRating(value, link) {
	j$(link).parents('.ratingWrap').find('.textRating').html(value+' / 5');
}
		
function createOverlay(id) {
	j$('#overlays').html('<div class="overlay" id="' + id + '"><div class="contentWrap"></div></div>');
}

function destoryOverlay() {
	j$('#overlays').html('');
}

var BrowserDetect = {
	init: function () {
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
		this.OS = this.searchString(this.dataOS) || "an unknown OS";
	},
	searchString: function (data) {
		for (var i=0;i<data.length;i++)	{
			var dataString = data[i].string;
			var dataProp = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString) {
				if (dataString.indexOf(data[i].subString) != -1)
					return data[i].identity;
				}
			else if (dataProp)
				return data[i].identity;
		}
	},
	searchVersion: function (dataString) {
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1) return;
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	},
	dataBrowser: [
		{
			string: navigator.userAgent,
			subString: "Chrome",
			identity: "Chrome"
		},
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari",
			versionSearch: "Version"
		},
		{
			prop: window.opera,
			identity: "Opera"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Firefox"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],
	dataOS : [
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			   string: navigator.userAgent,
			   subString: "iPhone",
			   identity: "iPhone/iPod"
	    },
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]

};
BrowserDetect.init();


///********************************************************************************
/// PageAppendRequest method
/// Modify provided url to append a new param key/value (or update if already exists)
/// remark : if no url is provided, then current window.location.href value is used
///********************************************************************************
//#region 
jQuery.fn.PageAppendRequest = function(url, paramname, paramvalue) {
    var ret = "";
    var pos1 = -1;
    var pos2 = -1;
    var sub = "";
    if (url == null || url.length == 0) {
        ret = document.location.href;
    }
    else {
        ret = url;
    }

    pos1 = ret.indexOf("?" + paramname + "=");
    if (pos1 >= 0) {
        sub = ret.substring(pos1 + ("?" + paramname).length);
        pos2 = sub.indexOf('&');
        if (pos2 >= 0) {
            ret = ret.replace("?" + paramname + sub.substring(0, pos2), "?" + paramname + "=" + paramvalue);
        }
        else {
            ret = ret.replace("?" + paramname + sub, "?" + paramname + "=" + paramvalue);
        }
    }
    else {
        pos1 = ret.indexOf("&" + paramname + "=");
        if (pos1 >= 0) {
            sub = ret.substring(pos1 + ("&" + paramname).length);
            pos2 = sub.indexOf('&');
            if (pos2 >= 0) {
                ret = ret.replace("&" + paramname + sub.substring(0, pos2), "&" + paramname + "=" + paramvalue);
            }
            else {
                ret = ret.replace("&" + paramname + sub, "&" + paramname + "=" + paramvalue);
            }

        }
        else {
            if (ret.indexOf('?') >= 0) {
                ret += ("&" + paramname + "=" + paramvalue);
            }
            else {
                ret += ("?" + paramname + "=" + paramvalue);
            }
        }
    }

    return ret;
};
//#endregion


function InitActu(Page) {
    var url = '/UICarWeGo/Ajax/Actualite/RefreshActu.aspx?Tri=D1129&FamiId=1006&PageSize=4&PageIndex=' + Page;
    j$.ajax({
        url: url,
        success: function(data) {
            j$('#ActuContainer').html(data);
        },
        error : function(data)
        {
            alert(data);
        }
    });
}

function InitDossier(Page) {
    var url = '/UICarWeGo/Ajax/Dossier/RefreshDossier.aspx?Tri=D1129&FamiId=1005&PageSize=4&PageIndex=' + Page;
    j$.ajax({
        url: url,
        success: function(data) {
            j$('#ActuContainer').html(data);
        },
        error: function(data) {
            alert(data);
        }
    });
}

function InitPreviousDossier() {
    var url = '/UICarWeGo/Ajax/Dossier/RefreshPreviousDossier.aspx?Tri=D1129&FamiId=1005&PageSize=3&PageIndex=1';
    j$.ajax({
        url: url,
        success: function(data) {
            j$('#PreviousDisplayer').html(data);
        },
        error: function(data) {
            alert(data);
        }
    });
}

function InitPreviousActu() {
    var url = '/UICarWeGo/Ajax/Actualite/RefreshPreviousActu.aspx?Tri=D1129&FamiId=1006&PageSize=3&PageIndex=1';
    j$.ajax({
        url: url,
        success: function(data) {
        j$('#PreviousDisplayer').html(data);
        },
        error: function(data) {
            alert(data);
        }
    });
}


