function resizeDezeenImage(o) {
	if (o.val() == '') return;
	
	var img = new Image();

	img.onload = function() {
		var defSize = defWidth = (o.attr("id") == 'dezeenImage0') ? 292 : 72;
		// オリジナル画像のサイズを取得
		var nImage = naturalSize(img);
		// リサイズ
		var rImage = resize(nImage.width, nImage.height, defSize, defSize);
		$('#r_' + o.attr("id")).attr({
			width  : rImage.width,
			height : rImage.height,
			src    : img.src
		});
	};
	img.src = o.val();
};

function resize(w, h, dw, dh) {
	if( w > h ){
		num = ( w > dw ) ? dw / w : 1;
		rw = parseInt(w * num);
		rh = parseInt(h * num);
		if(rh > dh){
			rnum = dh / rh;
			rh = rh * rnum;
			rw = rw * rnum;
		}
	}else{
		num = ( h > dh ) ? dh / h : 1;
		rw = parseInt(w * num);
		rh = parseInt(h * num);
	}
	return {width: rw, height: rh};
}

function naturalSize(image){
	var	w = image.width ,
		h = image.height ;

	if ( typeof image.naturalWidth !== 'undefined' ) {	// for Firefox, Safari, Chrome
		w = image.naturalWidth;
		h = image.naturalHeight;

	} else if ( typeof image.runtimeStyle !== 'undefined' ) {	 // for IE
		var run = image.runtimeStyle;
		var mem = { w: run.width, h: run.height };	// keep runtimeStyle
		run.width  = "auto";
		run.height = "auto";
		w = image.width;
		h = image.height;
		run.width  = mem.w;
		run.height = mem.h;

	} else {		 // for Opera
		image.removeAttribute("width");
		image.removeAttribute("height");
		w = image.width;
		h = image.height;
		image.width  = mem.w;
		image.height = mem.h;
	}

	return {width:w, height:h};
};
