    $(document).ready(documentReady);
	/***
	 *
	 */
	function documentReady()
	{
	    if('function' == typeof adBannerInit) {
	        adBannerInit();
	    }
	}

    //==================================================================
    //переключает видимость закладок настроек
    //==================================================================
    function toggle_visibility(all_ids, show_id,opened_tab_id)
    {  	var i=0;
    	var e=0;
    	while(e = document.getElementById(all_ids[i]) )
		{	if(all_ids[i] == show_id)
			{	e.style.display = 'block';
				div_e = document.getElementById('div_'+all_ids[i]);
				div_e.className = div_e.className + ' profile_table_tab_active';
				document.getElementById(opened_tab_id).value = show_id;//запоминаем, в хидден-поле какой сейчас открыт таб
			}
			else
			{	e.style.display = 'none';
				div_e = document.getElementById('div_'+all_ids[i]);
				div_e.className = 'profile_table_tab';
			}
			i++;
		}
    }
    //==================================================================
    //для элементов с айдишниками из первого масива присваивает значения из второго массива
    //значение первого элемент массива значений управляет цветом текста в элементах
    //==================================================================
	function edit_money(fields, values, exclude_fields, isNew)
	{
		for(var i = 0, o; i < fields.length; i++)
		{
			if (! (o = document.getElementById(fields[i]))) {
				continue;
			}
            //проверяем нет ли этого поля среди исключенных полей
            var do_exclude = false;
            for(var j=0;j<exclude_fields.length;j++)
            {
                if(fields[i] == exclude_fields[j])
                {
                    do_exclude = true;
                    break;
                }
            }
            if(do_exclude)  continue;
			o.value = (0 == i && isNew) ? -1 : values[i];
			o.style.color = isNew ? '#0000ff' : '#ff0000';
		}
  		scroll(0, 0);
	}

    //==================================================================
    //проверяет все элементы формы на непустое значение и запускает обработку формы
    // работает в расходах-доходоах и в перечислении по счетам!!!
    //==================================================================
	function check_and_submit(form_id)
	{	var myform = document.getElementById(form_id);
		if(myform)
		{   var el;
			for(i=0; el = myform.elements[i]; i++)
			{   if(el.type == 'hidden')	continue;//не проверям хидден-поля
                            var error = false;
                            el.style.background='#ffffff';
                            if(el.getAttribute("datatype") == "text")
                            {
                                if(el.value == '')  error = true;
                            }
                            else if(el.getAttribute("datatype") == "date")
                            {
                                if(el.value == '')  error = true;
                            }
                            else if(el.getAttribute("datatype") == "float")
                            {   //alert(parseFloat(el.value.split(',').join('.')));
                                if(parseFloat(el.value.split(',').join('.')) == 0 || isNaN(parseFloat(el.value.split(',').join('.'))))  error = true;
                            }
                            else if(el.getAttribute("datatype") == "float_positiv")
                            {   var v = parseFloat(el.value.split(',').join('.'));
                                if(v <= 0 || isNaN(v))  error = true;
                            }


                            if(error)
                            {
                                el.style.background='#ffaaaa';
                                alert((interface_lang == "undefined" || interface_lang=='ru_RU') ? 'Все поля должны быть заполнены ненулевыми и правильными значениями.' : 'Всі поля повинні бути заповнені ненульовими та вiрними значеннями.');
                                return;
                            }
			}
			myform.submit();
		}
		else	alert('no form');
	}

	//==================================================================
    //создает окно с календарем, привязывает к нему поле ввода с присланным id и показывает его
    //==================================================================
	/*function show_calendar(input_id,path)
	{   var cal = new calendar1(document.getElementById(input_id),path);
		cal.year_scroll = true;
		cal.time_comp = false;
		cal.popup();
	}  */

	//==================================================================
    //переключает тип отображения информации в расходах-доходах
    //==================================================================
	function swicth_moneystrs_view(all_ids, show_ids)
    {  	var i=-1;
    	var e;
    	while(e = document.getElementById(all_ids[++i]) )
		{	e.style.display = 'none';
		}
		i=-1;
		while(e = document.getElementById(all_ids[++i]) )
		{	for(var j=0;j<show_ids.length;j++)
			{	if(all_ids[i] == show_ids[j])	e.style.display = 'block';
			}
		}
    }

    //==================================================================
    //Делает блоки с id из show_ids видимыми а остальные из all_ids -
    //==================================================================
	function swicth_blocks_visibility(all_ids, show_ids)
    {  	var i=-1;
    	var e;
    	while(e = document.getElementById(all_ids[++i]) )
		{	e.style.display = 'none';
		}
		i=-1;
		while(e = document.getElementById(all_ids[++i]) )
		{	for(var j=0;j<show_ids.length;j++)
			{
                if(all_ids[i] == show_ids[j])	e.style.display = 'block';
			}
		}
    }

    //==================================================================
    //переключает видимость блока
    //==================================================================
	function swicth_block_visibility(id)
    {  	var e = document.getElementById(id);
		if(e.style.display == 'none')	e.style.display = 'block';
		else							e.style.display = 'none';
    }
    //==================================================================
    //устанавливает или переключает видимость блока-плашки в связке с кукой
    //==================================================================
	function set_dyn_block_visibility(id, do_switch, def_visible)
    {
        //кука ставится на 60 дней
        var n_days = 60;
        var today = new Date();
        var expires = new Date(today.getTime() + n_days*24*60*60*1000);
        //---------------------------
    	var e = document.getElementById(id);
    	var cookie_name = 'dbv_'+id;
    	var cookie_val = getCookie(cookie_name);
    	if(cookie_val != null)
    	{  	if(do_switch)
    		{
    			if(cookie_val == 'block')	cookie_val = 'none';
    			else						cookie_val = 'block';
    		}
    		setCookie(cookie_name, cookie_val, expires);
   			if(cookie_val == 'block')
   			{	e.style.display = 'block';
   			    document.getElementById(id+'_show').style.display = 'none';
   			    document.getElementById(id+'_hide').style.display = 'block';
   			}
   			else
   			{	e.style.display = 'none';
   				document.getElementById(id+'_show').style.display = 'block';
   			    document.getElementById(id+'_hide').style.display = 'none';
   			}
    	}
    	else
    	{	if(!def_visible) 	def_visible = 'none';
    		setCookie(cookie_name, def_visible, expires);
    		if(def_visible == 'none')
    		{  	e.style.display = 'none';
    			document.getElementById(id+'_show').style.display = 'block';
   				document.getElementById(id+'_hide').style.display = 'none';
    		}
    		else
    		{	e.style.display = 'block';
    			document.getElementById(id+'_show').style.display = 'none';
   				document.getElementById(id+'_hide').style.display = 'block';
   			}
    	}
    }

	//==================================================================
    //Закрывает окно, обнвляет родительское и фокуссируется на нем (polyinput)
    //==================================================================
    function close_and_refresh_opener(window)
	{   //window.opener.location = window.opener.location;
		window.opener.location.reload();
 		window.opener.focus();
        //alert(window.opener.location);
		window.close();
	}

	//==================================================================
    //Однократно (пока flag=true) очищает поле
    //==================================================================
    function check_and_clear(e, flag)
	{   if(flag)
		{	e.value="";
		}
		return false;
	}

	//==================================================================
    //Сменяет текст в блоках на одинаковый
    //==================================================================
    function change_text(arr_ids, txt)
	{   var i=0;
		var e;
		while(e = document.getElementById(arr_ids[i]) )
		{	e.innerHTML = txt;
			i++;
		}
	}
	//==================================================================
    //Подстановка расчитанного значения при обмене валют и Подстановка курса валют в таблицу перечислений по счетам
    //==================================================================
    function change_kurs_and_sum(	trans_form_from_currency_value,
    								trans_form_from_sum_value,
    								trans_form_to_currency_value,
    								trans_form_to_sum_id,
    								trans_form_kurs_id,
    								currency_coeffs,
    								user_main_currency,
    								use_handmade_kurs	)
	{
		var trans_form_from_sum_value = trans_form_from_sum_value.split(',').join('.');

		handmade_kurs = document.getElementById(trans_form_kurs_id).value.split(',').join('.');

		if(trans_form_from_currency_value == trans_form_to_currency_value)
		{	if(use_handmade_kurs == 1)	kurs = handmade_kurs;
			else kurs = 1;

			document.getElementById(trans_form_kurs_id).value = kurs;
		}
		else if(trans_form_from_currency_value == user_main_currency)
		{   if(use_handmade_kurs == 1)
			{	kurs = 1. / handmade_kurs;
				document.getElementById(trans_form_kurs_id).value = handmade_kurs;
			}
			else
			{	kurs = 1. / currency_coeffs[trans_form_to_currency_value];
				document.getElementById(trans_form_kurs_id).value = currency_coeffs[trans_form_to_currency_value];
			}
		}
		else if(trans_form_to_currency_value == user_main_currency)
		{   if(use_handmade_kurs == 1)	kurs = handmade_kurs;
			else kurs = currency_coeffs[trans_form_from_currency_value];

			document.getElementById(trans_form_kurs_id).value = kurs;
		}
		else
		{  	if(use_handmade_kurs == 1)	kurs = handmade_kurs;
			else kurs = 1;

			document.getElementById(trans_form_kurs_id).value = kurs;
		}

		document.getElementById(trans_form_to_sum_id).value = Math.round(100*trans_form_from_sum_value * kurs)/100;
	}
	//==================================================================
    //Подстановка расчитанного значения при обмене валют
    //==================================================================
    function update_currency_kurs(arr_ids, arr_kurs)
	{  	for(i=0;i<arr_ids.length;i++)	document.getElementById(arr_ids[i]).value = arr_kurs[i];
	}
	//==================================================================
    //обработка вызова множественного удаления и редактирвоания
    //==================================================================
	function poly_from_oper(from_id, trg, act, mess)
	{   if(mess == "" || confirm(mess))
		{	var form = document.getElementById(from_id);
			form.target = trg;
			form.action = act;
			form.submit();
			var a = 1;
		}

	}

	//==================================================================
    //обработка вызова множественного удаления и редактирвоания
    //==================================================================
	function compute_value(el, round_to)
	{   var s = el.value;
		if(s.charAt(s.length-1) == '=')
		{	el.value = eval(s.substr(0,s.length-1).split(',').join('.'));
			var n = round_to-0;
			if(n > 0)
			{	d = Math.pow(10,n);
				el.value = Math.round(d*el.value)/d;
			}
		}
	}

	function setCookie(name, value, expires, path, domain, secure)
	{
		if (!name || !value) return false;
		var str = name + '=' + encodeURIComponent(value);

		if (expires) str += '; expires=' + expires.toGMTString();
		str += '; path=' + '/';
		if (domain)  str += '; domain=' + '*';
		if (secure)  str += '; secure';

		document.cookie = str;
		//alert(document.cookie);
		return true;
	}

	function getCookie(name)
	{
		var pattern = "(?:; )?" + name + "=([^;]*);?";
		var regexp  = new RegExp(pattern);

		if (regexp.test(document.cookie))
		return decodeURIComponent(RegExp["$1"]);

		return null;
	}

	function deleteCookie(name, path, domain)
	{
		setCookie(name, null, new Date(0), path, domain);
		return true;
	}

	//==========================================
	// контроль для поля даты интервала используемых дат (только для формаиа dd-mm-yyyy)
	//==========================================
	function date_field_ctrl(field, not_less, not_more, message)
	{
		var field_arr = field.value.split('-');
		var field_date_sec = new Date(field_arr[2],field_arr[1],field_arr[0]);

		var not_less_arr = not_less.split('-');
		var not_less_date = new Date(not_less_arr[2],not_less_arr[1],not_less_arr[0]);

		var not_more_arr = not_more.split('-');
		var not_more_date = new Date(not_more_arr[2],not_more_arr[1],not_more_arr[0]);

		if(field_date_sec/1000 < not_less_date/1000)
		{	alert(message);
			field.value = not_less;
		}
		if(field_date_sec/1000 > not_more_date/1000)
		{	alert(message);
			field.value = not_more;
		}
	}
	//==========================================
	// всем чекбоксам с id begin_nameX_id присвоить all_none
	//==========================================
	function select_all_none(begin_name, all_none, gen_on_change)
	{   var i=1, e=0;
		while(e = document.getElementById(begin_name+(i++)+"_id" ))
		{	if(e.checked != all_none)
			{   e.checked = all_none;

				if(gen_on_change)	e.onchange();
			}
		}
	}
    //==========================================
	// проверка, устанавливаются ли у пользователя в браузере куки
	//==========================================
    function IsCookieEnabled()
    {
        // проверяем существование свойства navigator.cookieEnabled
        if(typeof(navigator.cookieEnabled) != "undefined")
            return navigator.cookieEnabled;
        else
        {
            // если свойство navigator.cookieEnabled
            // не поддерживается, то просто попробуем
            // установить и получить назад тестовый cookie
            var tmpCookie = "testCookieForCheck";
            SetCookie(tmpCookie, "1");
            if(GetCookie(tmpCookie) != null)
            {   DeleteCookie(tmpCookie);
                return true;
            }
            return false;
        }
    }
    //===================================================
    function presetup_set_active_tub(num)
    {
        document.getElementById('presetup_form').style.display='none';
        for(var i=1;i<=8;i++)
        {   document.getElementById("tab"+i).className = "presetup_tab";
            document.getElementById("presetup_tabs_num"+i).className = "presetup_tabs_num";
        }
        
        document.getElementById("tab"+num).className = "presetup_tab active";
        document.getElementById("presetup_tabs_num"+num).className = "presetup_tabs_num active";

        if(num == 8)
        {
            document.getElementById("next_tab").style.display="none";
            document.getElementById("end").style.display="block";
        }
        else
        {
            document.getElementById("next_tab").style.display="block";
            document.getElementById("end").style.display="none";
        }
        setTimeout("document.getElementById('presetup_form').style.display='block'",500);
    }

    function presetup_set_next_tub()
    {
        var num = 1;
        for(var i=1;i<=8;i++)
        {   if(document.getElementById("tab"+i).className == "presetup_tab active")
            {   num = i;
                break;
            } 
        }
        presetup_set_active_tub(num+1);

        
    }

    function presetup_end()
    {
        document.getElementById("presetup_form").submit();
    }


