/* vim: set expandtab tabstop=4 shiftwidth=4: */
// +--------------------------------------------------------+
// | Internet Explorer 5.5 & Firefox 1.0                    |
// +--------------------------------------------------------+
// | Copyright (c) 2005 Song Hyo-Jin                        |
// +--------------------------------------------------------+
// | License : GPL (current new version)                    |
// +--------------------------------------------------------+
// | Author : Song Hyo-Jin <crosser at hanmail dot net>     |
// |                                  (MSN Messengerable)   |
// +--------------------------------------------------------+
//
// $Id: show_image.js, v 1.0.0 2006/02/04 18:13:13 crosser Exp $
//
// Image view from text

var img_loaded =  new Array();

function autoscrollPopup()
{
	var obj;
	if(document.all) {
		obj = event.srcElement;
	} else {
		obj = this;
	}

	autoscroll_popup(obj.src, 800, 600);

	return true;
}

function loadImage()
{
	var obj;
	if(document.all) {
		obj = event.srcElement;
	} else {
		obj = this;
	}

	img_loaded[obj.id] = true;

	return true;
}

function loadImageFault()
{
	var obj;
	if(document.all) {
		obj = event.srcElement;
	} else {
		obj = this;
	}

	img_loaded[obj.id] = true;

	return true;
}

function resize_image(img_tag, max_width, max_height)
{
	var width, height;

	width	= parseInt(img_tag.width);
	if(width == 0) {
		return false;
	}

	height	= parseInt(img_tag.height);
	if(width > max_width) {
		img_tag.style.height	= Math.ceil(height * max_width / width);
		img_tag.style.width		= max_width;
	}
	if(height > max_height) {
		img_tag.style.width		= Math.ceil(width * max_height / height);
		img_tag.style.height	= max_height;
	}

	return true;
}

function show_image(img_file, max_width, max_height, img_id)
{
	var it, img_t, i, pattern;

	pattern = /\.(gif|jpe?g|png)$/i;
	if(!pattern.test(img_file)) {
		return false;
	}

	it = document.getElementById(img_id);
	it.innerHTML = "";
	img_t = document.createElement("IMG");
	it.appendChild(img_t);
	img_loaded[img_id] = false;
	img_t.src = "file:///" + img_file;


	if(document.all) {
		img_t.attachEvent("onclick", autoscrollPopup);
		img_t.attachEvent("onload", loadImage);
		img_t.attachEvent("onerror", loadImageFault);
		img_t.style.cursor = "hand";
	} else {
		img_t.addEventListener("click", autoscrollPopup, false);
		img_t.addEventListener("load", loadImage, false);
		img_t.addEventListener("error", loadImageFault, false);
		img_t.style.cursor = "pointer";
	}

	i = 0;
	while(!img_loaded[img_id] && i < 10000) {
		i ++;
	}

	resize_image(img_t, max_width, max_height);

	return true;
}

function show_media(media_file, media_id)
{
	var mt, media_t, i, pattern;

	pattern = /\.(wm(a|v)|mpe?(g|\d)|avi|as(f|x)|swf)$/i;
	if(!pattern.test(media_file)) {
		return false;
	}

	mt = document.getElementById(media_id);
	mt.innerHTML = "";
	media_t = document.createElement("EMBED");
	media_t.src = media_file;
	window.alert(media_t.src);
	mt.appendChild(media_t);

	return true;
}

