function HideShowElements(prefGroup,maxID,curID) { 
    nameClassShow = 'formShow';
    nameClassHide = 'formHide';

    

    maxShow = parseInt(curID);
    if (maxShow==NaN) maxShow = 0;
    if(maxShow!=NaN) {

    for(i=1;i<=maxID;i++) {        

         

         theEl = document.getElementById(prefGroup+i);

         if (i==maxShow) {

            theEl.className = nameClassShow;

         }

         else {

            theEl.className = nameClassHide;

        }

        }

    }
}

var prefHide=new Array('r','a_l');/*,'s'*/
function HidElements (arrHide) {
for (var itemh in arrHide) {
    for (var pref in prefHide) {
        obj = window.document.getElementById(prefHide[pref]+'_'+itemh);
        //ShowByElement(obj,arrBoss);
        if (obj != null) {
           obj.style.display = 'none';
        }
        obj=null;
    }    
}
}

function HidElementsFull (arrHide, arrBoss) {
    if (isArray(arrBoss)) {
        for (var itemb in arrBoss) {
           var objtmp = window.document.getElementsByName(itemb)[0];
           ShowByElement(objtmp,arrBoss);
        }
    }
}

function ShowByElement (obj,arr) {
var f, obj_tmp, value_tmp;
    if (obj!=null && arr!=null) {
        if ((arr[obj.name]!=null) && obj.type=='radio') {
            obj_tmp = window.document.getElementsByName(obj.name);
            value_tmp = get_radio_value(obj_tmp);
            ShowByElementAction (arr, obj.name  , value_tmp) 
           
        }
        if (arr[obj.id]!=null) {
            f = arr;
            prefHide_f = prefHide;
            for (var idhide in arr[obj.id]) {
		    if (arr[obj.id][idhide]['hide_type']=='group') {
                var endGr;
			    endGr = obj.value;
			    for (var m = 1; m <= arr[obj.id][idhide]['value']; m++) {
				   for (var pref in prefHide) {
					    var objRule = null;
					    //objRule = window.document.getElementById(prefHide[pref]+'_'+idhide+m);
					     //if (obj.id=='list_country_tax_number') alert(prefHide[pref]+'_'+idhide+m);
					    if ((objRule=window.document.getElementById(prefHide[pref]+'_'+idhide+m))!=null && m<=endGr) {
							   objRule.style.display = '';
					    }
					    else if(objRule!=null) {							     
							     objRule.style.display = 'none';
					    }
				   }
			    }
		    }
		    else {
		    for (var pref in prefHide) {		
			var objRule = null;
			objRule = window.document.getElementById(prefHide[pref]+'_'+idhide);
                        objFld = window.document.getElementById(idhide);
            
			if (objRule!=null && objFld!=null) {
			    if (eval("obj."+arr[obj.id][idhide]['property']+"=='"+arr[obj.id][idhide]['value']+"'")) {
                                    //alert(arr[obj.id][idhide]['property']+'=='+arr[obj.id][idhide]['value']+'id:'+obj.id)
				objRule.style.display = '';
                                objFld.style.display = '';
                                return;
			    }
			    else {
                                //alert(arr[obj.id][idhide]['property']+'=='+arr[obj.id][idhide]['value'])
				objRule.style.display = 'none';
                                objFld.style.display = 'none';
			    }
			    //if (isArray(arr[idhide])) {alert(idhide)}
			}
			
			    if (isArray(arr[idhide])) {
				objF = window.document.getElementById(idhide);
				ShowByElement(objF,arr)
			    }
		    }
		    }
            }
        }
    }
    return;
}
function ShowByElementAction (arr, obj_uid, obj_value) {
            if (arr[obj_uid]!=null) {
            f = arr;
            prefHide_f = prefHide;
            for (var idhide in arr[obj_uid]) {
		    if (arr[obj_uid][idhide]['hide_type']=='group') {
			    var endGr;
			    endGr = obj_value;
			    for (m = 1; m <= arr[obj_uid][idhide]['value']; m++) {
				   for (var pref in prefHide) {
					    var objRule = null;
					    objRule = window.document.getElementById(prefHide[pref]+'_'+idhide+m);
					    if (objRule!=null) {
						    if (m<=endGr) {
							   objRule.style.display = '';
						    }
						    else {							     
							     objRule.style.display = 'none';
						    }
					    }
				   }
			    }
		    }
		    else {
		    for (var pref in prefHide) {
			var objRule = null;
			objRule = window.document.getElementById(prefHide[pref]+'_'+idhide);
			if (objRule!=null ) {
			    if (eval("'"+obj_value+"'=='"+arr[obj_uid][idhide]['value']+"'")) {
                                objRule.style.display = '';
			    }
			    else {
                     objRule.style.display = 'none';
			    }
			}
			
			    if (isArray(arr[idhide])) {
				objF = window.document.getElementById(idhide);
				ShowByElement(objF,arr)
			    }
		    }
		    }
            }
}
}
function isArray(obj) {
  if (obj==null) return false;
   if (obj.constructor.toString().indexOf("Array") == -1)
      return false;
   else
      return true;
}

function MkTotal (group,total,currency,arr_price,arr_fields) {
var objC, typeC, objT, result;
    objT = window.document.getElementsByName(total)[0];
    objC = window.document.getElementsByName(currency);
    result = 0;
    if (!objT || !objC) return;
    if (objC[0].type=='radio') {
        typeC = get_radio_value(objC);
    }
    if (typeC != null) {
        for (field in arr_fields) {
            objTmp = window.document.getElementsByName(field);
	    objCount = window.document.getElementsByName(field+'_number')[0];
	    number = 1;
	    row_show_number = ShowRowFld(field+'_number');
	    if (row_show_number && objCount!=null) {
			  number_tmp = parseInt(objCount.value);
			  if (number_tmp!=NaN) {
				  if (number_tmp>1) number = number_tmp;
			  }
			
		}
            if (objTmp[0].type=='checkbox') {
		 //alert(objTmp[0].type)
                service = arr_fields[field];
		row_show = ShowRowFld(field);	
		
		if (arr_price[service][typeC]!=null && objTmp[0].checked && objTmp[0].style.display!='none' && row_show==true) {
			    //result+=arr_price[service][typeC]*number_tmp;
                for(i = 1; i <= number; i++) {
			var objNotary;
			    objNotary = window.document.getElementsByName(field+'_notary_'+i)[0];
                            flagNum=false;
                            if (isArray(arrPriceNumber)) {
                                if (isArray(arrPriceNumber[service])) {
                                     if (isArray(arrPriceNumber[service][i])) {
                                        flagNum = true;
                                    }
                                }
                            }
			    //field
			   var tmpPrice;
			    if (flagNum) {
				tmpPrice = arrPriceNumber[service][i][typeC];
                            }
                            else {
                                tmpPrice=arr_price[service][typeC];
                            }
			   if (objNotary!=null && parseInt(objNotary.value)>1) {
					tmpPrice = tmpPrice + (parseInt(objNotary.value)-1)*((parseInt(tmpPrice)*100)/100)*0.5
			    }
                           
			        result+=tmpPrice;
                 }
		}
            }
            else if (objTmp[0].type=='select-one') {
                service = objTmp[0].value;
                notHide = true
                for (var pref in prefHide) {
                    objCont = window.document.getElementById(prefHide[pref]+'_'+field);
                    if (objCont!=null && objCont.style.display=='none') {
                        notHide = false;
                    }
                }
                if (arr_price[service][typeC]!=null && notHide) {
                     for(i = 1; i <= number_tmp; i++) {
                            flagNum=false;
                            if (isArray(arrPriceNumber)) {
                                if (isArray(arrPriceNumber[service])) {
                                     if (isArray(arrPriceNumber[service][i])) {
                                        flagNum = true;
                                    }
                                }
                            }
                            if (flagNum) {
                                result+=arrPriceNumber[service][i][typeC];
                            }
                            else {
                                result+=arr_price[service][typeC];
                            }
                 }
                }
                
            }
        }
        objT.value = result;
    }
}
function ShowRowFld (field) {
var row_show = true;
		if (arrFieldsInfo[field]!=null) {
			if (arrFieldsInfo[field]['row_id']!=null) {
				tmp_row = window.document.getElementById(arrFieldsInfo[field]['row_id']);
				if (tmp_row!=null) {
					if (tmp_row.style.display=='none') row_show = false
				}				
			}
		}
return row_show;
}
function get_radio_value(radioar) {
    for(i = 0; i < radioar.length; i++)
    {  
        if(radioar[i].checked) {return radioar[i].value;}
    }
    return null;
}
function showElById(id_tmp, obj_name, value_true) {
var obj;
        obj = document.getElementById(id_tmp);
        obj_tmp = window.document.getElementsByName(obj_name);
        value_tmp = get_radio_value(obj_tmp);
        if (obj!=null) {
                if (value_tmp==value_true) {
                        obj.style.display = '';
                }
                else {
                        obj.style.display = 'none';
                }
        }
}
function hilightByRadio (obj) {
var    objHilight, obj_radio;
    if (obj == null) return;
    obj_radio = window.document.getElementsByName(obj.name);
    for(i = 0; i < obj_radio.length; i++)
    {
        objHilight = document.getElementById('highlight_' + obj_radio[i].id);
        if (objHilight!=null) {
            if(obj_radio[i].checked) {
                objHilight.className = 'highlight';
            }
            else {
                objHilight.className = 'highlight_no';
            }
        }
    }
    return true;
}