var f_m = {
    'ee': 'Введите почту. ',
    'eec': 'Введите правильный адрес почты. ',
    'es': 'Введите тему сообщения. ',
    'et': 'Введите текст сообщения. ',
    'ep': 'Введите пароль. ',
    'ed': 'Введите домен. ',
    'edc': 'Введите домен правильно. ',
    'eau': 'Такая почта уже используется. Для управления хостингом войдите в <a href="/billing/">биллинг</a>.',
    'wr1': 'Оптимальным для вас будет тариф «Просто-',
    'wr2': '». Теперь вы можете <a href="/order/',
    'wr3': '/" id="goto_order">перейти к заказу</a>.',
    'w': 'Подождите…',
    'o': 'Заказать',
    'e': 'Войти',
    'elp': 'Неправильная пара почта/пароль.',
    'ecp': 'Введите текущий пароль. ',
    'sc': 'Сохранить изменения',
    'cpt': 'Выберите способ оплаты. ',
    'ea': 'Введите сумму, на которую вы хотите пополнить баланс. ',
    'eit': 'Введите номер терминала. ',
    'eic': 'Введите номер чека. ',
    'eid': 'Введите дату совершения платежа. ',
    'eia': 'Введите сумму платежа. ',
    'enf': 'Такая почта не найдена в базе данных. Проверьте, правильно ли вы ввели адрес.',
    'rp': 'Восстановить',
    'ewd': 'Вы ввели некорректный домен.',
    'ewd': 'Вы ввели некорректный домен.',
    'ned': 'Введите домен.',
    'czoedf': 'Выберите хотя бы одну зону или введите домен полностью.',
}

function feedback()
{
    var err = false;

    clear('err');

    if (!trim($$('email'))) {
        err = true;
        $('err').innerHTML += f_m['ee'];
    } else if (!vMail($$('email'))) {
        err = true;
        $('err').innerHTML += f_m['eec'];
    }

    if (!trim($$('subject'))) {
        err = true;
        $('err').innerHTML += f_m['es'];
    }

    if (!trim($$('text'))) {
        err = true;
        $('err').innerHTML += f_m['et'];
    }

    if (err) {
        return false;
    }

    sW();

    JsHttpRequest.query(
		"/backend.php",
		{ "go": "feedback", "email": $$('email'), "subject": $$('subject'), "text": $$('text') },
		function(result) {
            $('f_form').innerHTML = result['html'];
		},
		false
	);

    return false;
}

function order()
{
    var err = false;

    clear('err');

    if (!trim($$('email'))) {
        err = true;
        $('err').innerHTML += f_m['ee'];
    } else if (!vMail($$('email'))) {
        err = true;
        $('err').innerHTML += f_m['eec'];
    }

    if (!trim($$('password'))) {
        err = true;
        $('err').innerHTML += f_m['ep'];
    }

    if (!trim($$('domain'))) {
        err = true;
        $('err').innerHTML += f_m['ed'];
    } else if (!vUrl($$('domain'))) {
        err = true;
        $('err').innerHTML += f_m['edc'];
    }

    if (!$$('tariff')) {
        err = true;
    }

    if ($('us').checked) {
        var dr = 1;
    } else if ($('fuck').checked) {
        var dr = 0;
    } else {
        err = true;
    }

    if (err) {
        return false;
    }

    sW();

    JsHttpRequest.query(
		"/backend.php",
		{ "go": "order", "email": $$('email'), "password": $$('password'), "domain": $$('domain'), "tariff": $$('tariff'), "dr": dr, "note": $$('note') },
		function(result) {
            if (result['err']) {
                $('err').innerHTML += f_m['eau'];
                sU(f_m['o']);
            } else {
                $('f_form').innerHTML = result['html'];
            }
		},
		false
	);

    return false;
}

function choiseTariff()
{
    var t = $$('sites');

    if (!t || !$$('type')) {
        $('result').innerHTML = '';
        return false;
    }

    if ($$('type') == 2 && t < 6) {
        t++;
    }

    $('result').innerHTML = f_m['wr1'] + t + f_m['wr2'] + t + f_m['wr3'];
}

function login()
{
    var err = false;

    clear('err');

    if (!trim($$('email'))) {
        err = true;
        $('err').innerHTML += f_m['ee'];
    } else if (!vMail($$('email'))) {
        err = true;
        $('err').innerHTML += f_m['eec'];
    }

    if (!trim($$('password'))) {
        err = true;
        $('err').innerHTML += f_m['ep'];
    }

    if (err) {
        return false;
    }

    sW();

    JsHttpRequest.query(
		"/backend.php",
		{ "go": "login", "email": $$('email'), "password": $$('password') },
		function(result) {
            if (result['err']) {
                $('err').innerHTML += f_m['elp'];
                sU(f_m['e']);
            } else {
                redirect();
            }
		},
		false
	);

    return false;
}

function updatePay(tp)
{
    if ($('in_term').checked) {
        var p = $$('term') * tp - (($$('term') - 1) / 100 * tp);
    } else if ($('in_amount').checked && is_numeric($$('amount'))) {
        var p = $$('amount');
    } else {
        var p = 0;
    }

    $('to_pay').innerHTML = p;
}

function changeData()
{
    var err = false;

    clear('err');

    if (!trim($$('email'))) {
        err = true;
        $('err').innerHTML += f_m['ee'];
    } else if (!vMail($$('email'))) {
        err = true;
        $('err').innerHTML += f_m['eec'];
    }

    if (!trim($$('current_password'))) {
        err = true;
        $('err').innerHTML += f_m['ecp'];
    }

    if (err) {
        return false;
    }

    sW();

    JsHttpRequest.query(
		"/backend.php",
		{ "go": "change_data", "email": $$('email'), "new_password": $$('new_password'), "current_password": $$('current_password') },
		function(result) {
            if (result['err']) {
                $('err').innerHTML += result['error_text'];
                sU(f_m['sc']);
            } else {
                $('f_form').innerHTML = result['html'];
            }
		},
		false
	);

    return false;
}

function changeTariff()
{
    sW();

    JsHttpRequest.query(
		"/backend.php",
		{ "go": "change_tariff", "tariff": $$('tariff') },
		function(result) {
            $('f_form').innerHTML = result['html'];
		},
		false
	);

    return false;
}

function pay(type)
{
    var err = false;

    clear('err');

    if ($('in_term').checked) {
        if (!$$('term') || ($$('term') != 1 && $$('term') != 6 && $$('term') != 12)) {
            err = true;
        }
        var term = $$('term');
        var amount = 0;
    } else if ($('in_amount').checked) {
        if (!parseInt($$('amount')) || parseInt($$('amount')) < 0) {
            err = true;
            $('err').innerHTML += f_m['ea'];
        }
        var term = 0;
        var amount = $$('amount');
    } else {
        err = true;
        $('err').innerHTML += f_m['cpt'];
    }

    if (err) {
        return false;
    }

    $(type).value = f_m['w'];

    JsHttpRequest.query(
		"/backend.php",
		{ "go": "pay", "type": type, "term": term, "amount": amount },
		function(result) {
            $('result').innerHTML = result['html'];
            if (type == 'wm') {
                $('wm_form').submit();
            } else if (type == 'yad') {
                $(type).value = 'Оплатить через Яндекс.Деньги';
            } else if (type == 'ibox') {
                $(type).value = 'Оплатить через терминал';
            }
		},
		false
	);
}

function ibox()
{
    var err = false;

    clear('err');

    if (!trim($$('ibox_terminal'))) {
        $('err').innerHTML += f_m['eit'];
        err = true;
    }

    if (!trim($$('ibox_check'))) {
        $('err').innerHTML += f_m['eic'];
        err = true;
    }

    if (!trim($$('ibox_date'))) {
        $('err').innerHTML += f_m['eid'];
        err = true;
    }

    if (!trim($$('ibox_amount'))) {
        $('err').innerHMLT += f_m['eia'];
        err = true;
    }

    JsHttpRequest.query(
		"/backend.php",
		{ "go": "ibox_pay", "terminal": $$('ibox_terminal'), "check": $$('ibox_check'), "date": $$('ibox_date'), "amount": $$('ibox_amount') },
		function(result) {
            $('f_form').innerHTML = result['html'];
		},
		false
	);

    return false;
}

function resetPassword()
{
    var err = false;

    clear('err');

    if (!trim($$('email'))) {
        err = true;
        $('err').innerHTML += f_m['ee'];
    } else if (!vMail($$('email'))) {
        err = true;
        $('err').innerHTML += f_m['eec'];
    }

    if (err) {
        return false;
    }

    sW();

    JsHttpRequest.query(
		"/backend.php",
		{ "go": "reset_password", "email": $$('email') },
		function(result) {
            if (result['err']) {
                $('err').innerHTML += f_m['enf'];
                sU(f_m['rp']);
            } else {
                $('f_form').innerHTML = result['html'];
            }
		},
		false
	);

    return false;
}

function checkDomains()
{
    clear('err');
    clear('domain_checking');

    if (!trim($$('domain'))) {
        $('err').innerHTML = f_m['ned'];
        return false;
    }

    var r = /^[a-z0-9_-]+$/;
    var rf = /^[a-z0-9_-]+\.([a-z]+)\.*([a-z]*)$/;

    if (!rf.test($$('domain')) && !r.test($$('domain'))) {
        $('err').innerHTML = f_m['ewd'];
    }

    var d = new Array();

    if (!rf.test($$('domain'))) {
        var c = document.getElementsByTagName('input');

        var z = new Array();

        for (var i = 0; i < c.length; i++) {
            if (c[i].type == 'checkbox' && c[i].value && c[i].value != 'on' && c[i].checked) {
                d.push($$('domain')+'.'+c[i].value);
            }
        }

        if (!d.length) {
            $('err').innerHTML = f_m['czoedf'];
            return false;
        }
    } else {
        d.push($$('domain'));
    }

    for (var i = 0; i < d.length; i++) {
        $('domain_checking').innerHTML += '<p>'+d[i]+': <span id="domain_'+i+'">подождите…</span></p>';
        JsHttpRequest.query(
		    "/backend.php",
    		{ "go": "check_domain", "domain": d[i], "i": i },
    		function(result) {
    		    if (result['enable']) {
                    $('domain_'+result['i']).innerHTML = 'свободен <a href="/domains/'+d[result['i']]+'/">заказать</a>';
                    $('domain_'+result['i']).style.color = 'green';
                } else if (result['disable']) {
                    $('domain_'+result['i']).innerHTML = 'занят';
                    $('domain_'+result['i']).style.color = 'red';
                } else {
                    $('domain_'+result['i']).innerHTML = 'ошибка';
                    $('domain_'+result['i']).style.color = 'red';
                }
    		},
    		true
	);
    }

    return false;
}

function radioTariff(r)
{
    if (r.checked) {
        $('radio_order').href = '/order/'+r.value+'/';
    } else {
        $('radio_order').href = '/order/';
    }
}

function enterdomain(focus)
{
    if (focus) {
        $('domain').style.background = '';
    } else {
        $('domain').style.background = $('domain').value == '' ? 'url(/img/enter-domain.png) no-repeat left center' : '';
    }
}

function checkzones(td, checked)
{
    object = $(td);
    for (var childItem in object.childNodes) {
        if (object.childNodes[childItem].nodeName == 'LABEL') {
            object2 = object.childNodes[childItem];
            for (var childItem2 in object2.childNodes) {
                if (object2.childNodes[childItem2].nodeName == 'INPUT') {
                    object2.childNodes[childItem2].checked = checked;
                }
            }
        }
    }
}

function is_numeric(mixed_var)
{
    return (typeof(mixed_var) === 'number' || typeof(mixed_var) === 'string') && mixed_var !== '' && !isNaN(mixed_var);
}

function sW()
{
    $('fsubmit').value = f_m['w'];
}

function sU(m)
{
    $('fsubmit').value = m;
}