/**
* @todo: пожалуйста пишите в подобном стиле!!!!
*/
$(document).ready(function(){
/**
* Login button On main page
*/
$('#login').click(GlobalHovers.loginClick);
$('#register').click(GlobalHovers.registerClick);
$('div#login-pupup,div.popup-close').die().live('click', GlobalHovers.loginCloseClick);
$('ul.ajax-tab li').click(GlobalHovers.mainPageTabs);
$('div.ico-print').click(GlobalHovers.printClick);
$('a#reminder_send').live("click", GlobalHovers.sendReminder);
// for news_all.tpl & news.tpl
$('.hbi-image.news-img-block').mouseenter(function(){
$('.dt', $(this)).show();
}).mouseleave(function(){
$('.dt', $(this)).hide();
});
$('.hb-item a.news-list-link').mouseenter(function(){
$(this).parents('.hb-item').find('.dt').show();
}).mouseleave(function(){
$(this).parents('.hb-item').find('.dt').hide();
})
});
var onLoad = function(e){
$('.print_title_m').html($('.h-block .hb-head span').html());
var temp = $('.hb-content').html();
$('#print_content').html(temp);
}
var GlobalHovers = new Function();
GlobalHovers.loginClick = function(){
Popup.load('login');
$('#registration_popup').live('click', GlobalHovers.registerClick);
}
GlobalHovers.loginCloseClick = function(){
Popup.removePopup();
}
GlobalHovers.sendReminder = function(){
Popup.load('reminder_send');
}
function refreshCaptcha(){
d=new Date();
$('#kсaptcha').attr('src', '');
$('#kсaptcha').attr('src', '/kcaptcha/?rnd='+d.getTime());
return false;
}
function isValidEmailAddress(emailAddress) {
var pattern = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
return pattern.test(emailAddress);
}
GlobalHovers.sendMailReminder = function(email){
var s = '<div class="form-errors form-errors-list"><ul class="errors"><li><b>';
var f = '</b></li></ul></div>';
if(!isValidEmailAddress(email)){
$("#errors").html(s+'Вы ввели не корректный Email'+f);
return;
}
var params = {
email:email
}
$.ajax({
url: '/auth/reminder',
data: params,
async: false,
dataType: 'json',
success: function(data){
if(data.body['message'] == "OK"){
$('#remind_text').html("<div>На указаный email, было отправлено письмо с инструкцией о восстановлении пароля.</div>");
//GlobalHovers.loginCloseClick();
}else{
$("#errors").html(s+'Вы не зарегистрированы в данной системе'+f);
}
}
});
}
Onair = {
setTimeout: function(interval) {
//console.warn(interval);
if(interval<=0) {
interval = 600;
}
setTimeout(this.update, interval*1000);
},
update: function() {
$.post('/help/getonair', function(data){
// Если не загружено "Сейча в эфире" для текщего времени, то ставим таймер на 5 минут чтобы переспросить сервер через это время
var timeout = 300;
if(data.body.onair) {
if(data.body.onair.timeout) {
timeout = data.body.onair.timeout+1;
$(".play-efir #pe-title").attr("title", data.body.onair.song);
$(".play-efir #pe-title").html(data.body.onair.song);
}
else {
$(".play-efir #pe-title").attr("title", ' - ');
$(".play-efir #pe-title").html(' - ');
}
}
//console.log(timeout);
Onair.setTimeout(timeout);
}, "json");
}
}
GlobalHovers.registerClick = function(){
Popup.load('register');
}
GlobalHovers.printClick = function(){
window.print();
}
GlobalHovers.mainPageTabs = function(){
var oParent = $(this).parents('.h-block');
var iItem = $(this).attr('item');
var tab = $(oParent).attr('id');
$('ul.tabs li', oParent).removeClass('tab-current');
$(this).addClass('tab-current');
var clickedPage = $('#tab-'+iItem, oParent);
$('.tab-page', oParent).removeClass('tab-page-current');
if($(this).hasClass('loaded'))
{
$('.tab-page:not(.tab-page-current)', oParent).hide();
clickedPage.show();
}
else
{
var _this = this;
$.ajax({
type: 'POST',
url: '/index/ajax-tab',
data: { type : iItem ,tab:tab},
success: function(data){
if(data.status=='OK' && data.body.content)
{
clickedPage.append(data.body.content);
clickedPage.addClass('tab-page-current')
$(_this).addClass('loaded');
}
clickedPage.show();
$('.tab-page:not(.tab-page-current)', oParent).hide();
},
dataType: 'json'
});
}
}
/**
* ================== выше этой линии не пиши свой код, а ты ниже=========================
*/
var submenuTimeOut;
$(document).ready(function(){
if($.browser.msie && $.browser.version < 9.0 && window.PIE){
applyCSS3();
}
/*
$('ul.tabs li').click(function(){
var oParent = $(this).parents('.h-block');
var iItem = $(this).attr('item');
$('ul.tabs li', oParent).removeClass('tab-current');
$(this).addClass('tab-current');
$('.tab-page', oParent).removeClass('tab-page-current').hide();
$('#tab-page-'+iItem, oParent).show();
});
*/
$('.star').hover(
function(){
var parentObj = $(this).parents('.stars');
$('.star', $(parentObj)).removeClass('star_hovered');
$(this).addClass('star_hovered');
$(this).prevAll().addClass('star_hovered');
},
function(){
var parentObj = $(this).parents('.stars');
$('.star', $(parentObj)).removeClass('star_hovered');
}
);
$('.artists_menu_tab').hover(
function(){
if($('.sub-menu').size()==0) $('.menu-top').addClass('menu-top_nobr');
$('.artists_menu').show();
},
function(){
if($('.sub-menu').size()==0) $('.menu-top').removeClass('menu-top_nobr');
$('.artists_menu').hide();
}
);
$('.artists_menu').hover(
function(){
if($('.sub-menu').size()==0) $('.menu-top').addClass('menu-top_nobr');
$('.artists_menu').show();
},
function(){
if($('.sub-menu').size()==0) $('.menu-top').removeClass('menu-top_nobr');
$('.artists_menu').hide();
}
);
$('.star').click(function(){
var parentObj = $(this).parents('.stars');
$('.star',$(parentObj)).removeClass('star_hovered')
$(this).addClass('star_hovered');
$(this).prevAll().addClass('star_hovered');
$('.star', $(parentObj)).unbind();
});
$('.btn-login', '.comments').click(function(){
$('#login').click();
});
$('.m-item-a').hover(function(){
clearTimeout(submenuTimeOut);
var par = $(this).parent();
$('.m-item').removeClass('m-item-hover');
par.addClass('m-item-hover');
},function(data){
submenuTimeOut = setTimeout(function(){
$('.m-item').removeClass('m-item-hover');
}, 500);
});
$('.menu2').hover(function(){
clearTimeout(submenuTimeOut);
},function(data){
submenuTimeOut = setTimeout(function(){
$('.m-item').removeClass('m-item-hover');
}, 500);
})
//Onair.setTimeout(5);
});
var Artists = {
getArtistsByLetter:function(obj, char, page, en){
var page = page || 1;
if(obj){
$('.alph-item').removeClass('alph-item_hover');
$(obj).addClass('alph-item_hover');
}
var data = {};
if(char) data['char'] = char;
if(page) data['page'] = page;
if(en) data['en'] = en;
$.post('/artist/ajax', data, function(data){
$('#artists_list_content').html(data.body.list);
$('#artist_menu_paginator').html(data.body.paginator);
}, 'json');
}
}
function tabPhoneNumber(code){
if(code.length == 3){
$('#phone_number').focus();
}
}
function sendInteractiveIndex()
{
var auth = $("form#interactive_index").find('input.name').val();
var text = $("form#interactive_index").find('textarea').val();
var code = $("form#interactive_index").find('#code').val();
var textarea = $("form#interactive_index").find('textarea');
var notify_placeholder = $('.notify-placeholder', '#interactive_index');
notify_placeholder.hide();
notify_placeholder.html('');
if(auth.length < 1){
notify_placeholder.html('Вы не авторизованы и поэтому не можете отправить это сообщение.');
notifyPlaceHolderIndex(notify_placeholder, textarea, null, text);
return;
}
if(text.length > 250){
notify_placeholder.html('Вы привысили лимит символов');
notifyPlaceHolderIndex(notify_placeholder, textarea, null, text);
return;
}
if(text.length < 2){
notify_placeholder.html('Вы не ввели текст');
notifyPlaceHolderIndex(notify_placeholder, textarea, null, text);
return;
}
var params = {
auth:auth,
text:text,
code:code
}
$.ajax({
url: '/interactive/sendindex',
data: params,
async: false,
dataType: 'json',
type:"POST",
success: function(data){
//alert(print_r(data.body[0]['code']));
if(data.body['status'] == 1){
notify_placeholder.html('Спасибо! Ваше сообщение отправлено на модерацию.');
}else if(data.body['status'] == 2){
notify_placeholder.html('Сервис временно не доступен.');
}else if(data.body['status'] == 3){
notify_placeholder.html('<span class="err_upper">ВЫ ПРЕВЫСИЛИ ЛИМИТ.</span> Не более 3х сообщений в течение 30 минут.');
}else if(data.body[0]['code']['CaptchaInvalid']){
notify_placeholder.html(data.body[0]['code']['CaptchaInvalid']);
}else if(data.body[0]['code']['isEmpty']){
notify_placeholder.html('Необходимо ввести текст с картинки');
}
notifyPlaceHolderIndex(notify_placeholder, textarea ,data, text);
notify_placeholder.click(function(){
$(this).hide();
$('textarea', '#interactive_index').click();
});
}
});
}
function notifyPlaceHolderIndex(notify_placeholder, textarea, data, text){
$('#kсaptcha').attr('src', '/kcaptcha/?rnd=1234?'+(new Date().getTime()));
$("form#interactive_index").find('#code').val("");
textarea.val(" ");
if(notify_placeholder!='' && data){
$('textarea', '#interactive_index').removeAttr('placehilder');
notify_placeholder.show();
setTimeout(function(){
if(data.body['status']){
notify_placeholder.hide();
textarea.val("");
}else if(data.body[0]['code']){
notify_placeholder.hide();
textarea.val(text);
}
},6000)
}else{
$('textarea', '#interactive_index').removeAttr('placehilder');
notify_placeholder.show();
setTimeout(function(){
notify_placeholder.hide();
textarea.val(text);
},6000)
}
}
function print_r(arr, level) {
var print_red_text = "";
if(!level) level = 0;
var level_padding = "";
for(var j=0; j<level+1; j++) level_padding += " ";
if(typeof(arr) == 'object') {
for(var item in arr) {
var value = arr[item];
if(typeof(value) == 'object') {
print_red_text += level_padding + "'" + item + "' :\n";
print_red_text += print_r(value,level+1);
}
else
print_red_text += level_padding + "'" + item + "' => \"" + value + "\"\n";
}
}
else print_red_text = "===>"+arr+"<===("+typeof(arr)+")";
return print_red_text;
}
function applyCSS3(){
$('.rounded, .red-btn, .hb-head, .heads, .menu-top, .sc_item_right, .sc_item, .h-block, .sub-menu, .find_form, .tabs li a, .tabs li.tab-current a, .tabs1 li a, .tabs1 li.tab-current a, .band div.play-efir .pe-head, .paginator a.current, .btn-send, .custom-input').each(function(){
PIE.attach(this);
});
}
RatingHand = {
param:{object_type:null,object_id : null,substance : null, value:null},
init:function(val, obj){
//Сохраняем значения в объект
this.param.object_id = obj.parent("#hand_rating").find(':input[name="object_id"]').val();
this.param.object_type = obj.parent("#hand_rating").find(':input[name="object_type"]').val();
this.param.substance = obj.parent("#hand_rating").find(':input[name="substance"]').val();
this.param.value = val;
},send:function(val,obj,user){
this.init(val, obj);
if(!user){
obj.parent("#hand_rating").find('.status_message_hand').text("Только для зарегистрированных!");
obj.parent("#hand_rating").find('.status_message_hand').css("color","red");
obj.parent("#hand_rating").find('.status_message_hand').css("margin-left","100px");
return;
}
for(var key in this.param){
if(!this.param[key]){
alert('Ошибка!!! Ни все параметры были проинициализированы.');
return;
}
}
$.ajax({
url: '/rating/hand',
data: this.param,
async: false,
dataType: 'json',
type:"POST",
success: function(data){
if(data.rating > 0){
obj.css('background','url(/images/hand_black.png) no-repeat center');
obj.attr("onclick", " ");
obj.css("cursor","default");
//obj.parent("#hand_rating").css('margin-left', '-10px');
obj.parent("#hand_rating").find('.status_message_hand').text("Спасибо, Ваш голос учтен!");
obj.parent("#hand_rating").find('.handrating_chislo').css("display","block");
obj.parent("#hand_rating").find('.handrating_chislo').text(data.rating);
obj.css("margin-left","55px");
}else{
obj.attr("onclick", " ");
obj.css("cursor","default");
obj.parent("#hand_rating").find('.status_message_hand').text('Извините, Вы уже голосовали!');
obj.parent("#hand_rating").find('.status_message_hand').css("color","red");
//obj.parent("#hand_rating").find('.status_message_hand').css("margin-left","80px");
}
}
});
//alert(this.param.object_id+' / '+this.param.object_type+' / '+this.param.substance+" / "+this.param.value);
}
}
/*etyulenev object*/
/*
* Объект должен отправлять комментарии в контакт
*
* */
SocMessage = {
vk_mid:null, //profile_id vk
vk_sig:null,
vk_sid:null,
vk_expire:null,
vk_secret:null,
title:"",
message:"",
authType:"",
init:function(/*Инициализация должна принимать сообщение которое объект должен отправить*/message){
this.message = message;
this.fb_title = document.title;
if(this.authType == "http://v...content-available-to-author-only...e.ru/"){
VK.Auth.getLoginStatus(function(response) {
if (response.session){
/* Авторизованный в Open API пользователь */
/*Инициализация элементов пользователя, записывает данные в объект для удобства*/
for(var key in response.session){
eval("SocMessage.vk_"+key+"='"+response.session[key]+"'");
}
SocMessage.VkSend();
} else {
/* Неавторизованный в Open API пользователь */
SocMessage.Vklogin();
}
});
}else{
this.facebook();
}
},
Vklogin:function(){
VK.Auth.login(function(response) {
if (response.session) {
//alert("Пользователь успешно авторизовался");
//После того как мы залогинились, снова пытаемся отправить сообщение в vk
SocMessage.init(SocMessage.message);
if (response.settings) {
//alert("Выбранные настройки доступа пользователя, если они были запрошены");
}
} else {
//alert("Пользователь нажал кнопку Отмена в окне авторизации");
}
});
},
VkSend: function(){
this.request( "wall.post"/*"comments.post"*/,
{
message: this.message,//, текст сообщения
//attachments: "photo-22186156_196620153,http://"+location.host+"/?ad_com=5621&utm_source=Vkontakte.ru&utm_medium=registration"
attachments: window.location.href
},
function(response2)
{
//Возвращает статус типа proccesing:1
//alert(print_r(response2));
});
},
request: function(method, params, cbFunc){
t = this;
params.test_mode = 1;
VK.api(method, params, function(data){
lastResponse = data;
if(data.error){
//alert("ERROR: " + data.error.error_msg);
data = [];
} else {
data = data.response;
}
//t.cache[key] = data;
cbFunc(data);
}, function(){
//alert(1)
});
},
facebook: function(){
//Инициализация скриптов для работы с FB находится в /application/layout/layout.tpl
//Картинка для записи
var meta_og_image = $("meta#og_image").attr('content');
FB.ui({
method: 'stream.publish',display:'popup',
message: 'getting educated about Facebook Connect',
attachment: {
name: SocMessage.fb_title,
caption: 'europaplustv.com',
description: (this.message),
'media': [{ 'type': 'image',
'src': meta_og_image,
'href': meta_og_image}],
href: 'http://g...content-available-to-author-only...b.com/facebook/connect-js'
},
action_links: [
{ text: 'Code', href: 'http://g...content-available-to-author-only...b.com/facebook/connect-js' }
],
user_message_prompt: 'Share your thoughts about Connect'
},
function(response) {
if (response && response.post_id) {
//Комментарий опубликован.
} else {
//Комментарий не опубликован.
}
}
);
}
}
function isNotMax(oTextArea) {
return oTextArea.value.length <= oTextArea.getAttribute('maxlength');
}