// Индикатор загрузки :)
$(document.body).ajaxStart(function() {
   $(document.body).append('<div id="loading" align="center"><img src="images/loading.gif"></div>');

/*   $('#loading').css({padding:"2px", fontSize:"9pt", position:"fixed",
top:"0", right:"0", background:"red", color:"white"});*/

  $('#loading').css({padding:"2px", fontSize:"9pt", position:"absolute",
top:"50%", left:"45%"  });


}).ajaxStop(function() {
   $('#loading').remove();
});


//Работа с валютами
//Функция подмены данных с автоматическим округлением
function calculate_price(valute)
{
	switch(valute)
		{
		case "RUB":
		  valute=rubl_course;
		  name=" руб";
		  okrugl=0;
		  break;
		case "USD":
		  valute=dollar_course;
		  name="$";
		  okrugl=2;
		  break;
		case "EUR":
		  valute=euro_course;
		  name=" EUR";
		  okrugl=2;
		  break;
	  }

	for (var i = 0; i < tplans.length; i++)
	 {

		/* примеры данных
		valute=rubl_course; // курс по которому считать
		name=" руб"; //имя которое отображать
		okrugl=2; //до скольки знаков округлять, для рубля оптимально 0
		*/
		//Производим обновление данных
		jQuery('#tplan_'+i).html((tplans[i]/valute).toFixed(okrugl)+name);

	}
}

/*Информация о лимитах*/
function limits() {
jQuery.get("res/tpl/GENERAL_TO_ALL_PAGES/hosting_limits.php", function(data) {
        $.prompt(data);

    });
}
function limits_vps() {
jQuery.get("res/tpl/GENERAL_TO_ALL_PAGES/vps_limits.php", function(data) {
        $.prompt(data);

    });
}
/*Работа с доменным именем*/
function check_domain_name(){
var check_domain_data = $('input:[name=check_domain]').val();
        jQuery.get('whois_checker/check_all.php?domain=http://' + check_domain_data, function(data) {        $.prompt(data);
    });
}


/* Функцие отвечающие за вывод дополнительного контента*/

/* Почему германия */
function why_germany() {
    $(document).ready(function(){

    jQuery.get("res/tpl/index_page_design/why_germany.php", function(data) {
        $.prompt(data)
    });
    });


}
/*Бесплатное администрирование */
function free_admin() {

    jQuery.get("res/tpl/GENERAL_TO_ALL_PAGES/free_admin.php", function(data) {
        $.prompt(data)
    });
}
/*Бесплатная панель */
function free_panel() {

    jQuery.get("res/tpl/GENERAL_TO_ALL_PAGES/free_panel.php", function(data) {
        $.prompt(data)
    });
}

/*Сервер под ключ */
function pod_kluch() {

    jQuery.get("res/tpl/GENERAL_TO_ALL_PAGES/pod_kluch.php", function(data) {
        $.prompt(data)
    });
}
/*Универсальная функция скрывающая всплывающее окно*/
function add_info_close(){

        $("#user_plase").html('');

}

/* Вывод информации о услуге простого хостинга*/
function simple_hosting_show(){
    jQuery.get("res/tpl/additional_info_about_tp/simple_hosting.php", function(data) {
        $("#user_plase").html(data);
    });
}

/* Вывод информации о услуге простого реселлинга*/
function simple_reselling_show(){
    jQuery.get("res/tpl/additional_info_about_tp/simple_reselling.php", function(data) {
        $("#user_plase").html(data);
    });
}
/* Вывод информации о услуге кластерного хостинга*/
function cluster_show(){
    jQuery.get("res/tpl/additional_info_about_tp/cluster_hosting.php", function(data) {
        $("#user_plase").html(data);
    });
}
/* Вывод информации о услуге файлового хостинга*/
function file_hosting_show(){
    jQuery.get("res/tpl/additional_info_about_tp/file_hosting.php", function(data) {
        $("#user_plase").html(data);
    });
}
/* Вывод информации о услуге vps*/
function vps_show(){
    jQuery.get("res/tpl/additional_info_about_tp/vps.php", function(data) {
        $("#user_plase").html(data);
    });
}

/* функции отвечающие за работу с изображениями */
/*
wwww.tigir.com - 06.07.2006

Source: http://www.tigir.com/js/opacity.js

Библиотека opacity.js к статье "CSS прозрачность (css opacity, javascript opacity)" - http://www.tigir.com/opacity.htm

setElementOpacity - установка прозрачности
getOpacityProperty - проверка, есть ли возможность менять прозрачность
fadeOpacity - плавное изменение прозрачности
*/

/* Функция кроссбраузерной установки прозрачности

Пример: setElementOpacity(document.body, 0.5); //сделать документ прозрачным на половину
*/
function setElementOpacity(oElem, nOpacity)
{
	var p = getOpacityProperty();
	(setElementOpacity = p=="filter"?new Function('oElem', 'nOpacity', 'nOpacity *= 100;	var oAlpha = oElem.filters["DXImageTransform.Microsoft.alpha"] || oElem.filters.alpha;	if (oAlpha) oAlpha.opacity = nOpacity; else oElem.style.filter += "progid:DXImageTransform.Microsoft.Alpha(opacity="+nOpacity+")";'):p?new Function('oElem', 'nOpacity', 'oElem.style.'+p+' = nOpacity;'):new Function)(oElem, nOpacity);
}

// Функция getOpacityProperty() возвращает свойство которое используется для смены прозрачности или undefined, и может использоваться для проверки возможности изменения прозрачности
function getOpacityProperty()
{
	var p;
	if (typeof document.body.style.opacity == 'string') p = 'opacity';
	else if (typeof document.body.style.MozOpacity == 'string') p =  'MozOpacity';
	else if (typeof document.body.style.KhtmlOpacity == 'string') p =  'KhtmlOpacity';
	else if (document.body.filters && navigator.appVersion.match(/MSIE ([\d.]+);/)[1]>=5.5) p =  'filter';

	return (getOpacityProperty = new Function("return '"+p+"';"))();
}

/* Функции для плавного изменения прозрачности:

1) fadeOpacity.addRule('opacityRule1', 1, 0.5, 30); //вначале создаем правило, задаем имя правила, начальную прозрачность и конечную, необязательный параметр задержки, влийяющий на скорость смены прозрачности
2) fadeOpacity('elemID', 'opacityRule1'); // выполнить плавную смену прозрачности элемента с id равным elemID, по правилу opacityRule1
3) fadeOpacity.back('elemID'); //вернуться в исходное сотояние прозрачности
*/
function fadeOpacity(sElemId, sRuleName, bBackward)
{
	var elem = document.getElementById(sElemId);
	if (!elem || !getOpacityProperty() || !fadeOpacity.aRules[sRuleName]) return;

	var rule = fadeOpacity.aRules[sRuleName];
	var nOpacity = rule.nStartOpacity;

	if (fadeOpacity.aProc[sElemId]) {clearInterval(fadeOpacity.aProc[sElemId].tId); nOpacity = fadeOpacity.aProc[sElemId].nOpacity;}
	if ((nOpacity==rule.nStartOpacity && bBackward) || (nOpacity==rule.nFinishOpacity && !bBackward)) return;

	fadeOpacity.aProc[sElemId] = {'nOpacity':nOpacity, 'tId':setInterval('fadeOpacity.run("'+sElemId+'")', fadeOpacity.aRules[sRuleName].nDalay), 'sRuleName':sRuleName, 'bBackward':Boolean(bBackward)};
}

fadeOpacity.addRule = function(sRuleName, nStartOpacity, nFinishOpacity, nDalay){fadeOpacity.aRules[sRuleName]={'nStartOpacity':nStartOpacity, 'nFinishOpacity':nFinishOpacity, 'nDalay':(nDalay || 30),'nDSign':(nFinishOpacity-nStartOpacity > 0?1:-1)};};

fadeOpacity.back = function(sElemId){fadeOpacity(sElemId,fadeOpacity.aProc[sElemId].sRuleName,true);};

fadeOpacity.run = function(sElemId)
{
	var proc = fadeOpacity.aProc[sElemId];
	var rule = fadeOpacity.aRules[proc.sRuleName];

	proc.nOpacity = Math.round(( proc.nOpacity + .1*rule.nDSign*(proc.bBackward?-1:1) )*10)/10;
	setElementOpacity(document.getElementById(sElemId), proc.nOpacity);

	if (proc.nOpacity==rule.nStartOpacity || proc.nOpacity==rule.nFinishOpacity) clearInterval(fadeOpacity.aProc[sElemId].tId);
}
fadeOpacity.aProc = {};
fadeOpacity.aRules = {};