//////////////////////////////////
// 画像プレビュー用外部スクリプト
// File-Id	: pic_view.js
// MakeDate	: 2006/05/16
// ReMark	: サーバーサイドスクリプト「pic_view.php」とセット
// ReMark	: プレビュースクリプト設置場所は、[/wmp/]（※画像パスに注意）
//////////////////////////////////

//////////////////////////////////
// Name	: 画像プレビュー用クラス
// arv	: 画像ファイル名
// ReMark	: 別ウィンドウにて画像プレビューウィンドウを開く
function ImagePreview(arvImgFile, arvCo) {
	var bgCo = "Black";
	if (arvCo) {
		bgCo = arvCo;
	}

	//////////////////////////////////////////////
	// ブラウザの識別関数定義(IEだとtrue、IE以外はfalseを返す)
	this.IsBrowsIe = function () {
		if (navigator.userAgent.indexOf('MSIE')>-1) {
			return true;
		}else{
			return false;
		}
	}
	
	//////////////////////////////////////////////
	// ビューア画面書き込み関数定義:田畑オリジナル
	// バックアップ用として残す、258行目 WriteViewScrHtml 呼び出しをコメントアウト
	this.WriteViewScrHtml = function (arvObjDoc, arvStrTitle, arvStrImg, arvTblHeight) {

		with (arvObjDoc) {
			open();
			write("<html lang=\"ja\">");
			write("<head>\n");
			write("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=Shift_JIS\">\n");
			write("<title>" + arvStrTitle + "</title>\n");
			write("<style type=\"text/css\">");
			write("table {color: White; background-color: " + bgCo + ";border: 5px outset Silver;border-collapse: collapse;}");
			write("td {padding: 5px;border: 1px solid Silver;}");
			write(".td_pic {margin: 0;padding: 0px;}");
			write(".td_btn {margin: 0;padding: 0;color: White; background-color: Silver;}");
			write(".btnTb {margin: 0;padding: 0;color: White; background-color: Silver;border: 0px none Silver;border-collapse: collapse;}");

			write(".scrWin {");
			write("margin: 0;padding: 0;width: 100%;height: 100%;");
			write("display: block;layout-grid: both fixed 100% 0%;");
			write("color: White; background-color: " + bgCo + ";");
			write("border: 0px none Silver;");
			write("overflow: scroll;");
			write("}");

			write("</style>\n");
			write("</head>\n");
			write("<body bgcolor=\"gray\" oncontextmenu=\"return false\">\n");
			write('<form>\n');
			write("<table width=\"100%\" height=\"100%\">\n");
			write("<tr>\n");
			write("<td align=\"center\" valign=\"center\" width=\"100%\" height=\"100%\" class=\"td_pic\" nowrap>");

			write("<div class=\"scrWin\"><img id='srcImg' src=\"" + arvStrImg + "\"></div>");

			write("</td>\n");
			write("</tr>\n");
			write("<tr>\n");
			write("<td align=\"right\" class=\"td_btn\">\n");
			write('<table class=\"btnTb\" width=\"100%\"><tr>\n');
			write('<td align=\"center\"><input TYPE="button" value="実寸表示" onClick="opener.SizeReal();"></td>\n');
			write('<td align=\"center\"><input TYPE="button" value="全体表示" onClick="opener.SizeAll();"></td>\n');
			write('<td align=\"right\"><input TYPE="button" value="閉じる" onClick="opener.focus();window.close();"></td>\n');
			write('</tr></table>\n');
			write("</td>\n");
			write("</tr>\n");
			write("</table>\n");
			write('</form>\n');
			write("</body>\n");
			write("</html>\n");
			close();
		}
	}
	//////////////////////////////////////////////
	// ビューア画面書き込み関数定義：オリジナルをコピーしカスタマイズ。
	// スタイルシート＞  ・画像表示領域をウィンドウサイズ領域極限にまで広げた。
	//                   ・原寸表示時にウィンドウより大きい画像の場合のみスクロールバーを表示
	//     JavaScript＞  ・背景色のエンドユーザ変更機能の追加。*引数の背景色指定機能が無効となる
	this.WriteViewScrHtml1 = function (arvObjDoc, arvStrTitle, arvStrImg, arvTblHeight) {

		with (arvObjDoc) {
			open();
			write("<html lang=\"ja\">");
			write("<head>\n");
			write("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=Shift_JIS\">\n");
			write("<title>" + arvStrTitle + "</title>\n");
			write("<style type=\"text/css\">");
//			write("table {color: White; background-color: " + bgCo + ";border: 5px outset Silver;border-collapse: collapse;}");
			write("table { border: 1px solid  Silver; border-collapse: collapse;}");
			write("td {padding: 2px;border: 1px solid Silver;}");
			write(".td_pic {margin: 0;padding: 0px;}");
			write(".td_btn {margin: 0;padding: 0;color: White; background-color: Silver;}");
			write(".btnTb {margin: 0;padding: 0;color: White; background-color: Silver;border: 0px none Silver;border-collapse: collapse;}");

			write(".scrWin {");
			write("margin: 0;padding: 0;width: 100%;height: 100%;");
			write("display: block;layout-grid: both fixed 100% 0%;");
//			write("color: White; background-color: " + bgCo + ";");
			write("border: 0px none Silver;");
//			write("overflow: scroll;");

			//スクロールバー表示方法
			write("overflow: auto;");
			write("scrollbar-3dlight-color:gray;");
			write("scrollbar-arrow-color:white;");
			write("scrollbar-base-color:gray;");
			write("scrollbar-darkshadow-color:gray;");
			write("scrollbar-face-color:gray;");
			write("scrollbar-highlight-color:;");
			write("scrollbar-shadow-color:gray");
			write("}");

			write("body {");
			write("	margin-left: 0px;");
			write("	margin-top: 0px;");
			write("	margin-right: 0px;");
			write("	margin-bottom: 0px;");
			write("}");

			write("</style>\n");
			// 背景色変更スクリプト
			write("<SCRIPT language=JavaScript>");
			write("function chBgColor(opt) {  document.bgColor = opt.value; } ");
//			write("function chBgColor(opt) {  ");
//			write("document.bgColor = opt.value;  ");/全体の背景色変更

			// テーブル背景色変更スクリプト
//			write("oElement.getAttribute("bgColor")=opt.value;  ");
//			write("oElement = document.getElementById("td_pic_col");  ");

//			write("} ");
			write("</SCRIPT>");


			write("</head>\n");
//			write("<body bgcolor=\"gray\" oncontextmenu=\"return true\">\n");
			write("<body oncontextmenu=\"return true\">\n"); //右クリックコンテキストメニュー非表示 ：False
			write('<form>\n');
			write("<table width=\"100%\" height=\"100%\">\n");
			write("<tr>\n");

//			write("<td id="td_pic_col" align=\"center\" valign=\"center\" width=\"100%\" height=\"100%\" class=\"td_pic\" nowrap>");
			write("<td align=\"center\" valign=\"center\" width=\"100%\" height=\"100%\" class=\"td_pic\" nowrap>");


			//画像表示部分
			write("<div class=\"scrWin\"><img id='srcImg' src=\"" + arvStrImg + "\"></div>");

			write("</td>\n");
			write("</tr>\n");
			write("<tr>\n");
			write("<td align=\"right\" class=\"td_btn\">\n");
			write('<table class=\"btnTb\" width=\"100%\"><tr>\n');
//			write('<td align=\"center\"><input TYPE="button" style="vertical-align:bottom; font-weight:bold; color:white; border-color:white; background-color:transparent;border-style:solid;" value="実寸表示" onClick="opener.SizeReal();"></td>\n');
//			write('<td align=\"center\"><input TYPE="button" style="vertical-align:middle; font-weight:bold; color:white; border-color:white; background-color:transparent;border-style:solid;" value="全体表示" onClick="opener.SizeAll();"></td>\n');
			write('<td align=\"center\"><input TYPE="button" value="実寸表示" onClick="opener.SizeReal();"></td>\n');
			write('<td align=\"center\"><input TYPE="button" value="全体表示" onClick="opener.SizeAll();"></td>\n');

/* 色指定：ラジオボタン選択
			write('<td><font face= tahoma size=-1 color=black><b>背景色：</b>\n');
			write('<INPUT type=radio name=bg value=#000000 onClick=chBgColor(this) style="color:black;  border-style:solid; background-color:000000" >\n');
			write('<INPUT type=radio name=bg value=#ff0000 onClick=chBgColor(this) style="color:red;    border-style:solid; background-color:ff0000" >\n');
			write('<INPUT type=radio name=bg value=#0000ff onClick=chBgColor(this) style="color:blue;   border-style:solid; background-color:0000ff" >\n');
			write('<INPUT type=radio name=bg value=yellow  onClick=chBgColor(this) style="color:yellow; border-style:solid; background-color:yellow" >\n');
			write('<INPUT type=radio name=bg value=#ffffff onClick=chBgColor(this) style="color:white;  border-style:solid; background-color:ffffff" >\n');
			write('<INPUT type=radio name=bg value=gray    onClick=chBgColor(this) style="color:gray;   border-style:solid; background-color:gray" >\n');
			write('</td>\n');
*/
			write('<td align=center style="vertical-align: middle"><font color=black><b>背景色:</b></font>\n');
			write('<select name="bg" style="border-style:solid;" onChange="chBgColor(this)"> ');
			//WEB BASE 16Color
			write('<option style="background-color:white;"                value=white   > カラー選択 </option>');
			write('<option style="color:white; background-color:black;"   value=black   > ブラック </option>');
			write('<option style="color:white; background-color:gray;"    value=gray    > グレイ </option>');
			write('<option style="color:white; background-color:Silver;"  value=silver  > シルバー </option>');
			write('<option style="background-color:white;"                value=white   > ホワイト </option>');
			write('<option style="color:white; background-color:red;"     value=red     > レッド </option>');
			write('<option style="background-color:yellow;"               value=yellow  > イエロー </option>');
			write('<option style="color:white; background-color:lime;"    value=lime    > ライム </option>');
			write('<option style="color:white; background-color:aqua;"    value=aqua    > アクア </option>');
			write('<option style="color:white; background-color:blue;"    value=blue    > ブルー </option>');
			write('<option style="color:white; background-color:fuchsia;" value=fuchsia > フクシア </option>');
			write('<option style="color:white; background-color:maroon;"  value=maroon  > マルーン </option>');
			write('<option style="color:white; background-color:olive;"   value=olive   > オリーブ </option>');
			write('<option style="color:white; background-color:green;"   value=green   > グリーン </option>');
			write('<option style="color:white; background-color:teal;"    value=teal    > ティール </option>');
			write('<option style="color:white; background-color:navy;"    value=navy    > ネイビー </option>');
			write('<option style="color:white; background-color:purple;"  value=purple  > パープル </option>');



			write('</select> ');
			write('</td>\n');

			write('<td align=\"right\"><input TYPE="button" value="閉じる" onClick="opener.focus();window.close();"></td>\n');
//			write('<td align=\"right\"><input TYPE="button" style="vertical-align:middle; font-weight:bold; color:white; border-color:white; background-color:transparent;border-style:solid;" value="閉じる" onClick="opener.focus();window.close();"></td>\n');
			write('</tr></table>\n');
			write("</td>\n");
			write("</tr>\n");
			write("</table>\n");
			write('</form>\n');
			write("</body>\n");
			write("</html>\n");
			close();
		}
	}

	//////////////////////////////////////////////
	// 実寸表示
	this.SizeReal = function () {
        var obj = objViewWin.document.getElementById('srcImg');
        obj.src = "/wmp/pic_sum_get.php?Base=" + location.pathname + "&Img=" + arvImgFile;
//        obj.src = "/wmp/pic_sum_get.php?Img=" + arvImgFile;
		objViewWin.focus();
	}
	//////////////////////////////////////////////
	// 全体表示
	this.SizeAll = function () {
        var obj = objViewWin.document.getElementById('srcImg');
        obj.src = "/wmp/pic_sum_get.php?Base=" + location.pathname + "&Img=" + arvImgFile + "&width=" + picMaxW + "&height=" + picMaxH;
//        obj.src = "/wmp/pic_sum_get.php?Img=" + arvImgFile + "&width=" + picMaxW + "&height=" + picMaxH;
		objViewWin.focus();
	}

	//////////////////////////////////////////////
	// プレビューウィンドウの作成
	// スクリーンサイズから、プレビュー画面の表示サイズを求める
	var ScrPar = .5;	// 画面サイズに対する割合
	var winW = Math.floor(screen.width * ScrPar);
	var winH = Math.floor(screen.height * ScrPar);
	// スクリーンサイズとウィンドウサイズから、表示位置を決める
	var winLeft = Math.floor((screen.width - winW) / 7);
	var winTop = Math.floor((screen.height - winH) / 5);
	// ウィンドウサイズから内部表示領域（table）のサイズを決める
	picTblHeight = winH - 30;
	// ウィンドウサイズから画像表示最大サイズを決める
//	var picMaxW = winW - 30 - 20;
//	var picMaxH = winH - 80 - 30;
	var picMaxW = winW - 10 ;
	var picMaxH = winH - 40 ;


	//////////////////////////////////////////////
	// ウィンドウ表示オプション文字列の作成
	var winOpt = "";
	winOpt += "scrollbars=no,";	// スクロールバー
	winOpt += "resizable=yes,";		// ウィンドウサイズ変更
	winOpt += "toolbar=no,";		// ツールバー
	winOpt += "location=no,";		// アドレスバー
	winOpt += "directories=no,";	// ユーザー設定ツールバー
	winOpt += "width=" + winW + ",height=" + winH;	// ウィンドウサイズ
	if (this.IsBrowsIe()) {	// IE
		winOpt += ",left=" + winLeft + ",top=" + winTop;
	} else {			// IE以外
		winOpt += ",screenX=" + winLeft + ",screenY=" + winTop;
	}

	//////////////////////////////////////////////
	// 別ウィンドウの作成
	var objViewWin = window.open("", "ClsPreView", winOpt);
	var SumGet = "/wmp/pic_sum_get.php?Base=" + location.pathname + "&Img=" + arvImgFile + "&width=" + picMaxW + "&height=" + picMaxH;
//	var SumGet = "/wmp/pic_sum_get.php?Img=" + arvImgFile + "&width=" + picMaxW + "&height=" + picMaxH;
//	this.WriteViewScrHtml(objViewWin.document, "画像ビューア", SumGet, picTblHeight);	// ビューア画面書き込み
	this.WriteViewScrHtml1(objViewWin.document, "画像ビューア", SumGet, picTblHeight);	// ビューア画面書き込み

//	//////////////////////////////////////////////
//	// Ajaxオブジェクトのインスタンス作成
//	if(window.XMLHttpRequest) {
//	    ajax = new XMLHttpRequest();
//	} else if(window.ActiveXObject) {
//	    try {
//	        ajax = new ActiveXObject("Msxml2.XMLHTTP");
//	    } catch(e) {
//	        ajax = new ActiveXObject("Microsoft.XMLHTTP");
//	    }
//	}
//	//////////////////////////////////////////////
//	// サーバーリクエスト
//	ajax.open("GET", "/wmp/pic_view.php?PreViewMode=Win&LocPath=" + location.pathname + "&ImgFile=" + arvImgFile + "&MaxWidth=" + picMaxW + "&MaxHeight=" + picMaxH);
//	//////////////////////////////////////////////
//	// サーバー状態監視
//	ajax.onreadystatechange = function() {
//	    if (ajax.readyState == 4 && ajax.status == 200) {
//	        var obj = objViewWin.document.getElementById('prvImg');
//	        obj.innerHTML = ajax.responseText;
////			alert(ajax.responseText);
//	    }
//	}
//	//////////////////////////////////////////////
//	// 通信開始
//	ajax.send("");


	//////////////////////////////////////////////
	// 別ウィンドウへフォーカス
	objViewWin.focus();

}

