$(init_page);
var page_height;
var cur_caption = 0;
var sux_browser = false;

// init_sifr();  
  
function init_page(){
  BrowserDetect.init();
  if(BrowserDetect.browser == 'Explorer' && BrowserDetect.version < 8)sux_browser = true;
  //$('#main_menu').superfish(); 
  
  // Toggle Items
  //init_toggle_items();
  
  // Setup Lightbox
  $('a.lightbox').lightBox();


  init_menu();
  init_admin_menu();  
}


function init_menu(){
    $('#main_menu li').each(function(){
      $(this).append('<em></em>');
      $(this).find('em').width($(this).width()); 
      $(this).find('a').mouseover(function(){
         $(this).parent().find('em').animate({'top':0} ,{ queue:false, duration:100 } );
      })
      $(this).find('a').mouseout(function(){
 
         $(this).parent().find('em').animate({'top':'-4px'}, { queue:false, duration:100 } );
      })
      
    }); 
}

function init_admin_menu(){
  $('body').append('<ul id="login_menu_fixed">' + $('#login_menu').html()  + '</ul>');
  $(window).scroll(adjust_login_menu);
  $(window).resize(adjust_login_menu);  
  adjust_login_menu();
}

function adjust_login_menu(){
  
 // alert($(window).scrollTop());
  if(( $('#login_menu').offset().top - $(window).scrollTop()) > $(window).height()){
    if(!$('#login_menu_fixed').hasClass('fixed-bottom')){
      $('#login_menu_fixed').addClass('fixed-bottom').hide().fadeIn();;  
    } 
  }else{
    $('#login_menu_fixed').removeClass('fixed-bottom');  
    
  }
}
function show_more(obj){
  if(BrowserDetect.browser == 'Explorer'){
    if(BrowserDetect.version < 8 ){
      $(obj).next().show();    
    }else{
      $(obj).next().fadeIn();    
    }
  }else{
    $(obj).next().fadeIn();
  }
  $(obj).remove();
}

function show_media_caption(idx){ 
  setTimeout(function(){real_show_media_caption(idx)},1300);
}
function real_show_media_caption(idx){
  if(cur_caption != idx){
    $('#media_caption_' + cur_caption).fadeOut('slow');
    $('#media_caption_' + idx).hide();
    $('#media_caption_' + idx).css('top',0).fadeIn('slow');
  }
  

  cur_caption = idx;
  
}

 
/* Toggle Items */
function init_toggle_items(){
  $('.toggle_body').hide();
  $('.toggle_arrow a').bind('click', function(){
    var o_next = $(this).parent().next();
    if(o_next.css('display')=='none'){
      o_next.slideDown(); 
      
      $('.toggle_arrow.selected a').trigger('click');
      $(this).parent().addClass('selected'); 
      
    }else{
      o_next.slideUp();  
      $(this).parent().removeClass('selected'); 
    }
    return false;  
  });
  var anchor = window.location.hash;

  if(anchor !=''){
    $('.toggle_arrow.selected').removeClass('selected');
    
    $('a').each(function(i){
      if($(this).attr('href')== anchor){
        $(this).trigger('click');
      }
    });
  }else{
    $('.toggle_arrow.selected').next().show();
  }

}





/* Helper functions */

function has_flash(){
  return FlashDetect.installed;
}


function is_valid_email(email) {
   var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
   if(reg.test(email) == false) {
      return false;
   }
   return true;
}



/* Browser Detection Class */
var BrowserDetect = {
	init: function () {
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
		this.OS = this.searchString(this.dataOS) || "an unknown OS";
	},
	searchString: function (data) {
		for (var i=0;i<data.length;i++)	{
			var dataString = data[i].string;
			var dataProp = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString) {
				if (dataString.indexOf(data[i].subString) != -1)
					return data[i].identity;
			}
			else if (dataProp)
				return data[i].identity;
		}
	},
	searchVersion: function (dataString) {
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1) return;
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	},
	dataBrowser: [
		{
			string: navigator.userAgent,
			subString: "Chrome",
			identity: "Chrome"
		},
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari",
			versionSearch: "Version"
		},
		{
			prop: window.opera,
			identity: "Opera"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Firefox"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],
	dataOS : [
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]
};


