(function($) {
	$.fn.konami = function(callback, code) {
		if(code == undefined) code = "38,38,40,40,37,39,37,39,66,65";
		
		return this.each(function() {
			var kkeys = [];
			$(this).keydown(function(e){
				kkeys.push( e.keyCode );
				if ( kkeys.toString().indexOf( code ) >= 0 ){
					$(this).unbind('keydown', arguments.callee);
					callback(e);
				}
			}, true);
		});
	}

})(jQuery);
$(document).ready(function() {

	$.ajaxSetup ({
		        cache: false
	});

	$("#searchbutton").click(function() {
		document.forms.searchform.submit();
	});
	$(window).konami(function(){
		song='seinfeld.mid';
		if(navigator.userAgent.indexOf("MSIE") != -1)
			$("body").append('<BGSOUND SRC="'+song+'">');
			else {
			$("body").append('<EMBED SRC="'+song+'" AUTOSTART="true"  HIDDEN="true" VOLUME="80%">')
			}
	});
	$(".ratingselect").change(function() {
		songid = $(this).attr('rel');
		rating = $(this).val();
		$(".ratings").html("");
		$.post("vote.php", { "songid": songid, "rating": rating },
			 function(data){
			   $(".ratings").html(data);
			 }, "html");
	});	
	
    $(".must_login").fancybox({ href:'signup_login.php'
                              , padding:0
			      , onComplete: function(){
				      loginListener();
			      }
                              , onClosed: function() { 
                                    if ($.fancybox.logged_in) { 
                                        window.location = $.fancybox.proceed;
                                    }
                                }
                              });

    $(".must_login").click(function() {
        // k kliknemo na en link za kerga rabmo bit loginani
        // si u $.fancybox.precoeed zapomnemo kam je user hotu it da ga loh
        // pol tja fuknemo k se logina/signupa
        $.fancybox.proceed = $(this).attr('href');
    });

    $("#forum_newreply").submit(function(){
	    if($("[name=message]").val() == "")
	    {
		    $("#empty_error").show();
		    return false;
	    }

	    if($(this).hasClass("post_login"))
	    {
		    $.fancybox({ href:'signup_login.php'
                              , padding:0
                              , onComplete: function(){
                                      loginListener();
                              }
                              , onClosed: function() {
                                    if ($.fancybox.logged_in) {
					    $("#forum_newreply").removeClass("post_login");
					    $("[name=newreply]").click();
                                    }
                                }
                              });
		    return false;
	    }
    });

    $("#forum_newtopic").submit(function(){
            if(($("[name=message]").val() == "") || ($("[name=title]").val() == ""))
            {
                    $("#empty_error").show();
                    return false;
            }
    });

    $("[name=preview]").click(function(){
	    podatki = $(this).parent().serialize();

	    $.post("preview.php", podatki, function(html){
		    $.fancybox(html);
		    $.fancybox.resize();
	    });

    });

    $(".message_report_act").click(function(){
	    obj = $(this);
	    $.post("report.php", { id: $(this).attr('rel') }, function(){
		    obj.parent().html('<span class="message_reported">Reported.</span>');
	    });
    });

    function loginListener()
    {
	    $("#login_form").submit(function(){
		    valid = true;

		    $.ajax({
			    type: "POST",
			    url: "login.php",
			    data: $("#login_form").serialize(),
			    success: function(html)
			    {
				    if(html == "0")
				    {
					    $.fancybox.logged_in = true;
					    $.fancybox.close();
				    }
				    else
				    {
					    $("#wrong_pass").show();
					    $("[name=password]").val("");
					    $.fancybox.resize();
				    }
			    }
		    });
		    return false;
	    });

	    $("#register_form").submit(function(){
		    valid = true;

		    uname = $("[name=rusername]").val();
		    pass = $("[name=rpassword]").val();
		    rpass = $("[name=repeat_password]").val();
		    email = $("[name=email]").val();

		    $.ajax({
			    type: "POST",
			    url: "checkuser.php",
			    data: { username: $("[name=rusername]").val() },
			    success: function(html)
			    {
				    if(html != "0")
				    {
					    valid = false;
					    $("#taken_error").show();
					    $.fancybox.resize();
				    }
				    else
				    {
					    $("#taken_error").hide();
					    $.fancybox.resize();
				    }
			    },
			    async: false
		    });

		    if((uname == "") || (pass == "") || (rpass == ""))
		    {
			    valid = false;
			    $("#missing_error").show();
			    $.fancybox.resize();
		    }

		    if(pass != rpass)
		    {
			    valid = false;
			    $("#mismatch_error").show();
			    $.fancybox.resize();
		    }

		    if(valid)
		    {
			    $.ajax({
				    type: "POST",
				    url: "register.php",
				    data: $("#register_form").serialize(),
				    success: function(html)
				    {
					    if(html == "0")
					    {
						    $.fancybox.logged_in = true;
						    $.fancybox.close();
					    }
					    else
					    {
						    $("#unknown_error").show();
						    $.fancybox.resize();
					    }
				    }
			    });
		    }
		    return false;
	    });
    }

    $(".requestform").submit(function(){
            if($(this).hasClass("request_login"))
            {
                    $.fancybox({ href:'signup_login.php'
                              , padding:0
                              , onComplete: function(){
                                      loginListener();
                              }
                              , onClosed: function() {
                                    if ($.fancybox.logged_in) {
                                            $(".requestform").removeClass("request_login");
                                            $("#request_post").click();
                                    }
                                }
                              });
                    return false;
            }
    });

    $(".submitform").submit(function(){
            if($(this).hasClass("submit_login"))
            {
                    $.fancybox({ href:'signup_login.php'
                              , padding:0
                              , onComplete: function(){
                                      loginListener();
                              }
                              , onClosed: function() {
                                    if ($.fancybox.logged_in) {
                                            $(".submitform").removeClass("submit_login");
                                            $("#submit_post").click();
                                    }
                                }
                              });
                    return false;
            }
    });

    $(".avatar").click(function(){
	    $.get("avatar_win.php", function(data){
		    $.fancybox(data);

		    avatarListener();

	    });
    });

    $(".message_edit").click(function(){
	    $.get("edit.php?id="+$(this).attr('rel'), function(data){
		    $.fancybox(data);

		    $("#forum_edit").submit(function(){
			    valid = true;

			    if($("#edittitle") != null)
			    {
				    if($("#edittitle").val() == "")
				    {
					    $("#edit_empty_error").html("Topic title cannot be empty!");
					    $.fancybox.resize();
					    valid = false;
				    }
			    }

			    if($("#editmessage").val() == "")
			    {
			    	$("#edit_empty_error").html("Message cannot be empty!");
				$.fancybox.resize();
				valid = false;
			    }

			    if(valid)
			    {
				    $.post("edit.php", { id: $("#id").val(), title: $("#edittitle").val(), message: $("#editmessage").val() }, function(html)
				    {
					    $.fancybox.close();
					    window.location.reload(true);
				    });
			    }

			    return false;
		    });
	    });
    });

    $(".message_quote").click(function(){
	    var quoted = "[QUOTE]" + $(this).parents(".msg_header").siblings(".msg_txt").text().trim() + "[/QUOTE]";

	    $("#threadreply").val($("#threadreply").val() + quoted + "\n");
    });

    function avatarListener() {

	    $("#upload_choose").click(function(){
		    $(".filename").click();
	    });

	    $(".filename").change(function(){
		    fname = $(this).val();
		    $("#upload_text_hold").html("Uploading...");
		    $("#upload_form").submit();
	    });

	    $("#avatar_save").click(function(){
		    $.post("avatar_save.php", { av: $("[name=avatar]:checked").val() }, function(data){
			    $.fancybox.close();
			    window.location.reload(true);
		    });
	    });

	    $(".avatar_img").click(function(){
		    //$(this).next().next().click();
	    });
    }

});
function stopUpload(result)
{
	$("#upload_text_hold").html(result);
	$(".filename").val("");
	$.fancybox.resize();
}


