var App={TimeOut:30000,ajaxEngine:new RemoteFileLoader("App.ajaxEngine"),ResponseID:'FuncContainer',Load:function(url,ResponseID,Callback,ShowLoading){if(ShowLoading!='N')$('LoadingID').style.display='';this.ResponseID=((ResponseID!=null)?ResponseID:'FuncContainer');this.ajaxEngine.loadInto(url,this.ResponseID,Callback);},Submit:function(frmObj,ResponseID,evt,Callback,ShowLoading){if(ShowLoading!='N')$('LoadingID').style.display='';this.ResponseID=((ResponseID!=null)?ResponseID:'FuncContainer');this.ajaxEngine.submitInto(frmObj,this.ResponseID,evt,Callback);if(!(window.XMLHttpRequest&&!window.ActiveXObject))frmObj.submit();},GetResponseData:function(res){res=res.strip();if(res!=''){var ErrorCode=parseInt(res.extractScripts('ErrorCode')[0]);var Msg=res.extractScripts('Msg')[0];var text=res.extractScripts('Template').join('');var CodeJS=res.extractScripts('Script').join('');Msg=Msg.strip();text=text.stripScripts('Script');CodeJS=CodeJS.unescapeHTML().strip();if(CodeJS!=''){CodeJS=CodeJS.replace('&gt;','>');CodeJS=CodeJS.replace('&lt;','<');CodeJS=CodeJS.replace('&amp;&amp;','&&');CodeJS=CodeJS.replace('&amp;','&');}return{ErrorCode:ErrorCode,Msg:Msg,text:text,CodeJS:CodeJS};}else return false;},CommonCallback:function(DocDOM,DocText,url){var data=App.GetResponseData(App.ajaxEngine.getContent(DocDOM,DocText));$('LoadingID').style.display='none';if(data){if(data.ErrorCode>=0){if(data.ErrorCode!=2){$(App.ResponseID).innerHTML=data.text;if(data.CodeJS!='')eval(data.CodeJS);}if(data.ErrorCode!=0&&data.Msg!='')Dialog.alert(data.Msg,{width:420,height:60,okLabel:'Close'});}else if(data.CodeJS!='')eval(data.CodeJS);}},SubmitTimeOut:function(frmObj,ResponseID,callback){AjaxRequest.numAjaxRequests=0;this.ResponseID=((ResponseID!=null)?ResponseID:'FuncContainer');AjaxRequest.submit(frmObj,{'onSuccess':callback,'timeout':App.TimeOut,'onTimeout':App.TimeOutError,'onError':App.TimeOutError});return false;},LoadTimeOut:function(url,ResponseID,callback,ShowLoading){if(ShowLoading=='Y')$('LoadingID').style.display='';AjaxRequest.numAjaxRequests=0;this.ResponseID=((ResponseID!=null)?ResponseID:'FuncContainer');AjaxRequest.get({'url':url,'onSuccess':callback,'timeout':App.TimeOut,'onTimeout':App.TimeOutError,'onError':App.TimeOutError});},TimeOutError:function(req){alert('Lỗi gửi dữ liệu, vui lòng thực hiện lại sau vài phút');App.CloseDialog('Y');},OpenDialog:function(id,width,height,ClassName,url){cls=(ClassName=='')?'alert':ClassName;var msg='<div id="D'+id+'">'+'<div class="Loading">Đang load dữ liệu, vui lòng chờ trong giây lát...</div>'+'<div style="text-align:center"><img src="'+ImagesDir+'IconLoading.gif" /></div></div>'+'<div id="LoadingSmall" style="display:none;">Đang gửi dữ liệu, vui lòng chờ trong giây lát...</div>';Dialog.alert(msg,{hiddenOk:true,width:width,height:height,windowParameters:{className:cls,showEffect:Effect.Grow,hideEffect:Effect.Shrink,destroyOnClose:true}});if(url!='')App.Load(url,'D'+id,App.CommonCallback,'N');},CloseDialog:function(){if(arguments.length){var currDialog=Windows.getFocusedWindow();if(currDialog)currDialog.close();}else Windows.closeAll();},makeRowCheck:function(checkboxes,flag){var cls;var rows=((typeof(checkboxes.length)=='undefined')?Array(checkboxes):checkboxes);for(var i=0;i<rows.length;i++){if(!rows[i].disabled){cls=flag?'RowSelected':'none';rows[i].parentNode.parentNode.id=cls;}}},
MenuBarClick:function(MenuBarObj, SelectObj, SubMenu, SubItem, ItemSelected) {
	var nItem = MenuBarObj.childNodes.length;

	for(var i = 0;i < nItem; i++) {
		if(MenuBarObj.childNodes[i].nodeType == 1) {
			MenuBarObj.childNodes[i].id = 'MenuItem';
			MenuBarObj.childNodes[i].setAttribute('active', 'N');
		}
	}
	SelectObj.id='MenuItemActive';
	SelectObj.setAttribute('active', 'Y');
	
	var SubItemSelected = null;
	nItem = SubMenu.childNodes.length;
	for (var i = 0; i < nItem; i++) {
		if (SubMenu.childNodes[i].nodeType == 1) {
			if (SubMenu.childNodes[i].getAttribute('rel') == SubItem)
				SubItemSelected = SubMenu.childNodes[i];
			else SubMenu.childNodes[i].style.display = 'none';
		}
	}
	if (SubItemSelected != null) {
		nItem = SubItemSelected.childNodes.length;
		for (var i = 0; i < nItem; i++) {
			if(SubItemSelected.childNodes[i].nodeType == 1) {
				if (SubItemSelected.childNodes[i].getAttribute('rel') == ItemSelected)
					SubItemSelected.childNodes[i].id = 'SubItemActive';
				else if (SubItemSelected.childNodes[i].id != 'SubItemSpace')
					SubItemSelected.childNodes[i].id = 'SubItem';
			}
		}
		SubItemSelected.style.display = '';
		
	}
},
CatProductClick:function(CatParentObj,SelectObj,expan){var selected=null;var nItem=CatParentObj.childNodes.length;for(var i=0;i<nItem;i++){if(CatParentObj.childNodes[i].nodeType==1&&CatParentObj.childNodes[i].id=='SubCat'){if(SelectObj.getAttribute('rel')==CatParentObj.childNodes[i].getAttribute('rel')){if(CatParentObj.childNodes[i].style.display=='')return;else selected=CatParentObj.childNodes[i];}if(expan=='Y')CatParentObj.childNodes[i].style.display='none';}}if(selected!=null)selected.style.display='';},TabClick:function(TabObj,SelectObj){if(SelectObj!=null)if(SelectObj.id=='TabItemActive')return;var nItem=TabObj.childNodes.length;for(var i=0;i<nItem;i++){if(TabObj.childNodes[i].nodeType==1){TabObj.childNodes[i].id='TabItem';$(TabObj.childNodes[i].getAttribute('rel')).className='TabContentOff';}}SelectObj.id='TabItemActive';$(SelectObj.getAttribute('rel')).className='TabContentOn';},Tab2Click:function(TabObj,SelectObj){if(SelectObj!=null)if(SelectObj.id=='TabItemActive')return;var nItem=TabObj.childNodes.length;for(var i=0;i<nItem;i++){if(TabObj.childNodes[i].nodeType==1){TabObj.childNodes[i].id='TabItem';$(TabObj.childNodes[i].getAttribute('rel')).className='Tab2ContentOff';}}SelectObj.id='TabItemActive';$(SelectObj.getAttribute('rel')).className='Tab2ContentOn';},checkSendContact:function(frmObj,ResponseID,evt){if(Utility.checkRequest(frmObj,Language.FillError)&&Utility.checkEmailAddress(frmObj.elements['email']))this.Submit(frmObj,ResponseID,evt,App.CommonCallback);return false;},checkArticleSend:function(frmObj,ResponseID,evt){if(Utility.checkRequest(frmObj,Language.FillError)&&Utility.checkEmailAddress(frmObj.elements['YourEmail'])&&Utility.checkEmailAddress(frmObj.elements['ReceiverEmail']))this.Submit(frmObj,ResponseID,evt,App.CommonCallback);return false;},checkArticleFeedback:function(frmObj,ResponseID,evt){if(Utility.checkRequest(frmObj,Language.FillError)&&Utility.checkEmailAddress(frmObj.elements['email']))this.Submit(frmObj,ResponseID,evt,App.CommonCallback);return false;},checkSendFAQ:function(frmObj,ResponseID,evt){if(Utility.checkRequest(frmObj,Language.FillError)&&Utility.checkEmailAddress(frmObj.elements['email']))this.Submit(frmObj,ResponseID,evt,App.CommonCallback);return false;},checkLogin:function(frmObj,ResponseID,evt){if(Utility.isNull(frmObj.elements['UserName'].value)){alert(Language.FillUserName);frmObj.elements['UserName'].focus();return;}if(Utility.isNull(frmObj.elements['password'].value)){alert(Language.FillPassword);frmObj.elements['password'].focus();return;}this.Submit(frmObj,ResponseID,evt,App.CommonCallback);},checkSearch:function(frmObj,module,mode,ResponseID){var keyword=frmObj.elements['GKeyword'].value;if(keyword==Language.TypeKeyword||Utility.isNull(keyword)||Utility.trim(keyword).length<5){var msg=(keyword==Language.TypeKeyword||Utility.isNull(keyword))?Language.TypeKeywordError:Language.KeywordLengthError;alert(msg);frmObj.elements['GKeyword'].focus();}else makeNewLocation(frmObj.getAttribute('action')+'?module='+module+'&mode='+mode+'&GKeyword='+keyword+'&ResponseID='+ResponseID);return false;},checkSendRecruitment:function(frmObj){if(Utility.checkRequest(frmObj,Language.FillError)&&Utility.checkEmailAddress(frmObj.elements['email'])){$('LoadingID').style.display='';return true;}return false;},AddETransfer:function(TblID){var TblObj=$(TblID);var nRow=TblObj.getElementsByTagName('tr').length;var TrTag=TblObj.insertRow(nRow);var TdTag=document.createElement('td');TrTag.id="BorderTop";TdTag.style.textAlign='right';TdTag.style.paddingTop='10px';TdTag.setAttribute('width','100%');TdTag.setAttribute('nowrap',true);TdTag.innerHTML=Language.File+' '+(nRow/2+2);TrTag.appendChild(TdTag);TdTag=document.createElement('td');TdTag.style.paddingTop='10px';TdTag.setAttribute('nowrap',true);TdTag.innerHTML='<input type="file" id="FileUrl_'+(nRow/2+2)+'" name="FileUrl[]" size="52" style="width:355px;" />';TrTag.appendChild(TdTag);TdTag=document.createElement('td');TdTag.style.paddingTop='10px';TdTag.innerHTML='<input type="button" name="cmdDelete" value="'+Language.Delete+'" style="width:50px;" onclick="App.DeleteETransfer(\''+TblID+'\', this.parentNode.parentNode.rowIndex)" />';TrTag.appendChild(TdTag);TrTag=TblObj.insertRow(nRow+1);TdTag=document.createElement('td');TdTag.style.textAlign='right';TdTag.style.paddingBottom='10px';TdTag.setAttribute('nowrap',true);TdTag.innerHTML=Language.Description+' '+(nRow/2+2);TrTag.appendChild(TdTag);TdTag=document.createElement('td');TdTag.style.paddingBottom='10px';TdTag.innerHTML='<input type="text" id="description_"'+(nRow/2+2)+'" name="description[]" maxlength="255" style="width:350px;" />';TrTag.appendChild(TdTag);TdTag=document.createElement('td');TdTag.style.paddingBottom='10px';TdTag.innerHTML='&nbsp;';TrTag.appendChild(TdTag);},DeleteETransfer:function(TblID,RowIndex){var TblObj=$(TblID);TblObj.deleteRow(RowIndex);TblObj.deleteRow(RowIndex);var TdTag;var TrTag=TblObj.getElementsByTagName('tr');var nRow=TrTag.length/2;for(var i=0;i<nRow;i++){TdTag=TrTag[i*2].getElementsByTagName('td');TdTag[0].innerHTML=Language.File+' '+(i+2);TdTag=TrTag[i*2+1].getElementsByTagName('td');TdTag[0].innerHTML=Language.Description+' '+(i+2);}},CheckOrderAddItem:function(ProductID,quantity,url,ResponseID){value=parseInt(quantity.value);if(!isNaN(value)&&value>0){url+='&ProductID='+ProductID+'&quantity='+value;this.Load(url,ResponseID,App.CommonCallback,'Y');quantity.value='';}else{alert(Language.OrderAddItemError);quantity.focus();}},DoOrder:function(frmObj,mode,ResponseID,evt){var run=true;if(mode=='DeleteOrder'){if(!confirm(Language.DeleteOrderConfirm))run=false;}if(run){frmObj.elements['mode'].value=mode;this.Submit(frmObj,'OrderContainer',evt,App.CommonCallback,'Y');}return;},checkUpdateAccount:function(frmObj){if(!Utility.checkRequest(frmObj,Language.FillError))return false;if(!Utility.isNull(frmObj.elements['email'].value))return Utility.checkEmailAddress(frmObj.elements['email']);return true;},JsBridgeFlash:function(url){if(!Utility.isNull(url)){var p=url.indexOf('#');if(p!=-1){url=Base64.decode(url.substr(p+1));makeNewLocation(url);}}}};
