/*
CONTADORES.MIARROBA.COM
*/


if( typeof(ServMia)=='undefined' ) ServMia = new Object();
var detectableWithVB = false;

ServMia.Counters = function() {
	// Sacamos los datos ;)
	this.Title = self.document.title
	this.Domain = self.document.location.hostname;
	this.Protocol = self.document.location.protocol;
	this.Port = self.document.location.port;
	this.UserAgent = navigator.userAgent;
	this.Referrer = this.TrueReferrer();
	this.Cookies = this.DetectCookies();
	this.Java = this.DetectJava();
	this.ResX = screen.width;
	this.ResY = screen.height;
	this.Colors = screen.colorDepth;
	this.QuickTime = this.DetectQuickTime();
	this.DetectFlash();
	this.Browser = 'unknown';
	this.BrowserVersion = 'unknown';
	this.OS = 'unknown';
	this.OSVersion = 'unknown';
	this.SearchEngine = '';
	this.Search = '';
	this.Google = '';
	this.Language = '';

	this.DetectLanguage();
	this.DetectOS();
	this.DetectBrowser();
	this.DetectSearchEngine();
}


ServMia.Counters.prototype = {
	TrueReferrer : function() {
		var TempRef = ((self.document.referrer)?self.document.referrer:'');
		if( self!=top && parent.frames.length>0 ) {
			var ParentDomain = self.document.referrer.substring(7).split("/");
			if( ParentDomain[0]==this.Domain ) {
				try {
					if( self.document.referrer==parent.document.location ) {
						TempRef = ((parent.document.referrer)?parent.document.referrer:'');
					}
				} catch(e) {}
			}
		}
		return TempRef;
	},
	DetectLanguage : function() {
		this.Language = ((navigator.language)?navigator.language:navigator.userLanguage).split('-')[0];
		var Foo = new RegExp('^[a-z]{2}$','i');
		if( this.Language.search(Foo)===-1 ) this.Language = 'unknown';
	},
	DetectCookies: function() {
		return (navigator.cookieEnabled)?'si':'no';
	},
	DetectJava: function() {
		return (navigator.javaEnabled())?'si':'no';
	},
	DetectOS : function() {
		var Foo;
		for( var OS in this.ArrayOS ) {
			for( var Version in this.ArrayOS[OS] ) {
				Foo = new RegExp(this.ArrayOS[OS][Version],'ig');
				if( this.UserAgent.search(Foo)!==-1 ) {
					this.OS = OS;
					this.OSVersion = Version;
					return;
				}
			}
		}
	},
	DetectFlash : function() {
		var x;
		var Foo;
		var flashinstalled = 0;
		var flashversion = 'unknown';
		if (navigator.plugins && navigator.plugins.length) {
			flashinstalled = this.DetectPlugin('Shockwave', 'Flash');
			if( flashinstalled==2 ) {
				if( navigator.plugins["Shockwave Flash"].description ) {
					x = navigator.plugins["Shockwave Flash"].description;
					flashversion = parseInt(x.charAt(x.indexOf('.')-1));
				}
			}
		} else if (navigator.mimeTypes && navigator.mimeTypes.length) {
			x = navigator.mimeTypes['application/x-shockwave-flash'];
			if (x && x.enabledPlugin) {
				flashinstalled = 2;
			} else {
				flashinstalled = 1;
			}
		} else if( detectableWithVB ) {
			Foo = detectFlashVersionActiveXControl().split("-");
			flashinstalled = Foo[0];
			flashversion = Foo[1];
		}
		this.Flash = flashinstalled;
		this.FlashVersion = flashversion;
	},
	DetectQuickTime : function() {
		var Found = this.DetectPlugin('QuickTime'); 
		if( Found==0 && detectableWithVB ) {
			Found = detectQuickTimeActiveXControl();
		}
		return Found;
	},
	DetectPlugin : function() {
		var Founds = 0;
		var Plugins = this.DetectPlugin.arguments;
		var Detectable = false;
		var Detected = false;
		var x=0;
		var y=0;

		if( navigator.plugins && navigator.plugins.length>0 ) {
			Detectable = true;
			var NumPlugins = navigator.plugins.length;
			for( x=0; x<NumPlugins; x++ ) {
				Founds = 0;
				for( y=0; y<Plugins.length; y++ ) {
					if( (navigator.plugins[x].name.indexOf(Plugins[y])>=0) || (navigator.plugins[x].description.indexOf(Plugins[y])>=0) ) Founds++;
				}
				if( Founds==Plugins.length ) {
					Detected = true;
					break;
				}
			}
		}
		if( !Detectable ) return 0;
		else if( Detected ) return 2;
		else return 1;
	},
	DetectBrowser : function() {
		var Foo;
		for( var Browser in this.ArrayBrowsers ) {
			Foo = new RegExp(this.ArrayBrowsers[Browser],'ig');
			if( this.UserAgent.search(Foo)!==-1 ) {
				this.Browser = Browser;
				if( Browser!='safari' ) {
					Foo = new RegExp('.*'+this.ArrayBrowsers[Browser]+'.*', 'ig');
				} else {
					Foo = new RegExp('.*Safari\\/(([0-9]{1,3}(\\.[0-9]{1,2})?)?).*', 'ig');
				}
				this.BrowserVersion = this.UserAgent.replace(Foo,'$1');
				if( this.BrowserVersion=='' ) this.BrowserVersion=='unknown';
				return;
			}
		}
	},
	DetectSearchEngine : function() {
		var Foo;
		if( this.Referrer!='' ) {
			var ReferrerDomain = this.Referrer.substring(7).split("/");
			if( ReferrerDomain[0]!=this.Domain ) {
				for( var Engine in this.SearchEngines ) {
					Foo = new RegExp(this.SearchEngines[Engine][0], 'i'); 
					if( ReferrerDomain[0].search(Foo)!==-1 ) {
						this.SearchEngine = Engine;
						Foo = new RegExp('^.*(\\?|&)('+this.SearchEngines[Engine][1]+')=([^&]+).*$','i');
						if( this.Referrer.search(Foo)!==-1 ) {
							this.Search = this.Referrer.replace(Foo, '$3');
						}
						if( Engine=='google' ) {
							this.Google = this.GoogleZone(ReferrerDomain[0]);
							if( this.Google===false ) {
								this.SearchEngine = '';
								this.Search = '';
								this.Google = '';
							}
						}
						return;
					}
				}
			}
		}
	},
	ArrayOS : { // MUY IMPORTANTE EL ORDEN EN EL QUE ESTAN !!!
		win				: {
			vista			: 'Win(dows)? ?NT ?6\\.0',
			w2003			: 'Win(dows)? ?(2003|NT ?5\\.2)',
			wxp				: 'Win(dows)? ?(XP|NT ?5\\.1)',
			w2000			: 'Win(dows)? ?(2000|NT ?5\\.0)',
			wnt				: 'Win(dows)? ?NT( ?4\\.0)?',
			wme				: 'Win(dows)? ?(9x|Me|ME)',
			w98				: 'Win(dows)? ?98',
			w95				: 'Win(dows)? ?95',
			w311			: 'Win3\\.11',
			w31				: 'Win3\\.1',
			wce				: '(Win(dows) ?CE)|(Pocket PC)',
			unknown			: 'Windows|Win ?(16|32)'
		},
		mac		: {
			iphone			: 'iPhone',
			osx				: '(Mac[ _]?(OS ?X|10))',
			ppc				: 'Macintosh.*PPC|PPC|MacOS|Mac_PowerPC|Mac 9',
			m68k			: 'Macintosh.*68K',
			unknown			: 'Macintosh'
		},
		fbsd			: {
			unknown			: 'FreeBSD'
		},
		obsd			: {
			unknown			: 'OpenBSD'
		},
		nbsd			: {
			unknown			: 'NetBSD'
		},
		sos			: {
			unknown			: 'SunOS'
		},
		deb			: {
			unknown			: 'Debian'
		},
		ovms			: {
			unknown			: 'OpenVMS'
		},
		hpux			: {
			unknown			: 'HP-UX'
		},
		cons			: {
			wii				: 'Wii',
			psp				: 'PSP',
			ps3				: 'PLAYSTATION 3',
			ps2				: 'Sony PS2|Playstation',
			xbox			: 'XBoX',
			dc				: 'Dreamcast'
		},
		linux			: {
			unknown			: 'linux|X11|Konqueror|Dillo'
		},
		unix			: {
			unknown			: 'Unix|UNIX'
		},
		amiga			: {
			unknown			: 'Amiga'
		},
		beos			: {
			unknown			: 'BeOS'
		},
		palm			: {
			unknown			: 'Palm'
		},
		symbian			: {
			unknown			: 'SymbianOS'
		},
		os2				: {
			unknown			: 'OS\\/2'
		},
		wtv				: {
			unknown			: 'WebTV'
		},
		ptv				: {
			unknown			: 'PowerTV'
		}
	},
	ArrayBrowsers : { // Importante el orden tambien ;)
		opera			: 'Opera.(([0-9]\\.[0-9]{1,2})?)',
		epiphany		: 'Epiphany.(([0-9]\\.[0-9])?)',
		galeon			: 'Galeon.(([0-9]\\.[0-9])?)',
		firebird		: 'Firebird.(([0-9]\\.[0-9])?)',
		phoenix			: 'Phoenix.(([0-9]\\.[0-9])?)',
		chimera			: 'Chimera.(([0-9]\\.[0-9])?)',
		seamonkey		: 'SeaMonkey.(([0-9]\\.[0-9])?)',
		firefox			: 'Firefox.(([0-9]\\.[0-9])?)',
		netscape		: 'Netscape[0-9]?\\/?(([0-9]\\.[0-9])?)',
		konqueror		: 'Konqueror.(([0-9]\\.[0-9])?)',
		omniweb			: 'OmniWeb.(([0-9]\\.[0-9])?)',
		safari			: 'AppleWebKit',
		camino			: 'Camino.(([0-9]\\.[0-9])?)',
		icab			: 'iCab.(([0-9]\\.[0-9])?)',
		ie				: 'MSIE (([0-9]\\.[0-9]{1,2})?)',
		mozilla			: 'rv:([0-9]\\.[0-9]).*Gecko',
		icebrowser		: 'ICEbrowser\/?v?([0-9]?)'
	},
	SearchEngines : {
		google				: ['google\\.(com?\\.)?[a-z]{2,3}$','p|q'],
		yahoo				: ['yahoo\\.com$', 'p'],
		msn					: ['msn\\.[a-z]{2,3}$', 'q'],
		aol					: ['aol\\.com', 'query'],
		lycos				: ['lycos\\.[a-z]{2,3}$', 'query'],
		ask					: ['ask\\.com$', 'q'],
		altavista			: ['altavista\\.com$', 'q'],
		search				: ['search\\.com$', 'q'],
		netscape			: ['netscape\\.com$', 's'],
		cnn					: ['cnn\\.com$', 'query'],
		looksmart			: ['looksmart\\.com$', 'qt'],
		about				: ['about\\.com$', 'terms'],
		mamma				: ['mamma\\.com$', 'query'],
		alltheweb			: ['alltheweb\\.com$', 'q'],
		gigablast			: ['gigablast\\.com$', 'q'],
		voila				: ['voila\\.fr$', 'kw'],
		virgilio			: ['virgilio\\.com$', 'qs'],
		live				: ['live\\.com$', 'q'],
		baidu				: ['baidu\\.com$', 'wd'],
		alice				: ['alice\\.it$', 'qs'],
		seznam				: ['seznam\\.cz$', 'w'],
		yandex				: ['yandez\\.(com|ru)$', 'text'],
		najdi				: ['najdi\\.si$', 'q']
	},
	GoogleZone : function(ReferrerDomain) {
		var UrlParts = ReferrerDomain.split('.');
		var NumParts = UrlParts.length;
		if( this.Referrer.indexOf('www.google.')!==-1 ) {		
			if( NumParts==4 ) {
				if( UrlParts[2]!='com' && UrlParts[2]!='co' ) {
					return false;
				} else {
					return UrlParts[3].toLowerCase();
				}
			} else if( NumParts==3 ) {
				return UrlParts[2].toLowerCase();
			} else {
				return false;
			}
		} else {
			if( UrlParts[1]=='google' && (NumParts==3 || (NumParts==4 && (UrlParts[2]=='com' || UrlParts[2]=='co'))) ) {
				switch(UrlParts[0])	{
					case 'news':		return 'news';break;
					case 'froogle':		return 'froogle';break;
					case 'translate':	return 'translate';break;
					case 'images':		return 'images';break;
					case 'base':		return 'images';break;
					case 'blogsearch':	return 'blogsearch';break;
					default:			return false;break;
				}
			} else {
				return false;
			}
		}
	}
}


/* Vamos a colocar la parte de VBScript */
if ((navigator.userAgent.indexOf('MSIE')!=-1) && (navigator.userAgent.indexOf('Win')!=-1)) {
	document.writeln('<scr' + 'ipt type="text/vbscript">');

    document.writeln('detectableWithVB = False');
    document.writeln('If ScriptEngineMajorVersion >= 2 then');
    document.writeln('  detectableWithVB = True');
    document.writeln('End If');

    document.writeln('Function detectFlashVersionActiveXControl()');
    document.writeln('  on error resume next');
    document.writeln('  detectFlashVersionActiveXControl = "0-0"');
    document.writeln('  If detectableWithVB Then');
	document.writeln('     detectFlashVersionActiveXControl = "1-0"');
	document.writeln('     For i = 2 to 12'); // ¿¿¿ 12 ??? para no tener que tocar a cada version nueva... :P
    document.writeln('        If Not(IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash." & i))) Then');
	document.writeln(' ');
	document.writeln('        else');
	document.writeln('            detectFlashVersionActiveXControl = "2-" & i');
	document.writeln('        End If');
	document.writeln('     Next');
    document.writeln('  End If');
    document.writeln('End Function');

    document.writeln('Function detectQuickTimeActiveXControl()');
    document.writeln('  on error resume next');
    document.writeln('  detectQuickTimeActiveXControl = 0');
    document.writeln('  If detectableWithVB Then');
    document.writeln('    detectQuickTimeActiveXControl = 1');
    document.writeln('    hasQuickTimeChecker = false');
    document.writeln('    Set hasQuickTimeChecker = CreateObject("QuickTimeCheckObject.QuickTimeCheck.1")');
    document.writeln('    If IsObject(hasQuickTimeChecker) Then');
    document.writeln('      If hasQuickTimeChecker.IsQuickTimeAvailable(0) Then ');
    document.writeln('        detectQuickTimeActiveXControl = 2');
    document.writeln('      End If');
    document.writeln('    End If');
    document.writeln('  End If');
    document.writeln('End Function');

    document.writeln('</scr' + 'ipt>');
}



/* ARRANCAMOS :) */

ContMia = new ServMia.Counters();
document.writeln('<a target="_blank" title="¡Haz click para ver las estadisticas de esta página web!" href="http://contadores.miarroba.com/stats/index.php?id=261859"><img nosave alt="¡Haz click para ver las estadisticas de esta página web!" src="http://contadores.miarroba.com/view.php?tipo=digitos&digitos=dd%3Dazul%26ft%3D4%26frgb%3DFF0000%26lit%3D13697&zona=0&contadorid=261859&ts=1202385144&cd=6be9ef716aab0f2c2596544c1c34d47c&unica=si&nueva=si&sesion=si&domain='+escape(ContMia.Domain)+'&referer='+escape(ContMia.Referrer)+'&os='+escape(ContMia.OS)+'&osv='+escape(ContMia.OSVersion)+'&browser='+escape(ContMia.Browser)+'&browserv='+escape(ContMia.BrowserVersion)+'&screen='+escape(ContMia.ResX+'x'+ContMia.ResY)+'&depth='+escape(ContMia.Colors)+'&lang='+escape(ContMia.Language)+'&cookies='+escape(ContMia.Cookies)+'&java='+escape(ContMia.Java)+'&flash='+escape(ContMia.Flash)+'&flashv='+escape(ContMia.FlashVersion)+'&quick='+escape(ContMia.QuickTime)+'&search='+escape(ContMia.Search)+'&sengine='+escape(ContMia.SearchEngine)+'&google='+escape(ContMia.Google)+'&url='+escape(self.document.URL)+'" border="0"></a>');
