/* Author: Rosalind Wills

*/


//**************JQUERY SCRIPTS************
//menu behavior
$(document).ready(function() {
// Menu behavior
    var pageID = $('body').attr("id");
  	var minus_page = pageID.replace (/_page/g, "");
  	var IDstring = "#" + minus_page;
	  //initially hide all subitems except on front page
	  if (pageID != "front_page") {
		  $('.subitem').css('visibility', 'hidden');
	  }
	
	//always show subitem for current page
	$(IDstring).parent(".item").find(".subitem").css('visibility', 'visible');
	
	//show subitem on hover, disappear on hover-off unless this page or front page
	$("li.item").hover(
      function () {
        $(this).find('.subitem').css('visibility', 'visible');
      }, 
      function () {
      	if ((!($(this).children("a").attr("id") == minus_page)) && (!(pageID == "front_page"))) {
        $(this).find(".subitem").css('visibility', 'hidden');
      	}
      }
    );	
    //if we're on the plot page, use domWrite function to allow recent log display
    if (pageID == 'plot_page') {
   		$("#recent_logs_sub").empty().append("<p id='loader'><img src='/images/loader.gif' alt='Please wait...' /></p>");
  		domWrite( 'recent_logs_sub', '/js/feed2js/feed2js.php?src=http%3A%2F%2Fforums.sb254.com%2Ffeed.php%3Ff%3D691&num=6&date=y' ); 
  	}
});

//front recent boxes
$(document).ready(function() {
    $("#front_blocks .transp_block").equalHeights(); 
});

//drop elements stuff
$(document).ready(function() {
//Add arrow to drop elements
    $(".drop").css('cursor', 'pointer').append('<img src="/images/drop_arrow.png" alt="" />').next().css('display','none');
    
//expand drop elements and change arrow on click
    $(".drop").click(function() {
        $(this).children("img").toggle();
        $(this).next().slideToggle("slow");
    });
});

//chatpop link opens new window



$(document).ready(function() {
    $('#chat_button a ').click( function() {
        window.open('chatpop','','width=837, height=637');
        return false;
    });
   
});

//chatpop opens on chat page load
$(document).ready(function() {
    function chatpop() {
        window.open('http://www.trekandromeda.com/chatpop','myWindow','width=837, height=637','true');
    }
    if ($('body#chat_page').length) {
    	chatpop();
    }
        
});

//hide roster awards and display on click 
$(document).ready(function() {
    $(".roster_award_list").hide();
    $(".char_info").append(" <a href='' class='reveal'>View Awards</a>");
    $(".char_info .reveal").click(function(event) {
        event.preventDefault;
       $(this).parent().parent().children('.roster_award_list').toggle();
       return false;
    });
});

//Function to overwrite document write for a short period in order to load recent logs early
var domWrite = (function(){               // by Frank Thuerigen
 return function( pDiv, pSrc ){           // public
 
  var e = ( typeof pDiv == 'string' ? 
            document.getElementById( pDiv ) :
            pDiv ),
      s = document.createElement('script'),
      dw = document.write,              // save document.write()
      buf = '',                         // output string buffer
      oldbuf = '',                      // output string buffer
      t = '',                           // timeout
      ms = 100;                         // milliseconds
      
  function evals( pString ){            // eval embedded script tags in HTML code
   var scripts = [],
       script,
       regexp = /<script[^>]*>([\s\S]*?)<\/script>/gi;
   while ((script = regexp.exec(pString))) scripts.push(script[1]);
   scripts = scripts.join('\n');
   if (scripts) eval(scripts);
   }
   
  function exec(){                      // output & restore document.write()
   if ( buf !== oldbuf ){
    oldbuf = buf;
    t=window.setTimeout( exec, ms );    // repeat test timeout
    }
   else {
    e.innerHTML = buf;                  // write output to element
    evals( buf );                       // tbd: correct eval sequence if multiple scripts
    document.write=dw;                  // restore document.write()
    }
   }
   
  document.write = function( pString ){ // overload document.write()
   window.clearTimeout(t);
   oldbuf = buf;
   buf += pString;                        // add string to buffer
   t=window.setTimeout( exec, ms );
   }

  s.setAttribute('language','javascript');
  s.setAttribute('type','text/javascript');
  s.setAttribute('src', pSrc);
  document.getElementsByTagName('head')[0].appendChild(s);
  }
 })();



//************OTHER SCRIPTS**************
