/*************************************************************************************
* viewport - load the view port for integration MM Online Systems into your website
*
* see:  http://www.magicmemories.co.nz/js/mm_viewport.html
*
* Copyright Magic Memories Limited 2008
*
* Created:	September 3,  2008
*
* Update log:
*
***************************************************************************************/

// defaults
var serverURLDefault = "http://www.isiccard.com.au";
var scriptDOMID = "mm_viewport";
var compress = false;

// this keeps us from rechecking and/or putting up the interface when it shouldn't be
var winLoaded = false;

// get the server name
getServer();

// load vyouport object model
if (compress === true) {
	loadjscssfile(server + "/js/mm_vpwc64.js", "js");
} else {
	loadjscssfile(server + "/js/mm_vpwc.js", "js");
}

// load vyouport tools script
if (compress === true) {
	loadjscssfile(server + "/js/mm_vptools64.js", "js");
} else {
	loadjscssfile(server + "/js/mm_vptools.js", "js");
}

// load stylsheet 
if (compress === true) {
	loadjscssfile(server + "/css/window.css", "css");
} else {
	loadjscssfile(server + "/css/window.css", "css");
}
		
// get the server this file was loaded from
// NOTE: this requires the script object to have a valid ID, see above
function getServer() {
	var serverURL;
	try {
  		serverURL = document.getElementById(scriptDOMID).src.split("/");
  	} catch(err) {
		serverURL = serverURLDefault.split("/");
	}
	if (serverURL.length > 0) {
		server = serverURL[0] + "/" + serverURL[1] + "/" + serverURL[2];
	}
}

// include an code source file
function loadjscssfile(filename, filetype){
	if (filetype=="js"){ //if filename is a external JavaScript file
		var fileref=document.createElement('script');
		fileref.setAttribute("type","text/javascript");
  		fileref.setAttribute("src", filename);
 	}
 	else if (filetype=="css"){ //if filename is an external CSS file
  		var fileref=document.createElement("link");
  		fileref.setAttribute("rel", "stylesheet");
  		fileref.setAttribute("type", "text/css");
  		fileref.setAttribute("href", filename);
 	}
 	if (typeof fileref!="undefined") document.getElementsByTagName("head")[0].appendChild(fileref);
}

// run on load to see of there is a viewport to show
function checkURI() {
	checkURIParams();
}

// add to the onload event when a viewport request is found
function addLoadEvent(func) {
	var oldonload = window.onload;
	if (typeof window.onload != 'function') {
		window.onload = func;
	} else {
		window.onload = function() {
 			if (oldonload) {
 				oldonload();
			}
			func();
 		}
	}
}
	
// Add an onload listener for those that support it.  This should prevent us from overwriting other onload events
// and more likely, having ours overwritten
if ( typeof window.addEventListener != "undefined" ) {
	window.addEventListener( "load", checkURI, false );
} else if ( typeof window.attachEvent != "undefined" ) {
	window.attachEvent( "onload", checkURI );
} else {
	addLoadEvent( checkURI );
}