function $table(r, c, options, fn) {
	var table = new Element("TABLE", options) ; 
	var tbody = new Element("TBODY") ; 
	table.appendChild(tbody) ;
	(r).times(function() {
		tbody.appendChild(new Element("TR")) ;
		(c).times(function() {
			$(tbody).getLast().appendChild(new Element("TD")) ;
		}) ;
	}) ;
	return table ;
}

function $for(obj, b) {
	var h = '' ;
	for (var i in obj) {
		h += i + "=" + obj[i] + "\n\n" ;
	}
	if (!b)
		alert(h) ;
	else 
		return h ;
}


/*
<div class="deneme">azat türkmen</div>
var box = new CompBox($$(".deneme"), {id:'Kutu1'}) ;
*/
var CompBox = new Class({
	options: {},
	initialize: function(elements, options) {
		this.options = options ;
		$$(elements).each(this.build, this) ;
	},
	build: function(el) {
		this.container = $table(3,3,{border:0, cellPadding:0, cellSpacing:0, id: this.options.id}).inject(el.parentNode) ;
		var rows = this.container.rows ;
		rows[0].cells[0].setProperty('class', 'CompBox-0') ;
		rows[0].cells[1].setProperty('class', 'CompBox-1') ;
		rows[0].cells[2].setProperty('class', 'CompBox-2') ;
		rows[1].cells[2].setProperty('class', 'CompBox-3') ;
		rows[2].cells[2].setProperty('class', 'CompBox-4') ;
		rows[2].cells[1].setProperty('class', 'CompBox-5') ;
		rows[2].cells[0].setProperty('class', 'CompBox-6') ;
		rows[1].cells[0].setProperty('class', 'CompBox-7') ;
		rows[1].cells[1].setProperty('class', 'CompBox-Center').setProperty('id', this.options.id + 'CompBox-Center') ;
		el.inject(rows[1].cells[1]) ;
	}
}) ;


(function() { return;
	$$('.blink').each(function(element) {
		element.setStyles({'color': 'red', 'text-decoration':  element.getStyle('text-decoration')=='underline'?'none':'underline'}) ;
	}) ;
}).periodical(500) ;






var TDom = {
	isOwner: function(element, owner) {
		while (element = element.parentNode) {
			if (element == owner) {
				return true ;
			}
		}
		return false ;
	},
	nodeIndex: function(node) {
		var x = -1 ; ;
		for (var i = 0 ; i < node.parentNode.childNodes.length ; i++) {
			var child = node.parentNode.childNodes[i] ;
			if (!child.tagName) continue ;
			x++ ;
			if (node == child) {
				return x ;
			}
		}
	},
	selectRange:function(element, intStart, intEnd) {
		var range = element.createTextRange();
		range.moveStart('character', intStart);
		range.moveEnd('character', (element.value.substring(intStart).length*-1) + (intEnd - intStart));
		range.select();
	},
	n2o: function(node) {
		var object = {} ;
		for (var i = 0 ; i < node.attributes.length ; i++) {
			var attribute = node.attributes[i] ;
			object[attribute.name] = attribute.value ;
		}
		return object ;
	},
	s2n: function(str, isRoot) {
		if (window.ActiveXObject) {
			var xdom = new ActiveXObject("Microsoft.XMLDOM") ;
			xdom.async = "false" ;
			xdom.loadXML(str) ;
		} else { 
			var parser = new DOMParser() ;
			var xdom = parser.parseFromString(str, "text/xml") ;
		}
		return isRoot ? xdom : xdom.documentElement ;
	}
}



window.addEvent('load', 
	function() { 
		$$('form').each(function(form) {
			var requireds = $(form).getElements('[required*=]').setStyles({'background-color': '#FFF0F0'}) ;
			if (requireds.length) $(form).addEvent('submit', function(event) {
					event = new Event(event) ;
					var result = true ;
					for (var i = 0 ; i < requireds.length ; i++) {
						var element = requireds[i] ;
						var value = element.getProperty("value").trim() ;
						if (!value) {
							alert("L\u00FCtfen '" + element.getProperty("required")+"' alan\u0131n\u0131 bo\u015F b\u0131rakmay\u0131n\u0131z.") ;
							result = false ;
							break ;
						}
						if (element.getProperty("isEmail") && value && !value.isEmail()) {
							alert("L\u00FCtfen '" + element.getProperty("isEmail") + "' alan\u0131ndaki eposta adresi yaln\u0131\u015F. L\u00FCtfen d\u00FCzeltiniz.") ;
							result = false ;
							break ;
						}
					}
					if (!result) {
						event.stop() ;
					}
					return result ;
			}) ;
		})
	}
) ;


window.addEvent('load', function() {
	if (!$('kwicks')) {
		return ;
	}
	var SZ_NORMAL = 65, SZ_SMALL = 41, SZ_FULL = 215 ;
	var kwicks = $$('#kwicks .kwick') ;
	var fx = new Fx.Elements(kwicks, {wait: false, duration: 300, transition: Fx.Transitions.Back.easeOut});
	kwicks.each(function(kwick, i) {
		kwick.setStyle('height', SZ_NORMAL) ;
		if (href = kwick.getProperty('href')) {
			kwick.setStyle('cursor', 'pointer') ;
			kwick.addEvent('click', function(){location.href = this.getProperty('href')}) ;
		}
		$(kwick.getElementsByTagName("div")[0]).setHTML('&nbsp;') ;
		kwick.addEvent('mouseenter', function() {
			var o = {} ;
			o[i] = {height: [kwick.getStyle('height').toInt(), SZ_FULL]}
			kwicks.each(function(other, j) {
				if(i != j) {
					var w = other.getStyle('height').toInt();
					if(w != SZ_SMALL) o[j] = {height: [w, SZ_SMALL]};
				}
			});
			fx.start(o) ;
		}) ;
	});
	$('kwicks').addEvent('mouseleave', function() {
		var o = {};
		kwicks.each(function(kwick, i) {
			o[i] = {height: [kwick.getStyle('height').toInt(), SZ_NORMAL]}
		});
		fx.start(o) ;
	})
}) ;

window.addEvent('load', function() {
	($(document.body).getElements('a[user_info]')).each(function(element) {
		var coords = element.getCoordinates() ;
		element.preview = new Element('img').setProperty('width', 100).setStyles({'position': 'absolute', 'border':'1px solid #FF6600', 'opacity': 0, 'top': coords.top + element.offsetHeight + 5, 'left': coords.left}).inject(element.getParent()) ;
		element.preview.setProperty('src', '../iletisim/' + element.getProperty('user_info')) ;
		element.addEvent('mouseover', function() {
			var coords = this.getCoordinates() ;
			this.preview.setStyle('left', coords.left);
			this.fxe = new Fx.Styles(this.preview).start({'opacity':1, 'top': coords.top + this.offsetHeight}) ;
		}) ;
		element.addEvent('mouseout', function() {
			this.fxe.stop() ;
			this.preview.setStyles({'opacity':0, 'top':coords.top + element.offsetHeight + 5}) ;
		}) ;
	}) ;
}) ;

window.addEvent('load', function() {
	new SmoothScroll();
}) ;

function mlbox(id, domain) {
	location.href = "mailto:" + id + "@" + (domain?domain:"istanbul.edu.tr") ;
}
