var minFlashVersion = "8";

function NextRandomNumber() {
	var hi   = this.seed / this.Q;
	var lo   = this.seed % this.Q;
	var test = this.A * lo - this.R * hi;
	if (test > 0) this.seed = test;
	else          this.seed = test + this.M;
	return (this.seed * this.oneOverM);
}

function RandomNumberGenerator() {
	var d = new Date();
	this.seed = 2345678901 
	    + (d.getSeconds() * 0xFFFFFF) 
	    + (d.getMinutes() * 0xFFFF);
	this.A = 48271;
	this.M = 2147483647;
	this.Q = this.M / this.A;
	this.R = this.M % this.A;
	this.oneOverM = 1.0 / this.M;
	this.next = NextRandomNumber;
	return this;
}

function CreateRandomNumber(Min, Max) { 
	var rand = new RandomNumberGenerator();
	return Math.round( (Max-Min) * rand.next() + Min );
}

function ShowBanners(divId, objId1, type1, link1, width1, height1, prob1, objId2, type2, link2, width2, height2, prob2) {
	var min = 1;
	var max = 100;
	
	if ((prob1 + prob2) != max) {
		alert('Percentages are not correct. Must sum 100%. Please, fix them');
	}
	else {
		var banner1 = [objId1, type1, link1, width1, height1, prob1];
		var banner2 = [objId2, type2, link2, width2, height2, prob2];
		var banners = [banner1, banner2];
		var bannerweight = [(banner1[5]/10), (banner2[5]/10)]; //weight of each element above
		var totalweight = eval(bannerweight.join("+")); //get total weight (in this case, 10)
		var weighedbanners = new Array(); //new array to hold "weighted" banners
		var currentbanner = 0;
		
		while (currentbanner < banners.length){
			for (i = 0; i < bannerweight[currentbanner]; i++){
				weighedbanners[weighedbanners.length] = banners[currentbanner];
			}
			currentbanner++;
		}
		var seed = Math.floor(Math.random() * totalweight);
		var bannerSelected = weighedbanners[seed];
	
		if ('swf' == bannerSelected[1].toLowerCase()) {
			var flashBanner = new SWFObject(bannerSelected[0], "Flash Banner", bannerSelected[3], bannerSelected[4], minFlashVersion, "#FFFFFF");
			flashBanner.addParam("wmode", "transparent");
			flashBanner.write(divId);
			return;
		}
		else if ('swfx' == bannerSelected[1].toLowerCase()) {
			var movieParam = bannerSelected[0] + "?lang=" + bannerLanguage + "&country=" + bannerCountry + "&embed=" + bannerNotEmbedFont;
			var e = canResizeFlash();
			
			var flashXBanner = new SWFObject(movieParam, "Web1 Flash Banner", 443, 347, minFlashVersion, "#ffffff");
			flashXBanner.addParam("allowScriptAccess", "sameDomain");
			flashXBanner.addParam("movie", movieParam);
			flashXBanner.addParam("quality", "high");
			flashXBanner.addParam("bgcolor", "#ffffff");
			flashXBanner.addParam("FlashVars", "allowResize=\'" + e + "\'");
			flashXBanner.write(divId);
			
			if ('168px' != document.getElementById('flashcontainer').style.height) {
				document.getElementById(divId).style.height = '347px';
				document.getElementById('flashcontainer').style.height = '347px';
			}
			return;
		}		
		else if ('img' == bannerSelected[1].toLowerCase()) {
			var imageCode = '<IMG SRC="' + bannerSelected[0] + '" width="' + bannerSelected[3] + '" height="' + bannerSelected[4] + '" border="0">';
			var imageWlink = imageCode;
			if ( '' !== bannerSelected[2])
				imageWlink = '<A HREF="' + bannerSelected[2] + '" TARGET="_blank">' + imageCode + '</A>';
			document.getElementById(divId).innerHTML = imageWlink;
			return;
		}
		else {
			alert('Object type is wrong. Must be "swfx", "swf" or "img".');
		}
	}
}


function ShowBannersFromArrays(divId, array1, array2) {
	ShowBanners(divId, array1[0], array1[1], array1[2], array1[3], array1[4], array1[5], array2[0], array2[1], array2[2], array2[3], array2[4], array2[5]);
}


function ShowFlashBanner(divId, objId1, width1, height1) {
	var flashBanner = new SWFObject(objId1, "Flash Banner", width1, height1, minFlashVersion, "#ffffff");
	flashBanner.write(divId);
	return;
}


function NoFlashMsg(divId) {
	var version = deconcept.SWFObjectUtil.getPlayerVersion();
	var msgText = '';
	if (document.getElementById && version["major"] > 0) {
		msgText = '<br>';
		msgText += '<div class="Subtitle">You need to upgrade your Flash Player</div>';
		msgText += '<div class="date">';
		msgText += "You have Version " + version['major'] + "." + version['minor'] + "." + version['rev'] + " installed and you need Version " + minFlashVersion + " to run this presentation";
		msgText += '</div><br>';
		msgText += '<div><a href="http://www.adobe.com/go/getflashplayer" target="_blank"><img src="Images/public/get_flash_player.gif" border="0"></a></div>';
	}
	else {
		msgText = '<strong>You do not have the Flash plugin installed, or your browser does not support Javascript</strong>';
	}	
	document.getElementById(divId).innerHTML = msgText;
}


function ShowHeaderBanner(divId, objId1, type1, link1, width1, height1) {
	var banner1 = [objId1, type1, link1, width1, height1];

	if ('swf' == banner1[1].toLowerCase()) {
		var flashBanner = new SWFObject(banner1[0], "Flash Banner", banner1[3], banner1[4], "7", "#FFFFFF");
		flashBanner.addParam("wmode", "transparent");
		flashBanner.write(divId);
		return;
	}
	else if ('swfx' == banner1[1].toLowerCase()) {
		var flashCode = '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="443" height="347" id="Flash Banner" align="middle">';
		flashCode += '<param name="allowScriptAccess" value="sameDomain" />';
		flashCode += '<param name="movie" value="' + banner1[0] + '?lang=' + bannerLanguage + '&#38;country=' + bannerCountry + '" />';
		flashCode += '<param name="quality" value="high" />';
		flashCode += '<param name="wmode" value="transparent" />';
		flashCode += '<param name="bgcolor" value="#ffffff" />';
		flashCode += '<script type="text/javascript" language="JavaScript">';
		flashCode += 'e = canResizeFlash();';
		flashCode += 'document.write(\'<param name="FlashVars" value="allowResize=\' + e +\'" />\');';
		flashCode += '</script>';
		flashCode += '<embed src="' + banner1[0] + '?lang=' + bannerLanguage + '&#38;country=' + bannerCountry + '" quality="high" wmode="transparent" bgcolor="#ffffff" width="443" height="347" name="Flash Banner" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />';
		//flashCode += '<embed src="' + banner1[0] + '?lang=' + bannerLanguage + '&#38;country=' + bannerCountry + '" quality="high" bgcolor="#ffffff" width="443" height="347" name="Flash Banner" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />';
		flashCode += '</object>';
		document.getElementById(divId).innerHTML = flashCode;
		/*
		if ('168px' != document.getElementById('flashcontainer').style.height) {
			document.getElementById(divId).style.height = '347px';
			document.getElementById('flashcontainer').style.height = '347px';
		}
		*/
		return;
	}		
	else if ('img' == banner1[1].toLowerCase()) {
		var imageCode = '<IMG SRC="' + banner1[0] + '" width="' + banner1[3] + '" height="' + banner1[4] + '" border="0">';
		var imageWlink = imageCode;
		if ( '' !== banner1[2])
			imageWlink = '<A HREF="' + banner1[2] + '" TARGET="_blank">' + imageCode + '</A>';
		document.getElementById(divId).innerHTML = imageWlink;
		return;
	}
	else {
		alert('Object type is wrong. Must be "swfx", "swf" or "img".');
	}
}

