/**
 * クッキー管理
 *
 * @constructor
 */
CookieManager = function()
{
};

CookieManager.prototype = {
    /**
     * 値の設定
     * @param {Object} key キー
     * @param {Object} value 格納する値
     */
    setCookie: function(key, value)
    {
    var expireDate = new Date()    
    var expstring=expireDate.setDate(expireDate.getDate()+parseInt(1))  
        if ('string' === typeof key && key.match(/^[0-9a-zA-Z\-_\[\]]+$/))
        {
            //document.cookie = key + "=" + escape(value) + "; expires="+expireDate.toGMTString()+"; path=/";
			document.cookie = key + "=" + escape(value) + "; path=/";
        }
    },
    /**
     * 値の削除
     * @param {Object} key 削除する値のキー
     */
    removeCookie: function(key)
    {
        document.cookie = key + '= ; expires=' + (new Date(1999, 0, 1)).toGMTString();
    },
    /**
     * 値の取得
     * @param {Object} key 取得する値のキー
     * @return {String} 値
     */
    getCookie: function(key)
    {
        cookie_list = document.cookie.split('; ');
        for (i = 0 ; i < cookie_list.length ; i++)
        {
            key_and_value_list = cookie_list[i].split('=');
            if (key_and_value_list[0] == key && key_and_value_list[1] != undefined)//ie undefined 対策
            {
                return unescape(key_and_value_list[1]);
            }
        }

        //return undefined;
		return false;
    }
};

var cm = new CookieManager();

var w = window;
var popup;
function openWin(url,view) {
   w = window.open(url, "window", "width=550,height=500,resizable=yes,scrollbars=yes");
   //設定変更直後の非更新対応
   if(view == true){
      w.focus();//強制
   }else if(popup == false){
   }else{
      w.focus();
   }
   //clipReload();
   return(false);
}

function openWinNoPop(url) {
   w = window.open(url, "window", "width=550,height=500,resizable=yes,scrollbars=yes");
   //設定変更直後の非更新対応
   if(popup == true){
      w.focus();
   }
   //clipReload();
   return(false);
}

/*function setPopup(url,setting) {
   window.location.href = url;
   window.opener.popup = setting;
   if(setting == false){
      window.opener.focus();
   }
   return(false);
}*/

function setPopup(obj,url){
	window.location.href = url + "#clipbottom";
	if (obj.checked) {
		window.opener.popup = false;
		//window.opener.focus();
	} else {
		window.opener.popup = true;
	}
	return(false);
}

function destroyClip(url) {
   window.location.href = url;
   if(window.opener != null){
      window.opener.location.reload();
   }
   return(false);
}

function parentReload(url){
  window.opener.location.href = url;
  return(false);
}

function clipReload() {
	var clip_top = new Ajax.Updater(
		"clipcount",
		"/Js/ajax/param/action/clip/",
		{
			"method": "get",
			"parameters": "action=clip",
			onSuccess: function(request) {

			},
			onComplete: function(request) {

			},
			onFailure: function(request) {
			},
			onException: function (request) {
			}
		}
	);
/*	var clip_bottom = new Ajax.Updater(
		"clipcount_bottom",
		"/Js/ajax/param.php",
		{
			"method": "get",
			"parameters": "action=clip",
			onSuccess: function(request) {

			},
			onComplete: function(request) {

			},
			onFailure: function(request) {
			},
			onException: function (request) {
			}
		}
	);*/
}

// 全て選択押下処理
function clickAll(fromlink){
	objAll = document.forms.listForm.all;
	if(fromlink == true){
		if(objAll.checked == false){
			objAll.checked = true;
		}else{
			objAll.checked = false;
		}
	}
	str = cm.getCookie('sids');
	if(str == false){
		str = ",";
	}
	for(var i=0;i<document.listForm.length;i++){
		if(document.listForm[i].type=="checkbox" && document.listForm[i].name != "all"){
			document.listForm[i].checked = objAll.checked;
				if(objAll.checked == true){
					condition = ","+ document.listForm[i].id +",";
					if(str == false){
						str = str + document.listForm[i].id +",";
					}else if(str != false && str.indexOf(condition,0) == -1){
						str = str + document.listForm[i].id +",";
					}
				}else{
					condition = ","+ document.listForm[i].id +",";
					if(str == false){
					}else if(str != false && str.indexOf(condition,0) != -1){
						str=str.replace(condition,",");
					}
				}
		}
	}
	if(str == ","){
		cm.setCookie('sids', "");
	}else{
		cm.setCookie('sids', str);
	}
	clipReload();
	return false;
}

// 全て選択以外の押下処理
function judgeAll(objMbr){

	// チェックボックスのチェックが外れたら『全て選択』のチェックを外す
	if(objMbr.checked == false){
		document.listForm.all.checked = false;
		return;
	}

	for(var i=0;i<document.listForm.length;i++){
		//チェックボックスであれば
		if(document.listForm[i].type=="checkbox"){
			// 『全て選択』以外全てチェックされていたら
			// 『全て選択』をチェックする
			if(document.listForm[i].checked==false && document.listForm[i].name!="all"){
				return;
			}
		}
	}

	document.listForm.all.checked = true;

}

// 一括クリップ処理
function clipAll(url,popup) {
	url = url + "/action/all";
	if(popup == true){
		return openWin(url,false);
	}else{
		return openWinNoPop(url);
	}
}
/*function clipList(url,popup) {
	var str = "";
	var count = 0;
	var len = document.listForm.school.length;
	for(i=0; i<len; i++) {
		if ( document.listForm.school[i].checked ) {
			str += "/"+document.listForm.school[i].value;
			count++;
		}
	}
	if(count > 0){
		url = url + "/action/all" + str;
		if(popup == true){
			return openWin(url,false);
		}else{
			return openWinNoPop(url);
		}
	}else{
		return false;
	}
}*/

function setSchoolId(obj,sid){
	if(obj.checked == true){
		str = cm.getCookie('sids');
		condition = ","+ sid +",";
		if(str != false && str.indexOf(condition,0) == -1){
			str = str + sid + ",";
			cm.setCookie('sids', str);
		}
		if(str == false || str == ""){
			str = "," + sid + ",";
			cm.setCookie('sids', str);
		}
	}

	if(obj.checked == false){
		str = cm.getCookie('sids');
		condition = ","+ sid +",";
		if(str != false && str.indexOf(condition,0) != -1){
			str=str.replace(condition,",");
			cm.setCookie('sids', str);
		}
		if(str == ","){
			cm.setCookie('sids', "");
		}
		if(str == false){
		}
	}
	clipReload();
	judgeAll(obj);//全チェック状態を常に判断
}
