var clock = null;

function externalSetup() {
    parseParameters();
    
    /*
    document.getElementById("Ads").innerHTML = 
      '<script type="text/javascript"><!--google_ad_client = "pub-2978022315720013";' 
      + 'google_ad_width = 120;google_ad_height = 240;' +
        'google_ad_format = "120x240_as";google_ad_type = "text_image";' +
        'google_ad_channel = "";google_color_border = "000000";' +
        'google_color_bg = "000000";google_color_link = "FFFFFF";' +
        'google_color_text = "CCCCCC";google_color_url = "999999";//--></script>'
      + '<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>';    
    */
    
    if (interval) {
      clearInterval(interval);
    }
    interval = setInterval(update, 100);
    document.getElementById("MainLoading").style.display = "none"; 
}

function parseParameters() {
  try {
    var search = location.search;
    if (search != null) {
      var background = getParameter(search, "background");
      if (background != null) {
        document.getElementsByTagName("body")[0].style.background = background;
      }  
    }
    if (search != null && search.length > 0) {
      var city = getParameter(search, "city", null);
      if (city != null) {
        var timeZone = parseFloat(getParameter(search, "timeZone", null));
        if (timeZone != null) {
          var lat = parseFloat(getParameter(search, "lat", null));
          if (lat != null) {
            var lng = parseFloat(getParameter(search, "long", null));
            if (lng != null) {
              var dst = getParameter(search, "dst", "false") == "true";
              clock = new Clock("0", city, timeZone, dst, lat, lng);
              return;
            }
          }
        }
      }
    }
    document.getElementById("Clock0").innerHTML = "One or more URL parameter missing";
  }
  catch (e) {    
    document.getElementById("Clock0").innerHTML = "Failed to parse URL parameters: " + e;
  }
}

function update() {
  var date = new Date();
  if (lastSeconds == date.getSeconds()) {
    return;
  }
  lastSeconds = date.getSeconds();
  if (clock != null && !clock.isTest) {
  	clock.update2(date);
  }  
}

function addToWidgetop() {
  var search = location.search;
  var params = search.replace(/city/, "addWorldClock");
  window.open("http://www.widgetop.com" + params, "_blank");
}                  