
   var optimizer_is_running = optimizer_is_running ? optimizer_is_running : false;
var optimizer_trackcode = typeof optimizer_trackcode == 'string' ? optimizer_trackcode : '';
var optimizer_combination = typeof optimizer_combination == 'string' ? optimizer_combination : '';

function reportOptimizerGoal() {
  var optimizer_regex = /\d{9,}/;
  if (optimizer_trackcode.match(optimizer_regex) && typeof gwoTracker != 'undefined' && typeof gwoTracker._trackPageview == 'function') {
    try {
      gwoTracker._trackPageview('/' + optimizer_trackcode + '/goal');
    } catch(err) {}
  }
}

function createMkw() {
  sCut = typeof sCut == 'string' ? sCut : '';
  optimizer_test_id = typeof optimizer_test_id == 'string' ? optimizer_test_id : '';
  optimizer_combination = typeof optimizer_combination == 'string' ? optimizer_combination : '';
  
  var mkw_regex = /&mkw=[^&]+&/i;
  var mkw_code = sCut.match(mkw_regex) ? (sCut.indexOf('&mkw=0&') > 0 ? '0' : '1') : '0';
  mkw_code += optimizer_test_id + optimizer_combination;
  
  var mkw_remove_regex = /&mkw=[^&]*&/i;
  sCut = sCut.replace(mkw_remove_regex, '&');
  
  return mkw_code;
}

function createDlp() {
  try {
    var dlp = encodeURIComponent(document.location.href);
    dlp = dlp.replace(/\./gi, "%2E");
  }
  catch (err) {
    var dlp = '';
  }
  
  return dlp;
}

function OpenAndDownload(location, brand) {
  //unica
  try {
    ntptAddPair("dl", location);
    ntptEventTag("ev=download_" + brand);
  } catch(err){}
  
  //this to avoid javascript errors in SWOT pages
  try {
    // if download process already started -> doesn't show exit popup in future
    showExitPopup = false;
    setDownloadStatus();
  } catch(err){}
    
  if (optimizer_is_running) {
    reportOptimizerGoal();
  }

  var mkw_code = createMkw();
  var dlp = createDlp();
  var dlp_str = dlp != '' ? ('&dlp=' + dlp) : '';

  var sURLreg = "/downloadclient.htm" + "?dl=" + location + "&DownloadBrand=" + brand + "&mkw=" + mkw_code + dlp_str;
  window.open(sURLreg, "popDown", "width=620,height=150,top=0,left=0");
}

// add optimizer reporting
function OpenLiveCasino(location) {
  var w = 801;
  var h = 571;
  var l = (window.screen.width - w) / 2;
  var t = (window.screen.height - h) / 2;
  
  var dl = parseInt(location);
  dl = typeof dl == 'NaN' ? '4679' : dl;
  var mkw_code = createMkw();
  var dlp = createDlp();
  var dlp_str = dlp != '' ? ('&dlp=' + dlp) : '';

  if (optimizer_is_running) {
    reportOptimizerGoal();
  }

  var filename = "http://ndl.888.com/casino/application/ViewActual.html?mode=3&LangID=en&" + sCut + "&dl=" + dl + "&skin=5&brand=0&mkw=" + mkw_code + dlp_str;
  
  var opened = window.open(filename ,"Offline","resizable=no,status=no,scrollbars=no,toolbar=no,menubar=no,left=" + l + ",top=" + t + ",width=" + w + ",height=" + h);
  
  if (undefined == opened) {
    getBanner(bannerID).openWindow(filename ,"Offline","resizable=no,status=no,scrollbars=no,toolbar=no,menubar=no,left=" + l + ",top=" + t + ",width=" + w + ",height=" + h);
  }
}

function NoDownloadPoker(location, bannerID) {
  var w = 820;
  var h = 565;
  var l = (window.screen.width - w) / 2;
  var t = (window.screen.height - h) / 2; 
  
  //if NOT from landing page (out of the frame)
  if (window.name != "") {
    setDownloadStatus();
  }
  
  var mkw_code = createMkw();
  var dlp = createDlp();
  var dlp_str = dlp != '' ? ('&dlp=' + dlp) : '';
  
  if (optimizer_is_running) {
    reportOptimizerGoal();
  }

  var filename = "http://ndl.888.com/poker/flashpoker_real/application/RLFlashPoker.html?" + sCut + "&dl=" + location + "&skin=4&brand=1" + "&langid=en" + "&mkw=" + mkw_code + dlp_str;
  
  var opened = window.open(filename, null, "height=" + h + ",width=" + w + ",status=no,toolbar=no,menubar=no,location=no,resize=no,left="+l+",top="+t);
  
  if (undefined == opened) {
    getBanner(bannerID).openWindow(filename ,null, "height=" + h + ",width=" + w + ",status=no,toolbar=no,menubar=no,location=no,resize=no,left="+l+",top="+t);
  }  
}

function NoDownloadCasino(location, bannerID) {
  var w = 801;
  var h = 571;
  var l = (window.screen.width - w) / 2;
  var t = (window.screen.height - h) / 2;

  var mkw_code = createMkw();
  var dlp = createDlp();
  var dlp_str = dlp != '' ? ('&dlp=' + dlp) : '';
  
  if (optimizer_is_running) {
    reportOptimizerGoal();
  }

  var filename = "http://ndl.888.com/casino/application/ViewActual.html?mode=3&LangID=en&" + sCut + "&dl=" + location + "&skin=4" + "&mkw=" + mkw_code + dlp_str;
 
  var opened = window.open(filename ,"Offline","resizable=no,status=no,scrollbars=no,toolbar=no,menubar=no,left=" + l + ",top=" + t + ",width=" + w + ",height=" + h);

  if (undefined == opened) {
    getBanner(bannerID).openWindow(filename ,"Offline","resizable=no,status=no,scrollbars=no,toolbar=no,menubar=no,left=" + l + ",top=" + t + ",width=" + w + ",height=" + h);
  }  
}

