function blog_joinleave(blog_id) {
        var el = $('#blog_joinleave'+blog_id);
        var action = '';
        
        if (el.hasClass('checked'))
            action = 'leave';
        else
            action = 'join';

        $.ajax({
            url: '/'+blog_id+'/'+action+'/',
            dataType: 'json',
            success: function(data){

                if (action=='join')
                {
                    el.addClass('checked');

                }
                else
                {
                    el.removeClass('checked');
                }

                if (data.error)
                {
                    $.jGrowl(data.error);
                }
                else
                    $.jGrowl(data.message);
            }
        });

    }


function init_gallery_upload(script, scriptData) {
    var photoList = $('.photo_list');
    var photoInput = $('#id_photo_input');

    $('#id_photo_upload').uploadify({
        'uploader': '/static/vendors/uploadify/uploadify.swf',
        'buttonImg': '/static/site/img/btn_upload.jpg',
        'script': script,
        'scriptData': scriptData,
        'multi': true,
        'auto': true,
        'fileDesc': 'Images',
        'fileExt': '*.jpg;*.jpeg;*.png;*.gif',
        'queueID': 'id_photo_select_queue',
        'onSelect': function(event, queueID, fileObj) {
            photoList.append('<div class="item uploadprogress"  id="img-'+queueID+'"> <img width="200" height="133" src="/static/site/img/blank.gif"  /> </div>');
        },
        'onComplete': function(event, queueID, fileObj, response, data) {
            var response = $.parseJSON(response);
            $.ajax({
                url: '/utils/image_thumbnail/?id='+response.id,
                dataType:'html',
                success: function(img){
                    var el=$('#img-'+queueID);
                    el.removeClass('uploadprogress');
                    el.html(img);

                    photoInput.append('<input type="hidden" name="images[]" value="'+response.id+'" />');
                }
            });
        },
        'onError': function(event, queueID, fileObj, errorObj) {
            alert(errorObj.info);
        }
    });
}

function setFavorite(el, entryId) {
    $.ajax({
        url: "/content/favorite/?entry_id="+entryId,
        dataType: 'json',
        success: function(data){
            el = $(el);
            if ( data.is_favorite ) {
                el.removeClass('no_forever');
                el.addClass('forever');
            }
            else {
                el.removeClass('forever');
                el.addClass('no_forever');
            }
            el.text(data.favorites);
        },
        error: function(jqXHR, textStatus, errorThrown){
            $.jGrowl('Чтобы добавить в избранное необходимо авторизоваться.');
        }
    });
    return false;
}

function trackVote(el, trackId, vote) {
    $.ajax({
        url: "/ajax/music/track_vote/?track_id="+trackId+'&vote='+vote,
        dataType: 'json',
        success: function(data){
            el = $(el).parent();
            var val = $('span.rait', el);


            if (data.score > 0) {
                val.html(data.score+' &uarr;');
                val.removeClass('red');
                val.addClass('green');
            }
            else if (data.score < 0) {
                val.html(data.score+' &darr;');
                val.removeClass('green');
                val.addClass('red');
            }
            else if (data.score == 0) {
                val.html(data.score);
                val.removeClass('green');
                val.removeClass('red');
            }
            if (data.message) {
                $.jGrowl(data.message);
            }
        },
        error: function(jqXHR, textStatus, errorThrown){
            $.jGrowl('Чтобы проголосовать необходимо авторизоваться.');
        }
    });
    return false;

}

function deleteComment(commentId) {
    $.ajax({
        url: "/comments/delete/"+commentId+"/",
        dataType: 'json',
        success: function(data){
            $('#comment_'+commentId).html('');

        },
        error: function(jqXHR, textStatus, errorThrown){
            $.jGrowl('Чтобы удалить комментарий необходимо авторизоваться.');
        }
    });
    return false;

}

function incorrectComment(commentId) {
    $.ajax({
        url: "/comments/incorrect/"+commentId+"/",
        dataType: 'json',
        success: function(data){
            if (data.comment_text) //если есть текст комментария значит операция его восстановления
            {
                $('#comment_content_'+commentId).html(data.comment_text);
                $('#incorrect_'+commentId).html('некорректен');
            }
            else
            {
                $('#comment_content_'+commentId).html('<span style="color:maroon;">Комментарий некорректен. Заблокировано администрацией.</span>');
                $('#incorrect_'+commentId).html('восстановить');
            }

        },
        error: function(jqXHR, textStatus, errorThrown){
            $.jGrowl('Чтобы пометить некорректный комментарий необходимо авторизоваться.');
        }
    });
    return false;

}

function blogVote(el, entryId, vote, tmpl) {
    $.ajax({
        url: "/ajax/vote/?entry_id="+entryId+'&vote='+vote,
        dataType: 'json',
        success: function(data){

            el = $(el).parent();
            var val = $('span.rait', el);


            if (data.score > 0) {
                val.html(data.score+' &uarr;');
                val.removeClass('red');
                val.addClass('green');
            }
            else if (data.score < 0) {
                val.html(data.score+' &darr;');
                val.removeClass('green');
                val.addClass('red');
            }
            else {
                val.html(data.score);
                val.removeClass('green');
                val.removeClass('red');
            }
            if (data.message) {
                $.jGrowl(data.message);
            }
        },
        error: function(jqXHR, textStatus, errorThrown){
            $.jGrowl('Чтобы проголосовать необходимо авторизоваться.');
        }
    });
    return false;
}
//TODO: тк как у нас крутая сейчас верстка, и голосовалки везде одинаковые убрать параметр tmpl
function contentVote(el, entryId, vote, tmpl) {
    $.ajax({
        url: "/ajax/content/vote/?entry_id="+entryId+'&vote='+vote,
        dataType: 'json',
        success: function(data){

            el = $(el).parent();
            var val = $('span.rait', el);

            if (data.score > 0) {
                val.html(data.score+' &uarr;');
                val.removeClass('red');
                val.addClass('green');
            }
            else if (data.score < 0) {
                val.html(data.score+' &darr;');
                val.removeClass('green');
                val.addClass('red');
            }
            else {
                val.html(data.score);
                val.removeClass('green');
                val.removeClass('red');
            }
            if (data.message) {
                $.jGrowl(data.message);
            }
        },
        error: function(jqXHR, textStatus, errorThrown){
            $.jGrowl('Чтобы проголосовать необходимо авторизоваться.');
        }
    });
    return false;
}

function kitchenVote(el, entryId, vote, tmpl) {
    $.ajax({
        url: "/ajax/kitchen/vote/?entry_id="+entryId+'&vote='+vote,
        dataType: 'json',
        success: function(data){

            el = $(el).parent();
            var val = $('span.rait', el);

            if (data.score > 0) {
                val.html(data.score+' &uarr;');
                val.removeClass('red');
                val.addClass('green');
            }
            else if (data.score < 0) {
                val.html(data.score+' &darr;');
                val.removeClass('green');
                val.addClass('red');
            }
            else {
                val.html(data.score);
                val.removeClass('green');
                val.removeClass('red');
            }
            if (data.message) {
                $.jGrowl(data.message);
            }
        },
        error: function(jqXHR, textStatus, errorThrown){
            $.jGrowl('Чтобы проголосовать необходимо авторизоваться.');
        }
    });
    return false;
}


function profileVote(el, userId, vote) {
    $.ajax({
        url: "/user/vote/?user_id="+userId+'&vote='+vote,
        dataType: 'json',
        success: function(data){
            el = $(el).parent();
            if (data.score){
                var val = $('span.rait', el);
                val.html(data.score);
            }
            if (data.message) {
                $.jGrowl(data.message);
            }
        }
    });
    return false;
}

function profileLoadAvatarFromNet(url){
    var currentSrc = $('#avatar_image').attr('src');
    var currentDisplay = $('#avatar').css('display');

    $('#avatar_place').css('display', 'block');
    $('#avatar_image').attr('src', '/static/site/images/upload_progress.gif');

    $.ajax({
        url: "/ajax/user/loadavatar/?url="+url,
        dataType: 'json',
        success: function(data){
            if(data.error){
                $.jGrowl(data.error);
                $('#avatar_image').attr('src', currentSrc);
                $('#avatar_place').css('display', currentDisplay);
            }else{
                $('#avatar_image').attr('src', data.url);
                $('#id_photo').val(data.url);
            }
        }
    });
    return false;
}

function profileDeleteAvatar(){
    $('#avatar_place').css('display', 'none');
    $('#id_photo_delete').val('1');
}



function commentVote(el, commentId, vote) {
    $.ajax({
        url: "/ajax/comments/vote/?comment_id="+commentId+'&vote='+vote,
        dataType: 'json',
        success: function(data){
            el = $(el).parent();
            if (data.score){
                var val = $('span.rait', el);

                if (data.score > 0) {
                    val.html(data.score+' &uarr;');
                    val.removeClass('red');
                    val.addClass('green');
                }
                else if (data.score < 0) {
                    val.html(data.score+' &darr;');
                    val.removeClass('green');
                    val.addClass('red');
                }
                else {
                    val.html(data.score);
                    val.removeClass('green');
                    val.removeClass('red');
                }
            }
            if (data.message) {
                $.jGrowl(data.message);
            }
        }
    });
    return false;
}
/* Функции работы с Cookie */
function setCookie( name, value, expires, path, domain, secure ) {
            var today = new Date();
            today.setTime( today.getTime() );

            if ( expires ) {
                expires = expires * 1000 * 60 * 60 * 24;
            }
            var expires_date = new Date( today.getTime() + (expires) );

            document.cookie = name + "=" +escape( value ) +
            ( ( expires ) ? ";expires=" + expires_date.toGMTString() : "" ) +
            ( ( path ) ? ";path=" + path : "" ) +
            ( ( domain ) ? ";domain=" + domain : "" ) +
            ( ( secure ) ? ";secure" : "" );
        }


function deleteCookie(cName) {
    document.cookie = cName + "=0;expires=1;domain=.only4men.ru;path=/";
}

function readCookie(cName) {
    var nameEQ = cName + "=";
    var ca = document.cookie.split(';');
    for(var i=0;i < ca.length;i++) {
        var c = ca[i];
        while (c.charAt(0)==' ') c = c.substring(1,c.length);
        if (c.indexOf(nameEQ) == 0) return parseInt(c.substring(nameEQ.length,c.length));
    }
    return 0;
}


/* Select All */
function selectAll(){
 $('.all .checkbox').click(function(){
  if($(this).is('.checked')){
   $(this).parent().parent().find('.scrollpane li').addClass('ui-selected');
   $(this).parent().parent().find('.scrollpane select option').attr('selected','selected')
  } else {
   $(this).parent().parent().find('.scrollpane li').removeClass('ui-selected');
   $(this).parent().parent().find('.scrollpane select option').removeAttr('selected')
  }
 });
}

function updateMultiSelect(id){
          var ul = $('#'+id).parent().find('ul');
          $('li',ul).remove();
          $('#'+id+' option').each(function(){
           ul.append('<li data-value="'+$(this).val()+'">'+$(this).text()+'</li>');
          });
          pane = $('#'+id).parent();
          pane.jScrollPaneRemove();
          pane.jScrollPane({scrollbarWidth:15, showArrows:true,scrollbarMargin:0});
          selectAll();
     }

function showOverlay() {
       if(!$("body").find("#TB_overlay").is("div")) /* если фон уже добавлен не добавляем повторно */
        {
            if(!$.browser.msie) /* если браузер не ИЕ фоном будет div */
                $("body").append("<div id='TB_overlay'></div>");
            else /* иначе добавляем iframe */
                $("body").append("<div id='TB_overlay'><iframe scrolling='no' frameborder='0' style='position: absolute; top: 0; left: 0; width: 100%; height: 100%; filter:alpha(opacity=0)'></iframe></div>");
        }
}


/*---- Код верстки --*/

$(function(){

//    $('input.quicksearch').quicksearch('.scrollpane ul li');
	
	$('body:not(.mainpage)').addClass('theme_'+Number(Math.floor(Math.random() * (5 - 1 + 1))+1));



	/*$('.tabs').tabs();*/
	
	/* Show More Text
	$('.hidden_wrap .pseudo').click(function(){
		p = $(this).parent().parent();
		if(p.is('.showed')){
			p.removeClass('showed');
			$(this).text('Показать текст целиком');
		} else {
			p.addClass('showed');
			$(this).text('Свернуть текст');
		}
		return false;
	})
  */
    
    $('#hide_text').click(function(){
		var truncated = $('#truncated_text');
        var full      = $('#full_text');

		if(truncated.is(':visible')){
			full.show();
            truncated.hide();
			$(this).text('Свернуть текст');
		} else {
			full.hide();
            truncated.show();
			$(this).text('Показать текст целиком');
		}
		return false;
	})

	
	 /* Forms Styles */
 checkbox_i = 0;
 $('input[type=checkbox]').each(function(){
  checkbox_i++;
  t = $(this);
  n = t.attr('name');
  n = n.replace('[]','');
  l = $('label[for='+n+']').text();
  $('label[for='+n+']').remove();
  t.removeAttr('id');
  if(t.is(':checked')){
   t.hide().wrap('<div class="checkbox checked" id="'+n+checkbox_i+'" />');
  } else {
   t.hide().wrap('<div class="checkbox" id="'+n+checkbox_i+'" />');
  }
  t.parent().append('<span></span><label>'+l+'</label><div class="clear"></div>');
 });
 $('input[type=radio]').each(function(){
  t = $(this);
  n = t.attr('name');
  n = n.replace('[]','');
  l = $('label[for='+n+']').text();
  $('label[for='+n+']').remove();
  t.removeAttr('id');
  t.hide().wrap('<div class="radio" id="'+n+'" />');
  if(t.is(':checked')){
   t.hide().wrap('<div class="radio checked" id="'+n+checkbox_i+'" />');
  } else {
   t.hide().wrap('<div class="radio" id="'+n+checkbox_i+'" />');
  }
  t.parent().append('<span></span><label>'+l+'</label><div class="clear"></div>');
 });
 $('.radio,.checkbox').click(function(){
  var t = $(this);
  if(t.is('.checked')){
   t.removeClass('checked');
   t.find('input').removeAttr('checked');
  } else {
   t.addClass('checked');
   t.find('input').attr('checked','checked');
  }
 })

	$('.file_input input').change(function(){
		$(this).parent().find('.selected').text($(this).val())
	})

	$('select').each(function(){
		t = $(this);
		n = $(this).attr('name');
		if(!t.attr('multiple')){
		    t.hide().wrap('<div class="select" id="'+n+'_field" />');
		    t.parent().append('<span class="selected">'+$('option:selected',t).text()+'</span>');
		} else {
		    t.hide().wrap('<div class="scrollpane" id="'+n+'" />');
		}
		t.parent().append('<ul>');
		ul = t.parent().find('ul');
		for(var i = 0; i < $('option',t).length; i++){
			opt = $('option:eq('+i+')',t);
			if(opt.is(':selected')){
				ul.append('<li data-value="'+opt.val()+'" class="ui-selected">'+opt.text()+'</li>');
			} else {
				ul.append('<li data-value="'+opt.val()+'">'+opt.text()+'</li>');
			}
		}
		if(!t.attr('multiple')){
		    $('li',ul).click(function(){
                $(this).parent().prev().prev('select').find('option:eq('+$(this).index()+')').attr('selected','selected');
            //    alert($(this).parent().prev().prev('select').find('option:eq('+$(this).index()+')').attr('selected','selected'));
		    //    $('option:eq('+$(this).index()+')').attr('selected','selected');
	        });
		}
	});

	$('.select').each(function(){
		if($('ul',this).width()+42 > $(this).width()){
		    $(this).width($('ul',this).width()+36);
		    $('ul',this).width($('ul',this).width()+39);
		} else {
			$('ul',this).width($(this).width()+3);
		}
		$('.selected',this).click(function(){

			if($(this).parent().is('.opened')){
				$(this).parent().removeClass('opened');
			} else {
				$('.select.opened').removeClass('opened')
				$(this).parent().addClass('opened');
			}
		})
		$('ul li',this).click(function(){
			$(this).parent().parent().removeClass('opened');
			$(this).parent().parent().find('.selected').text($(this).text())
		})
	});

	/* Show Hidden Comment */
	$('.comment.hide a.show').click(function(){
		$(this).parent().parent().parent().removeClass('hide');
		return false;
	})

	/* Add Gallery */
	$('#uploaded_images .item').hover(function(){
		$('.edit_panel',this).animate({'height':'34px'},250);
	},function(){
		$('.edit_panel',this).animate({'height':'0px'},250);
		$('#uploaded_images .image_comment').hide();
	});
	$('#uploaded_images .comment_icon').click(function(){
		$(this).parent().parent().find('.image_comment').show();
		return false;
	});


	$('.scrollpane').jScrollPane({scrollbarWidth:15, showArrows:true,scrollbarMargin:0});

    /* Select All */
	$('.all .checkbox').click(function(){
		if($(this).is('.checked')){
			$(this).parent().parent().find('.scrollpane li').addClass('ui-selected');
			$(this).parent().parent().find('.scrollpane select option').attr('selected','selected')
		} else {
			$(this).parent().parent().find('.scrollpane li').removeClass('ui-selected');
			$(this).parent().parent().find('.scrollpane select option').removeAttr('selected')
		}
	})

	$('.scrollpane ul:not(.deactive)').selectable({stop:function(event){
		$('.ui-selected',this).each(function() {
			var index = $(this).index();
			$(this).parent().prev('select').find('option:eq('+index+')').attr('selected','selected');
		});
		if($('li',this).length > $('li.ui-selected',this).length){
			$(this).parent().parent().prev('.all').find('.checkbox').removeClass('checked')
		}
	}});
	
	$('#show_advance').click(function(){
	    $(this).hide();
		$('#advanced_search').show();
	    $('.scrollpane').jScrollPane({scrollbarWidth:15, showArrows:true,scrollbarMargin:0});
		return false;
	})
	
	$('#hide_search').click(function(){
	    $('#show_advance').show();
		$('#advanced_search').hide();
		return false;
	})
	
	/* Mini Tabs Init */
	$('.mini_tabs').each(function(){
		var t = $(this);
		var a = $('a',this);
		var l = a.length;
		var tabs = '';
		
		if(t.is(':not(.deactive)')){
		
			for(var i = 0; i < l; i++){
				var curr = $('a:eq('+i+')',this);
				if(curr.attr('href') != '#'){
					tab = $(curr.attr('href'))
					curr.addClass('button'+i);
					if(curr.is('.active')){
						tab.show();
					} else {
						tab.hide();
					}
					tabs += curr.attr('href')+',';
				}
			}
			
			a.click(function(){
				if($(this).attr('href') != '#'){
					a.removeClass('active');
					$(this).addClass('active');
					$(tabs).hide();
					$($(this).attr('href')).show();
				}
				return false;
			})
		
		}
	});
	
	/* Avatar Upload */
	/*$('#avatar_upload input').change(function(){
		$('#avatar_place').removeClass('loading');
		$('#avatar_place').empty();
		if($(this).val())
		if($(this).is('#avatar_field_net')){
		    $('#avatar_field').val('');
		} else {
		    $('#avatar_field_net').val('');
		}
		$('#avatar_place').addClass('loading').append('<img src="'+$(this).val()+'" style="display:none">');
		$('#avatar_place img').load(function(){
			$('#avatar_place img').fadeIn();
			$('#avatar_place').removeClass('loading')
		})
	})*/
	
	$('#category a').click(function(){

		if($(this).attr('href') == '#nation'){
            
			$('#nation').show();
            showOverlay();



		} else {

			$('#territories').show();
            showOverlay();
		}
		return false;
	});
	
//	$('#nation,#territories').mouseleave(function(){
//		$(this).hide();
//		$('#category a').removeClass('active')
//	})
	
	
	$('#search_form input.txt').focus(function(){
        if($(this).val() == 'Введите слово для поиска'){
            $(this).val('').addClass('hilight');
        }
	});
	$('#search_form input.txt').blur(function(){
        if($(this).val() == ''){
            $(this).val('Введите слово для поиска').removeClass('hilight');
        }
    });
	$('.quick_search input.txt').focus(function(){
        if($(this).val() == 'Быстрый поиск'){
            $(this).val('').addClass('hilight');
        }
	});
	$('.quick_search input.txt').blur(function(){
        if($(this).val() == ''){
            $(this).val('Быстрый поиск').removeClass('hilight');
        }
    });
	
	/* Publish Button */
	$('#publish_button').click(function(){
		$('#publish_content').show();
	});

    $('#publish_button_txt').click(function(){
		$('#publish_content_txt').show();
	});
	
	/* Inwhite Friends Form */
	$('#inwhite_friends').click(function(){
	    var o = $('#inwhite_friends').offset();
	    var o2 = $('.inwhites').offset();
	    $('#inwhite_friends_wrap').css('top',Number(o.top-o2.top-8)+'px').show();
		return false;
    })
    $('#close_inwhite_friends').click(function(){
		$('#inwhite_friends_wrap').hide();
		return false;
	})

	/* Close all objects on outbox click */
	$(document).bind('mousedown',function(e){
		if ($(e.target).parents().filter('.select:visible').length != 1) {
            $('.select').removeClass('opened');
        }
		if ($(e.target).parents().filter('#inwhite_friends_wrap:visible').length != 1) {
            $('#inwhite_friends_wrap').hide();
        }
		if ($(e.target).parents().filter('#publish_content:visible').length != 1) {
            $('#publish_content').hide();
        }
        if ($(e.target).parents().filter('#publish_content_txt:visible').length != 1) {
            $('#publish_content_txt').hide();
        }
        if ($(e.target).parents().filter('#nation:visible').length != 1) {
            if($('#nation').is(":visible"))
                $('#nation').hide(function(){$('#TB_overlay').remove()});
        }
        if ($(e.target).parents().filter('#territories:visible').length != 1) {
            if($('#territories').is(":visible"))
                $('#territories').hide(function(){$('#TB_overlay').remove()});
        }


	})
	
});
