/**
 * Media Suite
 * Page content transplant helper
 */

/**
 * MS_transplant
 * @param srcUrl string
 * @param srcId string
 * @param dstId string
 */
function MS_transplant(srcUrl, srcId, dstId)
{
	if (!$('htmlStore'))
	{
		alert('you need to add <div id="htmlStore" style="display:none;"><div>');
		return false;
		/*
		var theBody = document.getElementsByTagName('body')[0];
		var storeDiv = document.createElement('div');
		storeDiv.style.display = 'none';
		$(document.body).appendChild(storeDiv);
		*/
	}
	if (window.MS_transplant_siteVersion)
	{
		srcUrl += ('?v='+MS_transplant_siteVersion);
	}
	new Ajax.Request(srcUrl, {
	  method: 'get',
	  onSuccess: function(transport) {
		  $('htmlStore').innerHTML = transport.responseText;
		  if (srcId == null)
		  {
		  	$(dstId).innerHTML = $('htmlStore').innerHTML;
		  }
		  else
		  {
			  $(dstId).innerHTML = $(srcId).innerHTML;
		  }
		  $('htmlStore').innerHTML = '';
	  }
	});	
	return false;
}

function gup( name )
{
  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regexS = "[\\?&]"+name+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var results = regex.exec( window.location.href );
  if( results == null )
    return "";
  else
    return results[1];
}

function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload) {
        oldonload();
      }
      func();
    }
  }
}

var MS_transplantPage = gup('transplant');
if (MS_transplantPage != '')
{
	addLoadEvent(function(){MS_transplant(gup('transplant'), null,window.MS_transplantId);});
}
else
{
	if (typeof(window.MS_transplantMaster) != 'undefined')
	{
		var protocol = window.location.protocol;
		var path = window.location.pathname;
		// this is required because IE loading files locally uses "\" and not "/"
		var separator = (protocol == "file:" && path.indexOf("/", 1) == -1 ? "\\" : "/");
		var path = window.location.pathname;
		var file = path.substring(path.lastIndexOf(separator) + 1);
		var redirectLocation = window.MS_transplantMaster + '?transplant=' + file;
		window.location = redirectLocation;
	}
}
