	averdoCheckMobile = {
		cookieName : "averdo_no_mobile",
		mobileAgents : RegExp( "240x320|android|benq|blackberry|iphone|ipod|mda|midp|mot-|netfront|nokia|opera mini|panasonic|philips|pocket pc|portalmmm|sagem|samsung|sda|sgh-|sharp|sie-|sonyericsson|symbian|vodafone|windows ce|xda" ),
		mobileHost : "m.averdo.de",
		resetParam : "no_mobile_reset",

		createCookie : function( k, v, days ) {
			if( days ) {
				var date = new Date();
				date.setTime( date.getTime() + ( days * 24 * 60 * 60 * 1000 ) );
				var expires = "; expires=" + date.toGMTString();
			}
			else {
				var expires = "";
			}
			document.cookie = k + "=" + v + expires + "; path=/" + "; domain=" + averdoCheckMobile.getCookieDomain();
		},

		eraseCookie : function( k ) {
			averdoCheckMobile.createCookie( k, "", -1 );
		},

		getCookieDomain : function() {
			var a = document.location.host.split( ":" )[ 0 ].split( "." );
			a.shift();
			a.unshift( "" );
			return a.join( "." );
		},

		getNoMobileCookie : function() {
			var a = averdoCheckMobile.readCookie( averdoCheckMobile.cookieName );
			return a ? ( a == "yes" ? true : false ) : null;
		},

		getQuestion : function() {
			return "Zur mobilen Version wechseln?";
		},

		isMobileDevice : function() {
			return averdoCheckMobile.mobileAgents.test( navigator.userAgent.toLowerCase() )
		},

		isMobileHost : function() {
			return document.location.host.toLowerCase() == averdoCheckMobile.mobileHost.toLowerCase();
		},

		readCookie : function( a ) {
			a = a + "=";
			for( var d = document.cookie.split( ";" ), c = 0; c < d.length; c ++ ) {
				for( var b = d[ c ]; b.charAt( 0 ) == " "; ) {
					b = b.substring( 1, b.length );
				}
				if( b.indexOf( a ) == 0 ) {
					return b.substring( a.length, b.length );
				}
			}
			return null;
		},


		redirectIfMobile : function( d ) {
			if( ! averdoCheckMobile.isMobileHost() ) {
				if( ! averdoCheckMobile.resetNoMobileCookie() ) {
					if( ! averdoCheckMobile.getNoMobileCookie() ) {
						if( averdoCheckMobile.isMobileDevice() ) {
							if( confirm( averdoCheckMobile.getQuestion() ) ) {
								document.location = d ? d : "http://" + averdoCheckMobile.mobileHost + document.location.pathname + document.location.search;
							}
							else {
								averdoCheckMobile.setNoMobileCookie();
							}
						}
					}
				}
			}
		},

		resetNoMobileCookie : function() {
			if( document.location.search.match( RegExp( averdoCheckMobile.resetParam + "=yes" ) ) ) {
				averdoCheckMobile.eraseCookie( averdoCheckMobile.cookieName );
				return true;
			}
			return false;
		},

		setNoMobileCookie : function() {
			averdoCheckMobile.createCookie( averdoCheckMobile.cookieName, "yes", 7 )
		}
	};

averdoCheckMobile.redirectIfMobile();

