(function() {
  function loadJS(url) {
    document.write('<script type="text/javascript" src="'+url+'"><\/script>');
  }

  function findScriptNode() {
    var scripts = document.getElementsByTagName("script");
    for(var i = 0, len = scripts.length; i < len; i++) {
      var s = scripts[i];
      if ((s.src && s.src.match(scriptNameRegex)) && (s.getAttribute("class") != "uladoo_loaded")) {
        return s;
      }
    }
  }

  function parseParams(url) {
    var paramString = url.split("?")[1] || "";
    var result = {}, entries = paramString.split("&");
    for(var i = 0, len = entries.length; i < len; i++) {
      var parts = entries[i].split("=");
      result[decodeURIComponent(parts[0])] = decodeURIComponent(parts[1]);
    }
    return result;
  }

  function parseDomain(url) {
    return url.match(/http:\/\/[^\/]+\//)[0];
  }

  var scriptNameRegex = /embed_uladoo_chart\.js(\?.*)?$/;
  
  var scriptNode = findScriptNode();
  var params = parseParams(scriptNode.src);
  var domain = parseDomain(scriptNode.src);

  var iframe = document.createElement('iframe');

  iframe.setAttribute('src', domain + params.username + '/' + params.chartname + '/embed');
  iframe.setAttribute('width', '250');
  iframe.setAttribute('height', '200');
  iframe.setAttribute('frameborder', '0');
  iframe.setAttribute('vspace', '0');
  iframe.setAttribute('scrolling', 'no');
  iframe.style.cssFloat = (params.align == "left" ? "left" : params.align == "right" ? "right" : "none")

  scriptNode.parentNode.insertBefore(iframe, scriptNode.nextSibling);
  scriptNode.setAttribute("class", "uladoo_loaded");
})();
