﻿// JScript File
var preUCPensionCalc='';
var memberAge=0;
var arrList = new Array();     //רשימה זמנית
var arrProposes = new Array(); //הצעה בודדת או רשימת הצעות לפרופיל
var NewWindow;       

//Frames
//שחזור סיסמא
function PasswordRecovery() {        
    OpenFrameWindow("PassRecovery", "common/UI/PasswordRecovery.aspx","PassRecovery",'340px');                                                
}      
   
     
//פתיחת חלון כפריים
function OpenFrameWindow( FrameID, PageURL, ClassName,Height ) {
    var WindowFrame = document.getElementById(FrameID);
    WindowFrame.src=PageURL;    
    WindowFrame.style.display='block';    
    WindowFrame.className=ClassName;          
    WindowFrame.style.height=Height;
}

//סגירת חלון פריים
function CloseWindow(FrameID) {
    var WindowFrame = document.getElementById(FrameID);
    WindowFrame.src='';                      
    WindowFrame.style.display='none';
}    
  
//אתחול חלון                    
function init() {
    try {
        self.moveTo(0,0); 
        self.resizeTo(screen.availWidth,screen.availHeight);
    }
    catch(ex){}
} 

////////////////////////////////////////////////////////////////////////////////////////////////////////////
//האם המסלול בקבוצה הנ"ל שייך לקרן מקיפה חדשה
function IsKerenMekifa( planGroup ) {
	if (planGroup < 16) 
		return true
	return false;
}

//האם מסלול בקרן כללית
function IsKerenClalit( planGroup ) {
	if (planGroup == 16) 
		return true
	return false;
}

//האם מסלול בגמל
function IsKerenGemel( planGroup ) {
	if (planGroup == 17) 
		return true
	return false;
}
//----------------------------------------------------------אובייקטים -------------
	function profile( profileType, totalSalary ) {
		this.profileType = profileType;
		this.totalSalary = totalSalary;
		this.toString = renderProfile;
	}
	
	function renderProfile() {
		var str='';
		str = this.profileType + "," + this.totalSalary;
		return str;
	}
	
	//אובייקט ליצוג תוכנית בודדת
	function propose( KerenNo ,PensionPlan , MemberType , Gender ,  FamilyState ,  Duration ,  Birthdate , SalaryInsured ,  
					  SalaryGrow , ItrazvuraIncome ,  Yield ,  RetireAge ,  Joindate ,  DnGemel ,  DnFromHon ,  
					  ReturnDnFromDg ,DnHonReturn , AlmanaPensionPer , FuturePension ,SalaryCode,  dg_t_worker , dg_t_Employer , dg_t_Compensation , 
					  dg_t_AllTag ,	KerenName , PlanName , ZiknaPension , DisabilityPension , RelativesPension, TargetPlan )
	{
		this.KerenNo = KerenNo; 
		this.PensionPlan = PensionPlan; 
		this.MemberType = MemberType; 
		this.Gender = Gender; 
		this.FamilyState = FamilyState; 
		this.Duration = Duration; 
		this.Birthdate = Birthdate; 
		this.SalaryInsured = SalaryInsured; 
		this.SalaryGrow = SalaryGrow; 
		this.ItrazvuraIncome = ItrazvuraIncome; 
		this.Yield = Yield; 
		this.RetireAge = RetireAge; 
		this.Joindate = Joindate; 
		this.DnGemel = DnGemel; 
		this.DnFromHon = DnFromHon; 
		this.ReturnDnFromDg = ReturnDnFromDg; 
		this.DnHonReturn = DnHonReturn; 
		this.AlmanaPensionPer = AlmanaPensionPer; 
		this.FuturePension = FuturePension;  
		
		this.SalaryCode = SalaryCode;
		this.dg_t_worker = dg_t_worker;
		this.dg_t_Employer = dg_t_Employer;
		this.dg_t_Compensation = dg_t_Compensation;
		this.dg_t_AllTag = dg_t_AllTag;	  
		
		this.KerenName = KerenName;
		this.PlanName = PlanName;
		this.ZiknaPension = ZiknaPension;
		this.DisabilityPension = DisabilityPension;
		this.RelativesPension = RelativesPension;
		
		this.TargetPlan = TargetPlan;
	  
		this.toString = renderPropose;
	}
	
	//יצוג תוכנית בודדת
	function renderPropose() {
		var Str=''
		Str =   this.KerenNo + "," +  
				this.PensionPlan + "," +   
				this.MemberType + "," +  
				this.FamilyState + "," +  
				this.Duration + "," +  
				this.SalaryInsured + "," +  
				this.SalaryGrow + "," +  
				this.ItrazvuraIncome + "," +  
				this.Yield + "," +   
				this.RetireAge + "," + 
				this.Joindate + "," +  
				this.DnGemel + "," +  
				this.DnFromHon + "," +  
				this.ReturnDnFromDg + "," +  
				this.DnHonReturn + "," +  
				this.AlmanaPensionPer + "," +  
				this.FuturePension + "," +    
				this.SalaryCode + "," +
				this.dg_t_worker + "," +  
				this.dg_t_Employer + "," +  
				this.dg_t_Compensation + "," +  
				this.dg_t_AllTag + "," +
				this.TargetPlan + ";" 		
		return Str;
	}
	
//פתיחת חלון חדש
function OpenPopUpWindow(sUrl) {
var oLength = this.OpenPopUpWindow.arguments ;
var sWindowName = 'NewWindow';
var sAttributes = 'toolbar=no,location=no,status=no,resizable=no,scrollbars=no,menubar=no';
if (oLength.length > 1) sWindowName = oLength[1];
if (oLength.length > 2) {
    if (oLength.length > 3) {
	    if (oLength[3] == true) sAttributes = oLength[2];
		    else sAttributes += ',' + oLength[2];
    } else sAttributes += ',' + oLength[2];
}
if (oLength.length > 4) {
    sAttributes = oLength[2] ;
    if(oLength[4]==0) var oWin = window.open(sUrl,'_self',sAttributes);
    else var oWin = window.open(sUrl,sWindowName,sAttributes);
} else {
    var oWin = window.open(sUrl,sWindowName,sAttributes);
}
return(oWin);
}

//פתיחת חלון חדש
function NewPopupWindow( URL, Width, Height, IsOnCenter ) {
    var Attributes = 'toolbar=no,location=no,status=no,resizable=no,scrollbars=no,menubar=no';
    Attributes+=',Width=' + Width + ',Height=' + Height;
    if (IsOnCenter) {
        var Left = (screen.availWidth-Width) /2;
        var Top = (screen.availHeight-Height) /2;
        Attributes+=',Left=' + Left + ',Top=' + Top;
    }       
    var oWin = window.open(URL,'sWindowName',Attributes);
    return oWin
}



function openDialogWindow( url, title, width, height, center, top, left, resizable, status, edge, unadorned, help, scroll ) {
    var attr="dialogWidth:" + width + ";dialogHeight:" + height + "; dialogLeft:" + left + "; dialogTop:" + top + ";";
    attr=attr + "center:" + center + "; dialogHide:no; edge:" + edge + "; help:" + help + "; resizable:" + resizable + ";"; 
    attr=attr + "scroll:" + scroll + "; status:" + status + "; unadorned:" + unadorned;    
    
    window.showModalDialog(url, title, attr);
}
    
function getDropDownValue( dropdown ) {
    var index = dropdown.selectedIndex;
    return dropdown.options[ index ].value;
}


//מילוי פקד dropdown
function fillDropDown( dropdownName, result, firstItem, firstItemValue ) {
    var dropDown = document.getElementById(dropdownName);
    var items = new Array();
    items = result.split(";");
    dropDown.options.length=0;
    if (firstItem!=null) 
        dropDown.options[dropDown.length] = new Option(firstItem, firstItemValue );  
    for(var i=0; i<items.length; i++) {
        var attr = new Array();
        attr =  items[i].split(",");
        var newOpt = new Option(attr[1], attr[0] );            
        dropDown.options[dropDown.length] = newOpt;                             
    }                                
}    

function fillDropDown2( dropDown, result ) {
    //var dropDown = document.getElementById(dropdownName);
    var items = new Array();
    items = result.split(";");
    dropDown.options.length=0;
    for(var i=0; i<items.length; i++) {
        var attr = new Array();
        attr =  items[i].split(",");
        var newOpt = new Option(attr[1], attr[0] );            
        dropDown.options[dropDown.length] = newOpt;                             
    }                                
}   

//Clear textbox content in spec panel
function ClearTextBoxPanel( PanelName ) {
    var objdiv1 = document.getElementById( PanelName );    
    for (var i=0; i<objdiv1.all.length; i++) {
        objItem = objdiv1.all.item(i);
        if (objItem.type=="text") {
            var objattr = objItem.getAttribute("DValue");
            objItem.value="";
            if (objattr!=null) 
                objItem.value=objattr;                                                                                                                     
        }
        if(objItem.type=="button" && objItem.id=="cmdPrint")
          objItem.disabled="disabled";    
    }
}

//set all change events of parameters control to clearResult panel
function ClearPanelOnParametersChange( ParametersPanelName, ClearPanelName ) {    
    var objdiv1 = document.getElementById( ParametersPanelName );  
    resultPanelName = ClearPanelName 
    for (var i=0; i<objdiv1.all.length; i++) {
        objItem = objdiv1.all.item(i);
        if (objItem.type=="text"  ) {
              objItem.attachEvent("onchange", ClearCurrentPanel);                                                                                    
        }
        else if (objItem.type=="radio" || objItem.type=="checkbox") {               
                objItem.attachEvent("onclick", ClearCurrentPanel); 
             }  
             else {
                        if (objItem.type=="select-one")                            
                            objItem.attachEvent("onchange", ClearCurrentPanel);    
                  }
    }    
}

//call clearPanel on parameter change
function ClearCurrentPanel() {
    ClearTextBoxPanel(resultPanelName);
}

  
function IIF( value, ValueCaseOfTrue, ValueCaseOfFalse ) {
    if(value) 
        return ValueCaseOfTrue;
    return ValueCaseOfFalse;
}
    
  
function getFieldValue( objItem ) {  
    switch (objItem.type) {
        case 'text' : return objItem.value; break;
        case 'select-one' : return objItem.value; break;
        case 'checkbox' : return IIF(objItem.checked,1,0); break;
        default: return null;
    }    
}

function getFieldName( objItem ) {
    switch (objItem.type) {
        case 'text' : return objItem.getAttribute("FieldName"); break;
        case 'select-one' : return objItem.getAttribute("FieldName"); break;
        case 'checkbox' : return objItem.parentNode.getAttribute("FieldName"); break;
        default: return null;
    }  

}


function IsFormControl( objItem ) {
    if (objItem.type=="text" || objItem.type=="select-one" || objItem.type=="checkbox")  
        return true;
          
    return false;               
}

function getPanelParameters( root ) {
    var arr = new Array()
    for (var i=0; i<root.all.length; i++) {
        var objItem = root.all.item(i);
        if (IsFormControl( objItem ) ) {                                                                               
                var objattr = getFieldName(objItem);                                                              
                if (objattr!=null) {                                                                                              
                    var itemValue = getFieldValue(objItem);                    
                    var isPerc = objItem.getAttribute("IsPerc");                  
                    if (isPerc!=null)                            
                        itemValue/=100.0;                                                                                                                                                 
                    strItem=objattr + '=' + itemValue;                    
                    arr.push( strItem ); 
                }                                  
        }
    }
    return arr;
}

function getSalaryCode( dgSplitedValues ) { 
               
        var arrParam = new Array();
        arrParam = dgSplitedValues.split(",");
        return arrParam[4];
}
