// JavaScript Document

var Scale = {
	
	initOnDomready: function() {
		
		$(document.body).addClass(Browser.Engine.name);
		
		// search for dropshadow images
		$$('div.ds-image').each(dsfunc = function(o, i) {
			
			if (o.getFirst().getSize().x == 0) {
				var a = arguments;
				setTimeout(function() { a.callee.apply(this, a) }, 10);
				return;
			}
			var size = o.getSize();
			if (size.x <= 20) {
				var a = arguments;
				setTimeout(function() { a.callee.apply(this, a) }, 10);
				return;
			}

			// o has 1px border for the case of no JS support
			o.setStyle('border', '0');
		
			var ds = new Element('div', {'class':'ds', 'styles':{'width':(size.x+10)+'px', 'height':(size.y+10)+'px'}});
			var c1 = new Element('div', {'class':'c1'});
			var c2 = new Element('div', {'class':'c2'});
			var c3 = new Element('div', {'class':'c3'});
			var c4 = new Element('div', {'class':'c4'});
			var s1 = new Element('div', {'class':'s1', 'styles':{'width':(size.x+10-24)+'px'}});
			var s2 = new Element('div', {'class':'s2', 'styles':{'height':(size.y+10-24)+'px'}});
			var s3 = new Element('div', {'class':'s3', 'styles':{'width':(size.x+10-24)+'px'}});
			var s4 = new Element('div', {'class':'s4', 'styles':{'height':(size.y+10-24)+'px'}});
			var bg = new Element('div', {'class':'bg', 'styles':{'width':size.x+'px', 'height':size.y+'px'}});
			
			ds.inject(o, 'top');
			c1.inject(ds);
			c2.inject(ds);
			c3.inject(ds);
			c4.inject(ds);
			s1.inject(ds);
			s2.inject(ds);
			s3.inject(ds);
			s4.inject(ds);
			bg.inject(ds);
			
		});
		
		$$('img.ds-image').each(function(o, i) {
			var wrapper = new Element('div', {'class': o.get('class'), 'styles': o.getStyles('margin') });
			o.setStyles({border: 0, padding: 0, margin: 0});
			o.clone().inject(wrapper);
			wrapper.replaces(o);
			return dsfunc(wrapper, i);
		});

		// stylesheet replace if no "Calibri" device font is provided - using flash for detection
		var cont = new Element('div', {
			'id':'_fontChecker',
			'styles':{
				'position':'absolute',
				'top':0,
				'left':0,
				'width':'50px',
				'height':'50px'
			}
		});
		cont.inject(document.body, 'top');
		
		var fontChecker = new Swiff('/includes/fontChecker.swf', {
			'width':'100px',
			'height':'100px',
			'container':cont,
			'vars':{
				'fontName':'Calibri'
			}
		});
		
		// het etikai alapelv oldalon default ures pontok jelennek meg, azt js tolti fel a megfelelo szamkepekkel.
		$$('div.het-elv ol').each(function(ol) {
			ol.getChildren().each(function(li, idx) {
				li.setStyle('background-image', 'url(/images/ol-' + (idx + 1) + '.gif)')
			});
		})
		
		$$("area").forEach(function(el) {
			el.addEvent("click", function(el) {
				el.target.blur();
			})
		})
	}
	
}

function fontCheck(hasFont, fontName) {
	if (!hasFont) {
		$(document.body).addClass('noCalibri');
	}
	$('_fontChecker').dispose();
}


window.addEvent('domready', function() {
	Scale.initOnDomready();
});


