﻿//Show Weather (Make Request For Get Weather Result)
function Weather_Show(lblResult,imgResult)
{
    lblResult = document.getElementById(lblResult);
    imgResult = document.getElementById(imgResult);
    if(lblResult && imgResult)
    {
        Weather_Loading(imgResult,true);
        Weather_Send(lblResult,imgResult);
    }
}

//Send Request
function Weather_Send(lblResult,imgResult)
{
    var weatherQuery = "";
    var doCallBack = {lblResult: lblResult, imgResult: imgResult, weatherLoader: "MaskanWeatherGet.aspx", weatherResult: "", weatherQuery: weatherQuery};
    CallBack_Send(doCallBack);
}

//Get Response And Show Result Weather
function Weather_Result(callBack)
{
    if(!callBack || !callBack.lblResult)
        return;
    
    var weather = "";        
    var temp = document.createElement("div");
    temp.innerHTML = callBack.weatherResult;

    var divs = temp.getElementsByTagName("div");
    if(!divs[0]) return;

    var src,srcIndex;
    var url = "http://www.tebyan.net";
    var imgs = divs[0].getElementsByTagName("img");
   
  for(var i = 0; i < imgs.length; i++)
  
    {
        src = imgs[i].src;
        srcIndex = src.indexOf("/Image/TS");
        src = src.substr(srcIndex,src.length - srcIndex);
        imgs[i].src = src;
        imgs[i].width = "20";
        imgs[i].height = "20";
    }

    var allDiv = divs[0].getElementsByTagName("div");
    var table = document.createElement("table");
    table = document.createElement("table");
    table.dir = "rtl";
    table.border = "0";
    table.cellPadding = "0";
    table.cellSpacing = "0";
    table.width = "100%";
    var cell = document.createElement("td");
    var row = document.createElement("tr");
    var tbody = document.createElement("tbody");
    var thead = document.createElement("thead");
    
    //cell = document.createElement("td");
    //cell.innerHTML = "ايام هفته";
    //row.appendChild(cell);
    
  cell = document.createElement("td");
cell.innerHTML = "تاريخ";
 row.appendChild(cell);

    cell = document.createElement("td");
    cell.innerHTML = "وضعيت هوا";
    cell.style.textAlign = "center";
    row.appendChild(cell);

    cell = document.createElement("td");
    cell.innerHTML = "";
    row.appendChild(cell);

    cell = document.createElement("td");
    cell.innerHTML = "حداكثر دما";
    row.appendChild(cell);

    cell = document.createElement("td");
    cell.innerHTML = "حداقل دما";
    row.appendChild(cell);
    
    row.style.fontWeight = "bold";
    thead.appendChild(row);
    for(var i = 0; i < allDiv.length; i += 6)
    {
        row = document.createElement("tr");
        //Cell 1
        //cell = document.createElement("td");
        //cell.appendChild(allDiv[i].firstChild);
        //row.appendChild(cell);
        //Cell 2
        cell = document.createElement("td");
        cell.appendChild(allDiv[i + 1].firstChild);
       row.appendChild(cell);
        //Cell 3
        cell = document.createElement("td");
        cell.appendChild(allDiv[i + 2].firstChild);
        row.appendChild(cell);
        //Cell 4
        cell = document.createElement("td");
        cell.appendChild(allDiv[i + 3].firstChild);
        row.appendChild(cell);
        //Cell 5
        cell = document.createElement("td");
        cell.innerHTML = allDiv[i + 4].innerHTML.replace("حداکثر دما : ","").replace("سانتیگراد","");
        row.appendChild(cell);
        //Cell 6
        cell = document.createElement("td");
        cell.innerHTML = allDiv[i + 5].innerHTML.replace("حد اقل دما : ","").replace("سانتیگراد","");
        row.appendChild(cell);
        
        tbody.appendChild(row);
    }
    
    table.appendChild(thead);
    table.appendChild(tbody);
    
    for(var i = allDiv.length - 1; i >= 0; i -= 1)
    {
        allDiv[i].parentNode.removeChild(allDiv[i]);
    }
    callBack.lblResult.appendChild(table);
    
	//Hide Image Indicator
	Weather_Loading(callBack.imgResult,false);
}

//Show Loading Image
function Weather_Loading(imgResult,isShow)
{
    if(imgResult)
    {
        if(isShow)
            imgResult.style.display = "block";
        else
            imgResult.style.display = "none";
    }
}

//Create XmlHTTPRequest Object -> Make Request And Response
function CallBack_XMLHttpRequest()
{
	if(window.XMLHttpRequest)
	{
		return new XMLHttpRequest();
	}
	else 
	{
		if(window.XMLHttpRequestProgID)
		{
			return new ActiveXObject(window.XMLHttpRequestProgID);
		}
		else
		{
			var progIDs = ["Msxml2.XMLHTTP.6.0","Msxml2.XMLHTTP.5.0","Msxml2.XMLHTTP.4.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"];
			for(var i = 0; i < progIDs.length; ++i) 
			{
				var progID = progIDs[i];
				try
				{
					window.XMLHttpRequestProgID = progID;
					return new ActiveXObject(progID);
				}
				catch(e){}
			}
		}
	}
	return null;
};

//Make Send Request
function CallBack_Send(doCallBack)
{
    var x = CallBack_XMLHttpRequest();
    var result = null;
    if(!x)
	    return result;
    x.open("POST",doCallBack.weatherLoader,true);
    x.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=utf-8");
    x.setRequestHeader("Accept-Encoding","gzip,deflate");
    x.onreadystatechange = function()
    {
	    if(x.readyState != 4)
		    return;
		doCallBack.weatherResult = CallBack_Result(x);
        Weather_Result(doCallBack);
    }
    x.send(doCallBack.weatherQuery);
	return result;
};

//Make Receice Response
function CallBack_Result(result)
{
    if(!result)
        return "";
    if(!result.responseText)
        return "";
    if(result.status != 200)
        return "";
    return result.responseText;
};

