var curScanIndex = 0;

function Scan(strName, intId, arrScores) {
  this.name = strName;
  this.id = intId;
  this.scores = arrScores;
}

function Score(strSymbol, intValue) {
  this.symbol = strSymbol;
  this.value = intValue;
}

function renderScan(intIndex) {
  var scan = arrScans[intIndex];
  var objDiv = document.getElementById("widgetScanData");
  var scanHTML = "<table id='widgetScanTable' cellspacing='0' cellpadding='0'><tr><th>Symbol</th><th>Score</th></tr>";
  var intNum = Math.min(scan.scores.length, 5);
  
  // Check if we have data
  if (intNum == 0 || scan.scores[0].value <= 0) {
    scanHTML += "<tr><td colspan='2' style='height: 100px;'>Not enough data for this scan right now.</td></tr>";
  } else {
    for (var i = 0; i < intNum; i++) {
      scanHTML += "<tr><td><a href='http://www.marketfilters.com/stockranks.php?symbol=" + scan.scores[i].symbol + "' target='_new'>" + scan.scores[i].symbol + "</a></td><td>" + scan.scores[i].value + "</td></tr>";
    }
  }
  scanHTML += "</table>";
  objDiv.innerHTML = scanHTML;

  var objNameDiv = document.getElementById("widgetScanName");
  objNameDiv.innerHTML = scan.name;
  var objCountDiv = document.getElementById("widgetScanCount");
  objCountDiv.innerHTML = (intIndex+1) + "/" + (arrScans.length);
}

function previousScan() {
  curScanIndex--;
  if (curScanIndex < 0) {
    curScanIndex = arrScans.length - 1;
  }
  renderScan(curScanIndex);
}

function nextScan() {
  curScanIndex = (curScanIndex + 1) % arrScans.length;
  renderScan(curScanIndex);
}

