//クラス生成
var ca = new cajax();

//=======================================================================
//
//
//
//
//
//=======================================================================
function CKLIB()
{
	
	if (document.layers) 				N4 = 1;
	else if (document.all) 				IE = 1;
	else if (document.getElementById) 	GK = 1;
	
	return this;
}

/********************************************************/
//
/********************************************************/
CKLIB.prototype.openwnd = function(div_name)
{
	objDiv = div_get_object(div_name);	
	objDiv.style.display = "block";
}

/********************************************************/
//
/********************************************************/
CKLIB.prototype.closewnd = function(div_name)
{
	objDiv = div_get_object(div_name);	
	objDiv.style.display = "none";
}

/********************************************************/
//
/********************************************************/
CKLIB.prototype.erase = function(div_name)
{
	if(div_name.length > 0)
	{
		objDiv = div_get_object(div_name);
		objDiv.innerHTML = '';
	}
}

/********************************************************/
//ログイン
/********************************************************/
CKLIB.prototype.login = function(username,password)
{
	var dat = new Object(); // Objectの生成 
	if(username != null)	{dat["login_name"] = username;}
	if(password != null)	{dat["password"] = password;}

	objDiv.innerHTML = ca.call(str_action,options);
}

/********************************************************/
//ログアウト
/********************************************************/
CKLIB.prototype.logout = function()
{
	var strmsg;
	
	strmsg  = "ログアウトします。\n";
	strmsg += "よろしいですか？";
		
	myRtn = confirm(strmsg);
	if(myRtn)
	{
		ca.logout();
		location.href = 'index.php';
	}
	
}


/********************************************************/
//呼び出し
/********************************************************/
CKLIB.prototype.call = function(div_name,str_type,str_action,str_exec,options)
{
	if(div_name.length > 0)
	{
		objDiv = div_get_object(div_name);
		objDiv.innerHTML = ca.call(str_type,str_action,str_exec,options);
	}
	else
	{
		ca.call(str_type,str_action,str_exec,options);
	}
}


/********************************************************/
//保存、削除
/********************************************************/
CKLIB.prototype.save = function(div_name,str_site,str_action,str_exec,f_name,check_options)
{
	var dat = new Object(); // Objectの生成 
	var content="";
	var tmp="";
	var tmpObj = new Object();
	var k=0;
	var rtn="";
	var errflag=false;
	
	//データセット
	for(i=0;i<f_name.length;i++)
	{
		if(f_name[i].name == "fckeditor")
		{
			content = FCKeditorAPI.GetInstance('fckeditor').GetXHTML();
			dat[f_name[i].name] = content;
		}
		else
		{
			if(f_name[i].type == "select-multiple")
			{
				k = 0;
				for (j=0; j<f_name[i].options.length; j++) 
				{
			    	if (f_name[i].options[j].selected) 
			    	{
						tmpObj[k] = f_name[i].options[j].value;
						k++;
					}
            	}

				dat[f_name[i].name] = tmpObj;
			}
			else
			{
				dat[f_name[i].name] = f_name[i].value;
			}
		}
	
		//if(f_name[i].name != "fckeditor" && f_name[i].name.length > 0)
		//{rtn = ca.check(str_site,str_action,f_name[i].name,f_name[i].value);}

		//if(rtn.length > 0)	{alert(rtn);exit;}
		
	}
	
	//================	
	//check value
	//================	
	//注意：PEARライブラリ HTML_AJAXのバージョンが 0.5.0以外だとca.checkが
	//はじめに実行された後、このforループから抜けてしまう。もしくは非同期な為
	//結果を待たずしてforループから抜けてしまう。
	//ca.checkの実行のみ同期する処理を入れるかしなければならない。
	rtn = ca.check(str_site,str_action,dat,'',check_options);
	if(rtn.length > 0)	{alert(rtn);　errflag=true;}

	if(!errflag)
	{
	
		if(div_name.length > 0)
		{
			objDiv = div_get_object(div_name);
			objDiv.innerHTML = ca.call(str_site,str_action,str_exec,dat);
		}
		else
		{
			ca.call(str_site,str_action,str_exec,dat);
		}
	}
}

/********************************************************/
//DIVの切り替え
/********************************************************/
CKLIB.prototype.change_div = function(div_name,flag,width,height)
{
	objDiv = div_get_object(div_name);
	div_visible(objDiv,flag);

	if(flag == true)
	{
		if(width != "")		objDiv.style.width = width + 'px';
		if(height != "")	objDiv.style.height = height + 'px';
	}
	else
	{
		objDiv.style.width = '1px';
		objDiv.style.height = '1px';
	}


}

/********************************************************/
//値の確認　admin,
/********************************************************/
CKLIB.prototype.check = function(div_name,str_type,str_action,str_field,str_value,options)
{
	var rtn = "";
	
	rtn = ca.check(str_type,str_action,str_field,str_value,options);
	if(div_name.length > 0)
	{
		objDiv = div_get_object(div_name);
		objDiv.innerHTML = rtn;
	}
	else
	{	
		if(rtn.length > 0)	alert(rtn);
	}

}

