/**
* Author - koder_alex
* ISQ - 669906617
* VK - https://vk.com/koder_alex
* KL - http://koder-alex.ru
* It is forbidden to give, sell, modify.
*/
var timeOut = 10000;
var selector = '#main';
var timerIdUpdateJs = undefined;
var request = {update: 5E3, limit: 10, page: 2, peer: 0};
function requestUpdateMail() {
var node = $('#contactUpdate');
node.length === 0 && (node = $('#messages'));
if (node.length == 1) {
request.limit = parseInt(node.attr('data-limit'));
request.update = parseInt(node.attr('data-update'));
}
}
function updateJSMail() {
var contactUpdate = $('#contactUpdate'), messageUpdate = $('#messages');
if (contactUpdate.length === messageUpdate.length) {
return;
}
if (request.peer == 0 && messageUpdate.length > 0 && messageUpdate.attr('data-peer') !== undefined) {
request.peer = parseInt(messageUpdate.attr('data-peer'));
messageUpdate.removeAttr('data-peer');
$('.vk_mail').keypress(function (e) {
if (e.shiftKey && (10 === e.keyCode || 13 === e.keyCode)) {
$('#write_submit').click();
e.preventDefault();
}
});
}
timerIdUpdateJs = TimerVisibl.every(request.update, function () {
if (contactUpdate.length === messageUpdate.length) {
TimerVisibl.stop(timerIdUpdateJs);
return;
}
if (contactUpdate.length > 0) {
mail.updateContact();
}
if (messageUpdate.length > 0) {
if (request.peer > 0) {
mail.updateMail(request.peer);
}
}
return;
});
}
$(document).ajaxRequest('a:not([data-noajax])', selector, {timeout: timeOut});
$(document).on('submit', 'form:not([data-noajax])', function (event) {
$.ajaxRequest.submit(event, selector, {timeout: timeOut});
});
$(document).on('click', '[type=submit]:not([data-noajax])', function (event) {
$.ajaxRequest.pressingButton(event); // ловим нажатие кнопки
$("#smile_panel").remove();
});
$(document).on('ajaxRequest:start', function () { // старт перехода
NProgress.start();
UI.toTop.hide();
request.peer = 0;
request.page = 2;
// удаляем таймер
if (timerIdUpdateJs !== undefined) {
TimerVisibl.stop(timerIdUpdateJs);
timerIdUpdateJs = undefined;
}
if((typeof mediaUpload) != "undefined") {
mediaUpload.clearAttaches();
}
Emotions.toggle()
/**
* здесь можно прописать остальные возможности
* к примеру
* если открыта боковая панелька
* то здесь можно вызвать закрытие панельки
* чтоб потом вовремя перехода нечего не висело лишнего
*/
});
$(document).on('ajaxRequest:end', function () { // завершение перехода
request.peer = 0;
request.page = 2;
NProgress.done();
requestUpdateMail();
updateJSMail();
SmileButton.init();
UI.clearInt(Intervals);
var loc = $("#location");
loc = (loc !== null ? loc.text().trim() : '');
var back = $("#app-ajax-back").attr('href');
if (back !== undefined) {
loc = "<a href=\"" + back + "\">" + loc + "</a>";
} else {
loc = "<span>" + loc + "</span>";
}
$('#top .top--title').html(loc);
$("body").removeClass("__js-sidebar-show");
UI.addStylerForm();
UI.mouseEnter();
USER.title = $('title').text();
UI.addScript(document.location.pathname + document.location.search);
if ($("textarea[data-focus='1']")) {
UI.formFocus($("textarea[data-focus='1']"));
}
if((typeof mediaUpload) != "undefined") {
mediaUpload.clearAttaches();
}
});
$(function () {
requestUpdateMail();
updateJSMail();
UI.addScript(document.location.pathname + document.location.search);
if((typeof mediaUpload) != "undefined") {
mediaUpload.clearAttaches();
}
});