/*
 * Copyright (c) 2009 Jurriaan Topper (iksi.tv)
 *
 * Version: 0.0.4
 */

var prevhash;

var load = false;
 
(function($) {
	
 function pageload(hash) {

  if (!hash && prevhash != "shop") {
	if (load == false) {
    hash = "/news";
    load = true;
    }
  }
  $("#debug").html(hash+" // "+prevhash);

  if (hash != "") {
  var vars = hash.split("/");
  var _href = vars[1];

  if (prevhash != "shop"  || _href == "news" || _href == "shout" || _href == "bio" || _href == "photos" || _href == "videos" || _href == "contact" || _href == "links") {
   prevhash = _href;	
  if (vars[2]) {
   // second variable
   var _check = vars[2].substr(0,4);
   if (_check == "page") {
    // page
    var _page = vars[2].substr(4,9);		
    var _url = "files/ajax/"+_href+".php?page="+_page;
   } else {
	 // id
	 var _url = "files/ajax/"+_href+".php?id="+vars[2];		
   }
		
   if (vars[3]) {
    //_url = _url+"&item=100";
    var _check = vars[3].substr(0,4);
    if (_check == "page") {
     // page
     var _page = vars[3].substr(4,9);		
     var _url = _url+"&page="+_page;
    } else {
      var _url = _url+"&id="+vars[3];
    }
   }

  } else {
   // just the page
   var _url = "files/ajax/"+_href+".php";	
  }	

   // set loading
   $("#content > .content").css("display","none");
   $("#content > .content").html("<div class=\"head1\"><h2>loading...</h2></div>");
   $('#content > .content').attr("id","content_loading");
   $("#content > .content").css("display","block");

   $.ajax({
    url: _url,
    cache: false,
    success: function(html){
	 // set content
   	 $("#content > .content").css("display","none");	
     $("#content > .content").html(html);
   	 $('#content > .content').attr("id","content_"+_href);  
	 // $("#content > .content").fadeIn(300);
   	 $("#content > .content").css("display","block");		

	if (_href == "shout") {
	  $('#shoutform').ajaxForm( {
		target: '#shout_feedback',
		success: function() { 
	     $('#shoutform').resetForm();                           
		}
	  });	
	}

    }
   });
	  
   var parts = document.title.split(" - ");
   var siteTitle = parts[0];
   // set title
   var pageTitle = _href.substr(0,1).toUpperCase()+_href.substr(1);
   // document.title = siteTitle+" - "+pageTitle;	
	
   // set body id
   $('#wrapper').parent().attr("id",_href);
  }
  }
 }	
	
$(document).ready(function() {
	

	  // Initialize history plugin.
	  $.history.init(pageload);
	  $("a.ajax").live("click",function(){
	   var hash = $(this).attr("rel");
	   if (hash) {		
	    $.history.load(hash);
	    return false;
	   }
	  });

      $('#mailinglistform').ajaxForm( {
		target: '#ml_feedback',
		success: function() { 
			$('#mailinglistform').resetForm();                           
		}
	  });
	
	 // if (checkApp()) {
	 //  var el = document.body; // for IE
	 // } else {
	 //  var el = document; // for other browsers
	 // }
	
	// $(el).scroll(function () { 
	// 	  // check values for IE
	// 	  // get available space
	// 
	// 	  if (checkApp()) {
	// 	   // for IE
	// 	   var height = document.documentElement.clientHeight;
	// 	   var scroll = document.documentElement.scrollTop;
	// 	  } else {
	// 	   // for other browsers
	// 	   var height = parseInt(window.innerHeight);
	//        var scroll = document.body.scrollTop;
	// 	   if (scroll == 0 && document.documentElement.scrollTop != 0) {
	// 	    var scroll = document.documentElement.scrollTop; //FF
	// 	   }
	// 	  }
	// 
	// 	  var leftScrollSpace = height-($("#player").height()+$("#top").height()); // add up elements above scrollable
	// 	  var rightScrollSpace = height-($("#mailinglist").height()+$("#top").height()); // add up elements above scrollable
	// 	
	// 	  var leftSetMargin = (leftScrollSpace+$("#player").height())-$("#events").height();
	// 	  var rightSetMargin = (rightScrollSpace+$("#mailinglist").height())-$("#pushbox").height();
	// 	
	// 	  $("#debug").html(scroll+" // "+$("#events").height()+" // "+height+" // "+leftSetMargin);
	// 	
	//       // comparison left column
	// 	  if (scroll+leftScrollSpace < $("#events").height()) {
	// 	   $("#events").css("position","absolute");
	// 	   $("#events").css("marginTop",$("#player").height()+"px");	
	// 	  } else {
	// 	   // if pageheight is larger than highlights!
	// 	   if ($("#content").height() > $("#events").height()) {
	// 	    $("#events").css("position","fixed");	
	//         if ($("#events").height() > leftScrollSpace) {	
	// 	     $("#events").css("marginTop",leftSetMargin+"px");	
	// 	    }
	// 	   }
	// 	  }
	// 	
	//       // comparison left column
	// 	  if (scroll+rightScrollSpace < $("#pushbox").height()) {
	// 	   $("#pushbox").css("position","absolute");
	// 	   $("#pushbox").css("marginTop",$("#mailinglist").height()+"px");	
	// 	  } else {
	// 	   // if pageheight is larger than highlights!
	// 	   if ($("#content").height() > $("#pushbox").height()) {
	// 	    $("#pushbox").css("position","fixed");	
	//         if ($("#pushbox").height() > rightScrollSpace) {	
	// 	     $("#pushbox").css("marginTop",rightSetMargin+"px");	
	// 	    }
	// 	   }
	// 	  }	
	// 	 });	
	
});

})(jQuery);

// clear / restore
function clearDefault(el) {
 if (el.defaultValue==el.value) el.value = "";
}

function putDefault(el) {
 if (el.value=="") el.value = el.defaultValue;
}

function checkApp() {
 if (navigator.appName == 'Microsoft Internet Explorer') {
  return true;
 }
 return false;
}