$("a.fancybox").click(function(){
    return false;
});

$().ready(function() {

    var doingUpdate=false;
    
 $(".contentPartContainer").sortable({
      handle : '.handle',
      update : function () {
                doingUpdate=true;
		var sortContainer = $('.contentPartContainer').children();
                var position = 0;
                var dataString = "";
		sortContainer.each(function(index,value)
                {
                    $(value).addClass("move");
                    position = position + 1;
                    dataString = dataString + value.id + "=" + position + "&";
                });
                $.ajax({
                    type: "POST",
                    url: "content/" + $("#contentMode").val() + "/ajaxSort",
                    data:dataString,
                    async:true,
                    success:function(data)
                    {
                        sortContainer.each(function(index,value)
                        {
                            $(value).removeClass("move");

                        });
                        doingUpdate=false;
                    }
                });
      },
      stop : function() {
          if (!doingUpdate)
          {
              var sortContainer = $('.contentPartContainer').children();
              sortContainer.each(function(index,value)
                {
                    $(value).removeClass("move");

                });
          }
      }
    });

    
   $("a.fancybox").fancybox({
       padding:0,
       titleShow:false
   });
   $("div.contentPart").find("a.movePart").mouseenter(function(){
      $(this).parent().parent().addClass("move");
   });
   $("div.contentPart").find("a.movePart").mouseleave(function(){
      $(this).parent().parent().removeClass("move");
   });
   $("div.contentPart").find("a.editPart").mouseenter(function(){
      $(this).parent().parent().addClass("edit");
   });
   $("div.contentPart").find("a.editPart").mouseleave(function(){
      $(this).parent().parent().removeClass("edit");
   });
   $("div.contentPart").find("a.deletePart").mouseenter(function(){
      $(this).parent().parent().addClass("delete");
   });
   $("div.contentPart").find("a.deletePart").mouseleave(function(){
      $(this).parent().parent().removeClass("delete");
   });


    $.validator.addMethod(
        "germanDate",
        function(value, element) {
            // put your own logic here, this is just a (crappy) example
            return value.match(/^\d\d?\.\d\d?\.\d\d\d\d$/);
        },
        "Please enter a date in the format dd.mm.yyyy"
    );
});

var startX=0;
var startY=0;
var startXPos=0;
var startYPos=0;
var bHold=0;
function initializeFancybox()
{

    $("div.moveHandle").mousedown(function(e) {
         startX = e.pageX;
         startY = e.pageY;
         startXPos = $("#fancybox-wrap").position().left;
         startYPos = $("#fancybox-wrap").position().top;
         bHold=1;
      });
      $(document).mousemove(function(e) {
         if (bHold)
         {             
            $("#fancybox-wrap").css("left", (startXPos + (e.pageX-startX))+"px");
            $("#fancybox-wrap").css("top", (startYPos + (e.pageY-startY))+"px");
         }
      });
      $(document).mouseup(function(e) {
          bHold = 0;
      });

}
