function addEvent(obj, evType, fn){ 
	if (obj.addEventListener){ 
		obj.addEventListener(evType, fn, false); 
		return true; 
	} else if (obj.attachEvent){ 
		var r = obj.attachEvent("on"+evType, fn); 
		return r; 
	} else { 
		return false;
	} 
}

addEvent(window, 'load', resizeBoxes);

function resizeBoxes() {
	resizeBoxByID("mainnavi", 40);
	resizeBoxByID("subnavi-ul", 28);
	resizeBoxByID("startseiteninhalt", 40);
	resizeBoxByID("content", 40);
	
	relocateImages();
}

function relocateImages() {
	objs = document.getElementsByTagName('div');
	
	for (var i = 0; i < objs.length; i++) {
		if (objs[i].className.substr(0, 13) == 'dotted_image_') {
			obj = objs[i];
			
			curTop = 0;
			if (obj.offsetParent) {
				do {
					curTop += obj.offsetTop;
				} while (obj = obj.offsetParent);
			} else {
				curTop = objs[i].offsetTop;
			}
			
			boxes = Math.floor(curTop / 190)
				 + (Math.floor(curTop / 190) != (curTop / 190) ? 1 : 0);
// 11 oder 19
			objs[i].style.marginTop = (boxes * 190 - curTop) - 132 + 'px';
		}
	}
}

/**
 * Main function for resizing boxes
 *
 * @param	string		Boxid to resize.
 * @param	int			Sum of paddingTop + paddingBottom.
 * @return	void
 */
function resizeBoxByID(id, diff) {
	var obj = document.getElementById(id);
	if (obj && obj.innerHTML != "") {
		boxes = Math.floor(obj.offsetHeight / 190)
			 + (Math.floor(obj.offsetHeight / 190) != (obj.offsetHeight / 190) ? 1 : 0);

		obj.style.height = boxes * 190 - diff + "px";
	}
}
