rankforest = function() {
  //http://yuiblog.com/blog/2007/06/12/module-pattern/
  var rankforest_url = '';
  var encodeURIComponent = function(str) {
    if (typeof(encodeURIComponent) == 'function') {
      return encodeURIComponent(str);
    } else {
      return escape(str);
    }
  }		

  var append_url = function(param, value) {
    if (value) {
      window.rankforest_url += '&' + param + '=' + value;
    }
  }

  var append_url_esc = function(param, value) {
    if (value) {
      append_url(param, encodeURIComponent(value));
    }
  }
  var quoted = function(str){
    return (str != null) ? '"' + str + '"' : '""';
  }
  return {
show_rank : function() {
              var w = window;
              w.rankforest_url = 'http://rankforest.com/remote/myrank?';

              append_url('id',w.rankforest_id);
              append_url('t',w.rankforest_text);

              append_url('bc',w.rankforest_body_color);
              append_url('bdc',w.rankforest_border_color);

              append_url('nc',w.rankforest_number_color);
              append_url('nf',w.rankforest_number_font);
              append_url('ns',w.rankforest_number_size);
              append_url('nbc',w.rankforest_number_border_color);

              append_url('tc',w.rankforest_text_color);
              append_url('tf',w.rankforest_text_font);
              append_url('ts',w.rankforest_text_size);

              append_url('w',w.rankforest_frame_width);
              append_url('h',w.rankforest_frame_height);


              document.write('<ifr' + 'ame' +
                  ' name="rankforest_frame"' +
                  ' width=' + quoted(w.rankforest_frame_width) +
                  ' height=' + quoted(w.rankforest_frame_height) +
                  ' frameborder=' + quoted(0) +
                  ' src=' + quoted(w.rankforest_url) +
                  ' marginwidth="0"' +
                  ' marginheight="0"' +
                  ' vspace="0"' +
                  ' hspace="0"' +
                  ' allowtransparency="true"' +
                  ' scrolling="no">');

              document.write('</ifr' + 'ame>');

              w.rankforest_id = null;
              w.rankforest_text = null;

              w.rankforest_body_color = null;
              w.rankforest_border_color = null;

              w.rankforest_number_color = null;
              w.rankforest_number_font = null;
              w.rankforest_number_size = null;
              w.rankforest_number_border_color = null;  

              w.rankforest_text_color = null;
              w.rankforest_text_font = null;
              w.rankforest_text_size = null;

              w.rankforest_frame_width = null;
              w.rankforest_frame_height = null;
            }
  }
}();

rankforest.show_rank();



