  //ffx_swap unaltered. Will add the html to the innerHTML of the defined div
  // 2009/09/14 AL Added AdTest Module - authored by dfinnecy
      
//***START  This is the Adtest Module that helps test ads via parameters passed via URLs***
function getVal(zMSmyStr,zMStagline)
{
	zMSmyStr = zMSmyStr+"=";
	var zMSind = zMStagline.indexOf(zMSmyStr)+zMSmyStr.length;
	if(zMSind==(zMSmyStr.length-1)) //test for myStr not found
		return "";
	zMStagline += "&";
	return zMStagline.substring(zMSind,zMStagline.indexOf("&",zMSind));
}
	
// Testmodule - takes query string values for ad testing
function testMods(testTarg,testKey,testSize){
	testSizeMatch = 0;
	testSizeList = 0;
	if(testSize){
		testSize = testSize.split("_");
		testSizeList=1;
		}
	for(i=0;i<testSize.length;i++){
		if(testTarg.match("AAMSZ="+testSize[i])) testSizeMatch=1;
		}
	if(!testSizeList || testSizeMatch){
		testTarg = testTarg.replace(/SITE=[A-Z\.]+\//gi, "SITE=ZZ.ADTEST/");
		if(testTarg.indexOf("/KEYWORD=")!=-1) testTarg = testTarg.replace(/\/KEYWORD=[A-Z\.]+\//gi, "/KEYWORD="+testKey+"/");
		else testTarg = testTarg.replace(/SITE=ZZ.ADTEST\//gi, "SITE=ZZ.ADTEST/KEYWORD="+testKey+"/");
		}
	return(testTarg);
}
//***END This is the Adtest Module that helps test ads via parameters passed via URLs***

  function ffx_swap(elName, html) {
      var d = document;
      if (!d.getElementById) {
          return;
      }
      var el = d.getElementById(elName);
      if (!el) {
          return;
      }
      var remove = false;
      if (typeof ffxAdExclusionList != "undefined") {
        var thisPage = window.location.pathname;
        for (var i=0; i<ffxAdExclusionList.length; i++) {
          var current = ffxAdExclusionList[i];
          if (current == 'remove_all_ads'){
            return;
          }
          else if (current == 'remove_article_ads'){
            if (thisPage.match(/\/news\/[a-zA-Z0-9-]+\/[a-zA-Z0-9-]+\/[0-9]{4}\/[0-9]{2}\/[0-9]{2}\/[0-9]+.html/) || thisPage.match(/\/articles\/.*?/)){
              remove = true;
            }
          }
          else if (current == 'remove_index_ads'){
            if  (thisPage.match(/\/index.html$/) || !thisPage.match(/.html$/)){
              remove = true;
            }
          }
          else if (current == thisPage) {
            return;
          }
        }
      }
      if (remove == true) {return;}
      el.innerHTML = html;
  }



var ad, x = 0;
while(ad = ffxAds[x]) {

if(typeof(ad.height) == "undefined")
	hei = "1";
else
   hei=ad.height;
if(typeof(ad.width) == "undefined")
	wid = "1";
else
   wid=ad.width;
  if(typeof(ad.adtype) != "undefined" && (ad.adtype.toLowerCase()=="panorama" || ad.adtype.toLowerCase()=="doubleisland"))
    call = "http://www.cracker.com.au/ffxd/intermediatory.html?w="+wid+"&h="+hei+"&ad=http://direct.fairfax.com.au/jserver/";
  else  
    call = "http://direct.fairfax.com.au/hserver/";
    
  var pageString = "SITE=ONL.CL.CRACKER.CLASSIFIEDS/AREA=";
  

  var adString = "";
  if ((typeof(ffxpageVars.cat) == "string") && (ffxpageVars.cat.length >= 1)){
  	pageString += ffxpageVars.cat+".";
  		}
  if ((typeof(ffxpageVars.cat1) == "string") && (ffxpageVars.cat1.length >= 1)){
    	pageString += ffxpageVars.cat1+".";
  		}
  if ((typeof(ffxpageVars.cat2) == "string") && (ffxpageVars.cat2.length >= 1)){
  	pageString += ffxpageVars.cat2+".";
  		}
  if(pageString.charAt(pageString.length-1)=='.')
  	pageString = pageString.substring(0,pageString.length-1);
  pageString+="/";

  		
  
  for(i in ad)
  if(i!="height"&&i!="width")
    adString += i+"="+ad[i]+"/";

  if(adString.toLowerCase().indexOf("aamsz")==-1)
  	adString += "aamsz="+wid+"x"+hei+"/";
  	
  var adspace = wid+"x"+hei;
  
  for(i in ffxpageVars){
  if(i.toLowerCase()!='site')
	pageString+= i+"="+ffxpageVars[i]+"/";
}
	
	
  var targetString = pageString+adString+"acc_random="+Math.floor(Math.random()*100000000000000000);
  
  if(typeof(ad.adtype) != "undefined" && (ad.adtype.toLowerCase()=="panorama" || ad.adtype.toLowerCase()=="doubleisland"))
    targetString=escape(targetString);
  
  //***START  This is the Adtest Module that helps test ads via parameters passed via URLs***
  //test for adtest and modify target if neccessary
  targetString = unescape(targetString.toUpperCase());
  var urlStr = window.location.search.toUpperCase();
  if(urlStr.indexOf("ADTEST=TRUE")!=-1 && urlStr.indexOf("ADTESTKEYWORD=")!=-1){
  	testKeyword = getVal("ADTESTKEYWORD",urlStr);
  	testSizes = getVal("ADTESTSIZE", urlStr);
  	targetString = escape(testMods(targetString,testKeyword,testSizes));
  	}
  //***END  This is the Adtest Module that helps test ads via parameters passed via URLs***	
    
  var iFrame = "<iframe id='ffxadiframe"+x+"' name='ffxadiframe"+x+"' allowtransparency='true' width="+wid+" height="+hei+" marginwidth=0 marginheight=0 hspace=0 VSPACE=0 frameborder=0 scrolling=no bordercolor='#000000' src='"+call+targetString+"'></iframe>";
  var holderDivId = "ffxad"+(x + 1);
  ffx_swap(holderDivId, iFrame);
  x++;
}

