﻿	var ind=''; //portfolio industry id
	var ACField; //autocomplete field
	var ACRows; //autocomplete data placeholder
	var cID; //current highlight
	var MAXAC=0; //maximum rows returned by ajax request
	var isIE = (window.navigator.userAgent.indexOf("MSIE") > 0);

	if (!isIE) {
		HTMLElement.prototype.__defineGetter__("innerText", 
				function () { return(this.textContent); });
		HTMLElement.prototype.__defineSetter__("innerText", 
				function (txt) { this.textContent = txt; });
	} 
	
	function trim(s) {
		return s.replace(/^\s*|\s*$/g,'');
	}
	
	function doLoadFunctions () {
		loadPage();
		initDefaultGets();
		preloadImages();
		getSymbData();
		initAutoComplete();
		initACResize();
	}
	function Launch (p) {
		if (top) {
			top.location.href=p;
		}else{
			window.location.href=p;
		}
	}
	function getItem (i) {
		try {
			if (document.getElementById) {  // DOM3 = IE5, NS6, FF
					return document.getElementById(i);
				}
			else {
				if (document.layers) {  // Netscape 4
					return document.i;
				}
			else {  // IE 4
				return document.all.i;
				}
			}	
		} catch(e){
			return null;
		}
	}
	function changeClass (i,c) {
		getItem(i).className = c;
	}
	function DivToPlaceholder (d,p) {
		getItem(p).innerHTML = getItem(d).innerHTML;
	}
	function ToggleDivToPlaceholder (d,p) {
		if (getItem(p).innerHTML=='') {
			DivToPlaceholder (d,p);
		} else {
			getItem(p).innerHTML='';
		}
	}
	function setFocusOnReturn (to, evnt) {
		if(!evnt && window.event) {
			evnt=window.event;
		}
		var e=evnt.keyCode;
		if (e==13) getItem(to).focus();
	} 
	function newImage(arg) {
		if (document.images) {
			rslt = new Image();
			rslt.src = arg;
			return rslt;
		}
	}
	function changeImages() {
		if (document.images && (preloadFlag == true)) {
			for (var i=0; i<changeImages.arguments.length; i+=2) {
				document[changeImages.arguments[i]].src = changeImages.arguments[i+1];
			}
		}
	}
	var preloadFlag = false;
	function preloadImages() {
		if (document.images) {
			home_over = newImage("images/index_17_2.jpg");
			company_over = newImage("images/index_20_2.jpg");
			order_now_over = newImage("images/index_23_2.jpg");
			services_over = newImage("images/index_28_2.jpg");
			preloadFlag = true;
		}
	}
	function openPrint (url) {
			window.open('Print.aspx?u='+escape(url),'printwin','width=600,height=450,resizable,status,scrollbars');
	}
	function openPrintEn (url) {
			window.open('Print_En.aspx?u='+escape(url),'printwin','width=600,height=450,resizable,status,scrollbars');
	}
	function openMail (url) {
			window.open('SendMail.aspx?u='+url,'mailwin','width=500,height=425');
	}
	function loadPage() {
		getItem('loadmsg').style.visibility = 'hidden';
	}
	function initDefaultGets () {
		if (typeof Cookies['EPS']!='undefined'&&typeof Cookies['LU']!='undefined'&&typeof Cookies['LAR']!='undefined'&&typeof Cookies['LA']!='undefined') {
			setCookieValues(Cookies['EPS'],Cookies['LU'],Cookies['LAR'],Cookies['LA']);
		} else {
			var rand = (new Date()).getTime();
			return new AJAXRequest('get', 'components/GetData.aspx?method=setdefaults&rand='+rand, '', processDefaultGets);
		}
	}
	function processDefaultGets( myAJAX ) {
	    if (myAJAX.readyState == 4) {
		    if (myAJAX.status == 200) {
	            if (myAJAX.responseText!="") {
					var t=new String(myAJAX.responseText);
					var s=t.split("|");
					setCookieValues(s[0],s[1],s[2],s[3]);
				} else {
					alert("There was a problem retrieving default data. Please refresh the page!");
	            }
	        } else {
	            alert("There was a problem retrieving data:\n\n" + myAJAX.statusText);
	        }
	    }
	}
	function setCookieValues (eps,mlu,mlar,mla) {
			var e=eps.split(" ");
			getItem('EPS0').innerHTML='EPS سال مالی'+e[0]+': ';
			getItem('EPS1').innerHTML=e[1]+' ریال';
			getItem('EPS2').innerHTML='پيش بيني EPS سال'+e[2]+': ';
			getItem('EPS3').innerHTML=e[3]+' ریال';
			var plu=getItem('LastUpdate');
			if (plu!=null && typeof mlu!='undefined' && mlu!='') {
				plu.innerHTML=no2str(mlu);
			}
			var pla=getItem('LastAnn');
			if (pla!=null && typeof mla!='undefined' && mla!='') {
				var ann=no2str(mla).split("**");
				var l='<a href="ShowNews.aspx?NewsType=6&amp;NewsCode='+ann[0]+'">';
				var t='<b>'+l+ann[1]+'</a></b><br>&nbsp;'+ann[2]+'... ['+l+'مشاهده &gt;&gt;</a>]';
				pla.innerHTML=t;											
			}
			var plar=getItem('LastAnnRep');
			if (plar!=null && typeof mlar!='undefined' && mlar!='') {
				var l2='<a href="ShowNews.aspx?NewsType=1&amp;NewsCode='+mlar+'">';
				var t2='<b>'+l2+'گزارش هيات مديره'+'</a></b> به مجمع عمومي عادي سالانه&nbsp;&nbsp; ['+l2+'مشاهده &gt;&gt;</a>]';
				plar.innerHTML=t2;
			}
	}
	function doLogin () {
		var u;
		var p;
		var r;
		var s;
		var c;
		u=getItem('Username');
		p=getItem('Password');
		r=getItem('RememberMe');
		s=getItem('LoginStatus');
		if (typeof getItem('CaptchaCode') == 'undefined' || getItem('CaptchaCode') == null) {
			c='0';
		} else {
			c=getItem('CaptchaCode').value;
		}
		getItem('btnLogin').disabled=true;
		s.className = '';
		var rand = (new Date()).getTime();
		return new AJAXRequest('get', 'components/GetData.aspx?method=login&Username='+u.value+'&Password='+hex_md5(p.value)+'&Cookie='+r.checked+'&Captcha='+c+'&rand='+rand, '', processLogin);
	}
	function processLogin( myAJAX ) {
	    if (myAJAX.readyState == 4) {
		    var s;
		    var c;
		    var r;
		    s=getItem('LoginStatus');
		    c=getItem('Captcha');
		    r=getItem('redirectURL');
		    if (myAJAX.status == 200) {
				//alert(myAJAX.responseText);
				c.innerHTML='';
	            if (myAJAX.responseText=='LOGINACCEPTED') {
	            	s.innerHTML='<span style="color:green;"><img border="0" src="images/ok.jpg" width="20" height="20" align="right" alt="">لطفا چند لحظه صبر کنيد...</span>';
	            	if (r!=null || typeof r!='undefined') {
	            		setTimeout("Launch('StockNum.aspx')",1000);
	            	} else {
	            		setTimeout("Launch(r.value)",1000);
	            	}
	            } else if (myAJAX.responseText=='LOGINDENIEDCAPTCHA') {
		            getItem('btnLogin').disabled=false;
		            var rand = (new Date()).getTime();
		            c.innerHTML='<table><tr><td><input size="10" id="CaptchaCode" name="CaptchaCode" autocomplete="off"  onkeydown="setFocusOnReturn(\'btnLogin\',event);"></td><td><img border="0" width="80" height="30" src="components/rndimg.aspx?rand='+rand+'" alt="لطفا کد عکس را وارد کنيد"></td></tr></table>';
		            s.innerHTML='<span style="color:#EEA066;"><img border="0" src="images/cancel.jpg" width="20" height="20" align="right" alt="">کد عکس صحيح نيست.</span>';
		        } else {
		            getItem('btnLogin').disabled=false;
		            s.innerHTML='<span style="color:#EEA066;"><img border="0" src="images/cancel.jpg" width="20" height="20" align="right" alt="">شناسه يا کلمه عبور اشتباه است.</span>';
	        	}
	        } else {
		        getItem('btnLogin').disabled=false;
	            alert("There was a problem retrieving login data:\n\n" + myAJAX.statusText);
	        }
	    }
	}
	function getSymbData () {
		var s;
		var r;
		s=getItem('Symbol');
		r=getItem('SymbData');
		
		r.className = '';
		if (s.value=='وبانک' && typeof Cookies['BMIICSymbol']!='undefined') {
			var cook=new String(Cookies['BMIICSymbol']);
			var t=new String('<span class="whitetext">سرمايه گذاري بانك ملي&nbsp;<span style="background-color:#F9F9F9;color:@C">&nbsp;@V&nbsp;</span> ريال</span>&nbsp;')
			getItem('SymbData').innerHTML=t.replace(/@C/,cook.substr(0,1)=='+'?'green':'red').replace(/@V/,cook.substr(1,cook.length));
		} else {
			getItem('btnSymb').disabled=true;
			getItem('SymbData').innerHTML='<span class="whitetext">درحال بارگذاری...</span>';
			var rand = (new Date()).getTime();
			return new AJAXRequest('get', 'components/GetData.aspx?method=symbol&Company='+escape(s.value)+'&rand='+rand, '', processSymbLookup);
		}
	}
	function processSymbLookup( myAJAX ) {
	    if (myAJAX.readyState == 4) {
		    getItem('btnSymb').disabled=false;
		    if (myAJAX.status == 200) {
	            getItem('SymbData').innerHTML=myAJAX.responseText;
	        } else {
	            alert("There was a problem retrieving symbol data:\n\n" + myAJAX.statusText);
	            getItem('SymbData').innerHTML='';
	        }
	    }
	}
	function getIndustry (i, la) {
		ind='P'+i;
		if (getItem(ind).className == '') {
			getItem(ind).className = 'hiddendiv';
		} else {
			getItem(ind).className = '';
			return new AJAXRequest('get', 'components/GetIndustryPort.aspx?Industry='+i+'&Lang='+la, '', processIndLookup);
		}
	}
	function processIndLookup( myAJAX ) {
	    if (myAJAX.readyState == 4) {
		    if (myAJAX.status == 200) {
	            getItem(ind).innerHTML=myAJAX.responseText;
	        } else {
	            alert("There was a problem retrieving data:\n\n" + myAJAX.statusText);
	            getItem(ind).innerHTML='';
	        }
	    }
	}	
	function doAutoComplete () {
	    if (ACField.value == "") {
	        ACRows.innerHTML='';
	        ACRows.className='hiddentext';
	    } else {
	    	var rand = (new Date()).getTime();
	        return new AJAXRequest('get', 'components/GetData.aspx?method=symblookup&Query='+escape(ACField.value)+'&rand='+rand, '', processAutoComplete);
	    }
	}
	function processAutoComplete ( myAJAX ) {
	    if (myAJAX.readyState == 4) {
		    if (myAJAX.status == 200) {
				if (myAJAX.responseText!="NODATA") {
					ACRows.className='';
					cID=-1;
					var res= new String(myAJAX.responseText);
					ACRows.innerHTML = res.replace(/@/gi,' class="acitem" onmouseover="this.className=\'achover\';" onmouseout="this.className=\'acitem\';">&nbsp;&nbsp;<IMG src="images/icon_arrow.gif"> <span onclick="fillIn(this.innerHTML);">').replace(/#/gi,'</span></div>')+'<div align="left"><a class="topnav" href="javascript:void(0);" onclick="hideAC();">&nbsp;X&nbsp;</a></div>';
					for (MAXAC=0;MAXAC<11;MAXAC++){
						if(getItem('AC'+MAXAC)==null){MAXAC--;break;}
					}
				}
	        } else {
	            alert("There was a problem retrieving data:\n\n" + myAJAX.statusText);
	        }
	    }
	}
	function fillIn (t) {
		ACField.value=t;
		ACRows.innerHTML='';
		ACRows.className='hiddentext';
		getItem('btnSymb').focus();
	}
	function hideAC () {
		ACRows.innerHTML='';
		ACRows.className='hiddentext';
	}
	function initAutoComplete() {
		ACField = getItem('Symbol');
		var menu = getItem("phAC");
		ACRows = getItem("phAutoComplete");
		ACRows.style.top = getElementY(menu) + 20 + "px";
		ACRows.style.left = getElementX(menu) + "px";
	}
	function initACResize() {
		attachEvnt("resize",initAutoComplete);
		attachEvnt("blur",hideAC);
	}
	function processKeypress(evnt) {
		if(!evnt && window.event) {
			evnt=window.event;
		}
		var e=evnt.keyCode;
		var ac=getItem('AC'+cID);
		if (ACRows.className=='hiddentext' && (e==13||e==3)) {
			getItem('btnSymb').focus();
		} else {
			if (e==13||e==3) {
				if (ac!=null) {
					fillIn(trim(ac.innerText));
				} else {
					getItem('btnSymb').focus();
				}
			} 
		}
	}
	function processKeyup(evnt){
	    if(!evnt && window.event) {
			evnt=window.event;
		}
		var e=evnt.keyCode;
		var ac=getItem('AC'+cID);
		if ((e==40) && (cID!=MAXAC)) {
			if (getItem('AC'+Number(cID+1))!=null) {getItem('AC'+Number(cID+1)).className='achover';}
			if (cID!=-1){
				if (ac!=null) {ac.className='acitem';}
			}
			cID++;
		}
		else if ((e==38) && (cID!=0)) {
			if (ac!=null) {
				ac.className='acitem';
				getItem('AC'+Number(cID-1)).className='achover';
				cID--;
			}
		}
		else if ((e!=40) && (e!=38) && (e!=13) && (e!=3)) {
			doAutoComplete();
		}
	}
	// finding element x,y
	function getElementY(element){
		var targetTop = 0;
		if (element.offsetParent) {
			while (element.offsetParent) {
				targetTop += element.offsetTop;
				element = element.offsetParent;
			}
		} else if (element.y) {
			targetTop += element.y;
		}
		return targetTop;
	}
	function getElementX(element){
		var targetLeft = 0;
		if (element.offsetParent) {
			while (element.offsetParent) {
				targetLeft += element.offsetLeft;
				element = element.offsetParent;
			}
		} else if (element.x) {
			targetLeft += element.x;
		}
		return targetLeft;
	}
	function attachEvnt(e,f) {
		if (window.addEventListener) {
			window.addEventListener(e, f, false);
		} else if (window.attachEvent) {
			window.attachEvent("on"+e, f);	
		}
	}
	// handle cookies 
	var Cookies = {
		init: function () {
			var allCookies = document.cookie.split('; ');
			for (var i=0;i<allCookies.length;i++) {
				var cookiePair = allCookies[i].split('=');
				this[cookiePair[0]] = cookiePair[1];
			}
		},
		create: function (name,value,days) {
			if (days) {
				var date = new Date();
				date.setTime(date.getTime()+(days*24*60*60*1000));
				var expires = "; expires="+date.toGMTString();
			}
			else var expires = "";
			document.cookie = name+"="+value+expires+"; path=/";
			this[name] = value;
		},
		erase: function (name) {
			this.create(name,'',-1);
			this[name] = undefined;
		}
	};
	Cookies.init();
	//no2str & str2no
	function str2no (strIn) {
		var strNo='';
		for(i=0;i<strIn.length;i++) {
			strNo+=strIn.charCodeAt(i)+' ';
		}
		return trim(strNo);
	}
	function no2str (strNo) {
		var strOut='';
		//strOut.
		var s=strNo.split(" ");
		for(i=0;i<s.length;i++) {
			strOut+=String.fromCharCode(s[i]);
		}
		return strOut;
	}
	function doHighlight(k,divT,divC) {
		var t= new String(getItem(divT).innerHTML);
		var s= new String(getItem(divC).innerHTML);
		var rx= new RegExp("<span class=lightgray>"+k+"</span>","gi");
		if (t.match(rx) || s.match(rx)) {
			getItem(divT).innerHTML= t.replace(rx,k);
			getItem(divC).innerHTML=s.replace(rx,k);
		} else {
			var rx= new RegExp(k,"gi");
			getItem(divT).innerHTML= t.replace(rx,'<span class="lightgray">'+k+'</span>');
			getItem(divC).innerHTML= s.replace(rx,'<span class="lightgray">'+k+'</span>');
		}
	}
	//public varibale farsi
	var KeylangFarsi=true;
	// for keypress
	function farsikey(myfield,e) {
		var key;
		var basestring=' !"#$%،گ)(×+و-./0123456789:ک,=.؟@ِذ}ىُىلآ÷ـ،/’د×؛َءٍف‘{ًْإ~جژچ^_پشذزیثبلاهتنمئدخحضقسفعرصطغظ<|>ّ';
		if (window.event) {
			key = window.event.keyCode;
		} else if (e) {
			key = e.which;
		}
		if (key < 0x0020 || key >= 0x00FF) return true; 
		if (KeylangFarsi==true) {
			if (window.event)
			window.event.keyCode=basestring.charCodeAt(key-32);
			else if (e)
			e.which=basestring.charCodeAt(key-32);
		}
		return true;
	}
	// function for keydown
	function changelang(objtext1) {
		if (window.event.keyCode==119) 
			KeylangFarsi =(KeylangFarsi==true) ? false : true ;
			if (window.event.altKey && window.event.shiftKey)  
				KeylangFarsi = false ;
			return true;
	}