Event.observe(window,"load",init_imgfix_js);

function init_imgfix_js(){

	var div_s = $$("div.fiximagesize");
	var length = div_s.length;
	var i,j;
	var match = null;

	for(i = 0;i < length;++i){
		
		var img_s = div_s[i].getElementsByTagName("img");
		var length_img = img_s.length;
		
		for(j = 0;j < length_img;++j){
		
			if(img_s[j] && div_s[i]){
			
				var max_width = div_s[i].style.width;
				var max_height = div_s[i].style.height;
				
				match = null;
				if( (match = max_width.match(/(.*)px/) ) ){
					max_width = match[1];
				}
			
				match = null;
				if( (match = max_height.match(/(.*)px/) ) ){
					max_height = match[1];
				}
				
				// 高さが幅の1.2倍以上なら、幅の1.2倍にする
				if(max_height > max_width*1.2 || max_height == "auto"){
					max_height = max_width*1.2;
				}

				// 幅が高さの1.2倍以上なら、高さの1.2倍にする
				if(max_width > max_height*1.2 || max_width == "auto"){
					max_width = max_height*1.2;
				}

				var img_width = img_s[j].width;
				var img_height = img_s[j].height;

				var rate;
				
				// 幅がおおきすぎたら
				if(img_width > max_width){
					rate = max_width / img_width;
					img_width = max_width;
					img_height *= rate;
				}
				
				// 高さが大きすぎたら
				if(img_height > max_height){
					rate = max_height / img_height;
					img_height = max_height;
					img_width *= rate;
				}
				
				img_s[j].width = img_width;
				img_s[j].height = img_height;
			} else {
				alert("error:" + i);
			}
		}
	}
}
