// Серверное время
var server_time = 1747605548;
// Базовый URL https://brigadirka.ru или http://dev.brigadirka.ru
var base_url = "http://dev.brigadirka.ru";
var work_base_url = 'https://brigadirka.ru';
$(document).ready(function(){
// Выравнивание модального окна по центру
(function($){
$.fn.extend({
center: function () {
return this.each(function() {
var top = ($(window).height() - $(this).outerHeight()) / 2;
var left = ($(window).width() - $(this).outerWidth()) / 2;
$(this).css({position:'absolute', margin:0, top: (top > 0 ? top : 0)+'px', left: (left > 0 ? left : 0)+'px'});
});
}
});
})(jQuery);
function number_format(number, decimals, dec_point, thousands_sep) {
/*
number - исходное число
decimals - количество знаков после разделителя
dec_point - символ разделителя
thousands_sep - разделитель тысячных
*/
number = (number + '').replace(/[^0-9+\-Ee.]/g, '');
var n = !isFinite(+number) ? 0 : +number,
prec = !isFinite(+decimals) ? 0 : Math.abs(decimals),
sep = (typeof thousands_sep === 'undefined') ? ',' : thousands_sep,
dec = (typeof dec_point === 'undefined') ? '.' : dec_point,
s = '',
toFixedFix = function(n, prec) {
var k = Math.pow(10, prec);
return '' + (Math.round(n * k) / k)
.toFixed(prec);
};
// Fix for IE parseFloat(0.55).toFixed(0) = 0;
s = (prec ? toFixedFix(n, prec) : '' + Math.round(n)).split('.');
if (s[0].length > 3) { s[0] = s[0].replace(/\B(?=(?:\d{3})+(?!\d))/g, sep); }
if ((s[1] || '').length < prec) {
s[1] = s[1] || '';
s[1] += new Array(prec - s[1].length + 1)
.join('0');
}
return s.join(dec);
}
function dayofweek(number, format) {
var result = '';
switch (format){
case 'rus2':
switch(number){
case 0: result = 'вс'; break;
case 1: result = 'пн'; break;
case 2: result = 'вт'; break;
case 3: result = 'ср'; break;
case 4: result = 'чт'; break;
case 5: result = 'пт'; break;
case 6: result = 'сб'; break;
}
break;
default:
result = '';
}
return result;
}// Клик - вызов меню
$('.act-show-popup-menu').click(function(){
$('.bar-popup-menu').toggle(300);
});
// Клик - Пункт меню
$('.menu-item').click(function(){
$('.menu-item').removeClass('on');
$(this).addClass('on');
});
$('.bar-popup-menu .menu-item').click(function(){
$('.page-title').html('Загрузка...');
$('.bar-popup-menu').hide(300);
});
// Наведение мышки на логотип партнёра на главной странице
$('.welcome .home-page .partner-logo').hover(
function(){ $(this).css('filter' , 'none'); },
function(){ $(this).css('filter' , 'grayscale(100%)'); }
);// Переключить вкладку
$('.bar-login .tab').click(function(){
$('.bar-login .response').html('').attr('data-type', '').hide();
$('.bar-login .tab').removeClass('on');
$('.bar-login .tabcard').hide();
var tab_name = $(this).attr('data-tab');
$('.bar-login .tab[data-tab=' + tab_name + ']').addClass('on');
$('.bar-login .tabcard[data-tab=' + tab_name + ']').show();
});
// Видимость пароля
$('.chk-show-password').click(function(){
ipass = $('.bar-login .i-password');
sv_val = ipass.val();
if ( ipass.attr('type') == 'password' ) {
ipass.attr('type', 'text');
} else {
ipass.attr('type', 'password');
}
ipass.val(sv_val);
});
$('.bar-login form').on('submit', function(){
event.preventDefault();
})
// Нажатие кнопки "Вход" во вкладке Бригадирка в офисе
$('.bar-login div[data-tab="web-office"] .act-login').click(function(){
$('.loader').show();
$('.bar-login .response').html('').hide();
$('.bar-user').hide();
$.ajax({
url: base_url + '/handler/login/do-login.php',
type: "POST",
data: {
user_key: $('.bar-login .i-user_key').val(),
password: $('.bar-login .i-password').val()
},
cache: false,
statusCode: {
401: function() { document.location.href = base_url; }
},
success: function(json){
$('.loader').hide();
$('.bar-login .response').html('').hide();
var data = $.parseJSON(json);
if ( parseInt(data.result) < 0) {
// Ошибка
$('.bar-login .response').attr('data-type', 'res-error');
$('.bar-login .response').html(data.message).show();
} else if (data.result == 11) {
// Выслан СМС, подготовить форму под прием кода доступа
$('.bar-login .response').attr('data-type', 'res-ok');
$('.bar-login .response').html(data.message).show();
$('.bar-login .bar-login-password').hide();
$('.bar-login .bar-login_code').show();
$('.bar-login .i-login_code').focus();
} else {
// Авторизация успешно завершена
// Отображаем параметры партнера и пользователя
$('.bar-user .date_today').html(data.today_str).css('color', data.today_color);
$('.bar-user .partner_name').html(data.partner_name);
$('.bar-user .actor_title').html(data.actor_title);
$('.bar-user .actor_name').html(data.actor_name);
// Аватар
$('.bar-user .avatar-div').hide();
$('.bar-user .avatar-img').hide();
if (data.actor_avatar != ''){
$('.bar-user .avatar-img').attr( 'src', work_base_url + '/data/actor/' + data.partner_id + '/' + data.actor_avatar ).show();
} else {
$('.bar-user .avatar-div').show()
}
// Отображаем галерею
$('.bar-login .bar-login-password').hide();
$('.bar-login .response').html('').hide();
$('.bar-input-login').hide();
$('.trademark-slogan').hide();
loadNextArtwork();
}
}
});
});
// Нажатие кнопки Обновить картину в Художественной Галерее
$('.bar-artwork .act-reload-artwork').click(function(){
loadNextArtwork();
});
// Получить данные по следующей в галерее artwork (ID и пр)
function loadNextArtwork(){
var time = 2000;
$.ajax({
url: base_url + '/handler/artwork/get-artwork.php',
type: "POST",
data: {
last_artwork_id: localStorage['last_artwork_id']
},
cache: false,
statusCode: {
401: function() { document.location.href = base_url; }
},
success: function(json){
var data = $.parseJSON(json);
localStorage['last_artwork_id'] = data.id;
$('.bar-artwork .preload-img').attr( 'src', '/img/artwork/' + data.file_name );
$('.bar-artwork .act-reload-artwork').css('color', 'white');
// Опускаем занавес
$('.bar-artwork').fadeOut(time/4, function() {
// Занавес опустили - меняем декорации )
$('.bar-artwork .author_name').html( data.author_name );
var artwork_title_full = ( data.create_date_yyyy )? data.title + ' ' + data.create_date_yyyy + '' : data.title;
$('.bar-artwork .title-full').html( artwork_title_full );
$('.bar-artwork .artwork-img').attr( 'src', '/img/artwork/' + data.file_name );
$('.bar-artwork .artwork-img').attr( 'title', data.author_name + ', ' + data.title );
switch (data.direction){
case 'horizontal':
$('.bar-artwork .box-artwork').css( 'width', '600px' );
break;
case 'vertical':
$('.bar-artwork .box-artwork').css( 'width', '400px' );
break;
}
// Поднимаем занавес
$(this).fadeIn(time, function(){
$('.bar-user').fadeIn( time/1.5 );
});
});
}
});
}
// Нажатие кнопки Продолжить в Художественной Галерее (завершить вход в систему)
$('.bar-user .act-complete-login').click(function(){
window.location = base_url;
});
// Нажатие кнопки выслать Код доступа
$('.bar-login div[data-tab="web-office"] .act-put-login_code').click(function(){
$('.loader').show();
$('.bar-login .response').html('').hide();
$.ajax({
url: base_url + '/handler/login/check-login_code.php',
type: "POST",
data: {
login_code: $('.bar-login .i-login_code').val()
},
cache: false,
statusCode: {
401: function() { document.location.href = base_url;}
},
success: function(json){
$('.loader').hide();
//console.log(json);
data = $.parseJSON(json);
if ( parseInt(data.result) < 0 ) {
// Ошибка
$('.bar-login .response').html(data.message).attr('data-type', 'res-error').show();
} else if (data.result == 12) {
$('.bar-login .bar-login_code').hide();
$('.bar-login .response').html('').hide();
// Авторизация завершена, переход в рабочий режим
window.location = data.location;
}
}
});
});
/*
// Нажатие кнопки выслать Дополнительный Логин
$('.bar-login div[data-tab="web-office"] .act-put-login_add').click(function(){
$('.loader').show();
$('.bar-login .response').html('').hide();
$.ajax({
url: base_url + '/handler/login/check-login_add.php',
type: "POST",
data: {
login_add: $('.bar-login .i-login_add').val()
},
cache: false,
statusCode: {
401: function() { document.location.href = base_url;}
},
success: function(json){
$('.loader').hide();
//console.log(json);
data = $.parseJSON(json);
if ( parseInt(data.result) < 0 ) {
// Ошибка
$('.bar-login .response').html(data.message).attr('data-type', 'res-error').show();
} else if (data.result == 12) {
$('.bar-login .bar-login_code').hide();
$('.bar-login .response').html('').hide();
// Авторизация завершена, переход в рабочий режим
window.location = data.location;
}
}
});
});
*/
// Нажатие кнопки "Выход"
$('.act-logout').click(function(){
console.log('Logout...');
$.ajax({
url: base_url + '/handler/login/logout.php',
type: "POST",
cache: false,
statusCode: {
401: function() { document.location.href = base_url; }
},
success: function(){
window.location = '/';
}
});
});
// ЛИЧНЫЙ КАБИНЕТ
/*
function showLoginForm(){
if ( !$('form').is('.form-login') ) return;
$('.lk .i-login-phone_customer').val('');
}
*/
// Нажатие кнопки "Вход" во вкладке Личный кабинет клиента
$('.bar-login div[data-tab="web-lk"] .act-login').click(function(){
do_login(
'phone_agreement',
$('.bar-login .i-login-agreement_num').val(),
$('.bar-login .i-login-phone_customer').val()
);
});
// Авторизация
function do_login( v_action, v_agreement_num, v_phone_customer ){
$('.bar-login .response').html('').attr('data-type', '').hide();
$.ajax({
url: base_url + '/lk/handler/do-login.php',
cache: false,
type: "POST",
data: {
// здесь session_id - не нужен! т.к. выполняется новая авторизация
action: v_action,
agreement_num: v_agreement_num,
phone_customer: v_phone_customer
},
statusCode: {
401: function() { loadLK();}
},
success: function(json){
var data = $.parseJSON(json);
if (data.result < 0) {
// Ошибка авторизации
sessionStorage.setItem('lk_brigadirka_session_id', '');
$('.bar-login .response').html(data.message).attr('data-type', 'res-error').show();
switch (data.result){
case -1:
$('.bar-login .i-login-phone_customer').focus();
break;
case -2:
$('.bar-login .i-login-agreement_num').focus();
break;
}
} else {
// Авторизация успешная
sessionStorage['lk_brigadirka_session_id'] = data.session_id;
sessionStorage['lk_brigadirka_task_id'] = data.task_id;
$('.bar-login .response').html('').hide();
// Авторизация завершена, переход в рабочий режим
window.location = data.location;
loadLK();
}
}
});
}
// Действие по входе
showAds('login');
$('.loader').center();
// Фокусируем форму входа
if ( $('div').is('.bar-login') ) {
$('.bar-welcome').hide();
$('.loader').hide();
// Нажатие на вкладку "Бригадирка в офисе"
$('.bar-login div[data-tab="web-office"]').click();
$('.bar-login-password .i-user_key').focus();
// Проверка наличия в урле параметра lk и переход на вкладку ЛК при наличии
var url_string = window.location.href;
var url = new URL(url_string);
var url_search = url.search;
if (url_search.indexOf('lk') != -1) {
// Переключить вкладку на Личный кабинет
var tab = $('.bar-login .tab[data-tab="web-lk"]');
tab.click();
};
};
// Нажатие кнопки Обновить картину в Художественной Галерее
$('.bar-artwork .act-reload-artwork').click(function(){
loadNextArtwork();
});
// Получить данные по следующей в галерее artwork (ID и пр)
function loadNextArtwork(){
var time = 2000;
$.ajax({
url: base_url + '/handler/artwork/get-artwork.php',
type: "POST",
data: {
last_artwork_id: localStorage['last_artwork_id']
},
cache: false,
statusCode: {
401: function() { document.location.href = base_url; }
},
success: function(json){
var data = $.parseJSON(json);
localStorage['last_artwork_id'] = data.id;
$('.bar-artwork .preload-img').attr( 'src', '/img/artwork/' + data.file_name );
$('.bar-artwork .act-reload-artwork').css('color', 'white');
// Опускаем занавес
$('.bar-artwork').fadeOut(time/4, function() {
// Занавес опустили - меняем декорации )
$('.bar-artwork .author_name').html( data.author_name );
var artwork_title_full = ( data.create_date_yyyy )? data.title + ' ' + data.create_date_yyyy + '' : data.title;
$('.bar-artwork .title-full').html( artwork_title_full );
$('.bar-artwork .artwork-img').attr( 'src', '/img/artwork/' + data.file_name );
$('.bar-artwork .artwork-img').attr( 'title', data.author_name + ', ' + data.title );
switch (data.direction){
case 'horizontal':
$('.bar-artwork .box-artwork').css( 'width', '600px' );
break;
case 'vertical':
$('.bar-artwork .box-artwork').css( 'width', '400px' );
break;
}
// Поднимаем занавес
$(this).fadeIn(time, function(){
$('.bar-user').fadeIn( time/1.5 );
});
});
}
});
}/*
// Показать форму Напишите нам
function showMessageForm(){
$('.partner-form .message-field-set').show();
$('.partner-form input, .partner-form textarea').val('');
$('.partner-form .response').html('').attr('data-type', '').hide();
$('.partner-form .i-board').val('JOIN');
$('.partner-form .act-post-message').show();
//adjustMessageForm();
$('.partner-form').show().center();
$('.partner-form .i-sender_name').focus();
}
$('.partner-form .i-board').change(function(){
adjustMessageForm();
});
function adjustMessageForm(){
switch ( $('.partner-form .i-board').val() ){
case 'JOIN':
$('.partner-form .bar-phone-email').show();
break;
default:
$('.partner-form .bar-phone-email').hide();
break;
}
}
// Клик - закрыть форму
$('.act-close-partner-form').click(function(){
$('.partner-form').hide();
});
*/
// Клик - Отправить сообщение
$('.partner-form .act-post-partner-form').click(function(){
$('.partner-form .response').html('').attr('data-type', '').hide();
$('.loader').show();
$(this).css('visibility', 'none');
$.ajax({
url: base_url + '/handler/partner/post-partner-form.php',
cache: false,
type: "POST",
dataType: "json",
data: {
// board: $('.partner-form .i-board').val(),
sender_name: $('.partner-form .i-sender_name').val(),
phone_email: $('.partner-form .i-phone_email').val(),
web: $('.partner-form .i-web').val(),
comment: $('.partner-form .i-comment').val()
},
statusCode: {
401: function() { document.location.href = base_url; }
},
success: function( data ){
$('.loader').hide();
$('.partner-form .act-post-partner-form').css('visibility', 'block');
if ( data.result < 0 ) {
$('.partner-form .response').html(data.message).attr('data-type', 'res-error').show();
switch (data.result){
case -1:
// $('.partner-form .i-sender_name').css('background-color', 'red').animate({ backgroundColor: "white" }, 1000 ).focus();
$('.partner-form .i-sender_name').focus();
break;
case -2:
// $('.partner-form .i-phone_email').css('background-color', 'red').animate({ backgroundColor: "white" }, 1000 ).focus();
$('.partner-form .i-phone_email').focus();
break;
}
} else {
$('.partner-form .message-field-set').hide();
$('.partner-form .response').html(data.message).attr('data-type', 'res-ok').show();
$('.partner-form .act-post-partner-form').hide();
}
}
});
});
/*
// Показать форму объявления
function showAdvForm(v_adv_id){
$('.adv-form .response').html('').attr('data-type', '').hide();
if (v_adv_id != null){
// Редактирование существующего объявления
$('.adv-form h1').html('Редактировать объявление');
$('.adv-form .d-action').val('edit');
$('.loader').show();
$.ajax({
url: base_url + '/handler/adv/get-adv.php',
cache: false,
type: "POST",
dataType: "json",
data: {
adv_id: v_adv_id
},
statusCode: {
401: function() { document.location.href = base_url; }
},
success: function( data ){
$('.loader').hide();
$('.adv-form .d-adv_id').val( data.adv_id );
if ( data.partner_id > 0 ){
$('.adv-form .i-global-adv').prop('checked', false);
} else {
$('.adv-form .i-global-adv').prop('checked', true);
}
$('.adv-form .i-body').val( data.adv_body );
$('.adv-form').show().center();
}
});
} else {
// Создание нового объявления
$('.adv-form h1').html('Новое объявление');
$('.adv-form .d-action').val('add');
$('.adv-form .i-global-adv').prop('checked', false);
$('.adv-form .d-adv_id').val('');
$('.adv-form .i-body').val('');
$('.adv-form').show().center();
}
}
// Закрыть форму объявления
$('.adv-form .act-close-adv-form').click(function(){
$('.adv-form').hide();
});
// Сохранить объявление
$('.adv-form .act-put-adv').click(function(){
putAdv();
});
// "Я прочитал объявление"
function readAdv(z_adv_id){
$('.loader').show();
$.ajax({
url: base_url + '/handler/adv/put-adv.php',
cache: false,
type: "POST",
data: {
action: 'read',
adv_id: z_adv_id
},
statusCode: {
401: function() { document.location.href = base_url; }
},
success: function(json){
$('.loader').hide();
showAdvList();
}
});
}
// Сохранить объявление
function putAdv(){
var z_adv_id = $('.adv-form .d-adv_id').val();
$('.loader').show();
$.ajax({
url: base_url + '/handler/adv/put-adv.php',
cache: false,
type: "POST",
data: {
action: $('.adv-form .d-action').val(),
adv_id: z_adv_id,
body: $('.adv-form .i-body').val(),
global_adv: $('.adv-form .i-global-adv').is(':checked')
},
statusCode: {
401: function() { document.location.href = base_url; }
},
success: function(json){
$('.loader').hide();
var data = $.parseJSON(json);
// Добавление действия - только внутри формы заказа
showAdvList();
$('.adv-form .act-close-adv-form').click();
}
});
}
*/// Клик - Сгенерироать QR коды
$('.lpa-data-form .act-post-lpa-data-form').click(function(){
$('.lpa-data-form .response').html('').attr('data-type', '').hide();
$('.loader').show();
$(this).css('visibility', 'none');
$.ajax({
url: base_url + '/handler/qr/post-lpa-data-form.php',
cache: false,
type: "POST",
dataType: "json",
data: {
lpa_data: $('.lpa-data-form .i-lpa-data').val()
},
statusCode: {
401: function() { document.location.href = base_url; }
},
success: function( data ){
$('.loader').hide();
$('.partner-form .act-post-lpa-data-form').css('visibility', 'block');
if ( data.result < 0 ) {
$('.partner-form .response').html(data.message).attr('data-type', 'res-error').show();
/*
switch (data.result){
case -1:
// $('.partner-form .i-sender_name').css('background-color', 'red').animate({ backgroundColor: "white" }, 1000 ).focus();
$('.partner-form .i-sender_name').focus();
break;
case -2:
// $('.partner-form .i-phone_email').css('background-color', 'red').animate({ backgroundColor: "white" }, 1000 ).focus();
$('.partner-form .i-phone_email').focus();
break;
}
*/
} else {
$('.lpa-data-form .response').html(data.message).attr('data-type', 'res-ok').show();
$('.lpa-data-form .act-post-partner-form').hide();
}
}
});
});var base_url = location.origin + "/welcome";
// Ресайз окна
$(window).resize(function () {
adjustScreenSize();
});
// Подстройка элементов интерфейса
function adjustScreenSize(){
var width = $('.welcome').width();
// Удаляем стили малого экрана
var elem = $("link[href^='" + base_url + "/css/style-screen-small.css']");
if ( elem ) { elem.remove(); }
// Удаляем стили большого экрана
var elem = $("link[href^='" + base_url + "/css/style-screen-big.css']");
if ( elem ) { elem.remove(); }
// Активируем стили экрана
if ( width < 900 ){
// Активируем стили малого экрана
$('.welcome .screen-small').show();
$('.welcome .screen-big').hide();
$( '', {
rel: "stylesheet",
type: "text/css",
href: base_url + '/css/style-screen-small.css'
}).appendTo("head");
} else {
$('.welcome .screen-small').hide();
$('.welcome .screen-big').show();
$( '', {
rel: "stylesheet",
type: "text/css",
href: base_url + '/css/style-screen-big.css'
}).appendTo("head");
// Удаляем стили малого экрана
var elem = $("link[href^='" + base_url + "/css/style-screen-small.css']");
if ( elem ) { elem.remove(); }
// Если стиль большого экрана еще отсутствует, подгружаем его
if ( !$("link[href^='" + base_url + "/css/style-screen-big.css']") ){
$( '', {
rel: "stylesheet",
type: "text/css",
href: base_url + '/css/style-screen-big.css'
}).appendTo("head");
}
}
}
$('.bar-cookie-warning .act-hide-cookie-warning').click(function(){
localStorage['cookie_agree'] = 'ok';
$('.bar-cookie-warning').hide('fast');
});
$('.act-show-cookie-agreement').click(function(){
$('.bar-cookie-warning').hide('fast');
});
// Объявление вверху сайта WELCOME
function showAds(v_site){
}
if ( localStorage['cookie_agree'] != 'ok' ){
$('.bar-cookie-warning').show();
}
// Объявление
showAds('welcome');
adjustScreenSize();
$('.loader').center();
});