﻿var popUpObj;
var pageing = 0, ddlman = 0, ddlcat = 0;
var page1 = "";
var data = "";
var dest = "";
var xmlreqs = new Array();
var lba=new Array();
var xhrTimeout = new Array();
var Fdata = new Array();
var Furl = new Array();
xhrTimeout[0] = setTimeout("", 1000);
Fdata[0]="AA";
lba[0]="AA";
Furl[0]="AA";
var lstyl = "<div style=\"margin: 150px 200px 200px 200px;padding: 20px ;border: medium ridge #FF9900; text-align: center; padding: 0px; font-weight: bold; color: #008000; width: 200px;\"><img src=\"images/__loading.gif\"><br />";


if (window.ActiveXObject && !window.XMLHttpRequest) {
    window.XMLHttpRequest =
        function() {
            progIds = new Array("Msxml2.XMLHTTP.6.0", "Msxml2.XMLHTTP.5.0",
            "Msxml2.XMLHTTP.4.0", "Msxml2.XMLHTTP.3.0", "Msxml2.XMLHTTP",
            "Microsoft.XMLHTTP"); for (i in progIds) {
                try {
                    return new 
                    ActiveXObject(progIds[i]);
                } catch (ex) { alert(progIds[i]); } 
            } return null;
        };
}
function stopRKey(evt) {
    var evt = (evt) ? evt : ((event) ? event : null);
    var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);
    if ((evt.keyCode == 13) && (node.type == "text")) { return false; }
} document.onkeypress = stopRKey;
String.prototype.trim = function() {
	return this.replace(/^\s+|\s+$/g,"");
}
function startAnchor(){setInterval("checkAnchor()", 300);};
var currentAnchor = null;
function SetHome(){
    if(currentAnchor != document.location.hash){
	    currentAnchor = document.location.hash;
	    if(!currentAnchor){
	        loca=location.href;
	        loca+="#Home";
	        window.location=loca;
	    }
	}
}
function checkAnchor(){
	if(currentAnchor != document.location.hash){
		currentAnchor = document.location.hash;
		if(!currentAnchor){
			query = "section=Home";
			gop(1,"Home",'page_content','Home',0);
			}
		else
		{
			var splits = currentAnchor.substring(1).split('&');
			var section = splits[0].trim();
			delete splits[0];
			var params = splits.join('&');
			var query = "section=" + section + params;
			gop(1,section,'page_content',section,0);
			
		}
	}
}

    function HideModalDiv() {
        var bcgDiv = document.getElementById("divBackground");
        var panelContainer = document.getElementById("PopupPanel");
        bcgDiv.style.display = "none";
        panelContainer.style.display = "none";
    }
    function TogglePopupPanel(p,e,a,m) {
        var bcgDiv = document.getElementById("divBackground");
        bcgDiv.style.display = "block";
        if (bcgDiv != null) {
            if (document.body.clientHeight > document.body.scrollHeight) {
                bcgDiv.style.height = document.body.clientHeight + "px";
            }
            else {
                bcgDiv.style.height = document.body.scrollHeight + "px";
            }
            bcgDiv.style.width = "100%";
        }
        var panelContainer = document.getElementById("PopupPanel");
        panelContainer.style.display = "block";
        var y = 0;
        if (self.pageYOffset) {
            y = self.pageYOffset + 350;
        }
        else if (document.documentElement && document.documentElement.scrollTop) {
            y = document.documentElement.scrollTop + 350;
        }
        else if (document.body) {
            y = e.pageY;
        }
        try {

            document.getElementById('PopupPanelcontent').style.top = y + "px";
        }
        catch (e) {

        }
        var des = "Popupcontent";
        var content =document.getElementById("Popupcontent");
        loading = "";
        try {
            var newdiv = document.createElement("div");
            newdiv.innerHTML = "<div style=\"text-align: center; padding: 200px; \"><img src=\"images/__loading.gif\"></div>"; ;
            content.innerHTML = '';
            content.appendChild(newdiv);
        }
        catch (ex) {
            alert(ex.message);
        }
       
       
        Fetchresult(0,p,des,a,m);
    }
    function BcgWhith() {
        var bcgDiv = document.getElementById("divBackground");
        if (bcgDiv != null) {
            if (document.body.clientHeight > document.body.scrollHeight) {
                bcgDiv.style.height = document.body.clientHeight+100+ "px";
            }
            else {
                bcgDiv.style.height = document.body.scrollHeight+100+ "px";
            }
            //bcgDiv.style.height += 100;
        }
        
    }
  function load_Photo_catch(ifrm,path)
  {
  var photo=document.getElementById(path);
   var iphoto=document.getElementById(ifrm).contentWindow.document.getElementById('lblPath');
    if (photo!=null && photo.innerHTML!="")
    {
        if(iphoto.innerHTML=="")
        {
        var sr=photo.innerHTML;
        var imag=document.getElementById(ifrm).contentWindow.document.getElementById('imgFile');
        imag.src=sr;
        iphoto.innerHTML=sr;
        document.getElementById(ifrm).contentWindow.document.getElementById('lblName').innerHTML=imag.nameProp;
        }
     }
  } 
  
  function gop(type, page, des, desc,ar,mode) {
        var content = document.getElementById(des);
        loading = "";
        if (desc != "") {
            if (desc == "NO") {
            var bcgDiv = document.getElementById("divBackground");
            var newdiv = document.createElement("div");
            newdiv.style.cssText=bcgDiv.style.cssText;
            newdiv.id="w1";
            newdiv.style.display="block";
            newdiv.style.height = content.offsetHeight+ "px";
            newdiv.style.width = content.offsetWidth+ "px";
            newdiv.style.top = content.offsetTop+ "px";
            newdiv.style.left = content.offsetLeft+ "px";
            content.appendChild(newdiv);
            } else {
                if (desc == "Load") 
                    loading="<img src=\"images/__loading.gif\">";
                    else
                    loading=lstyl + desc + "</div>";
            try {
                var newdiv = document.createElement("div");
                newdiv.innerHTML =loading;
                content.innerHTML = '';
                content.appendChild(newdiv);
            }
            catch (ex) {
                alert(ex.message);
            }

            }
        }
        Fetchresult(type,page,des,ar,mode);
    }
function Fetchresult(type,page,dest,ar,mod) {
    url = "Pages/" + page + ".aspx";
      
    if(mod==undefined)mod=-1;
    if (ar != 0){
        data = ar.replace(/</g,"#1#"); 
        //if(mod!="")
        data=data+"&mode="+mod;
    }else{
        if(mod!="")
        data="mode="+mod;
        else
        data="noval=0";
        
    }
    
    page1 = page;
    loader(type,url,dest,data);

}
function ajaxTimeout(pos) {
   if (xmlreqs[pos].freed != 1) {
        var errload = "<span style=\"color: #FF0000; font-weight: bold; font-size: medium\">ارتیاط با سرور مقدور نیست.لطفا برای سعی مجدد "+"<a href=\"\" onclick=\"gop(0,'"+Furl[pos]+"','"+lba[pos]+"','"+Furl[pos]+"'+'بارگذاری مجدد','"+Fdata[pos]+"','');return false;\">اینجا را</a>"+" کلیک کنید</span>";
        xmlreqs[pos].xmlhttp.abort();
       //xmlreqs[pos].xmlhttp = null;
        xmlreqs[pos].freed = 1;
        var elem = document.getElementById(lba[pos]);
        elem.innerHTML = errload;

    }
}
function CXMLReq(freed) {
    this.freed = freed;
    this.xmlhttp = false;
    if (window.XMLHttpRequest) {
        this.xmlhttp = new XMLHttpRequest();
    } else if (window.ActiveXObject) {
        this.xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
}
function loader(mode,url,dest,data) 
{

    if (mode >0) {
        pos = mode;
        xmlreqs[pos] = new CXMLReq(1);
        if (xmlreqs[pos].xmlhttp) {
            Fdata[pos]=data;
            Furl[pos]=url;
            Furl[pos]=Furl[pos].replace(".aspx","");
            Furl[pos]=Furl[pos].replace("Pages/","");
            lba[pos] = dest;
            xmlreqs[pos].freed = 0;

            xmlreqs[pos].xmlhttp.open("POST", url, true);
            xmlreqs[pos].xmlhttp.onreadystatechange = function() {
                if (typeof (xmlhttpChange) != 'undefined') { 
                xmlhttpChange(pos); }
            }
            xhrTimeout[pos] = setTimeout("ajaxTimeout(" + pos + ");", 40000);
            xmlreqs[pos].xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
            xmlreqs[pos].xmlhttp.send(data);
        }
    } else {
        var pos = -1;
        for (var i = 10; i < xmlreqs.length; i++) {
            if (xmlreqs[i].freed == 1) { pos = i; break; }
        }
        if (pos == -1) {
            if (xmlreqs.length > 9)
                pos = xmlreqs.length;
            else pos = 10;
            xmlreqs[pos] = new CXMLReq(1);
         }
        
        if (xmlreqs[pos].xmlhttp) {
            lba[pos] = dest;
            Fdata[pos]=data;
            Furl[pos]=url;
            Furl[pos]=Furl[pos].replace(".aspx","");
            Furl[pos]=Furl[pos].replace("Pages/","");
            xmlreqs[pos].freed = 0;

            xmlreqs[pos].xmlhttp.open("POST", url, true);
            xmlreqs[pos].xmlhttp.onreadystatechange = function() {
                if (typeof (xmlhttpChange) != 'undefined') { xmlhttpChange(pos); }
            }
            xhrTimeout[pos] = setTimeout("ajaxTimeout(" + pos + ");", 40000);
            xmlreqs[pos].xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
            xmlreqs[pos].xmlhttp.send(data);
        } 
    }
}
function xmlhttpChange(pos) {
    if (typeof (xmlreqs[pos]) != 'undefined' && xmlreqs[pos].freed == 0 && xmlreqs[pos].xmlhttp.readyState == 4)
        if (xmlreqs[pos].xmlhttp.status == 200 || xmlreqs[pos].xmlhttp.status == 304) {
        try {
            var elem = document.getElementById(lba[pos]);
            var res_eval = xmlreqs[pos].xmlhttp.responseText;
            var newdiv = document.createElement("div");
            newdiv.innerHTML = "<span style=\"display: none\">anything</span>"+res_eval;
            elem.innerHTML = '';
                elem.appendChild(newdiv);
                clearTimeout(xhrTimeout[pos]);
            var x = newdiv.getElementsByTagName("script");
            for (var i = 0; i < x.length; i++)
            {
                    sId="Script"+i;
                    var oHead = document.getElementsByTagName('HEAD').item(0); 
                    var oScript = document.createElement( "script" ); 
                    oScript.language = "javascript"; 
                    oScript.type = "text/javascript"; 
                    oScript.id = sId; 
                    oScript.defer = true; 
                    oScript.text = x[i].text; 
                    oHead.appendChild( oScript ); 
                    newdiv.removeChild(x[i]);
                    i--;
                }
                var x1 = newdiv.getElementsByTagName("style");
                for (var i = 0; i < x1.length; i++)
                {
                    sId="Css"+i;
                    var oHead = document.getElementsByTagName('HEAD').item(0); 
                    var ss1 = document.createElement('style');
                    var def = x1[i].innerHTML;
                    ss1.setAttribute("type", "text/css");
                    if (ss1.styleSheet) {   // IE
                        ss1.styleSheet.cssText = def;
                    } else {                // the world
                        var tt1 = document.createTextNode(def);
                        ss1.appendChild(tt1);
                    }
                    oHead.appendChild( ss1 ); 
                    newdiv.removeChild(x1[i]);
                    i--
                    
                }
         }
        
        catch (ex) {
           // alert(ex.message);
        }
        xmlreqs[pos].freed = 1;
    }
}
