var tmp_catalog_left = null;
var tmp_catalog_top = null;

$(document).ready(function()
{
	$("#catalog_dialog").dialog({
			autoOpen: false,
			bgiframe: true,
			height: 140,
			width: 400,
			closeOnEscape: true,	
			resizable: false,
			draggable: false,
			modal: true
		});
	
	$('#catalog_dialog').bind('dialogclose', function(event, ui) {
		document.getElementById('catalog_data').style.display = ''; //unhide
		document.getElementById('catalog_succeed').style.display = 'none'; 		
		document.getElementById('catalog_failed').style.display = 'none'; 
		document.getElementById('catalog_name').value = "";
		
	});	
});		


function __ShowCatalogDialog(left, top)
{		
	var size = new Array(2);
	size[0] = 0;
	size[1] = 0;
		
	if(left != null)
	{
		size[0] = left;
	}
	
	if(top != null)
	{				
		size[1] = top
	}	
	
	if(left != null || top != null)
	{		
		$('#catalog_dialog').dialog('option', 'position', size);
		
	}
	else
	{
		$('#catalog_dialog').dialog('option', 'position', 'center');
	}
	
	$("#catalog_dialog").dialog('open');

	
}

function CloseCatalogDialog()
{
	$("#catalog_dialog").dialog('close')
}


// require product_detail_id
function ShowCatalogDialog(product_detail_id, left, top)
{
	//alert(product_detail_id);
	try
	{		
		if(product_detail_id == null)
		{
			return;	
		}
		
		document.getElementById('hc_product_detail_id').value = product_detail_id;
		
		tmp_catalog_left = left;
		tmp_catalog_top = top;
		var url = document.getElementById('web_server_tak').value + "/jscommon/checklogin";
						
		var postStr = "";
		
		req.open("POST",url,true);
		
		req.onreadystatechange = ShowCatalogDialogCallback;
		
		req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		
		req.setRequestHeader("Content-length", postStr.length);
		
		req.setRequestHeader("Connection", "close");
		
		req.send(postStr);
		
		//alert('sad');
	}
	catch(e)
	{
		alert(e);
	}
}

function ShowCatalogDialogCallback()
{	
	if(req.readyState == 4) 
	{
      if(req.status == 200) 
      {      
          try
          {
			  //alert('sad');
			  var response = null;
			  if(req.responseText == "")
			  {
				 return;  
			  }
			  else
			  {
				
				//alert(req.responseText);
			  	error_object = JSON.parse(req.responseText);
								
				if(error_object['error_code'] == 0)
				{					
					//alert('no error');
					__ShowCatalogDialog(tmp_catalog_left, tmp_catalog_top);

				}
				else
				{					
					var web_server = document.getElementById('web_server_tak').value;
					window.location = web_server + "/member/login/Please login to use catalog";
				}
				
			  }
          }
          catch(e)
          {
            alert(e + "105");
          }
          
      }
      else
      {
        //alert(req.responseText + "111");
        
      }
    }
    else
    {
        //alert(req.readyState + "-117");
    }
}

function RadioChanged()
{
	var allElements = document.getElementsByName('mode');
	//var mode = document.getElementById('mode').value;	
	//alert("changed");
	
	if(allElements[1].checked)
	{
		// disable add
		document.getElementById('catalog_id').disabled = true;
		document.getElementById('catalog_name').style.display = ''; //unhide	
		//document.getElementById('catalog_name').disabled = false;
	}
	else
	{	
		// disable new
		document.getElementById('catalog_name').style.display = 'none'; //hide		
		//document.getElementById('catalog_name').disabled = true;
		document.getElementById('catalog_id').disabled = false;
	}
	

}

function ValidateCatalogName()
{
	var allElements = document.getElementsByName('mode');
	var len = allElements.length;
	
	if(len == 0)
	{
		var catalogName = document.getElementById('catalog_name').value;
		if(catalogName.Trim().length != 0)
		{
			SendRequest()
		}
		else
		{
			alert("กรุณากรอก ชื่อแคตตาล๊อกด้วยค่ะ");	
		}		
	}
	else
	{
		if(allElements[1].checked)
		{
			var catalogName = document.getElementById('catalog_name').value;
			if(catalogName.Trim().length != 0)
			{
				SendRequest()
			}
			else
			{
				alert("กรุณากรอก ชื่อแคตตาล๊อกด้วยค่ะ");	
			}
		}
		else
		{
			SendRequest()
		}	
	}
}

function SendRequest()
{
	try
	{			
		
		var productID = document.getElementById('hc_product_detail_id').value;
		
		//var url = webserver + "/teetak/member/add_catalog.php";
		var url = document.getElementById('web_server_tak').value + "/member/addcatalog";
		var allElements = document.getElementsByName('mode');
		var postStr = "";
		
		var len = allElements.length;
		if(len == 0)
		{
			var catalogName = document.getElementById('catalog_name').value;
			postStr = "product_detail_id=" + productID + "&catalog_name=" + catalogName;
		}
		else
		{
			if(allElements[1].checked)
			{
				var catalogName = document.getElementById('catalog_name').value;
				postStr = "product_detail_id=" + productID + "&catalog_name=" + catalogName;
			}
			else
			{
				var catalogID = document.getElementById('catalog_id').value;
				postStr = "product_detail_id=" + productID + "&catalog_id=" + catalogID;
			}
		}
		//alert(postStr);
		req.open("POST",url,true);
		
		req.onreadystatechange = CallBackSendRequest;
		
		req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		
		req.setRequestHeader("Content-length", postStr.length);
		
		req.setRequestHeader("Connection", "close");
		
		req.send(postStr);
		
	
	}
	catch(e)
	{
		alert('errrr wa ' + e);
	}
}

function CallBackSendRequest()
{
	if(req.readyState == 4) 
	{
      if(req.status == 200) 
      {      
          try
          {
			//alert(req.responseText);
			error_object = JSON.parse(req.responseText);
			//alert('ped');
			document.getElementById('catalog_data').style.display = 'none'; //hide
				
			if(error_object['error_code'] != null)
			{
				if(error_object['error_code'] != 0)
				{					
					//alert(error_object['message']);
					document.getElementById('catalog_failed').innerHTML = error_object['message'];
					document.getElementById('catalog_failed').style.display = ''; 
				}				
			}
			else	// error_object is catalog_name ,catalog_id and catalogs
			{		
				document.getElementById('span_new_catalog_name').innerHTML = '"' + error_object['catalog_name'] + '"';				
				var url = document.getElementById('web_server_tak').value + "/member/catalog/" + error_object['catalog_id'];				
				document.getElementById('a_new_catalog').setAttribute("href", url);				
				document.getElementById('catalog_succeed').style.display = ''; 
				
				// Update Catalog combobox
				var count = 0;
				var html = "<select id=\"catalog_id\" name=\"catalog_id\" >";				
				for(var catalog_id in error_object['catalogs'])
				{
					html += "<option label=\"" + error_object['catalogs'][catalog_id] + "\" value=\"" + catalog_id + "\">" + error_object['catalogs'][catalog_id] + "</option>";
					count++;
				}				
				html += "</select>";
				document.getElementById('span_catalog').innerHTML = html;
				
				if(count < 5)
				{					
					document.getElementById('span_old_prefix').style.display = '';
					document.getElementById('span_radio_old_catalog').style.display = '';	
					document.getElementById('span_radtio_new_catalog').style.display = '';
				}
				else
				{										
					document.getElementById('span_new_catalog').style.display = 'none';
					document.getElementById('span_radio_old_catalog').style.display = 'none';	
					document.getElementById('span_radtio_new_catalog').style.display = 'none';
				}
				
				// set default mode to 'add to the old catalog'
				document.getElementById('mode1').checked = true;	
				document.getElementById('catalog_name').style.display = 'none'; //hide
			}
          }
          catch(e)
          {
            alert(e + "105");
          }
          
      }
      else
      {
        //alert(req.responseText + "111");
        
      }
    }
    else
    {
        //alert(req.readyState + "-117");
    }
}