/**
 * jQuery.ScrollTo - Easy element scrolling using jQuery.
 * Copyright (c) 2007-2009 Ariel Flesler - aflesler(at)gmail(dot)com | http://flesler.blogspot.com
 * Dual licensed under MIT and GPL.
 * Date: 5/25/2009
 * @author Ariel Flesler
 * @version 1.4.2
 *
 * http://flesler.blogspot.com/2007/10/jqueryscrollto.html
 */
;(function(d){var k=d.scrollTo=function(a,i,e){d(window).scrollTo(a,i,e)};k.defaults={axis:'xy',duration:parseFloat(d.fn.jquery)>=1.3?0:1};k.window=function(a){return d(window)._scrollable()};d.fn._scrollable=function(){return this.map(function(){var a=this,i=!a.nodeName||d.inArray(a.nodeName.toLowerCase(),['iframe','#document','html','body'])!=-1;if(!i)return a;var e=(a.contentWindow||a).document||a.ownerDocument||a;return d.browser.safari||e.compatMode=='BackCompat'?e.body:e.documentElement})};d.fn.scrollTo=function(n,j,b){if(typeof j=='object'){b=j;j=0}if(typeof b=='function')b={onAfter:b};if(n=='max')n=9e9;b=d.extend({},k.defaults,b);j=j||b.speed||b.duration;b.queue=b.queue&&b.axis.length>1;if(b.queue)j/=2;b.offset=p(b.offset);b.over=p(b.over);return this._scrollable().each(function(){var q=this,r=d(q),f=n,s,g={},u=r.is('html,body');switch(typeof f){case'number':case'string':if(/^([+-]=)?\d+(\.\d+)?(px|%)?$/.test(f)){f=p(f);break}f=d(f,this);case'object':if(f.is||f.style)s=(f=d(f)).offset()}d.each(b.axis.split(''),function(a,i){var e=i=='x'?'Left':'Top',h=e.toLowerCase(),c='scroll'+e,l=q[c],m=k.max(q,i);if(s){g[c]=s[h]+(u?0:l-r.offset()[h]);if(b.margin){g[c]-=parseInt(f.css('margin'+e))||0;g[c]-=parseInt(f.css('border'+e+'Width'))||0}g[c]+=b.offset[h]||0;if(b.over[h])g[c]+=f[i=='x'?'width':'height']()*b.over[h]}else{var o=f[h];g[c]=o.slice&&o.slice(-1)=='%'?parseFloat(o)/100*m:o}if(/^\d+$/.test(g[c]))g[c]=g[c]<=0?0:Math.min(g[c],m);if(!a&&b.queue){if(l!=g[c])t(b.onAfterFirst);delete g[c]}});t(b.onAfter);function t(a){r.animate(g,j,b.easing,a&&function(){a.call(this,n,b)})}}).end()};k.max=function(a,i){var e=i=='x'?'Width':'Height',h='scroll'+e;if(!d(a).is('html,body'))return a[h]-d(a)[e.toLowerCase()]();var c='client'+e,l=a.ownerDocument.documentElement,m=a.ownerDocument.body;return Math.max(l[h],m[h])-Math.min(l[c],m[c])};function p(a){return typeof a=='object'?a:{top:a,left:a}}})(jQuery);


/* hackcheck: ask for some specific browsers in order to offer them specific hack-sheets ... */
var ua = navigator.userAgent.toLowerCase(), hacks = "";
var hacks = ((ua.indexOf('opera')!=-1)&&(parseInt(ua.substr(ua.indexOf('opera')+5))==7)?"op7":hacks);				// opera 7
var hacks = (window.opera && opera.version && (parseInt(opera.version())=='8')?"op8":hacks);						// opera 8
var hacks = (window.opera && opera.version && (opera.version()=='9.00' || opera.version()=='9.01')?"op901":hacks);	// opera 9.01
var hacks = ((ua.indexOf('netscape')!=-1)&&(parseInt(ua.substr(ua.indexOf('netscape')+9))==7)?"ns7":hacks);			// netscape 7
var hacks = ((ua.indexOf('netscape')!=-1)&&(parseInt(ua.substr(ua.indexOf('netscape')+10))==6)?"ns6":hacks);		// netscape 6
if (hacks=="ns6") disableStyles();



/* init some inits */
function initMain() {
	initNavToggles();
}
//window.onload=initMain;
$(function() {
	$('input.text[alt]').each(function(){
		var defaultVal = $(this).attr('alt');
		var actVal = $(this).attr('value');
		if (defaultVal && defaultVal.length>0 && !actVal) {
			this.value = defaultVal;
			$(this).addClass('prefilled');
			$(this).blur(function(){inputDefaultToggle(this,'',defaultVal)});
			$(this).focus(function(){inputDefaultToggle(this,defaultVal,'')});
		}
	});
	initMain();
	// extrajumplinks 4 tabs
	$('a[rel*=opentab]').click(function (e) {
		e.preventDefault();
		var dest = $(this).attr('href');
		var destObj = $('#tabContainer a[href=' + dest + ']');
		var destPos =  destObj.offset().top;
//		window.scrollTo(0, destPos-10);
		destObj.click();
		$(window).scrollTo({left: 0, top: destPos - 10}, 500);
	});
});


$(window).load(function() {
	showDecoration();
});

function initNavToggles() {
	// dropdown "douglas aktuell"
	oid("mn-douglasaktuell-drop").onmouseover=function(){ct('mn-douglasaktuell')};
	oid("mn-douglasaktuell-drop").onmouseout=function(){navToggleTimed('mn-douglasaktuell', 0, 1000)};
	oid("mn-douglasaktuell-toggle").onclick=function(){navToggle('mn-douglasaktuell', 1)};
	oid("mn-douglasaktuell-toggle").onmouseover=function(){ct('mn-douglasaktuell')};
	oid("mn-douglasaktuell-toggle").onmouseout=function(){navToggleTimed('mn-douglasaktuell', 0, 1000)};

	// dropdown "persoenliche navigation"
	oid("persnav-toggle").href = "javascript:void(0);";
	oid("persnav-drop").onmouseover=function(){ct('persnav')};
	oid("persnav-drop").onmouseout=function(){navToggleTimed('persnav', 0, 1000)};
	oid("persnav-toggle").onclick=function(){navToggle('persnav', 1)};
	oid("persnav-toggle").onmouseover=function(){ct('persnav')};
	oid("persnav-toggle").onmouseout=function(){navToggleTimed('persnav', 0, 1000)};

	// dropdown "marken finden"
	oid("brand-toggle").href = "javascript:void(0);";
	oid("brand-drop").onmouseover=function(){ct('brand')};
	oid("brand-drop").onmouseout=function(){navToggleTimed('brand', 0, 1000)};
	oid("brand-toggle").onclick=function(){navToggle('brand', 1)};
	oid("brand-toggle").onmouseover=function(){ct('brand')};
	oid("brand-toggle").onmouseout=function(){navToggleTimed('brand', 0, 1000)};

	// dropdown "douglas card"
	oid("douglascard-toggle").href = "javascript:void(0);";
	oid("douglascard-drop").onmouseover=function(){ct('douglascard')};
	oid("douglascard-drop").onmouseout=function(){navToggleTimed('douglascard', 0, 200)};
	oid("douglascard-toggle").onclick=function(){navToggle('douglascard', 1)};
	oid("douglascard-toggle").onmouseover=function(){ct('douglascard');navToggle('douglascard', 1)};
	oid("douglascard-toggle").onmouseout=function(){navToggleTimed('douglascard', 0, 200)};
}




/* formfield-default-value-toggle */
function inputDefaultToggle(field, condtxt, valtxt) {
	if (field.value == condtxt) {
		field.value = valtxt;
		if (condtxt=='') $(field).addClass('prefilled');
	} else {
		$(field).removeClass('prefilled');
	}
}


function bindKeyboardNavBrands() {
	$('#brand-drop li a').each(function(){
		if (!$(this).parent().hasClass('first')) {
			$(this).attr('rel', $(this).text().toUpperCase());
		}
	});
	var chr = '';
	var to;
	$('body').bind('keydown', function(ev){
		if(to) clearTimeout(to);
		chr += String.fromCharCode(ev.which);
		$('#brand-drop li a[rel^=' + chr + ']:first').focus();
		to = setTimeout(function(){chr=''}, 1000);
	});
}

function unbindKeyboardNavBrands() {
	$('body').unbind('keydown');
}


/* navigations-toggle */
function navToggle(nav, v) {
	var dropMenu = oid(nav+'-drop');
	var dropLink = oid(nav+'-toggle');
	var vnew = v==1?0:1;
	if (dropMenu!=false) {
		//dropMenu.style.clip='rect(0px, 202px, 0px, 0px)';
		dropMenu.style.display = ((v==1)?'block':'none');
		if (v==1) {
			//var mTop = dropMenu.offsetTop;
			//var mHeight = dropMenu.offsetHeight;
			//slideOut(nav, 0, mTop, mHeight);
			$(dropMenu).fadeIn();
			if (nav=='brand') {
				bindKeyboardNavBrands();
			}
		}
		if (dropLink!=false) dropLink.onclick=function(){navToggle(nav, vnew)};
		if (v==0) {
			if (dropLink!=false) dropLink.blur();
			ct(to[nav]);
			if (nav=='brand') {
				unbindKeyboardNavBrands();
			}
		}
	}
}
var to = new Array();
function navToggleTimed(nav, v, offs) {
	to[nav] = setTimeout("navToggle('"+nav+"', '"+v+"')", offs);
}

function slideOut(nav, step, mTop, mHeight) {
	var dropMenu = oid(nav+'-drop');
	var step = parseInt(step);
	var mTop = parseInt(mTop);
	var mHeight = parseInt(mHeight);
	var crop = mHeight-step;
	dropMenu.style.clip='rect('+crop+'px, 202px, '+mHeight+'px, 0px)';
	dropMenu.style.top=(crop-mTop)*-1+'px';
	var grow=Math.floor(mHeight/7);
	step=step+grow;
	if (step<=mHeight) var xx = setTimeout("slideOut('"+nav+"', '"+step+"', '"+mTop+"', '"+mHeight+"')", 20);
	else dropMenu.style.top=mTop+'px';

}

function showDecoration() {
	var marginX = 24;
	var marginY = 210;
	var positionY = 235; // 445 - marginY
	var alignmentX = '';

	if ($('#contentbox .content') && $('#contentbox .content').offset() && $('.decoration img') && !$('#page-wrap').hasClass('overlay-nojs')) {
		var contentHeight = $('#contentbox .content').offset().top + $('#contentbox .content').height();

		$('.decoration img').each(function(index, elm) {
			$(elm).parent().show();
			var elmHeight = $(elm).height();
			var elmWidth = $(elm).width();

			positionY += marginY;
			
			if ((positionY + elmHeight) < contentHeight) {
				if (index%2 != 0) {
					alignmentX = 'right: -' + (elmWidth + marginX) + 'px';
				} else {
					alignmentX = 'left: -' + (elmWidth + marginX) + 'px';
				}
				$(elm).parent().attr('style', 'display: block; position: absolute; ' + alignmentX + '; top: ' + positionY + 'px;');
				positionY += elmHeight;
			} else {
				$(elm).parent().hide();
			}
		});
	}
}



/* object-handler and stuff */
function otn(n) { // get object by tag-name
    return (document.getElementsByTagName?(document.getElementsByTagName(n)?document.getElementsByTagName(n):false):(document.all?(document.all(n)?document.all(n):false):false));
}
function oid(n) { // get object by ID
    return (document.getElementById?(document.getElementById(n)?document.getElementById(n):false):(document.all?(document.all(n)?document.all(n):false):false));
}
function ct(n) { // clear time-out
	clearTimeout(to[n]);
}



/* pure flash-abfrage */
tfFlashPlayerVersion = function() {
	// ie
	try {
		try {
			// avoid fp6 minor version lookup issues
			// see: http://blog.deconcept.com/2006/01/11/getvariable-setvariable-crash-internet-explorer-flash-6/
			var axo = new ActiveXObject('ShockwaveFlash.ShockwaveFlash.6');
			try { axo.AllowScriptAccess = 'always';	} 
			catch(e) { return '6,0,0'; }				
		} catch(e) {}
		return new ActiveXObject('ShockwaveFlash.ShockwaveFlash').GetVariable('$version').replace(/\D+/g, ',').match(/^,?(.+),?$/)[1];
	// other browsers
	} catch(e) {
		try {
			if(navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin){
				return (navigator.plugins["Shockwave Flash 2.0"] || navigator.plugins["Shockwave Flash"]).description.replace(/\D+/g, ",").match(/^,?(.+),?$/)[1];
			}
		} catch(e) {}		
	}
	return '0,0,0';
};
/* konkrete flash-abfrage auf major-version (reingabe von benoetigter versionsnummer | rueckgabe true, wenn mind. diese version installiert ist) */
tfFlashVersionCheck = function(nv) {
	if (parseInt(tfFlashPlayerVersion())>=nv) {
		return true;
	} else { 
		return false;
	}
};




/* window-handler */

/* das original :-) */
function popit(file,winname,prop) {
	window.open(file,winname,prop);
}

/* ein paar spezielle ... */
function openWindow(url, tar, w, h, opt) {
    var opts = '';
    if (typeof opt != 'undefined' && opt.length>0) opts = ','+opt;
    var win = window.open(url, tar, 'width='+w+',height='+h+opts); 
    win.focus(); 
    return win;
}
function winHelp(t) { // --> specific-sized popup (example)
    var w = 490;
    var h = 490;
    var url = t.href;
    var targ = t.target;
    var win = openWindow(url, targ, w, h, 'scrollbars=yes,resizable=yes');
    return false;
}
function winSize(t,w,h) { // --> free-sized popup
    var url = t.href;
    var targ = t.target;
    var win = openWindow(url, targ, w, h, 'scrollbars=yes,resizable=yes');
    return false;
}
function winBig(t) { // --> big-sized popup (800x600)
    var mw = 800;
    var mh = 600;
    var w = screen.availWidth<mw?screen.availWidth:mw;
    var h = screen.availHeight<mh?screen.availHeight:mh;
    var url = t.href;
    var targ = t.target;
    var win = openWindow(url, targ, w, h, 'scrollbars=yes,resizable=yes');
    return false;
}
function winMax(t) { // --> max-sized popup
    var w = screen.availWidth;
    var h = screen.availHeight;
    var url = t.href;
    var targ = t.target;
    var win = openWindow(url, targ, w, h, 'scrollbars=yes,resizable=yes');
    win.moveTo(0,0);
    return false;
}




/* cookie-handler */
function getCookie(cName) {
	var back 	= false;
	var cookies = document.cookie.split(';');
	var len = cookies.length;
	for(var i=0;i < len;i++) {
		cookie = cookies[i];
        while (cookie.charAt(0)==' ') cookie = cookie.substring(1,cookie.length);
		pair = cookie.split('=');
		if (pair[0] == cName) back = pair[1];		
	}
	return back;
}
function setCookie(cName,cValue) {
	var date = new Date();
	date.setTime(date.getTime()+(7*24*60*60*1000));	
	cookies = cName + '=' + cValue + '; path=/; expires=' + date.toGMTString();
	document.cookie = cookies;
}



/* stylesheet-handler */
function disableStyles() {
    for (i=0; (c=document.getElementsByTagName("link")[i]); i++) {
        if(c.getAttribute("rel").toLowerCase()=="stylesheet") {
            c.disabled = true;
        }
    }
}

function showContent(ctn){
	ctn.style.display = 'block';
}
function hideContent(ctn){
	ctn.style.display = 'none';
}


