/**
*
* triple canopy JS
* 
* requires mootools
*
*/


// constants
var hidenav = false
var page_type = "whole_then_half"


/**
* events!
*
* can't use MooTools domready event as CSS needs to be loaded before we can run ColumnWrapper...
*/
window.onload = function() {
	// stop FireFox's dumbass gray rectangles
	$$('a').addEvent('click', function(e) {
	  this.blur()
	})
	
	if (!disable_column_wrapper) {
	  // do the wrappa
  	ColumnWrapper.execute('unbroken_text', page_type)
    
  	// allow pages to define hooks; namely for audio players
  	window.fireEvent('after_column_wrap');
    
  	// because it's hidden by default
  	$("pagelike").style.display = "block"
	}
	
	// set up scrolling mechanism
	PageScroller.init()
}

/**
* wrapper for swfobject/jwflv player
* TODO: clean this up to use hashes correctly once we upgrade MooTools...
*/
function init_audio_player(target_id, url, width, options) {
  if (options === undefined) options = {};
  var so = new SWFObject('/embed/mediaplayer.swf', 'mpl', width, '20', '8');
  so.addParam('allowscriptaccess', 'always');
  so.addParam('allowfullscreen', 'true');
  so.addVariable('height', '20');
  so.addVariable('width', width);
  so.addVariable('file', url);
  so.addVariable('searchbar', 'false');
  if (options.autostart) so.addVariable('autostart', options.autostart);
  if (options.repeat) so.addVariable('repeat', options.repeat);
  so.write(target_id);
};

/**
* Need to graft YouTube videos onto the piece _after_ ColumnWrapper does its thing (grumble grumble IE7)
*/
function init_youtube_video(target_id, url, width, height) {
  var so = new SWFObject(url, 'mpl', width, height, '8');
  so.addParam('allowscriptaccess', 'always');
  so.addParam('allowfullscreen', 'true');
  so.write(target_id);
}

/**
* CSS re-jiggering for printability
*/
function prepare_piece_for_print() {
  // turn all css_imgs & other background-image divs into real images as backgrounds don't print
  $$('div.css_img', 'div.fullpageImage').each(function(el) {
    var background_image_url = new RegExp(/url\(([^)]+)\)/).exec(el.getStyle('background-image'))[1];
    el.empty().adopt(new Element('img', {'src': background_image_url}));
  });
  
  // insert a page break after every other page (two 'cards' per 8.5x11 sheet)
  var odd_page = true;
  $$('ul#pagelike li').each(function(el) {
    if (odd_page) el.setStyle('page-break-after', 'always');
    odd_page = !odd_page;
  });
  
  // add disclaimer
  if (!$('print_disclaimer')) {
    (new Element('div', {'class': 'invisible', 'id': 'print_disclaimer',
      'text': "Triple Canopy print support is still in development. For the best experience, please read online!"
      })).injectTop('horizsheet');
  }
}

/**
* Trigger from print link
*/
function print_piece() {
  prepare_piece_for_print();
  print();
}

// Event hook (only supported by IE)
window.onbeforeprint = prepare_piece_for_print;
