var aimixBbsGlobalObj = {};
$(document).ready(function()
{
	aimixBbsInit();

	$("#enhanceopt").attr({"disabled":false});

	// counter
	$("#countertable").css({"opacity":"0"});
	$("img#counterimg,#countertdb").hover(
	function() { $("#countertable").stop().css({"display":"block","opacity":"1"}); }
	,function() { $("#countertable").animate({"opacity":"0"},500,function(){$("#countertable").css({"display":"none"});}) }
	);

	// graph preview
	$("#graphdata,#linetype,#axisvaltarget,#graphortable,#bbsgraphtype,#graphsizeselect,#graphmarkeropt").change(function()
	{
		if($(this).attr("id") == "bbsgraphtype") { var checkedlist = $("select#bbsgraphtype :selected").attr("value"); if(checkedlist == "2") { graphOptview("2"); } else if(checkedlist == "1") { graphOptview("1"); } else { graphOptview("0"); } }
		else if($(this).attr("id") == "axisvaltarget") { var checkedlist = $("select#axisvaltarget :selected").attr("value"); if(checkedlist != "0") { $("div#grpxaxisnamef").css({"display":"none"}); } else { $("div#grpxaxisnamef").css({"display":"block"}); } }
		addTablePreview();
	});

	$("button#graphaddfield").click(function()
	{
		$("div#tablecellcont").append('<input type="text" size="20" class="tcelllabels" style="width:20%;margin-bottom:2px;" value=""><input type="text" size="40" class="tablecells" style="width:70%;margin-left:5px;margin-bottom:2px;" value="">');
		return false;
	});
	$("button#inputfromkeys").click(function(){ $("div#inputgraphc").fadeIn("fast"); $("button#inputfromkeys,button#inputfromfile").css({"display":"none"}); });
	$("button#inputfromfile").click(function() { $("div#inputgraphf").fadeIn("fast"); $("button#inputfromkeys,button#inputfromfile").css({"display":"none"}); });

	// BBcode listtag
	$("textarea.listvalue").focus(function() { $(this).attr("rows","4"); });
	$('input[name="listtype"]:radio').change(function()
	{
		var checkedlist = $('input[name="listtype"]:checked').val();
		if(checkedlist == "3")
		{
			if ($("span.listtitles").length) { $("span.listtitles").css({"display":"inline"}); }
			else { $("div#asslistarea").prepend('<span class="listtitles"><input size="30" type="text" maxlength="40" class="listtitle"><span style="color:#666666">：題名</span><br></span>'); }
		}
		else { $("span.listtitles").css({"display":"none"}); }
	});

	// outerimage
	$("img.outsideImage").each(function()
	{
		var outrImageWidth = $(this).width(); var outrImageHeight = $(this).height();
		if(outrImageWidth > 400) { if(navigator.userAgent.indexOf("MSIE") != -1) { var zoomRate = 400 / outrImageWidth; $(this).css({"zoom":zoomRate}); } else { $(this).width("400"); $(this).height(""); } }
		else if(outrImageHeight > 400) { if(navigator.userAgent.indexOf("MSIE") != -1) { var zoomRate = 400 / outrImageHeight; $(this).css({"zoom":zoomRate}); } else { $(this).width(""); $(this).height("400"); } }
	});

	// popup image
	$("img.popUpImage").click(function()
	{
		orgImageUrl = $(this).attr("src").replace(/_2/gi, ""); popUpImagePreLoad = new Image(); popUpImagePreLoad.src = orgImageUrl; var pBackgroundPageHeight = document.body.scrollHeight; var pBackgroundPageWidth = document.body.scrollWidth;
		if(pBackgroundPageHeight < document.body.clientHeight) { pBackgroundPageHeight = document.body.clientHeight; pBackgroundPageWidth = document.body.clientWidth; }
		$("div#popUpImageBackGround").css({"display":"block","opacity":"0","width":pBackgroundPageWidth,"height":pBackgroundPageHeight}); imageViewCheck();
	});	$("div#popUpImageBackGround,div#popUpImageContainer").click(function() { $("div#popUpImageContainer").css({"display":"none","opacity":"0"}); $("div#popUpImageBackGround").animate({"opacity":"0"},100,function() { $("div#popUpImageBackGround").css({"display":"none"}); }); });

	// JLISTING keyword
	var bbsWindowWidth = $(window).width();
	var hotKeywordsLength1 = $("#jlisthingkey1").text().length * 13 + 5; var hotKeywordsLength2 = $("#jlisthingkey2").text().length * 13 + 5; var hotKeywordsLength3 = $("#jlisthingkey3").text().length * 13 + 5;
	if(bbsWindowWidth < (310 + hotKeywordsLength1 + hotKeywordsLength2 + hotKeywordsLength3))
	{
		$("#jlisthingkey3").remove();
		if(bbsWindowWidth < (310 + hotKeywordsLength1 + hotKeywordsLength2)) { $("#jlisthingkey2").remove(); }
	}
	if (navigator.userAgent.indexOf("Chrome") != -1) { $("#jlisthingtext").remove(); }

	// form assist
	$("input.bbcode,input.imagesrc,input.emoji,input.addmap,input.jtable,input.graphpop").click(function()
	{
		var bottonid = $(this).attr("name");
		if(bottonid == "assisttable") { getJsLibrary("table","true"); }
		else { getJsLibrary("","none"); }
		if(bottonid == "assistemoji") { var selectedEmList = $("select#selectemoji :selected").attr("value"); setEmojiCode(selectedEmList); }
		else if(bottonid == "assistimage")
		{
			$("div#assistimagemes").empty().append("<ul><li>画像URLを入力し確認ボタンをクリックします。</li><li>URL末尾は jpg/gif/png のいずれかです。</li></ul>");
			$("div#imagelinkpreview").empty().append("確認ボタンを押すとここに表示されます。");
			$("button#addimageapp").attr({"disabled":"disabled"});
		}
		else if(bottonid == "assistmap")
		{
			$("div#assistmapmes").empty().append("<ul><li><a href='http://maps.google.co.jp/maps?hl=ja&tab=vl' target='_blank'>Googleマップ</a>で埋め込みたい地図を表示後、右上の「リンク」からコードをコピーしてフォームに貼り付けます。</li><li>最適なサイズは「埋め込み地図のカスタマイズとプレビュー」の中サイズです。</li><li>確認ボタンを押すと下にプレビューが表示されます。</li></ul>");
			$("div#addmappreview").empty().append("確認ボタンを押すとここに表示されます。");
			$("button#addmapapp").attr({"disabled":"disabled"}); $("textarea#mapcodearea").attr({"value":""});
		}
		assistWindowOC(bottonid,"");
		return false;
	});
	$("button#enhanceopt").click(function() { var targetArea = document.getElementById("formcomment"); targetArea.focus(); $("button#enhanceopt").remove(); $("input.ienhopt").fadeIn("200"); return false; });

	// graph web216
	var webcolors = new Array(); webcolors = webcolor();
	for(var i = 0; i < webcolors.length; i++) { $("#bbfontcolor").append("<option value=\"#" + webcolors[i] + "\" style=\"background-color:#" + webcolors[i] + "\">#" + webcolors[i] + "</option>"); }

	// shadow
	wrapShadow();

	// assist
	if(aimixbbsViewMD == "res")
	{
		$("div#assistbbcode").css({"top":"-10em"});
		$("div#assisttable").css({"top":"-16em"});
		$("div#graphpoppreview").css({"top":"-14em","left":"-5em"});
		$("div#assistemoji").css({"top":"-13em"});
		$("div#assistmap").css({"top":"-22em"});
	}
	if(aimixbbsViewMD == "usr_edt") { usredtReGraph(); }
});
function aimixBbsInit()
{
	aimixBbsGlobalObj.jqueryUIloaded = false;
	aimixBbsGlobalObj.jqueryjqPlotloaded = false;
	aimixBbsGlobalObj.jqueryBbsWOCcnt = 0;
	aimixBbsGlobalObj.jqueryCompCount = 0;
	aimixBbsGlobalObj.jqueryLibsLoaded = false;
	aimixBbsGlobalObj.mapCodeXtBbsTag = "";
	aimixBbsGlobalObj.sEmojiArrayDataCNT = 0;
	aimixBbsGlobalObj.sEmojiArray = new Array();
	aimixBbsGlobalObj.bbsPreLoadImageComplete = false;
	aimixBbsGlobalObj.iEmojiArray = new Array();
	aimixBbsGlobalObj.iEmojiArrayDataCNT = 0;
	aimixBbsGlobalObj.eEmojiArray = new Array();
	aimixBbsGlobalObj.eEmojiArrayDataCNT = 0;
	aimixBbsGlobalObj.ieFormcommentObj = {};
};
function wrapShadow()
{
	$("div.wrapshadow").before("<div class='pContainerT'></div><div class='pContainerB'></div><div class='pContainerL'></div><div class='pContainerR'></div><div class='pContainerTL'></div><div class='pContainerTR'></div><div class='pContainerBL'></div><div class='pContainerBR'></div>").wrap("<div style='z-index:2200;'></div>");
};
function usredtReGraph()
{
	if(typeof usr_edt_GraphARY != "undefined")
	{
		$("div#inputgraphc").css({"display":"block"});
		$("button#inputfromkeys,button#inputfromfile").css({"display":"none"});
		$("input#grpxaxisinp").attr("value",usr_edt_xaxisar);
		$("select#graphortable").val(usr_edt_graph_gTableSelected);
		$("select#bbsgraphtype").val(usr_edt_graph_bbsGraphType);
		$("select#graphmarkeropt").val(usr_edt_graph_graphMarkerSize);
		$("select#graphsizeselect").val(usr_edt_graph_graphsizeIn);
		$("input#tblelxlabelv").attr("value",usr_edt_graph_xlabeln);
		$("input#tblelylabelv").attr("value",usr_edt_graph_ylabeln);
		$("div#tablecellcont").empty();
		graphOptview(usr_edt_graph_bbsGraphType);
		if(usr_edt_GraphARY.length > 0)
		{
			if(usr_edt_graph_bbsGraphType == "2") { for(var i = 0; i < usr_edt_GraphARY.length; i++) { $("div#tablecellcont").append('<input type="text" size="20" class="tcelllabels" style="width:20%;margin-bottom:2px;" value="' + usr_edt_GraphARY[i][0] + '"><input type="text" size="40" class="tablecells" style="width:70%;margin-left:5px;margin-bottom:2px;" value="' + usr_edt_GraphARY[i][1] + '">'); } }
			else { for(var i = 0; i < usr_edt_GraphARY.length; i++) { $("div#tablecellcont").append('<input type="text" size="20" class="tcelllabels" style="width:20%;margin-bottom:2px;" value="' + usr_edt_inpTcellLabelsJ[i] + '"><input type="text" size="40" class="tablecells" style="width:70%;margin-left:5px;margin-bottom:2px;" value="' + usr_edt_GraphARY[i] + '">'); } }
		}
	}
};
function loadingWaitImg(sw)
{
	if(sw == "view") { $("#loadingwait").css({"display":"block"}); }
	else { $("#loadingwait").css({"display":"none"}); }
};
function graphOptview(opt)
{
	// 0:line　1:bar　2:pie
	switch(opt)
	{
		case "1":
			$("div#graphoptxlabel").css({"display":"block"}); $("div#graphoptylabel").css({"display":"block"}); $("div#grpxaxisname").css({"display":"block"}); $("div#grpxaxisnamef").css({"display":"block"}); $("div#grpxaxisinpf").css({"display":"block"}); $("div#graphmarkersizec").css({"display":"none"}); $("span#graphcomindata").text(""); $("span#graphcomdata").text("カンマ区切り数値 例：1,2,3");
			break;
		case "2":
			$("div#graphoptxlabel").css({"display":"none"}); $("div#graphoptylabel").css({"display":"none"}); $("div#grpxaxisname").css({"display":"none"}); $("div#grpxaxisnamef").css({"display":"none"}); $("div#graphmarkersizec").css({"display":"none"}); $("span#graphcomindata").text("・円グラフは1行につき1項目を入力します。"); $("span#graphcomdata").text("数値");
			break;
		default:
			$("div#graphoptxlabel").css({"display":"block"}); $("div#graphoptylabel").css({"display":"block"}); $("div#grpxaxisname").css({"display":"none"}); $("div#grpxaxisnamef").css({"display":"block"}); $("div#grpxaxisinpf").css({"display":"block"}); $("div#graphmarkersizec").css({"display":"block"}); $("span#graphcomindata").text(""); $("span#graphcomdata").text("カンマ区切り数値 例：1,2,3");
	}
};
// assist window
function assistWindowOC(butid,mode)
{
	if(mode == "close") { $("div#" + butid).fadeOut("fast"); }
	else
	{
		aimixBbsGlobalObj.jqueryBbsWOCcnt++; var getLibParam = "";
		if(butid == "assisttable")
		{
			if(aimixBbsGlobalObj.jqueryLibsLoaded)
			{
				aimixBbsGlobalObj.jqueryBbsWOCcnt = 0;
				setTimeout(function()
				{
					$("div#tprevarea").empty();
					var targetDivDisplay = $("div#" + butid).css("display");
					if(targetDivDisplay != "none")
					{
						if($("div#graphpoppreview").css("display") != "none") { $("div#graphpoppreview").fadeOut("fast"); }
						$("div#" + butid).fadeOut("fast");
					}
					else
					{
						var targetArea = document.getElementById("formcomment");
						if(document.selection) { targetArea.focus(); aimixBbsGlobalObj.ieFormcommentObj = document.selection.createRange(); }
						var chkGraphCode = $("#formcomment").attr("value");
						if(chkGraphCode.match(/\[bbsgraph\]/)) { $("div#graphalert").empty().append("<div><img src=\"./Image/ca_over.gif\" width=\"15px\" height=\"15px\" class=\"valignmiddle\" style=\"margin-right:5px;\"><b>ご注意</b></div><div style=\"margin:5px;\">グラフと表は1記事につき1件です。<br>新たに追加した場合、前回の要素が除去されます。</div>").css({"display":"block"}); }
						else { $("div#graphalert").css({"display":"none"}); }
						$("div#" + butid).fadeIn("fast",function() { $(this).draggable({cursor:'move'}); });
					}
				}, 50);
			}
			else if(aimixBbsGlobalObj.jqueryBbsWOCcnt > 100) { aimixBbsGlobalObj.jqueryBbsWOCcnt = 0; return false; }
			else { setTimeout(function() { assistWindowOC(butid,mode); },200); }
		}
		else
		{
			var retrycnt = 0;
			if (retrycnt == 0)
			{
				(function()
				{
					try { retrycnt++; if ((typeof $.ui.draggable) == "undefined"){ throw "next"; } }
					catch (error) { setTimeout(arguments.callee, 200); return; }
					aimixBbsGlobalObj.jqueryBbsWOCcnt = 0; var targetDivDisplay = $("div#" + butid).css("display");
					if(targetDivDisplay != "none") { $("div#" + butid).fadeOut("fast"); }
					else { $("div#" + butid).fadeIn("fast",function() { $(this).draggable({cursor:'move'}); }); }
				})();
			}
		}
	}
};
// counter
function popc(eid) { document.getElementById(eid).style.visibility = 'visible'; document.getElementById(eid).style.display = 'block'; };
function closec(eid) { document.getElementById(eid).style.visibility = 'hidden'; document.getElementById(eid).style.display = 'none'; };
// BBcode font preview
function bbcodeFontSample()
{
	if($("#bbfontcolor :selected").attr("value") != "none")	{ $("span#bbsamplefont").css({"color":$("#bbfontcolor :selected").attr("value")}); } else{ $("span#bbsamplefont").css({"color":""}); }
	if($("#bbfontsize :selected").attr("value") != "none") { $("span#bbsamplefont").css({"font-size":$("#bbfontsize :selected").attr("value")}); } else{ $("span#bbsamplefont").css({"font-size":""}); }
	if($("#bbfonttype :selected").attr("value") != "none") { $("span#bbsamplefont").css({"font-family":$("#bbfonttype :selected").attr("value")}); } else{ $("span#bbsamplefont").css({"font-family":""}); }
};
// form assist
function getJsLibrary(type,waitimg)
{
	if(waitimg != "none") { loadingWaitImg("view"); }
	aimixBbsGlobalObj.jqueryLibsLoaded = false; var jqLibListAr = new Array();
	if(!aimixBbsGlobalObj.jqueryUIloaded) { jqLibListAr.push("js/jquery-ui.custom.min.20100128.js"); aimixBbsGlobalObj.jqueryUIloaded = true; }
	if(type == "table" && !aimixBbsGlobalObj.jqueryjqPlotloaded)
	{
		jqLibListAr.push("js/excanvas.min.js");
		jqLibListAr.push("js/jquery.jqplot.min.js");
		//jqLibListAr.push("js/jqplot/jqplot.cursor.min.js");
		//jqLibListAr.push("js/jqplot/jqplot.dateAxisRenderer.min.js");
		jqLibListAr.push("js/jqplot/jqplot.canvasTextRenderer.min.js");
		jqLibListAr.push("js/jqplot/jqplot.canvasAxisTickRenderer.min.js");
		//jqLibListAr.push("js/jqplot/jqplot.highlighter.min.js");
		jqLibListAr.push("js/jqplot/jqplot.pieRenderer.min.js");
		jqLibListAr.push("js/jqplot/jqplot.categoryAxisRenderer.min.js");
		jqLibListAr.push("js/jqplot/jqplot.barRenderer.min.js");
		aimixBbsGlobalObj.jqueryjqPlotloaded = true;
	}
	aimixBbsGlobalObj.jqueryCompCount = jqLibListAr.length;
	if(jqLibListAr.length > 0) { jqlibAjaxAccess(jqLibListAr,0); }
	else { loadingWaitImg(""); aimixBbsGlobalObj.jqueryLibsLoaded = true; }
	return true;
};
function jqlibAjaxAccess(farray,elmcount)
{
	if(elmcount >= farray.length) { return false; }
	var nextelm = elmcount + 1; var param_url = $.extend({ url: farray[elmcount]});
	$.ajax({ type: "GET", url: param_url.url, dataType: "script", timeout:10000, cache:true, ifModified:true,
		complete: function(retAjaxdata, retStatus) { jqueryCompCnt(); jqlibAjaxAccess(farray,nextelm); return true; },
		error: function() { $("div#addtablepreview").empty().append("<span style='color:#ff0000;margin:10px;'>JSの取得に失敗しました。(2)</span>"); return false; }
	});
};
function jqueryCompCnt() { aimixBbsGlobalObj.jqueryCompCount--; if(aimixBbsGlobalObj.jqueryCompCount <= 0) { loadingWaitImg(""); aimixBbsGlobalObj.jqueryLibsLoaded = true; } };
function bbsZtoH(textvalue)
{
	if(textvalue != "")
	{
		textvalue = textvalue.replace(/\"/g, ""); //"
		var hwordsAr = new Array("1","2","3","4","5","6","7","8","9","0","\,","\,"); var zwordsAr = new Array("１","２","３","４","５","６","７","８","９","０","、","，");
		for(var i=0; i < hwordsAr.length; i++) { regxcode = new RegExp(zwordsAr[i],"g"); textvalue = textvalue.replace(regxcode, hwordsAr[i]); } 
	}
	return textvalue;
};
function addTable()
{
	var targetArea = document.getElementById("formcomment");
	if(document.selection)
	{
		targetArea.focus(); var selectTextValue = aimixBbsGlobalObj.ieFormcommentObj.text; var selectTextObj = aimixBbsGlobalObj.ieFormcommentObj;
		if(selectTextValue.length > 0) { selectTextObj.text = "[NewBbsGraph]"; } else { selectTextObj.text = selectTextValue + "[NewBbsGraph]"; }
	}
	else
	{
		if((typeof targetArea.selectionStart != 'undefined') && (typeof targetArea.selectionEnd != 'undefined'))
		{
			if(targetArea.selectionStart == 0) { var comment = "[NewBbsGraph]" + $("#formcomment").attr("value"); }
			else if(targetArea.selectionEnd == targetArea.value.length) { var comment = $("#formcomment").attr("value") + "[NewBbsGraph]"; }
			else { var leftSideText = targetArea.value.substring(0,targetArea.selectionStart); var rightSideText = targetArea.value.substring(targetArea.selectionStart,targetArea.value.length); targetArea.value = leftSideText + "[NewBbsGraph]" + rightSideText; }
		}
		else { var comment = $("#formcomment").attr("value") + "[NewBbsGraph]"; }
		$("#formcomment").attr("value",comment);
	}
	var replaceComment = $("#formcomment").attr("value"); replaceComment = replaceComment.replace(/\[bbsgraph\]/g, ""); replaceComment = replaceComment.replace(/\[NewBbsGraph\]/, "[bbsgraph]"); $("#formcomment").attr("value",replaceComment);
	assistWindowOC("graphpoppreview","close"); assistWindowOC("assisttable","");
	return false;
};
function addTableReset(targetarea)
{
	if(targetarea == "file") { document.grphsubmit.reset(); $("div#graphstatus").text("Status表示エリア").css({"color":"#666666"}); $("div#tprevarea").empty(); }
	else
	{
		document.grphsubmit.reset(); document.graphOptForm.reset();
		$("button#inputfromkeys,button#inputfromfile").css({"display":"inline"}); $("div#inputgraphc").css({"display":"none"}); $("div#inputgraphf").css({"display":"none"});
		$("div#tablecellcont").empty().append('<div style="width:20%;float:left;margin-right:10px;"><span id="graphcomhlabel">凡例</span></div>')
		.append('<div style="width:70%;"><span id="graphcomdata">カンマ区切り数値 例：1,2,3</span></div>')
		.append('<input type="text" size="20" class="tcelllabels" style="width:20%;margin-bottom:2px;" value=""><input type="text" size="40" class="tablecells" style="width:70%;margin-left:5px;margin-bottom:2px;" value="">');
		$("div#graphstatus").text("Status表示エリア").css({"color":"#666666"}); $("div#tprevarea").empty(); graphOptview("1");
		$("div#graphmarkersizec").css({"display":"block"}); $("button#addtabletag").attr({"disabled":"disabled"}); $("div#graphdlabelarea").empty();
	}
	if($("div#graphpoppreview").css("display") != "none") {	$("div#graphpoppreview").fadeOut("fast"); }
	return false;
};
function addTablePreview()
{
	if($("div#inputgraphc").css("display") == "none") { graphExcData(); return false; } var selectUsrType = $("#addgdatat :selected").attr("value");
	if(typeof selectUsrType == "undefined" && selectUsrType == ""){ selectUsrType = "1"; } var xaxisInput = $("input#grpxaxisinp").attr("value");
	var cellListParamAr = new Array(); var cellListAr = new Array(); cellListAr = $("input.tablecells"); var cellLablAr = new Array(); cellLablAr = $("input.tcelllabels"); var lemptyflug = true;
	for(var i=0; i < cellListAr.length; i++) { if(typeof cellListAr[i].value != "null" && cellListAr[i].value != "") { cellListAr[i].title = cellLablAr[i].value; cellListParamAr.push(cellListAr[i]); } }
	if(cellListParamAr.length <= 0) { graphStatusUpdate("データが未入力です。"); return false; }
	var cellMaxCount = 0; var jqParams = new Array(); var splitChar = ",";
	if(cellListParamAr.length > 1)
	{
		for(var i in cellListParamAr)
		{
			if(cellListParamAr[i].value == "") { continue; } var splitparam = new Array(); cellListParamAr[i].value = bbsZtoH(cellListParamAr[i].value);
			splitparam = splitToArray(cellListParamAr[i].value,selectUsrType,"number"); if(cellListParamAr[i].title != "") { splitparam.title = cellListParamAr[i].title; } jqParams.push(splitparam);
			for(var ii = 0; ii < splitparam.length; ii++) { if(parseFloat(splitparam[ii]) > parseFloat(cellMaxCount)) { cellMaxCount = splitparam[ii]; } }
		}
	}
	else
	{
		var splitparam = new Array(); cellListParamAr[0].value = bbsZtoH(cellListParamAr[0].value); splitparam = splitToArray(cellListParamAr[0].value,selectUsrType,"number");
		if(cellListParamAr[0].title != "") { splitparam.title = cellListParamAr[0].title; } jqParams.push(splitparam);
		for(var ii = 0; ii < splitparam.length; ii++) { if(parseFloat(splitparam[ii]) > parseFloat(cellMaxCount)) { cellMaxCount = splitparam[ii]; } }
	}
	var xaxissplitpAr = new Array();
	if(xaxisInput != "") { xaxisInput = bbsZtoH(xaxisInput); xaxissplitpAr = splitToArray(xaxisInput,selectUsrType,"string"); }
	setTimeout(function() { jqPlotPreview(jqParams,cellMaxCount,xaxissplitpAr); },200);
	return false;
};
function splitToArray(textvalue,targetcd,datatype)
{
	var splitChar = ","; var retArray = new Array();
	if(targetcd != "" && targetcd > 0)
	{
		switch(selectUsrType)
		{
			case 1:
				splitChar = ",";
				break;
			case 2:
				splitChar = String.fromCharCode(9);
				break;
			case 3:
				splitChar = String.fromCharCode(32);
				break;
			default:
				splitChar = ",";
		}
	}
	else { if(textvalue.match(/(\t){1,}/)) { splitChar = String.fromCharCode(9); } else if(textvalue.match(/(\s){1,}/)) { splitChar = String.fromCharCode(32); } else { splitChar = ","; } }
	retArray = textvalue.split(splitChar);
	if(datatype == "number") { for(var i = 0; i < retArray.length; i++) { if(retArray[i] == ""){ continue; } retArray[i] = parseFloat(retArray[i]); } }
	return retArray;
};
function graphExcData()
{
	loadingWaitImg("view"); var nowDateS = (new Date()).getTime(); $("input#rdate").val(nowDateS); var selectUsrType = $("#addgdatat :selected").attr("value"); if(typeof selectUsrType == "undefined" && selectUsrType == ""){ selectUsrType = "1"; } $("input#gtype").val(selectUsrType); var bbsGraphType = ""; bbsGraphType = $("#bbsgraphtype :selected").attr("value"); if(bbsGraphType == ""){ bbsGraphType = 0; } $("input#spltval").val(bbsGraphType); $("iframe#ajxgraphdata").remove(); $("body").append("<iframe frameborder=\"0\" width=\"1\" height=\"1\" name=\"ajxgraphdata\" id=\"ajxgraphdata\"></iframe>");
	document.grphsubmit.submit(); var gRetDatas = ""; var DataListJson = []; var isError = false; var retrycnt = 0;
	if (retrycnt == 0)
	{
		(function()
		{
			try { retrycnt++; if($("iframe#ajxgraphdata").contents().find("body").text().match(/Internal Server/)) { isError = true; } gRetDatas = $("iframe#ajxgraphdata").contents().find("span#retgraphdata").text(); if ((retrycnt < 100) && (gRetDatas.length < 1) && (!isError)){ throw "next"; } }
			catch (error) { setTimeout(arguments.callee, 200); return; }
			loadingWaitImg("");
			if($("div#inputgraphc").css("display") == "none" && $("div#inputgraphf").css("display") == "none") { graphStatusUpdate("データが未入力です。[G100]"); return false; }
			if(retrycnt >= 100) { graphStatusUpdate("タイムアウトしました。"); return false; }
			else if(isError) { graphStatusUpdate("エラーが発生しました。[500]"); return false; }
			else if(gRetDatas == "") { graphStatusUpdate("有効なデータがありません。"); return false; }
			else if(gRetDatas == "1105") { graphStatusUpdate("区切文字が存在しません。"); return false; }
			else if(gRetDatas == "2101") { graphStatusUpdate("非対応のファイル形式です。"); return false; }
			else if(gRetDatas == "2104") { graphStatusUpdate("項目数が1000を超えているため中断しました。"); return false; }
			else if(gRetDatas == "2105") { graphStatusUpdate("数値の数が1000を超えているため中断しました。"); return false; }
			else if(gRetDatas == "2107") { graphStatusUpdate("ファイルを選択して下さい。[F102]"); return false; }
			else
			{
				DataListJson = eval("(" + gRetDatas + ")"); if(typeof DataListJson != "object") { graphStatusUpdate("データの解析に失敗しました。[F110]"); return false; }
				var xaxisLary = new Array();
				var xaxisselected = parseInt($("#axisvaltarget :selected").attr("value"));

				if(xaxisselected >= 0 && xaxisselected <= 10)
				{
					xaxisLary = DataListJson.splice(xaxisselected,1);
					for(var i = 0; i < xaxisLary[0].length; i++) { xaxisLary[0][i] = String(xaxisLary[0][i]); }
				}
				else
				{
					var xaxisInput = $("input#grpxaxisinpf").attr("value");
					var xaxissplitpAr = new Array();
					if(xaxisInput != "") { xaxisInput = bbsZtoH(xaxisInput); xaxisLary[0] = splitToArray(xaxisInput,selectUsrType,"string"); }
				}
				var upfLabelARY = new Array(); upfLabelARY = $("input.fuptcelllabels"); $("div#graphdlabelarea").empty();
				for(var i=0; i < DataListJson.length; i++)
				{
					if(typeof DataListJson[i] != "null" && DataListJson[i] != "")
					{
						if(typeof upfLabelARY[i] != "undefined" && upfLabelARY[i].value != "") { $("div#graphdlabelarea").append("<div style='margin-top:2px;'>要素" + i + "ラベル：<input type='text' size='30' maxlength='50' class='fuptcelllabels' value='" + upfLabelARY[i].value + "'></div>"); DataListJson[i].title = upfLabelARY[i].value; }
						else { $("div#graphdlabelarea").append("<div style='margin-top:2px;'>要素" + i + "ラベル：<input type='text' size='30' maxlength='50' class='fuptcelllabels' value=''></div>"); DataListJson[i].title = ""; }
					}
				}
				setTimeout(function() { jqPlotPreview(DataListJson,20,xaxisLary[0]); },200);
			}
		})();
	}
	return false;
};
function graphStatusUpdate(mes) { $("div#tprevarea").empty(); $("div#graphstatus").text(mes).css({color:"red",opacity:"1"}); };
function graphColorArray(type)
{
	retArray = ['#f7c7c7','#87c9a5','#b9e3e9','#fff4ad','#d2cce6','#cede4a','#facd89','#7d818d','#000000','#000000'];
	// retArray = ['#000000','#000000','#000000','#000000','#000000','#000000','#000000'];
	return retArray;
};
function jqPlotPreview(params,gmax,xaxisar)
{
	var bbsGraphType = ""; bbsGraphType = $("#bbsgraphtype :selected").attr("value"); if(bbsGraphType == ""){ bbsGraphType = 0; } if(params.length <= 0) { return false; }
	var targetDivDisplay = $("div#graphpoppreview").css("display"); if(targetDivDisplay == "none") { assistWindowOC("graphpoppreview",""); }
	// 0:line　1:bar 2:pie
	var jqpDataAr = new Array(); var jqpOptionsAr = new Array(); var axesOpt = new Object(); var xlabeln = ""; var ylabeln = ""; var jqpParamObj = new Object();
	// 0:graph&table 1:graph 2:table
	var gTableSelected = ""; gTableSelected = $("#graphortable :selected").attr("value");
	var graphMarkerSize = ""; graphMarkerSize = $("#graphmarkeropt :selected").attr("value");
	if(parseFloat(graphMarkerSize) > 8) { graphMarkerSize = "3"; }
	xlabeln = $("input#tblelxlabelv").attr("value"); ylabeln = $("input#tblelylabelv").attr("value");
	if(typeof xlabeln == "undefined"){ xlabeln = ""; } if(typeof ylabeln == "undefined"){ ylabeln = ""; }
	$("div#graphstatus").text(""); $("div#tprevarea").empty(); var graphsizeIn = $("#graphsizeselect :selected").attr("value");
	switch(graphsizeIn)
	{
		case "3":
			$("div#graphpoppreview").css({"width":"400"}); $("div#tprevarea").append("<div id=\"graphpreview\" style=\"width : 350px; height : 200px;\"></div>");
			break;
		case "4":
			$("div#graphpoppreview").css({"width":"530"}); $("div#tprevarea").append("<div id=\"graphpreview\" style=\"width : 475px; height : 270px;\"></div>");
			break;
		case "5":
			$("div#graphpoppreview").css({"width":"650"}); $("div#tprevarea").append("<div id=\"graphpreview\" style=\"width : 600px; height : 350px;\"></div>");
			break;
		case "6":
			$("div#graphpoppreview").css({"width":"750"}); $("div#tprevarea").append("<div id=\"graphpreview\" style=\"width : 700px; height : 400px;\"></div>");
			break;
		default:
			$("div#graphpoppreview").css({"width":"400"}); $("div#tprevarea").append("<div id=\"graphpreview\" style=\"width : 350px; height : 200px;\"></div>");
	}
	if(bbsGraphType == "0")
	{
		for(var i = 0; i < params.length; i++)
		{
			if(params[i] == ""){ continue; }
			if(typeof params[i].title != "undefined" && params[i].title != "") { jqpOptionsAr.push({label: params[i].title,neighborThreshold: -1}); }
			else { jqpOptionsAr.push({showLabel: false}); }
		}
		axesOpt.xaxis = {};
		if((typeof xaxisar != "undefined") && xaxisar.length > 0) { axesOpt.xaxis = {renderer: $.jqplot.CategoryAxisRenderer,ticks: xaxisar}; }
		if(xlabeln != "") { axesOpt.xaxis.label = xlabeln; }
		axesOpt.xaxis.tickOptions = {angle: 0};
		if(ylabeln != "") { axesOpt.yaxis = {label: ylabeln,autoscale: true, min:0}; }
		else { axesOpt.yaxis = {min:0}; }
		if(graphMarkerSize == "0") { jqpParamObj.seriesDefaults = {lineWidth:1,showMarker:false}; }
		else { jqpParamObj.seriesDefaults = {lineWidth:1,markerOptions:{style:'circle',size:graphMarkerSize}}; }
		jqpParamObj.legend = {show:true};
		jqpParamObj.grid = {background:'#ffffff', gridLineColor:'#cccccc'};
		jqpParamObj.axesDefaults = {pad: 1.3};
		jqpParamObj.axesDefaults = {tickRenderer:$.jqplot.CanvasAxisTickRenderer};
		jqpParamObj.seriesColors = graphColorArray();
		jqpParamObj.highlighter = {sizeAdjust: 3.0};
		jqpParamObj.cursor = {show: false};
		jqpParamObj.series = jqpOptionsAr;
		jqpParamObj.axes = axesOpt;
		jqpDataAr = params;
	}
	else if(bbsGraphType == "1")
	{
		var barTmp = new Array(); var barSeriesOpt = new Array();
		for(var i = 0; i < params.length; i++)
		{
			if(params[i].length <= 0){ continue; }
			if(typeof params[i].title != "undefined" && params[i].title != "")
			{
				barTmp.push(params[i]); barSeriesOpt.push({label: params[i].title});
			}
			else
			{
				barTmp.push(params[i]); barSeriesOpt.push({label: '-'});
			}
		}
		jqpDataAr = barTmp; jqpParamObj.series = barSeriesOpt; var axesOpt = new Object();
		if((typeof xaxisar != "undefined") && xaxisar.length > 0) { axesOpt.xaxis = {renderer: $.jqplot.CategoryAxisRenderer,ticks: xaxisar}; }
		else { axesOpt.xaxis = {renderer: $.jqplot.CategoryAxisRenderer}; }
		if(xlabeln != "") { axesOpt.xaxis.label = xlabeln; }
		if(ylabeln != "") { axesOpt.yaxis = {label:ylabeln,min:0}; }
		else { axesOpt.yaxis = {min:0}; }
		jqpParamObj.axes = axesOpt;
		jqpParamObj.axesDefaults = {pad: 1.3};
		jqpParamObj.seriesDefaults = {renderer:$.jqplot.BarRenderer, rendererOptions:{barPadding: 8, barMargin: 20}};
		jqpParamObj.legend = {show:true, location:'ne', xoffset:55};
		jqpParamObj.cursor = {show: false};
		jqpParamObj.grid = {background:'#ffffff'};
	}
	else if(bbsGraphType == "2")
	{
		var pieArTmp = new Array(); var pietitleng = true;
		var pieArEmlcnt = 0;
		for(var i = 0; i < params.length; i++)
		{
			if(params[i][0] == ""){ continue; }
			if(typeof params[i].title != "undefined" && params[i].title != "")
			{
				pietitleng = false;
				pieArTmp[pieArEmlcnt] = [params[i].title,parseFloat(params[i][0])];
				pieArEmlcnt++;
			}
		}
		if(pietitleng)
		{
			graphStatusUpdate("ラベルを入力してプレビューボタンを押します。"); $("div#tprevarea").append("<div style=\"line-height:1.5em;\"><p>次に円グラフのラベルを入力して下さい。<br>ラベルが未入力の要素は表示されません。</p><p>ラベルを入力したらプレビューボタンを押してください。</p></div><div style=\"margin-top:20px;\"><img src=\"./Image/arimg2.gif\" width=\"20px\" height=\"10px\" class=\"valignmiddle\" style=\"margin-right:5px;\">このウィンドウはドラッグできます。</div>"); return false;
		}
		jqpDataAr = [pieArTmp];
		jqpParamObj.seriesDefaults = {renderer:$.jqplot.PieRenderer};
		jqpParamObj.legend = {show:true};
		jqpParamObj.cursor = {show: false};
		jqpParamObj.grid = {background:'#ffffff'};
	}
	else { graphStatusUpdate("グラフタイプが確認できませんでした。"); return false; }
	if(gTableSelected != "2")
	{
		try { $.jqplot('graphpreview', jqpDataAr, jqpParamObj); }
		catch(e) { $("div#graphstatus").text("プレビューに失敗しました。").css({color:"red",opacity:"1"}); $("button#addtabletag").attr({"disabled":"disabled"}); }
	}
	else { $("div#graphpreview").remove(); }
	$("div#graphstatus").text("変更箇所がある場合は修正しプレビューボタンを押します。").css({color:"red",opacity:"1"}); $("button#addtabletag").attr({"disabled":""});
	var frmGraphJoinData = ""; var frmGraphJoinTicks = ""; frmGraphJoinData = jqpDataAr.join("|");
	if((typeof xaxisar != "undefined") && xaxisar.length > 0) { frmGraphJoinTicks = xaxisar.join(","); }
	var inpTcellLabelsARY = new Array(); var inpTcellLabelsJ = "";
	if($("div#inputgraphc").css("display") == "none") { inpTcellLabelsARY = $("input.fuptcelllabels"); }
	else { inpTcellLabelsARY = $("input.tcelllabels"); }
	var inpTcellCNT = 0;
	for(var i = 0; i < inpTcellLabelsARY.length; i++)
	{
		if(i > 0) { inpTcellLabelsJ = inpTcellLabelsJ + ","; }
		inpTcellLabelsJ = inpTcellLabelsJ + inpTcellLabelsARY[i].value;
		if(inpTcellLabelsARY[i].value != "") { inpTcellCNT++; }
	}
	if(inpTcellCNT <= 0) { inpTcellLabelsJ = ""; }
	$("span#bbsgraphform").empty().append("<input type=\"hidden\" name=\"frmgraphdata\" value=\"" + frmGraphJoinData + "\">")
	.append("<input type=\"hidden\" name=\"xaxisar\" value=\"" + frmGraphJoinTicks + "\">")
	.append("<input type=\"hidden\" name=\"bbsGraphType\" value=\"" + bbsGraphType + "\">")
	.append("<input type=\"hidden\" name=\"gTableSelected\" value=\"" + gTableSelected + "\">")
	.append("<input type=\"hidden\" name=\"graphMarkerSize\" value=\"" + graphMarkerSize + "\">")
	.append("<input type=\"hidden\" name=\"graphsizeIn\" value=\"" + graphsizeIn + "\">")
	.append("<input type=\"hidden\" name=\"inpTcellLabelsJ\" value=\"" + inpTcellLabelsJ + "\">")
	.append("<input type=\"hidden\" name=\"xlabeln\" value=\"" + xlabeln + "\">")
	.append("<input type=\"hidden\" name=\"ylabeln\" value=\"" + ylabeln + "\">");
	if(gTableSelected != "1")
	{
		var xAsisARY = new Array();
		for(var i = 0; i < params.length; i++)
		{
			if(params[i] == ""){ continue; }
			if(typeof params[i].title != "undefined" && params[i].title != "") { xAsisARY.push(params[i].title); }
			else { xAsisARY.push(""); }
		}
		graphBuildTable(jqpDataAr, jqpParamObj, xAsisARY);
	}
	$("div#tprevarea").append("<div style=\"margin-bottom:15px;margin-left:10px;margin-top:20px;\"><img src=\"./Image/arimg2.gif\" width=\"20px\" height=\"10px\" class=\"valignmiddle\" style=\"margin-right:5px;\">このウィンドウはドラッグできます。</div>");
	return true;
};
function graphBuildTable(argData, argOpt, argAxis)
{
	var bbsGraphType = "";
	bbsGraphType = $("#bbsgraphtype :selected").attr("value");
	if(bbsGraphType == ""){ bbsGraphType = 0; }
	xlabeln = $("input#tblelxlabelv").attr("value");
	if(typeof xlabeln == "undefined" || xlabeln == ""){ xlabeln = "&nbsp;"; }
	var axisTicks = new Array();
	if(bbsGraphType != 2 && typeof argOpt.axes.xaxis.ticks != "undefined") { axisTicks = argOpt.axes.xaxis.ticks; }
	if(argData.length <= 0){ return false; }
	var graphsizeIn = $("#graphsizeselect :selected").attr("value");
	switch(graphsizeIn)
	{
		case "3":
			$("div#tprevarea").append("<table id='tprevinnert' style='width:350px;'><tbody></tbody></table>");
			break;
		case "4":
			$("div#tprevarea").append("<table id='tprevinnert' style='width:475px;'><tbody></tbody></table>");
			break;
		case "5":
			$("div#tprevarea").append("<table id='tprevinnert' style='width:600px;'><tbody></tbody></table>");
			break;
		case "6":
			$("div#tprevarea").append("<table id='tprevinnert' style='width:700px;'><tbody></tbody></table>");
			break;
		default:
			$("div#tprevarea").append("<table id='tprevinnert' style='width:350px;'><tbody></tbody></table>");
	}
	var emlMaxCount = 0;
	for(var i = 0; i < argData.length; i++) { if(argData[i].length > emlMaxCount) { emlMaxCount = argData[i].length; } }
	if(bbsGraphType != "2")
	{
		var ylabeln = "";
		ylabeln = $("input#tblelylabelv").attr("value");
		var axisDataName = "";
		for(var i = 0; i < emlMaxCount; i++)
		{
			var tmpTtag = "";
			if(typeof axisTicks[i] != "undefined" && axisTicks[i] != "") { tmpTtag = tmpTtag + "<td>" + axisTicks[i] + "</td>"; }
			for(var j = 0; j < argData.length; j++)
			{
				if(typeof argData[j][i] == "undefined"){ continue; }
				else if(argData[j][i] == "") { tmpTtag = tmpTtag + "<td>-</td>"; }
				else { tmpTtag = tmpTtag + "<td>" + numComma(argData[j][i]) + "</td>"; }
			}
			$("table#tprevinnert>tbody").append("<tr>" + tmpTtag + "</tr>");
		}
		if(axisTicks.length > 0) { axisDataName = "<th>" + xlabeln + "</th>"; }
		for(var i = 0; i < argAxis.length; i++)
		{
			if(typeof argAxis[i] != "undefined" && argAxis[i] != "") { axisDataName = axisDataName + "<th>" + argAxis[i] + "</th>"; }
			else { axisDataName = axisDataName + "<th>&nbsp;</th>"; }
		}
		$("table#tprevinnert>tbody").prepend("<tr>" + axisDataName + "</tr>");
	}
	else
	{
		for(var i = 0; i < argData[0].length; i++)
		{
			$("table#tprevinnert>tbody").append("<tr><th>" + argData[0][i][0] + "</th><td>" + numComma(argData[0][i][1]) + "</td></tr>");
		}
	}
};
function numComma(num){ var retval = String(num); var tmp = "";	while (retval != (tmp = retval.replace(/^([+-]?\d+)(\d\d\d)/,"$1,$2"))) { retval = tmp; } return retval; };
function addMapYG()
{
	var chkmapcode = $("textarea#mapcodearea").attr("value"); if(chkmapcode == "") { $("#addmappreview").html("<span style=\"color:red;\">地図の埋め込みソースを貼り付けてください。</span>"); return false; }
	var mapsParam = new Array(); mapsParam["q"] = ""; mapsParam["ll"] = ""; mapsParam["spn"] = ""; mapsParam["z"] = ""; mapsParam["t"] = "m"; mapsParam["brcurrent"] = "";
	var reChkmapcode = chkmapcode.substr(chkmapcode.indexOf('?') + 1,chkmapcode.length); reChkmapcode = reChkmapcode.replace(/&amp;/g, "&"); var mapparamsFsplit = reChkmapcode.split("&");
	for(var i = 0; i < mapparamsFsplit.length; i++) { var paramtmp = mapparamsFsplit[i].split("="); paramtmp[1] = paramtmp[1].replace(/<|>/g, ""); mapsParam[paramtmp[0]] = paramtmp[1]; }
	if(chkmapcode.match(/maps\.google/))
	{
		if(!mapsParam["ll"].match(/^(\.|\,|\d)+$/)) { $("#addmappreview").html("<span style=\"color:red;\">パラメータに誤りがあります。</span>"); return false; } if(mapsParam["q"] == "") { mapsParam["q"] = "%E4%BD%8D%E7%BD%AE"; }
		aimixBbsGlobalObj.mapCodeXtBbsTag = "q=" + mapsParam["q"] + "&ll=" + mapsParam["ll"] + "&spn=" + mapsParam["spn"] + "&z=" + mapsParam["z"] + "&t=" + mapsParam["t"] + "&brcurrent=" + mapsParam["brcurrent"];
		$("div#addmappreview").empty(); $("div#addmappreview").append("<small><a href=\"http://maps.google.co.jp/maps?ie=UTF8&oe=UTF-8&hl=ja&t=" + mapsParam["t"] + "&q=" + mapsParam["q"] + "&ll=" + mapsParam["ll"] + "&spn=" + mapsParam["spn"] + "&z=" + mapsParam["z"] + "&brcurrent=" + mapsParam["brcurrent"] + "&source=embed\" style=\"color:#0000FF;text-align:left\">大きな地図で見る</a></small>");
		$("div#addmappreview").append("<iframe width='350' height='350' frameborder='0' scrolling='no' marginheight='0' marginwidth='0' id='previewmapcode'></iframe>");
		$("#previewmapcode").attr({"src":"http://maps.google.co.jp/maps?ie=UTF8&oe=UTF-8&hl=ja&t=" + mapsParam["t"] + "&q=" + mapsParam["q"] + "&ll=" + mapsParam["ll"] + "&spn=" + mapsParam["spn"] + "&z=" + mapsParam["z"] + "&brcurrent=" + mapsParam["brcurrent"] + "&output=embed"});
		$("button#addmapapp").attr({"disabled":""}); $("div#assistmapmes").empty(); $("div#assistmapmes").append("<ul><li>下の地図を挿入する場合は「MAPを挿入」ボタンをクリックして下さい。</li><li>挿入ボタンを押すとタグが挿入されます。</li></ul>");

	}
	else { $("#addmappreview").html("<span style=\"color:red;\">コードが認識出来ませんでした。</span>"); return false; }
	return false;
};
function addImageSrc()
{
	imagefileurl = $("input#imagelink").attr("value");
	if(imagefileurl == "http:\/\/") { $("#imagelinkpreview").html("<span style=\"color:red;\">画像のURLを入力して下さい。</span>"); return false; }
	else if(!imagefileurl.match(/\.(jpg|jpeg|gif|png)$/)) { $("#imagelinkpreview").html("<span style=\"color:red;\">非対応の形式です。</span>"); return false; }
	loadingWaitImg("view"); imagefileurl = imagefileurl.replace(/(http:\/\/http:\/\/)/g, "http://");
	var loadImageObj = new Image();
	loadImageObj.onerror = function() { loadingWaitImg("");$("#imagelinkpreview").html("<span style=\"color:red;\">画像が読み込めませんでした。</span>"); }
	loadImageObj.onload = function()
	{
		loadingWaitImg("");
		if(loadImageObj.width > 380)
		{
			var prevAreaW = 350; var prevAreaH = 400; var imgWidth = loadImageObj.width; var imgHeight = loadImageObj.height; var widthRate = imgWidth / prevAreaW; var heightRate = imgHeight / prevAreaH;
			if (widthRate >= 1 && heightRate >= 1) { if (widthRate > heightRate) { nextImgSizeW = prevAreaW; nextImgSizeH = Math.floor(imgHeight / widthRate); } else { nextImgSizeW = Math.floor(imgWidth / heightRate); nextImgSizeH = prevAreaH; } } else if (widthRate >= 1 && heightRate < 1) { nextImgSizeW = prevAreaW; nextImgSizeH = Math.floor(imgHeight / widthRate); }
			else if (widthRate < 1 && heightRate >= 1) { nextImgSizeW = Math.floor(imgWidth / heightRate); nextImgSizeH = prevAreaH; } else { nextImgSizeW = imgWidth; nextImgSizeH = imgHeight; } loadImageObj.width = nextImgSizeW; loadImageObj.height = nextImgSizeH;
			$("#imagelinkpreview").css({"opacity":"0"}).html("<img src='" + imagefileurl + "' width='" + nextImgSizeW + "' height='" + nextImgSizeH + "' style='behavior : url(expression);'>"); $("#imagelinkpreview").animate({"opacity":"1"},200);
		}
		else { $("#imagelinkpreview").css({"opacity":"0"}).html("<img src='" + imagefileurl + "'>"); $("#imagelinkpreview").animate({"opacity":"1"},200); }
		$("button#addimageapp").attr({"disabled":""}); $("div#assistimagemes").empty(); $("div#assistimagemes").append("<ul><li>以下に挿入される画像が表示されています。</li><li>挿入ボタンを押すとタグが挿入されます。</li></ul>");
	}
	loadImageObj.src = imagefileurl;
	return false;
};
function changeEmojiList(listname) { if(listname == "ezweb") { setEmojiCode("ezweb"); } else if(listname == "softbank") { setEmojiCode("softbank"); } else { setEmojiCode(); } };
function setEmojiCode(selectcode)
{
	loadingWaitImg("view"); var elemCount = 0; var codeoption = ""; var temporaryArray = new Array();
	if (selectcode == "ezweb") {  codeoption = "ezweb"; temporaryArray = aimixBbsGlobalObj.eEmojiArray; elemCount = aimixBbsGlobalObj.eEmojiArrayDataCNT; } else if (selectcode == "softbank") { codeoption = "softbank"; temporaryArray = aimixBbsGlobalObj.sEmojiArray; elemCount = aimixBbsGlobalObj.sEmojiArrayDataCNT; } else { codeoption = "imode"; temporaryArray = aimixBbsGlobalObj.iEmojiArray; elemCount = aimixBbsGlobalObj.iEmojiArrayDataCNT; }
	if(elemCount <= 0)
	{
		var getFileName = "js/imode.txt"; if(codeoption == "ezweb") { getFileName = "js/ezweb.txt"; } else if(codeoption == "softbank") { getFileName = "js/softbank.txt"; }
		$.ajax({ type: "GET", url: getFileName, dataType: "text", timeout:10000,
		success: function(retAjaxdata, retStatus)
		{
			var LF = String.fromCharCode(10); var retEmojiArry = new Array(); retEmojiArry = retAjaxdata.split(LF);
			for(var i = 0; i < retEmojiArry.length; i++) { if(retEmojiArry[i].length > 2 && typeof retEmojiArry[i] == "string") { temporaryArray[retEmojiArry[i]] = retEmojiArry[i]; elemCount++; } }
			if (selectcode == "ezweb") { aimixBbsGlobalObj.eEmojiArrayDataCNT = elemCount; aimixBbsGlobalObj.eEmojiArray = temporaryArray; }
			else if (selectcode == "softbank") { aimixBbsGlobalObj.sEmojiArrayDataCNT = elemCount; aimixBbsGlobalObj.sEmojiArray = temporaryArray; }
			else { aimixBbsGlobalObj.iEmojiArrayDataCNT = elemCount; aimixBbsGlobalObj.iEmojiArray = temporaryArray; }
			loadingWaitImg(""); imageMap(temporaryArray,codeoption);
		},
		error: function() { $("div#emojidata").empty(); $("div#emojidata").append("<span style='color:#ff0000;margin:10px;'>絵文字データの取得に失敗しました。</span>"); }
		});
	}
	else { loadingWaitImg("");imageMap(temporaryArray,codeoption); }
	return true;
};
// emoARRY:HASH
function imageMap(emoARRY,eCode)
{
	// safari or chrome
	if ((navigator.userAgent.indexOf("Safari") != -1 && navigator.userAgent.indexOf("Chrome") == -1) || (navigator.userAgent.indexOf("Chrome") != -1))
	{
		if(document.getElementById("emapimage")) { var delTargetNode = document.getElementById("emapimage"); delTargetNode.parentNode.removeChild(delTargetNode); }
		var mapTagId = "";
		if(eCode == "ezweb") { mapTagId = "maptagezweb"; } else if(eCode == "softbank") { mapTagId = "maptagsb"; } else { mapTagId = "maptagimode"; }
		var outerObject = document.getElementById("emojidata"); var newTagArea = document.createElement("img");
		if(eCode == "ezweb") { newTagArea.setAttribute("src","./Image/ezEmoji.gif"); newTagArea.setAttribute("width","400px"); newTagArea.setAttribute("height","336px"); }
		else if(eCode == "softbank") { newTagArea.setAttribute("src","./Image/softbankEmoji.gif"); newTagArea.setAttribute("width","420px"); newTagArea.setAttribute("height","441px"); }
		else { newTagArea.setAttribute("src","./Image/imodeEmoji.gif"); newTagArea.setAttribute("width","360px"); newTagArea.setAttribute("height","234px"); }
		newTagArea.setAttribute("name","emapimage"); newTagArea.setAttribute("id","emapimage"); newTagArea.setAttribute("border","0"); newTagArea.setAttribute("usemap","#" + mapTagId);
		outerObject.appendChild(newTagArea);
		if(document.getElementById(mapTagId)) { document.emapimage.useMap = "#" + mapTagId; }
		else
		{
			// map
			outerObject = {}; newTagArea = {}; outerObject = document.getElementById("emojidata"); newTagArea = document.createElement("map"); newTagArea.setAttribute("id",mapTagId); newTagArea.setAttribute("name",mapTagId); outerObject.appendChild(newTagArea);
			if(eCode == "ezweb") { var mapLeftX= 3; var mapLeftY = 3; var mapRightX = 17; var mapRightY = 18; } else if(eCode == "softbank") { var mapLeftX= 3; var mapLeftY = 3; var mapRightX = 18; var mapRightY = 18; } else { var mapLeftX= 3; var mapLeftY = 3; var mapRightX = 15; var mapRightY = 15; }
			var changeLineCnt = 0; outerObject = {}; outerObject = document.getElementById(mapTagId);
			for(var eKey in emoARRY)
			{
				if(emoARRY[eKey] == ""){ continue; }
				if((emoARRY[eKey].length > 2) && (emoARRY[eKey].length < 6))
				{
					// area
					newTagArea = {}; newTagArea = document.createElement("area"); newTagArea.setAttribute("href","#"); newTagArea.setAttribute("shape","rect"); newTagArea.setAttribute("coords",mapLeftX + "," + mapLeftY + "," + mapRightX + "," + mapRightY); newTagArea.setAttribute("onclick","addSelectEmoji('" + emoARRY[eKey] + "');return false;");
					outerObject.appendChild(newTagArea);
					changeLineCnt++;
					if(changeLineCnt % 20 == 0 && changeLineCnt > 10) { if(eCode == "ezweb") { mapLeftX = 3; mapRightX = 17; mapLeftY += 21; mapRightY += 21; } else if(eCode == "softbank") { mapLeftX = 3; mapRightX = 18; mapLeftY += 21; mapRightY += 21; } else { mapLeftX = 3; mapRightX = 15; mapLeftY += 18; mapRightY += 18; } }
					else { if(eCode == "ezweb") { mapLeftX += 20; mapRightX += 20; } else if(eCode == "softbank") { mapLeftX += 21; mapRightX += 21; } else { mapLeftX += 18; mapRightX += 18; } }
				}
			}
			newTagArea = document.createElement("area"); newTagArea.setAttribute("nohref","nohref"); newTagArea.setAttribute("shape","default"); outerObject.appendChild(newTagArea);
		}
	}
	else
	{
		$("div#emojidata").empty();
		if(eCode == "ezweb") { $("div#emojidata").append("<img src='Image/ezEmoji.gif' width='400px' height='336px' border='0' usemap='#emojimaparea' alt=''>").css("opacity","0"); }
		else if(eCode == "softbank") { $("div#emojidata").append("<img src='Image/softbankEmoji.gif' width='420px' height='441px' border='0' usemap='#emojimaparea'>").css("opacity","0"); }
		else { $("div#emojidata").append("<img src='Image/imodeEmoji.gif' width='360px' height='234px' border='0' usemap='#emojimaparea'>").css("opacity","0"); }
		$("div#emojidata").append("<map name='emojimaparea' id='emojimaparea'></map>");
		var outerObject = document.getElementById("emojimaparea"); var newTagArea = document.createElement("area");
		if(eCode == "ezweb") { var mapLeftX= 3; var mapLeftY = 3; var mapRightX = 17; var mapRightY = 18; } else if(eCode == "softbank") { var mapLeftX= 3; var mapLeftY = 3; var mapRightX = 18; var mapRightY = 18; } else { var mapLeftX= 3; var mapLeftY = 3; var mapRightX = 15; var mapRightY = 15; }
		var changeLineCnt = 0;
		for(var eKey in emoARRY)
		{
			if(emoARRY[eKey] == ""){ continue; }
			if((emoARRY[eKey].length > 2) && (emoARRY[eKey].length < 6))
			{
				$("map#emojimaparea").append("<area href=\"#\" shape=\"rect\" coords=\"" + mapLeftX + "," + mapLeftY + "," + mapRightX + "," + mapRightY + "\" onclick=\"addSelectEmoji('" + emoARRY[eKey] + "');return false;\">");
				changeLineCnt++;
				if(changeLineCnt % 20 == 0 && changeLineCnt > 10) { if(eCode == "ezweb") { mapLeftX = 3; mapRightX = 17; mapLeftY += 21; mapRightY += 21; } else if(eCode == "softbank") { mapLeftX = 3; mapRightX = 18; mapLeftY += 21; mapRightY += 21; } else { mapLeftX = 3; mapRightX = 15; mapLeftY += 18; mapRightY += 18; } }
				else { if(eCode == "ezweb") { mapLeftX += 20; mapRightX += 20; } else if(eCode == "softbank") { mapLeftX += 21; mapRightX += 21; } else { mapLeftX += 18; mapRightX += 18; } }
			}
		}
		$("#emojimaparea").append("<area shape=\"default\" nohref=\"nohref\">");
	}
	if(eCode == "ezweb") { $("div#assistemoji").css({"width":422}); } else if(eCode == "softbank") { $("div#assistemoji").css({"width":442}); } else { $("div#assistemoji").css({"width":382}); } $("div#emojidata").animate({"opacity":1},200);
	return true;
};
function addSelectTag(tag,type)
{
	if(!type || !tag) { return false; }
	var allowTagList = new Array();
	allowTagList["bold"] = "b"; allowTagList["pre"] = "pre"; allowTagList["italic"] = "i"; allowTagList["underline"] = "u"; allowTagList["strike"] = "s"; allowTagList["hiddent"] = "hiddent"; allowTagList["quote"] = "quote"; allowTagList["pretag"] = "pretag"; allowTagList["fonttag"] = "fonttag"; allowTagList["list"] = "list";
	allowTagList["smiley01"] = "smiley01"; allowTagList["smiley02"] = "smiley02"; allowTagList["smiley03"] = "smiley03"; allowTagList["smiley04"] = "smiley04"; allowTagList["smiley05"] = "smiley05"; allowTagList["smiley06"] = "smiley06"; allowTagList["smiley07"] = "smiley07";
	var font_color = ""; var font_size = ""; var font_type = ""; var font_code = ""; var font_code_s = ""; var font_code_e = ""; var font_code_flg = false;
	if(tag == "fonttag")
	{
		font_color = $("#bbfontcolor :selected").attr("value");	font_size = $("#bbfontsize :selected").attr("value"); font_type = $("#bbfonttype :selected").attr("value");
		if(font_color != "none") { font_code_s = font_code_s + "[color=" + font_color + "]"; font_code_e = "[/color]" + font_code_e; font_code_flg = true; }
		if(font_size != "none") { font_code_s = font_code_s + "[size=" + font_size + "]";	font_code_e = "[/size]" + font_code_e; font_code_flg = true; }
		if(font_type != "none") { font_code_s = font_code_s + "[font=" + font_type + "]"; font_code_e = "[/font]" + font_code_e; font_code_flg = true; }
		if(!font_code_flg) { return false; }
	}
	var list_tags = "";
	if(tag == "list")
	{
		var liststarttag = "list]"; var selectltype = $('input[name="listtype"]:checked').val();
		if(selectltype == "undefined" || selectltype == "1") { liststarttag = "list]"; }
		else if(selectltype == "2") { liststarttag = "list=2]"; }
		else if(selectltype == "3") { liststarttag = "list=3]"; }
		else { liststarttag = "list]"; }
		var listTitleAr = new Array(); var listValueAr = new Array();
		var listTitleAr = $("input.listtitle"); var listValueAr = $("textarea.listvalue");
		var lemptyflug = true;

		for(var i=0; i < listValueAr.length; i++)
		{
			if(listValueAr[i].value != "")
			{
				if(selectltype == "3") { list_tags = list_tags + "[#]" + listTitleAr[i].value + "[*]" + listValueAr[i].value; }
				else { list_tags = list_tags + "[*]" + listValueAr[i].value; }
				lemptyflug = false;
			}
		}
		if(lemptyflug) { allowTagList[tag] = liststarttag + "[*]ここに記述します。[*]ここに記述します。" + "[/list"; }
		else { allowTagList[tag] = liststarttag + list_tags + "[/list"; }
		type = "";
	}

	if (allowTagList[tag] == undefined) { return false; }
	else
	{
		var targetArea = document.getElementById("formcomment");
		if(document.selection)
		{
			targetArea.focus(); var selectTextValue = document.selection.createRange().text; var selectTextObj = document.selection.createRange();
			if(selectTextValue.length > 0)
			{
				if(type == "double") { selectTextObj.text = "[" + allowTagList[tag] + "]" + selectTextValue + "[/" + allowTagList[tag] + "]"; }
				else if(type == "font") { selectTextObj.text = font_code_s + selectTextValue + font_code_e; }
				else { selectTextObj.text = "[" + allowTagList[tag] + "]" + selectTextValue; }
			}
			else
			{
				if(type == "double") { selectTextObj.text = "[" + allowTagList[tag] + "]" + "[/" + allowTagList[tag] + "]"; }
				else if(type == "font") { selectTextObj.text = font_code_s + font_code_e; }
				else { selectTextObj.text = "[" + allowTagList[tag] + "]"; }
			}
		}
		else if (typeof targetArea.selectionStart != 'undefined' && typeof targetArea.selectionEnd != 'undefined')
		{
			var leftSideText = targetArea.value.substring(0,targetArea.selectionStart); var selectTextValue = targetArea.value.substring(targetArea.selectionStart,targetArea.selectionEnd); var rightSideText = targetArea.value.substring(targetArea.selectionEnd,targetArea.value.length);
			if(targetArea.selectionStart != targetArea.selectionEnd)
			{
				if(type == "double") { targetArea.value = leftSideText + "[" + allowTagList[tag] + "]" +  selectTextValue + "[/" + allowTagList[tag] + "]" + rightSideText; }
				else if(type == "font") { targetArea.value = leftSideText + font_code_s +  selectTextValue + font_code_e + rightSideText; }
				else { return false; }
			}
			else
			{
				if(type == "double") { targetArea.value = leftSideText + "[" + allowTagList[tag] + "]" + "[/" + allowTagList[tag] + "]" +  selectTextValue + rightSideText; }
				else if(type == "font") { targetArea.value = leftSideText + font_code_s + font_code_e +  selectTextValue + rightSideText; }
				else { targetArea.value = leftSideText + "[" + allowTagList[tag] + "]" +  selectTextValue + rightSideText; }
			}
		}
		else
		{
			if(type == "double") { var comment = $("#formcomment").attr("value") + "[" + allowTagList[tag] + "]" + "[/" + allowTagList[tag] + "]"; }
			else if(type == "font") { var comment = $("#formcomment").attr("value") + font_code_s + font_code_e; }
			else { var comment = $("#formcomment").attr("value") + "[" + allowTagList[tag] + "]"; }
			$("#formcomment").attr("value",comment);
		}
		assistWindowOC("assistbbcode","");
	}
	return false;
};
function addmoreList()
{
	var checkedlist = $('input[name="listtype"]:checked').val();
	if(checkedlist == "3")
	{
		$("div#asslistarea").append('<span class="listtitles"><input size="30" type="text" maxlength="40" class="listtitle"><span style="color:#666666">：題名</span><br></span>')
		.append('<textarea rows="4" cols="37" class="listvalue"></textarea><br>');
	}
	else { $("div#asslistarea").append('<textarea rows="4" cols="37" class="listvalue"></textarea><br>'); }
	$("textarea.listvalue").bind("focus", function() { $("textarea.listvalue").attr("rows","1"); $(this).attr("rows","4"); });
	return false;
};
function addSelectImg()
{
	var imageURL = $("input#imagelink").attr("value"); imageURL = imageURL.replace(/(http:\/\/http:\/\/)/g, "http://"); var targetArea = document.getElementById("formcomment");
	if(document.selection) { targetArea.focus(); var selectTextValue = document.selection.createRange().text; var selectTextObj = document.selection.createRange(); selectTextObj.text = selectTextValue + "[img]" + imageURL + "[/img]"; }
	else
	{
		if(typeof targetArea.selectionStart != 'undefined' && typeof targetArea.selectionEnd != 'undefined')
		{
			if(targetArea.selectionStart == 0) { var comment = "[img]" + imageURL + "[/img]" + $("#formcomment").attr("value"); } else if(targetArea.selectionEnd == targetArea.value.length) { var comment = $("#formcomment").attr("value") + "[img]" + imageURL + "[/img]"; }
			else { var leftSideText = targetArea.value.substring(0,targetArea.selectionStart); var rightSideText = targetArea.value.substring(targetArea.selectionStart,targetArea.value.length); targetArea.value = leftSideText + "[img]" + imageURL + "[/img]" + rightSideText; }
		}
		else { var comment = $("#formcomment").attr("value") + "[img]" + imageURL + "[/img]"; }
	}
	$("#formcomment").attr("value",comment); assistWindowOC("assistimage","");
	return false;
};
function addSelectMap()
{
	var mapcode = aimixBbsGlobalObj.mapCodeXtBbsTag; var mapsParam = new Array();
	mapsParam["q"] = ""; mapsParam["ll"] = ""; mapsParam["spn"] = ""; mapsParam["z"] = ""; mapsParam["t"] = "m"; mapsParam["brcurrent"] = ""; mapcode = mapcode.replace(/&amp;/g, "&"); var mapparamsFsplit = mapcode.split("&");
	for(var i = 0; i < mapparamsFsplit.length; i++) { var paramtmp = mapparamsFsplit[i].split("="); mapsParam[paramtmp[0]] = paramtmp[1]; }
	var targetArea = document.getElementById("formcomment");
	if(document.selection) { targetArea.focus(); var selectTextValue = document.selection.createRange().text; var selectTextObj = document.selection.createRange(); selectTextObj.text = selectTextValue + "[googlemap]" + mapcode + "[/googlemap]"; }
	else
	{
		if(typeof targetArea.selectionStart != 'undefined' && typeof targetArea.selectionEnd != 'undefined')
		{
			if(targetArea.selectionStart == 0) { var comment = "[googlemap]" + mapcode + "[/googlemap]" + $("#formcomment").attr("value"); } else if(targetArea.selectionEnd == targetArea.value.length) { var comment = $("#formcomment").attr("value") + "[googlemap]" + mapcode + "[/googlemap]"; }
			else { var leftSideText = targetArea.value.substring(0,targetArea.selectionStart); var rightSideText = targetArea.value.substring(targetArea.selectionStart,targetArea.value.length); targetArea.value = leftSideText + "[googlemap]" + mapcode + "[/googlemap]" + rightSideText; }
		}
		else { var comment = $("#formcomment").attr("value") + "[googlemap]" + mapcode + "[/googlemap]"; }
	}
	$("#formcomment").attr("value",comment); assistWindowOC("assistmap","");
	return false;
};
function addSelectEmoji(code)
{
	var emojiMode = "";
	if (aimixBbsGlobalObj.iEmojiArray[code] == undefined && aimixBbsGlobalObj.eEmojiArray[code] == undefined && aimixBbsGlobalObj.sEmojiArray[code] == undefined) { return false; }
	else
	{
		if(aimixBbsGlobalObj.iEmojiArray[code] != undefined){ emojiMode = "i"; } else if(aimixBbsGlobalObj.eEmojiArray[code] != undefined){ emojiMode = "e"; } else if(aimixBbsGlobalObj.sEmojiArray[code] != undefined){ emojiMode = "j"; } else { return false; }
		var targetArea = document.getElementById("formcomment");
		if(document.selection) { targetArea.focus(); var selectTextValue = document.selection.createRange().text; var selectTextObj = document.selection.createRange(); selectTextObj.text = selectTextValue + "<" + emojiMode + code + ">"; }
		else
		{
			if(typeof targetArea.selectionStart != 'undefined' && typeof targetArea.selectionEnd != 'undefined')
			{
				if(targetArea.selectionStart == 0) { var comment = "<" + emojiMode + code + ">" + $("#formcomment").attr("value"); } else if(targetArea.selectionEnd == targetArea.value.length) { var comment = $("#formcomment").attr("value") + "<" + emojiMode + code + ">"; }
				else { var leftSideText = targetArea.value.substring(0,targetArea.selectionStart); var rightSideText = targetArea.value.substring(targetArea.selectionStart,targetArea.value.length); targetArea.value = leftSideText + "<" + emojiMode + code + ">" + rightSideText; }
			}
			else { var comment = $("#formcomment").attr("value") + "<" + emojiMode + code + ">"; }
		}
		$("#formcomment").attr("value",comment);
		if(!$("#emojiaddmode").attr("checked")) { assistWindowOC("assistemoji",""); } else { $("#ecode" + code).animate({"opacity":"0"}, 100).animate({"opacity":"1"}, 200); }

	}
	return false;
};

// popup image
function imageViewCheck()
{
	aimixBbsGlobalObj.bbsPreLoadImageComplete = popUpImagePreLoad.complete;
	if(aimixBbsGlobalObj.bbsPreLoadImageComplete) { aimixBbsGlobalObj.bbsPreLoadImageComplete = false;
	if(imageReSize()) { $("div#popUpImageBackGround").animate({"opacity":"0.5"},200,function() { $("div#popUpImageContainer").css({"opacity":"1","filter":""}); }); }; }
	else { setTimeout("imageViewCheck()", 100); }
};
function imageReSize()
{
	var imgWidth = popUpImagePreLoad.width;	var imgHeight = popUpImagePreLoad.height; var winWidth = $(window).width() * 0.9; var winHeight = $(window).height() * 0.9;
	var widthRate = imgWidth / winWidth; var heightRate = imgHeight / winHeight; var offsetTop  = $(window).height() / 2; var offsetLeft = $(window).width() / 2;
      	var popupCtnrMarginTop = document.body.scrollTop  + offsetTop; var popupCtnrMarginLeft = document.body.scrollLeft + offsetLeft;
	if (widthRate >= 1 && heightRate >= 1) { if (widthRate > heightRate) { nextImgSizeW = winWidth; nextImgSizeH = Math.floor(imgHeight / widthRate); } else { nextImgSizeW = Math.floor(imgWidth / heightRate); nextImgSizeH = winHeight; } }
	else if (widthRate >= 1 && heightRate < 1) { nextImgSizeW = winWidth; nextImgSizeH = Math.floor(imgHeight / widthRate); }
	else if (widthRate < 1 && heightRate >= 1) { nextImgSizeW = Math.floor(imgWidth / heightRate); nextImgSizeH = winHeight; }
	else { nextImgSizeW = imgWidth; nextImgSizeH = imgHeight; }
	var imgWidthHalf = nextImgSizeW / 2; var imgHeightHalf = nextImgSizeH / 2; popupCtnrMarginTop = popupCtnrMarginTop - imgHeightHalf; popupCtnrMarginLeft = popupCtnrMarginLeft - imgWidthHalf;
	$("div#popUpImageContainer").empty();
	$("div#popUpImageContainer").append("<div id='pContainerT' class='pContainerSizeW'></div><div id='pContainerB' class='pContainerSizeW'></div><div id='pContainerL' class='pContainerSizeH'></div><div id='pContainerR' class='pContainerSizeH'></div>");
	$("div#popUpImageContainer").append("<div id='pContainerTL'></div><div id='pContainerTR'></div><div id='pContainerBL'></div><div id='pContainerBR'></div>"); $("div#popUpImageContainer").append("<div><img src='" + orgImageUrl + "' width='" + nextImgSizeW + "' height='" + nextImgSizeH + "'></div>");
	var pImageContainerWidth = nextImgSizeW + 10; var pImageContainerHeight = nextImgSizeH + 10; $("div.pContainerSizeW").css({"width":pImageContainerWidth}); $("div.pContainerSizeH").css({"height":pImageContainerHeight});
	$("div#popUpImageContainer").css({"display":"block","opacity":"0","top":popupCtnrMarginTop,"left":popupCtnrMarginLeft});
	return true;
};
function webcolor()
{
	var color = new Array();

	color = ['333333','666666','999999','cccccc','ffffff',
	'ff33ff','ff33cc','ff3399','ff3366','ff3333','ff3300',
	'cc3300','993300','cc6633','ff9966','ff6633','ff6600',
	'663300','996633','cc9966','cc6600','ffcc99','ff9933',
	'ff9900','996600','cc9933','ffcc66','cc9900','ffcc33',
	'ffcc00','333300','666633','666600','999966','999933',
	'999900','cccc99','cccc66','cccc33','cccc00','ffffcc',
	'ffff99','ffff66','ffff33','ffff00','ccff00','99cc00',
	'ccff33','669900','99cc33','ccff66','99ff00','336600',
	'669933','99cc66','66cc00','ccff99','99ff33','66ff00',
	'339900','66cc33','99ff66','33cc00','66ff33','33ff00',
	'003300','336633','006600','669966','339933','009900',
	'99cc99','66cc66','33cc33','00cc00','ccffcc','99ff99',
	'66ff66','33ff33','00ff00','00ff33','00cc33','33ff66',
	'009933','33cc66','66ff99','00ff66','006633','339966',
	'66cc99','00cc66','99ffcc','33ff99','00ff99','009966',
	'33cc99','66ffcc','00cc99','33ffcc','00ffcc','003333',
	'336666','006666','669999','339999','009999','99cccc',
	'66cccc','33cccc','00cccc','ccffff','99ffff','66ffff',
	'33ffff','00ffff','00ccff','0099cc','33ccff','006699',
	'3399cc','66ccff','0099ff','003366','336699','6699cc',
	'0066cc','99ccff','3399ff','0066ff','003399','3366cc',
	'6699ff','0033cc','3366ff','0033ff','000033','333366',
	'000066','666699','333399','000099','9999cc','6666cc',
	'3333cc','0000cc','ccccff','9999ff','6666ff','3333ff',
	'0000ff','3300ff','3300cc','6633ff','330099','6633cc',
	'9966ff','6600ff','330066','663399','9966cc','6600cc',
	'cc99ff','9933ff','9900ff','660099','9933cc','cc66ff',
	'9900cc','cc33ff','cc00ff','330033','663366','660066',
	'996699','993399','990099','cc99cc','cc66cc','cc33cc',
	'cc00cc','ffccff','ff99ff','ff66ff','ff00ff','ff00cc',
	'cc0099','990066','cc3399','ff66cc','ff0099','660033',
	'993366','cc6699','cc0066','ff99cc','ff0066','990033',
	'cc3366','ff6699','cc0033','ff0033','330000','663333',
	'660000','996666','993333','990000','cc9999','cc6666',
	'cc3333','cc0000','ffcccc','ff9999','ff6666','ff0000']

	return color;
};

