//generate a sequence of numbers from 1 to max. The order of the numbers is random however each number occures only once.
//Subsequent calls to next() return ''
function Randomizer(max) {
 this.max = max;
 this.usedCount = 0;
 this.usedValues = new Array();
 this.next = function() {   
   if (this.usedCount == this.max) {
     return '';
   }
   while(true) {
     var v = Math.ceil(this.max*Math.random());
     if (!this.isUsed(v)) {
       this.markUsed(v);
       return v;      
     }
   }
 }
 this.isUsed = function(v) {
   for(var i=0; i<this.usedCount;i++) {
     if (v == this.usedValues[i]) return true;
   }
   return false;
 }
 this.markUsed = function(v) {
   this.usedValues[this.usedCount++]=v;
 }
}
//function example() {
// var r = new Randomizer(5);
// var s = '';
// for(var i=0;i<7;i++) s += r.next() + ',';
// window.alert(s);
//}

function swapInnerHtml(el1,el2) {
  var html = document.getElementById(el1).innerHTML;
  document.getElementById(el1).innerHTML=document.getElementById(el2).innerHTML;
  document.getElementById(el2).innerHTML=html;
}

//setup for 6x4 array of images
function doAdInit() {
 var ranX = new Randomizer(6);
 var ranY = new Randomizer(4);
 swapInnerHtml('d'+ranY.next()+ranX.next(),'d'+ranY.next()+ranX.next());
 swapInnerHtml('d1'+ranX.next(),'d'+ranY.next()+ranX.next());
 swapInnerHtml('d1'+ranX.next(),'d'+ranY.next()+ranX.next());
}
