Код: Выделить всё
$(document).ready(function(){ if (typeof VK != 'undefined') { setInterval('vk_resize()', 500); } $('#refresh_dota').click(function(){ $.ajax({ url: "ajax_streams_dota.php", cache: false, beforeSend: function() { $('#content').html('<img src="http://dota-advice.ru/streams/ajax-loader.gif" width="230" height="35">'); }, success: function(html){ $("#content").html(html); } }); return false; }); $('#refresh_lol').click(function(){ $.ajax({ url: "ajax_streams_lol.php", cache: false, beforeSend: function() { $('#content').html('<img src="http://dota-advice.ru/streams/ajax-loader.gif" width="230" height="35">'); }, success: function(html){ $("#content").html(html); } }); return false; }); $('#refresh_diablo_3').click(function(){ $.ajax({ url: "ajax_streams_diablo_3.php", cache: false, beforeSend: function() { $('#content').html('<img src="http://dota-advice.ru/streams/ajax-loader.gif" width="230" height="35">'); }, success: function(html){ $("#content").html(html); } }); return false; }); $('#refresh_blc').click(function(){ $.ajax({ url: "ajax_streams_blc.php", cache: false, beforeSend: function() { $('#content').html('<img src="http://dota-advice.ru/streams/ajax-loader.gif" width="230" height="35">'); }, success: function(html){ $("#content").html(html); } }); return false; }); var viewer_id;var auth_key;var wasPayBox = false; // было открыто окно "Внесите 1 голос", при нажатии на кнопку "Добавить" VK.init(function() { VK.loadParams(document.location.href); viewer_id = VK.params.viewer_id; auth_key = VK.params.auth_key; getBalance(); updateLinks(); }); // функция обновления балансаfunction getBalance(){ VK.api("getUserBalance", function(data) { // если баланс меньше 1 голоса, то выводим ссылку "пополнить" votes = parseInt(data.response)/100; if (votes<1) { $('#balance').html('Ваш баланс: ' + votes + ' ' + num_ending(votes)); $('#addVotes').show(); } else { $('#balance').html('Ваш баланс: ' + votes + ' ' + num_ending(votes)); } });} // клик по "Ваш баланс" - обновить$('#balance').click(function() { getBalance(); return false;}); // клик по "Развернуть"$('#hideGetBalance').click(function() { $('#showInfoBalance'). FadeIn(); return false;}); // клик по "Пополнить баланс"$('#addVotes').click(function() { VK.callMethod("showPaymentBox"); return false;}); // баланс был измененVK.addCallback("onBalanceChanged", onBalanceChanged); function onBalanceChanged(settings) { getBalance(); if (wasPayBox) { // если вызывали окно пополнения, то вероятно пользователь пополнил баланс wasPayBox = false; // пробуем отправить данные снова $('#addLink_btn').click(); }} // отправляем на сервер$('#addLink_btn').click(function() { // проверяем баланс VK.api("getUserBalance", function(data) { // если баланс меньше 1 голоса, то выводим окно "пополнить на 1 голос" if (data.response<100) { VK.callMethod("showPaymentBox",1); wasPayBox = true; } else { var error = false; var t = ''; // текст ошибок var url = $('#url').val(); // проверяем ссылку if (url.indexOf('http://vkontakte.ru/id')!==0) { t += 'Укажите правильную ссылку с вашим ID, на который будут приходить оповещения и разрешите приложению отправку уведомлений.'; error=true; } if (url.length>50) { // if (error) - проверка, содержит ли переменная с ошибками какой-то текст, чтобы не делать лишний перенос строки if (error) { t += '<br />';} t += 'Максимальная длина ссылки 50 символов!'; error=true; } // если есть ошибки if (error) { $('.error').html(t); $('.success').slideUp(); $('.error').slideDown(); } else { $('.error').hide(); // скрываем блок с ошибкой (он мог быть открыт) // показываем предзагрузчик $('#showInfoBalance').show(); // отправляем данные на сервер $.post('http://flapps.ru/apps/test/addlink.php', { "title": title, "url": url, "viewer_id": viewer_id, "auth_key": auth_key }, function(data){ if (data.success) { $('.success').html(data.success.msg); $('.error').slideUp(); $('.success').slideDown(); } else { $('.error').html(data.error.msg); $('.success').slideUp(); $('.error').slideDown(); } // обновляем баланс getBalance(); // скрываем предзагрузчик $('#showInfoBalance').fadeOut(1000); }, "json"); } } });return false;}); }); function num_ending(number) { var endings = ['голосов','голос','голоса']; var num100 = number % 100; var num10 = number % 10; if (num100 >= 5 && num100 <= 20) { return endings[0]; } else if (num10 == 0) { return endings[0]; } else if (num10 == 1) { return endings[1]; } else if (num10 >= 2 && num10 <= 4) { return endings[2]; } else if (num10 >= 5 && num10 <= 9) { return endings[0]; } else { return endings[2]; }}