/*
* Filename	: general.js
* Function	:
* Comment		:
* History		: 2005/03/20, mas, setup
*						
* Version		:	1.0
* Author		:	Copyright (c) 2005 by JcomTech Corp. All Rights Reserved.
*/

// --------------------------- goUrl ------------------------------
function goUrl(page) {location.href = page;}

// --------------------------- gotoPage ------------------------------
function __gotoPage(pageNo) {
	var form = document.tranMgr;
	form.target = "";
	form.action = "";
	form.pageNo.value = pageNo;
	form.submit();
}

// --------------------------- viewZip ------------------------------
function viewZip(formNm, zip0Fld, zip1Fld, areaFld, addr1Fld){
	var url = '/common/post1.html?formNm=' + formNm + '&zip0Fld=' + zip0Fld + '&zip1Fld=' + zip1Fld + '&areaFld=' +areaFld + '&addr1Fld=' + addr1Fld;
	window.open(url, "_zipWindow", "scrollbars=yes, resizable=no, width=522, height=610, left=50, top=50");
}


// --------------------------- ID check ------------------------------
function checkId(fieldNm, mode, addVal) {
	if (trimString(eval(fieldNm).value) == "") {
		alert("重複チェックする項目を入力してください。");
		eval(fieldNm).focus();
		return;
	}
	openWindowPos("/common/id_check.html?mode=" + mode + "&id=" + eval(fieldNm).value + "&field=" + fieldNm + "&add=" + addVal , 400, 260, '', 10, 10);
}


// --------------------------- ID check ------------------------------
function dispatchCheckId(fieldNm) {
	if (trimString(eval(fieldNm).value) == "") {
		alert("重複チェックする項目を入力してください。");
		eval(fieldNm).focus();
		return;
	}
	openWindowPos("dispatch_id_check.html?id=" + eval(fieldNm).value + "&field=" + fieldNm , 400, 260, '', 10, 10);
}


// --------------------------- Marquee Stop ------------------------------
var Toggle =1; 
function ImgStop(chk){ 
	Toggle = 0; 
	switch(chk) { 
		case 1: 
			jcs.stop(); 
			break; 
		case 2: 
			jcs.stop(); 
			break; 
	} 
}  

// --------------------------- Marquee Start ------------------------------
function ImgStart(chk){ 
	Toggle = 1; 
	switch(chk) { 
		case 1: 
			jcs.start(); 
			break; 
		case 2: 
			jcs.start(); 
			break; 
	} 
}  


// --------------------------- viewDetail ------------------------------
function viewDetail(recKey) {
	var form = document.tranMgr;

	form.target = "_blank";
	form.recKey.value = recKey;
	form.action="/app/company_detail.html";
	form.submit();
}


// --------------------------- insertReviewBox ------------------------------
function insertReviewBox(recKey) {
	var form = document.tranMgr;

	form.recKey.value = recKey;
	form.target = "_inbox";
	form.action = "../app/inbox_popup.html";
	var _inbox = window.open("about:blank", "_inbox", "scrollbars=no, resizable=no, width=500, height=320, left=50, top=50");
	form.submit();
}

// --------------------------- insertReviewBoxAll ------------------------------
function insertReviewBoxAll() {
	var form = document.tranMgr;

	if (!isCheckedElement(document.getElementsByName("chk")))	{
		alert("項目を一つ以上選択してください。");
		return;
	}

	form.target = "_inbox";
	form.action = "../app/inbox_popup.html";
	var _inbox = window.open("about:blank", "_inbox", "scrollbars=no, resizable=no, width=500, height=320, left=50, top=50");
	form.submit();
}

// --------------------------- deleteInboxAll ------------------------------
function deleteInboxAll(md) {
	var form = document.tranMgr;

	if (!isCheckedElement(document.getElementsByName("chk")))	{
		alert("項目を一つ以上選択してください。");
		return;
	}

	form.target = "";
	if (md == "mypage") {
		form.action = "../mypage/inbox_del_action.html";
	} else {
		form.action = "../app/inbox_del_action.html";
	}
	form.submit();
}

// --------------------------- joinRecruit ------------------------------
function joinRecruit(recKey) {
	var form = document.tranMgr;

	form.target = "";
	form.recKey.value = recKey;
	form.action = "../app/app_gate_action.html";
	form.submit();
}

// --------------------------- gotoLogin ------------------------------
function gotoLogin(url) {
	var form = document.tranMgr;

	form.target = "";
	form.reUrl.value = escape(url);
	form.action = "../main/login.html";
	form.submit();
}

// --------------------------- alertAlready ------------------------------
function alertAlready() {
	alert("既に応募に参加した状態です。");
	return;
}

// --------------------------- toggleCheckAll ------------------------------
function toggleCheckAll(nm) {
	var form = document.tranMgr;

	if(form.chkTot.checked == true) {
		checkedAll(form, nm);
	} else {
		uncheckedAll(form, nm);
	}
}

function changeOrder(type) {
  var f = document.tranMgr;
  var selRight = f.rightList;
  var index = selRight.selectedIndex;
	var position = 1;

  if ( index > -1 ) {
    if (type.indexOf("U") == 0) {
    	if (type.length > 1) {
    		try {
    		position = eval(type.substr(1));
    	} catch (e) {}
    	}
      if(index > 0 && index - position >= 0) {
        swap(selRight, index, index - position);
      }
    } else if (type.indexOf("D") == 0) {
    	if (type.length > 1) {
    		position = eval(type.substr(1));
    	}
      if(index < selRight.options.length - position) {
        swap(selRight, index, index + position);
    	}
    } else if (type == "T") {
      for (var i = index; i > 0; i--) {
        swap(selRight, i, i - 1);
      }
    } else if (type == "B") {
      for (var i = index; i < selRight.options.length - 1; i++) {
        swap(selRight, i, i + 1);
      }
    }
  }
}

function swap(selectedOption, index, targetIndex) {
  var onetext = selectedOption.options[targetIndex].text;
  var onevalue = selectedOption.options[targetIndex].value;

  selectedOption.options[targetIndex].text
              = selectedOption.options[index].text;
  selectedOption.options[targetIndex].value
              = selectedOption.options[index].value;
  selectedOption.options[index].text = onetext;
  selectedOption.options[index].value = onevalue;
  selectedOption.options.selectedIndex = targetIndex;

  selectedOption.options[targetIndex].selected = true;
}

// --------------------------- sendItem / deleteItem ------------------------------
function sendItem() {
  var f = document.tranMgr;
  var selLeft = f.leftList.options;
  var selRight = f.rightList.options;
	var size = selLeft.length;
	var arrSel = new Array();
	var j = 0;

  if (selLeft.selectedIndex < 0) {
      alert("追加するフィールドを選択してください。");
      return;
  }

	for (i = size - 1; i >= 0; i--)	{
		if (selLeft.options[i].selected)	{
			arrSel[j] = new Array(selLeft.options[i].text,selLeft.options[i].value);
			j++;
			if (selLeft.options[i].value != "_space") {selLeft.options[i] = null;}
		}
	}

	for (i = (arrSel.length-1); i >= 0; i--)	{
		selRight.options[selRight.length] = new Option(arrSel[i][0], arrSel[i][1]);
	}
}

function deleteItem() {
  var f = document.tranMgr;
  var selLeft = f.leftList.options;
  var selRight = f.rightList.options;
	var size = selRight.length;
	var arrSel = new Array();
	var j = 0;

  if (selRight.selectedIndex < 0) {
    alert("除外するフィールドを選択してください。");
    return;
  }

	for (i = size - 1; i >= 0; i--)	{
		if (selRight.options[i].selected)	{
			if (selRight.options[i].value != "_space") {
				arrSel[j] = new Array(selRight.options[i].text,selRight.options[i].value);
				j++;
			}
			selRight.options[i] = null;
		}
	}
	for (i = (arrSel.length-1); i >= 0; i--)	{
		selLeft.options[selLeft.length] = new Option(arrSel[i][0], arrSel[i][1]);
	}
}

// --------------------------- Set Period ------------------------------
function setPeriod(obj_start, obj_end, term) {
	var newdate=new Date();
	var nowdate=new Date();

	if(isNaN(term)) add_days = 0; else add_days = term * -1;

	var newtimes=newdate.getTime()+(add_days*24*60*60*1000);
	newdate.setTime(newtimes);

	year = newdate.getYear();
	if (newdate.getMonth() < 9) mon = "0"+ (newdate.getMonth() + 1).toString(); else mon = (newdate.getMonth() + 1).toString();
	if (newdate.getDate() < 10) day = "0"+ newdate.getDate().toString(); else day = newdate.getDate().toString();

	obj_start.value = year +"-"+ mon +"-"+ day;

	// get today's date
	year = nowdate.getYear();
	if (nowdate.getMonth() < 9) mon = "0"+ (nowdate.getMonth() + 1).toString(); else mon = (nowdate.getMonth() + 1).toString();
	if (nowdate.getDate() < 10) day = "0"+ nowdate.getDate().toString(); else day = nowdate.getDate().toString();

	obj_end.value = year +"-"+ mon +"-"+ day;
}

// --------------------------- Reset ------------------------------
function cancelOK(form) {
	if(confirm("元に戻しますか？")) {
		form.reset();
	}
}
