<!-- // shields up
var TimeToFade = 2000.0;

var full_img = '/images/ratings/full_star.gif';
var no_img = '/images/ratings/no_star.gif';
var yt_timer;
var yt_current = 0;
var new_menu;


function contact_message(msg) {
    if (document.getElementById('contact_box')) {
         document.getElementById('contact_box').innerHTML = msg;

    }        
    
    
}
function enter_dispensary_review() {
      //Check ratings and review.
      if (document.getElementById('comment_txt').value.length == 0) {
             alert ('Review is empty');
            return false;           
      }      
      if (document.getElementById('dis_comment_quality').value == 0) {
            alert ('Product Quality Rating is incomplete');
            return false;
      }
      if (document.getElementById('dis_comment_price').value == 0) {
            alert ('Product Value Rating is incomplete');
            return false;
      }
      if (document.getElementById('dis_comment_atmosphere').value == 0) {
            alert ('Atmosphere Rating is incomplete');
            return false;
      }      
      if (document.getElementById('dis_comment_customer').value == 0) {
            alert ('Customer Service Rating is incomplete');
            return false;
      }      
      if (document.getElementById('dis_comment_location').value == 0) {
            alert ('Location Rating is incomplete');
            return false;
      }
      var form = document.getElementById('dispensary_review_form');
      form.submit();


      
}


function sendphysicianvalidation(dis_id) {
   
}
function dispensary_comment_mouseover(category_id,done) {
      var input_id = 'dis_comment_' + category_id;
      if (document.getElementById(input_id).value == 0) {
            for (var dt=1;dt<=done;dt++) {
                  var img_id = 'dispensary_comment_img_' + category_id + '_' + dt;
                  document.getElementById(img_id).src = full_img;
            }
      }

}
function dispensary_comment_mouseout(category_id,done) {
      var input_id = 'dis_comment_' + category_id;
      if (document.getElementById(input_id).value == 0) {
            for (var dt=1;dt<=done;dt++) {
                  var img_id = 'dispensary_comment_img_' + category_id + '_' + dt;
                  document.getElementById(img_id).src = no_img;
            }
      }
}
function dispensary_add_comment_rating(category_id,done) {
      var input_id = 'dis_comment_' + category_id;
      document.getElementById(input_id).value = done;
      for (var dt=1;dt<=5;dt++) {
            var img_id = 'dispensary_comment_img_' + category_id + '_' + dt;
            if (dt <= done) {
                  document.getElementById(img_id).src = full_img;
            }
            else {
                  document.getElementById(img_id).src = no_img;                  
            }
      }
}


function physician_featured_results(name) {
   var me = this;
   me.name = name;
   me.results_data = new Array;
   me.currentPage = 0;
   me.totalItems = 0;
   me.firsttime = 0;
   me.timeper = 15; //seconds per featured display. 
   me.timerOn = 0; //start and stop timer.
   me.curTime = 0;
   me.speed = 50;
   me.timerOff = 0;
   me.timerout;
   
   me.time_tick = function() {
      if (me.timerOn == 1) {
         //1 second = 1000 speed;
         me.timerout = setTimeout("new_featured.time_tick()",me.speed);
         var adjustspeed = 1000 / me.speed;
         var maxT = (me.speed * adjustspeed) * me.timeper;
         me.curTime += me.speed;
         //move bar
         //get bar width
         var basewidth = 1;
         if (document.getElementById('featured_fb')) {
            basewidth = parseInt(document.getElementById('featured_bg').style.width);
         }
         //get total ticks;
         var totalTicks = maxT / me.speed;
         //find width per tick;
         var tickWidth = basewidth / totalTicks;
         var curTick = me.curTime / me.speed;
         var barWidth = curTick * tickWidth;
         if (document.getElementById('featured_fb')) {
            document.getElementById('featured_fb').style.width = barWidth + 'px';
         }
         //document.getElementById('featured_fb').innerHTML = barWidth + 'px' + basewidth;
         if (me.curTime >= maxT) {
            //go to next featured.
            if ((me.currentPage + 1) < me.totalItems) {
               me.currentPage++;
            }
            else {
               me.currentPage = 0;
            }
            //alert (me.curTime + '-' + maxT);
            me.curTime = 0;
            me.build_results();
         }
         
         
      }
      
   }
   me.start = function() {
     
      me.timerOn = 1;
      //add listeners to mapbox
      if (document.getElementById('mapbox')) {
         document.getElementById('mapbox').onmouseover = function() {
            me.timerOn = 0;            
            clearTimeout(me.timerout);
         }
         document.getElementById('mapbox').onmouseout = function() {
            if (me.timerOff == 0) {
               me.timerOn = 1;
               me.time_tick();
            }
         }
      }
      var t = setTimeout("new_featured.build_results()",1000);
      if (me.totalItems > 1) {
         var u = setTimeout("new_featured.time_tick()",1500);
      }
      else {
         me.stop();
      }
   
   }
   me.stop = function() {
      me.curTime = 0;
      me.timerOn = 0;
      me.timerOff = 1;      
      clearTimeout(me.timerout);
   }
   
   me.load_data = function(data) {
      me.results_data = data;
      me.totalItems = data.length;

   }
   me.build_results = function() {
      if (document.getElementById(me.name)) {
         var resHTML = me.display_result_html(me.currentPage);
         resHTML += me.display_menu_html();
         document.getElementById(me.name).innerHTML = resHTML;
         featured_trigger(me.results_data[me.currentPage][14], me.results_data[me.currentPage][15], me.results_data[me.currentPage][16]);
         
      }
   }
   me.prevpage = function() {
      if (me.currentPage == 0) {
         me.currentPage = me.totalItems - 1;
      }
      else {
         me.currentPage = me.currentPage - 1;
      }
      me.curTime = 0;
      me.timerOn = 0;
      me.timerOff = 1;
      me.build_results();
   }
   me.nextpage = function() {
      if (me.currentPage == (me.totalItems - 1)) {
         me.currentPage = 0;
      }
      else {
         me.currentPage = me.currentPage + 1;
      }
      me.curTime = 0;
      me.timerOn = 0;
      me.timerOff = 1;      
      me.build_results();
   }
   me.display_menu_html = function() {
      var menuHTML = "";
      if (me.totalItems > 1) {
         var curPage = me.currentPage + 1;
         menuHTML = "<div id=\"featured_bg\" style=\"width:290px;margin-left:5px;\"><div id=\"featured_fb\">&nbsp;</div></div>";
         menuHTML +="<div class=\"featureturn\">";
         menuHTML += "<div class=\"featureitem_left\" onclick=\"new_featured.prevpage();\">Prev</div>";
         menuHTML += "<div class=\"featuremid\">" + curPage + " of " + me.totalItems + "</div>";
         menuHTML += "<div class=\"featureitem_right\" onclick=\"new_featured.nextpage();\">Next</div>";  
         menuHTML += "</div>";
      }
      return menuHTML;
      
   }
   me.display_result_html = function(i) {
      var infoHTML = "";
      if (me.results_data[i][1].length > 0) {
         infoHTML += me.results_data[i][1] + "<br />";
      }
      if (me.results_data[i][12].length > 0 && me.results_data[i][11].length > 0) {
         infoHTML += me.results_data[i][12] + ", " + me.results_data[i][11] + "<br />";
      }
      if (me.results_data[i][13].length > 0) {
         infoHTML += me.results_data[i][13];
      }
      var overall = me.ratingimg(me.results_data[i][3]);
      
      revHTML = '';
      if (me.results_data[i][20] > 0) {
         var revOverall = me.ratingimg(me.results_data[i][20]);
         revHTML += "<div class=\"featurereview\"><a href=\"/forum/user/" + me.results_data[i][18] + "-" + me.results_data[i][19].toLowerCase() + "/\">"+ me.results_data[i][19] + "</a> wrote:<div style=\"float:right;\">" + revOverall + "</div><br />" + me.results_data[i][21] + "<br /><a href=\"" + me.results_data[i][2] +"\" class=\"featured_more\">Read More >><\/a></div>";
          
      }
 
  
      var resHTML = "<div class=\"featurebox\">";
      
      resHTML += "<div class=\"featuredisplay\"><a href=\"" + me.results_data[i][2] +"\" class=\"featured_title_link\">" + me.results_data[i][0] +"<\/a><\/div>";
      resHTML += "<div class=\"featureddisplay_body\">" + overall + "<br />" + infoHTML + "<br /><span class=\"di_entry_row_services_left_reviews\">" + me.results_data[i][9] + " reviews<\/span><\/div>" + revHTML + "</div>";
      return resHTML;
   }
   me.ratingimg = function(rating) {
      var ratingHTML = "";
      if (rating > 0) {
         for(var k=0; k <5; k++) {
            if (rating > k) {
               if (rating >= (k + 1)) {
                  ratingHTML += "<img src=\"/images/ratings/full_star.gif\" width=\"15\" height=\"15\" title=\"" + rating + " stars\" alt=\"" + rating + " stars\" />";
               }
               else {
                  var temp = rating.split('.');
                  var ab = temp[0];
                  var ac = temp[1];
                  if (temp[1] <= 25) {
                     ratingHTML += "<img src=\"/images/ratings/no_star.gif\" width=\"15\" height=\"15\" title=\"" + rating + " stars\" alt=\"" + rating + " stars\" />";
                  }
                  else if (temp[1] > 25 && temp[1] < 75) {
                     ratingHTML += "<img src=\"/images/ratings/half_star.gif\" width=\"15\" height=\"15\" title=\"" + rating + " stars\" alt=\"" + rating + " stars\" />";
                  }
                  else {
                     ratingHTML += "<img src=\"/images/ratings/full_star.gif\" width=\"15\" height=\"15\" title=\"" + rating + " stars\" alt=\"" + rating + " stars\" />";
                  }
               }
            }
            else {
               ratingHTML += "<img src=\"/images/ratings/no_star.gif\" width=\"15\" height=\"15\" title=\"" + rating + " stars\" alt=\"" + rating + " stars\" />";
            }
         }
      }
      else {
         ratingHTML += "&nbsp;";
      }
      return ratingHTML;

   }   
}

function physician_results(name) {
   var me = this;
   me.name = name;
   me.results_data = new Array;
   me.perPage = 10;
   me.currentPage = 0;
   me.totalItems = 0;
   me.totalPages = 0;
    
   me.load_data = function(data) {
      me.results_data = data;
      me.totalItems = data.length;
    
   }
   me.prevpage = function() {
      me.currentPage = me.currentPage - 1;
      me.build_pagemenu();
   }
   me.nextpage = function() {
      me.currentPage = me.currentPage + 1;
      me.build_pagemenu();
   }
   me.build_pagemenu = function() {
      var startnum = me.perPage * me.currentPage;
      var finnum = startnum + me.perPage;
      var totalPages = 0;
      var tp = me.totalItems / me.perPage;
      var numStr = tp.toString();
      var numArr = numStr.split(".");
      if (numArr.length == 2) {
         totalPages = parseInt(me.totalItems / me.perPage) + 1;
      }
      else {
         totalPages = parseInt(me.totalItems / me.perPage);
      }
      me.totalPages = totalPages;
      var PagemenuHTML = '';
      if (me.totalPages > 1) {
         var curPage = me.currentPage + 1;
         PagemenuHTML="<div class=\"menupageturn_right\">";
         if (me.currentPage > 0) {
            PagemenuHTML += "<div class=\"menupageitem_left\" onclick=\"new_results.prevpage();\">Prev</div>";
         }
         else {
            PagemenuHTML += "<div class=\"menupageholder\">&nbsp;</div>";         
         }
         PagemenuHTML += "<div class=\"menupagemid\">Page " + curPage + " of " + totalPages + "</div>";
         if (curPage < totalPages) {
            PagemenuHTML += "<div class=\"menupageitem_right\" onclick=\"new_results.nextpage();\">Next</div>";
         }
         else {
            PagemenuHTML += "<div class=\"menupageholder\">&nbsp;</div>";         
         }      
         PagemenuHTML += "</div>";
      }
      var menuHTML = PagemenuHTML;
      for(var i=startnum; i < me.results_data.length; i++) {
         if (i<finnum) {
            menuHTML += me.menurow(i);
         }
      }
      menuHTML += PagemenuHTML;
      document.getElementById(me.name).innerHTML = menuHTML;
   }
   me.menurow = function(i) {
   //11,12,19
      var imgHTML = "";
      if (me.results_data[i][17].length > 0) {
         imgHTML = "<img src=\"\/imgs\/" + me.results_data[i][17] + "\" border=\"0\" alt=\"" + me.results_data[i][0] + "logo\" title=\"" + me.results_data[i][0] + " logo\" class=\"di_entry_row_logo_image\" />";
      }
      else {
         imgHTML = "<img src=\"\/images\/plus.gif\" border=\"0\" alt=\"no logo available\" class=\"di_entry_row_logo_image\" />";    
      }
      var infoHTML = "";
      if (me.results_data[i][1].length > 0) {
         infoHTML += me.results_data[i][1] + "<br />";
      }
      if (me.results_data[i][12].length > 0 && me.results_data[i][11].length > 0) {
         infoHTML += me.results_data[i][12] + "," + me.results_data[i][11] + "<br />";
      }
      if (me.results_data[i][13].length > 0) {
         infoHTML += me.results_data[i][13];
      }      

      var ratingsHTML = "";
      if (me.results_data[i][3] > 0) {
         var overall = me.ratingimg(me.results_data[i][3]);
         var quality = me.ratingimg(me.results_data[i][4]);
         var value = me.ratingimg(me.results_data[i][8]);
         var atmos = me.ratingimg(me.results_data[i][5]);
         var service = me.ratingimg(me.results_data[i][6]);
         var location = me.ratingimg(me.results_data[i][7]);
         ratingsHTML += "<div class=\"di_entry_row_ratings_left\">Overall:<\/div><div class=\"di_entry_row_ratings_right\">" + overall + "<\/div>";
         ratingsHTML += "<div class=\"di_entry_row_ratings_left\">Wait Time:<\/div><div class=\"di_entry_row_ratings_right\">" + quality + "<\/div>";
         ratingsHTML += "<div class=\"di_entry_row_ratings_left\">Price:<\/div><div class=\"di_entry_row_ratings_right\">" + value + "<\/div>";
         ratingsHTML += "<div class=\"di_entry_row_ratings_left\">Atmosphere:<\/div><div class=\"di_entry_row_ratings_right\">" + atmos + "<\/div>";
         ratingsHTML += "<div class=\"di_entry_row_ratings_left\">Professionalism:<\/div><div class=\"di_entry_row_ratings_right\">" + service + "<\/div>";
         ratingsHTML += "<div class=\"di_entry_row_ratings_left\">Location:<\/div><div class=\"di_entry_row_ratings_right\">" + location + "<\/div>";
      }
      else {
         ratingsHTML = "&nbsp;";
      }

      
      var resHTML="";
      resHTML += "<div class=\"di_entry_row_box\" onclick=\"map_move('" + me.results_data[i][13] + "', '" + me.results_data[i][15] + "', '" + me.results_data[i][16] + "');\" title=\"Click to center map on this physician\">";
      resHTML += "	<div class=\"di_entry_row_logo\">" + imgHTML + "<\/div>";
      resHTML += "	<div class=\"di_entry_row_info\">";
      resHTML += "		<div class=\"di_entry_row_info_title\"><a href=\"" + me.results_data[i][2] +"\" class=\"dispensary_row_title_link\">" + me.results_data[i][0] +"<\/a><\/div>";
      resHTML += "		<div class=\"di_entry_row_info_body\">";
      resHTML += "			<div class=\"di_entry_row_info_body_left\">" + infoHTML + "<br /><span class=\"di_entry_row_services_left_reviews\">" + me.results_data[i][9] + " reviews<\/span><\/div>";
      resHTML += "		<\/div>";
      resHTML += "	<\/div>";
      resHTML += "	<div class=\"di_entry_row_ratings\">" + ratingsHTML + "<\/div>";
      resHTML += "<\/div>";
      return resHTML;
   }
   me.ratingimg = function(rating) {
      var ratingHTML = "";
      if (rating > 0) {
         for(var k=0; k <5; k++) {
            if (rating > k) {
               if (rating >= (k + 1)) {
                  ratingHTML += "<img src=\"/images/ratings/full_star.gif\" width=\"15\" height=\"15\" title=\"" + rating + " stars\" alt=\"" + rating + " stars\" />";
               }
               else {
                  var temp = rating.split('.');
                  var ab = temp[0];
                  var ac = temp[1];
                  if (temp[1] <= 25) {
                     ratingHTML += "<img src=\"/images/ratings/no_star.gif\" width=\"15\" height=\"15\" title=\"" + rating + " stars\" alt=\"" + rating + " stars\" />";
                  }
                  else if (temp[1] > 25 && temp[1] < 75) {
                     ratingHTML += "<img src=\"/images/ratings/half_star.gif\" width=\"15\" height=\"15\" title=\"" + rating + " stars\" alt=\"" + rating + " stars\" />";
                  }
                  else {
                     ratingHTML += "<img src=\"/images/ratings/full_star.gif\" width=\"15\" height=\"15\" title=\"" + rating + " stars\" alt=\"" + rating + " stars\" />";
                  }
               }
            }
            else {
               ratingHTML += "<img src=\"/images/ratings/no_star.gif\" width=\"15\" height=\"15\" title=\"" + rating + " stars\" alt=\"" + rating + " stars\" />";
            }
         }
      }
      else {
         ratingHTML += "&nbsp;";
      }
      return ratingHTML;

   }
}



function edit_physicianowner(dis_id) {
   var head= document.getElementsByTagName('head')[0];
   var script= document.createElement('script');
   script.type= 'text/javascript';
   script.src= '/javascript.cgi?action=edit_physicianowner&dis_id=' + dis_id;
   head.appendChild(script);
}

function open_physicianowner(dis_id) {
   var div = document.getElementById('dis_owner');
   var divstyle = div.style.display;
   
   if(divstyle.toLowerCase()=="block")  {
      div.style.display='none';
   }
   else {
      div.style.display='block';
      if (divstyle.toLowerCase() == "") {
         var head= document.getElementsByTagName('head')[0];
         var script= document.createElement('script');
         script.type= 'text/javascript';
         script.src= '/javascript.cgi?action=open_physicianowner&dis_id=' + dis_id;
         head.appendChild(script);
      }
   }   
}
function submit_physician_ratings() {
      //Check ratings
  
      if (document.getElementById('dis_quality').value == 0) {
            alert ('Product Quality Rating is incomplete');
            return false;
      }
      if (document.getElementById('dis_price').value == 0) {
            alert ('Product Value Rating is incomplete');
            return false;
      }
      if (document.getElementById('dis_atmosphere').value == 0) {
            alert ('Atmosphere Rating is incomplete');
            return false;
      }      
      if (document.getElementById('dis_customer').value == 0) {
            alert ('Customer Service Rating is incomplete');
            return false;
      }      
      if (document.getElementById('dis_location').value == 0) {
            alert ('Location Rating is incomplete');
            return false;
      }      
      
      var dis_id = document.getElementById('dis_rate_id').value;
      var quality = document.getElementById('dis_quality').value;
      var price = document.getElementById('dis_price').value;
      var location = document.getElementById('dis_location').value; 
      var atmosphere = document.getElementById('dis_atmosphere').value;
      var customer = document.getElementById('dis_customer').value;


      var head= document.getElementsByTagName('head')[0];
      var script= document.createElement('script');
      script.type= 'text/javascript';
      script.src= '/javascript.cgi?action=submit_physician_ratings&dis_id=' + dis_id + '&quality=' + quality + '&price=' + price + '&location=' + location + '&atmosphere=' + atmosphere + '&customer=' + customer;
      head.appendChild(script);   
   
}
//end physicians



function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload) {
        oldonload();
      }
      func();
    }
  }
}




function hidelayer(div) {
   if (document.getElementById(div)) {
      document.getElementById(div).style.display='none';
   }
}

function preview(what){
    var source=what.value;
    var fileTypes=["gif","png","jpg","jpeg"];
    var ext=source.substring(source.lastIndexOf(".")+1,source.length).toLowerCase();
    for (var i=0; i<fileTypes.length; i++) if (fileTypes[i]==ext) break;
    if (i<fileTypes.length) {
      document.getElementById('ulbtn').disabled = false;
    }
    else {
      document.getElementById('ulbtn').disabled = true;
      alert("Invalid Image\nPlease load an image with an extention of one of the following:\n\n"+fileTypes.join(", "));
    }
}
function editimage(dis_id) {
   var head= document.getElementsByTagName('head')[0];
   var script= document.createElement('script');
   script.type= 'text/javascript';
   script.src= '/javascript.cgi?action=editimage&dis_id=' + dis_id;
   head.appendChild(script);   
}

function dispensary_state_menu(name) {
   var me = this;
   me.name = name;
   me.menu_data = new Array;
   me.perPage = 50;
   me.currentPage = 0;
   me.totalItems = 0;
   me.totalPages = 0;   
   me.alphamenuid = 'menu_alphaselect';
   me.alphabet = new Array('A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z');
   me.alphaselected = 'all';
   me.load_data = function(data) {
      me.menu_data = data;
      me.totalItems = data.length;
      me.build_alphabetmenu();
   }
   me.build_alphabetmenu = function() {
      var menu_html = ' ';
      for(var i=0; i < me.alphabet.length; i++) {
         if (me.alphabet[i] == me.alphaselected) {
            menu_html += "<div class=\"alpha_letterbox_selected\" title=\"" + me.alphabet[i] + "\" onclick=\"new_menu.selectalpha('" + me.alphabet[i] + "');\">" + me.alphabet[i] + "</div>";            
         }
         else {
            menu_html += "<div class=\"alpha_letterbox\" title=\"" + me.alphabet[i] + "\" onclick=\"new_menu.selectalpha('" + me.alphabet[i] + "');\">" + me.alphabet[i] + "</div>";
         }
      }
      if (me.alphaselected == 'all') {
         menu_html += "<div class=\"alpha_letterbox_word_selected\" title=\"View All\" onclick=\"new_menu.selectalpha('all');\">ALL</div>";             
      }
      else {
         menu_html += "<div class=\"alpha_letterbox_word\" title=\"View All\" onclick=\"new_menu.selectalpha('all');\">ALL</div>";        
      }
      document.getElementById(me.alphamenuid).innerHTML = menu_html;  
   }
   me.prevpage = function() {
      me.currentPage = me.currentPage - 1;
      me.build_pagemenu();
   }
   me.nextpage = function() {
      me.currentPage = me.currentPage + 1;
      me.build_pagemenu();
   }
   me.selectalpha = function(letter) {
      me.alphaselected = letter;
      me.build_alphabetmenu();      
      if (letter == "all") {
         me.currentPage = 0;
         me.build_pagemenu();
      }
      else {
         var menuHTML = "";
         for(var i=0; i < me.menu_data.length; i++) {
            if (me.menu_data[i][0].charAt(0) == letter) {
               menuHTML += me.menurow(i);
            }
         }
         document.getElementById(me.name).innerHTML = menuHTML;        
      }
   }
   me.build_pagemenu = function() {
      var startnum = me.perPage * me.currentPage;
      var finnum = startnum + me.perPage;
      var totalPages = 0;
      var tp = me.totalItems / me.perPage;
      var numStr = tp.toString();
      var numArr = numStr.split(".");
      if (numArr.length == 2) {
         totalPages = parseInt(me.totalItems / me.perPage) + 1;
      }
      else {
         totalPages = parseInt(me.totalItems / me.perPage);
      }
      me.totalPages = totalPages;
      var PagemenuHTML = '';
      if (me.totalPages > 1) {
         var curPage = me.currentPage + 1;
         PagemenuHTML="<div class=\"menupageturn\">";
         if (me.currentPage > 0) {
            PagemenuHTML += "<div class=\"menupageitem_left\" onclick=\"new_menu.prevpage();\">Prev</div>";
         }
         else {
            PagemenuHTML += "<div class=\"menupageholder\">&nbsp;</div>";         
         }
         PagemenuHTML += "<div class=\"menupagemid\">Page " + curPage + " of " + totalPages + "</div>";
         if (curPage < totalPages) {
            PagemenuHTML += "<div class=\"menupageitem_right\" onclick=\"new_menu.nextpage();\">Next</div>";
         }
         else {
            PagemenuHTML += "<div class=\"menupageholder\">&nbsp;</div>";         
         }      
         PagemenuHTML += "</div>";
      }
      
      var menuHTML = PagemenuHTML;
      for(var i=startnum; i < me.menu_data.length; i++) {
         if (i<finnum) {
            menuHTML += me.menurow(i);
         }
      }
      menuHTML += PagemenuHTML;
      document.getElementById(me.name).innerHTML = menuHTML;
   }
   me.menurow = function(i) {
      var menuHTML = "<div onclick=\"location.href='" + me.menu_data[i][1] + "';\" class=\"strain_link_row\"><a href=\"" + me.menu_data[i][1] + "\" class=\"menu_strain_link\">" + me.menu_data[i][0] + "</a> <div class=\"di_menu_count\">(" + me.menu_data[i][2] + ")</div></div>";
      return menuHTML;
      
   }
}



function contact_us() {
   var html="";
   html += "      <form target=\"contact_cgi\" action=\"\/javascript.cgi\" method=\"post\" name=\"myimgform\">";
   html += "      <input type=\"hidden\" value=\"contact_form\" name=\"action\">";
   html += "      <div class=\"gu_div_title\">";
   html += "         <div class=\"gu_div_title_left\">Contact Us<\/div>";
   html += "         <div class=\"ina_close_button\" onclick=\"hidelayer('contact_div_js');\">X<\/div>";
   html += "      <\/div>";
   html += "      <div class=\"gu_div_row\">";
   html += "         <div class=\"gu_div_left\">Name:<\/div>";
   html += "         <div class=\"gu_div_right\">";
   html += "            <input type=\"text\" name=\"name\" size=\"80\">";
   html += "         <\/div>";
   html += "      <\/div>";
   html += "      <div class=\"gu_div_row\">";
   html += "         <div class=\"gu_div_left\">Email:<\/div>";
   html += "         <div class=\"gu_div_right\">";
   html += "            <input type=\"text\" name=\"email\" size=\"80\">";
   html += "         <\/div>";
   html += "      <\/div>";
   html += "      <div class=\"gu_div_row\">";
   html += "         <div class=\"gu_div_left\">Subject:<\/div>";
   html += "         <div class=\"gu_div_right\">";
   html += "            <input type=\"text\" name=\"subject\" size=\"80\">";
   html += "         <\/div>";
   html += "      <\/div>";
   html += "      <div class=\"gu_div_row\">";
   html += "         <div class=\"gu_div_left\">Body:<\/div>";
   html += "         <div class=\"gu_div_right\">";
   html += "            <textarea rows=\"3\" cols=\"60\" name=\"body\"><\/textarea>";
   html += "         <\/div>";
   html += "      <\/div>";
   html += "      <div class=\"gu_div_bottom\">";
   html += "         <input type=\"submit\" value=\"Send\">";
   html += "      <\/div>";
   html += "      <\/form>";
   html += "      <iframe id=\"contact_cgi\" style=\"display:none; width:0px; height:0px\" src=\"about:blank\" name=\"contact_cgi\">";

   document.getElementById('contact_div_js').innerHTML = html;
   document.getElementById('contact_div_js').style.display='block';
   return false;
}


function add_page_comment(inc) {
      
      if (document.getElementById('no_review')) {
            document.getElementById('no_review').style.display = "none";
      }
      
      var randid = 'd' + Math.floor(Math.random()*11)
      var divTag = document.createElement("div");
      divTag.innerHTML = inc;
      divTag.id = randid;
      divTag.className ="loaddiv";      
      document.getElementById('t1e').appendChild(divTag);
      fade(randid);
}

function clearcommentbox() {
      document.getElementById('comment_txt').value = '';
      document.getElementById('comment_txt').rows = 4;
      if (document.getElementById('rating')) { document.getElementById('rating').selectedIndex = 0; }
}

function add_rating(box) {
      var rating = box.value;
      var art_cat = document.getElementById('art_cat').value;
      var art_id = document.getElementById('art_id').value;
      var head= document.getElementsByTagName('head')[0];
      var script= document.createElement('script');
      script.type= 'text/javascript';
      script.src= '/javascript.cgi?action=add_rating&rating=' + rating + '&art_cat=' + art_cat + '&art_id=' + art_id;
      head.appendChild(script);
}

function cleariframe() {
      document.getElementById('cgi').src = 'about:blank';
}
function change_out_image(file) {
    document.getElementById('preview_img').src = file;
}

//BBCODE FUNCTIONS
function bbtags(start_tag, end_tag, textarea_id) {
	textarea = document.getElementById(textarea_id);
	if (document.selection) { 	// IE
		textarea.focus();
		var sel = document.selection.createRange();
		sel.text = start_tag + sel.text + end_tag;
	}
	else {  // Firefox
		var len = textarea.value.length;
		var start = textarea.selectionStart;
		var end = textarea.selectionEnd;
		var scrollTop = textarea.scrollTop;
		var scrollLeft = textarea.scrollLeft;
	        var sel = textarea.value.substring(start, end);
		var rep = start_tag + sel + end_tag;
      textarea.value =  textarea.value.substring(0,start) + rep + textarea.value.substring(end,len);
		textarea.scrollTop = scrollTop;
		textarea.scrollLeft = scrollLeft;
	}
}

function bburl(textarea_id) {
	textarea = document.getElementById(textarea_id);
	var url_title = prompt('Enter Link Text(Optional):', '')
	var url = prompt('Enter the URL:','http://');
	var scrollTop = textarea.scrollTop;
	var scrollLeft = textarea.scrollLeft;
	if (url) {
		if (document.selection) {
			textarea.focus();
			var sel = document.selection.createRange();
			if (url_title == "") {
				sel.text = '[url]'  + url + '[/url]';
			} 
			else {
				sel.text = '[url=' + url + ']' + url_title + '[/url]';
			}			
		}
		else {
			var len = textarea.value.length;
			var start = textarea.selectionStart;
			var end = textarea.selectionEnd;
		 	var sel = textarea.value.substring(start, end);
			if (url_title == "") {
				var rep = '[url]' + url + '[/url]';
			} 
			else {
				var rep = '[url=' + url + ']' + url_title + '[/url]';
			}
		        textarea.value =  textarea.value.substring(0,start) + rep + textarea.value.substring(end,len);
			textarea.scrollTop = scrollTop;
			textarea.scrollLeft = scrollLeft;
		}
	}
}

function bbimg(textarea_id) {
	textarea = document.getElementById(textarea_id);
	var url = prompt('Enter the Image URL:','http://');
	var scrollTop = textarea.scrollTop;
	var scrollLeft = textarea.scrollLeft;
	if (url) {
		if (document.selection) {
			textarea.focus();
			var sel = document.selection.createRange();
			sel.text = '[img]' + url + '[/img]';
		}
		else {
			var len = textarea.value.length;
			var start = textarea.selectionStart;
			var end = textarea.selectionEnd;
		
			var sel = textarea.value.substring(start, end);
			var rep = '[img]' + url + '[/img]';
			textarea.value =  textarea.value.substring(0,start) + rep + textarea.value.substring(end,len);
		
			textarea.scrollTop = scrollTop;
			textarea.scrollLeft = scrollLeft;
		}
	}
}
	
function bbcoder(textarea_id, select_id) {
	var selobj = document.getElementById(select_id);
	textarea = document.getElementById(textarea_id);
	var sel = selobj.selectedIndex;
	var selval = selobj.options[sel].value;
	var start_tag;
	var end_tag = "[/code]";
	if (selval == "none") {
		start_tag = "[code]";			
	}
	else {
		start_tag = "[code="+selval+"]";	
	}
	if (document.selection) { 	// IE
		textarea.focus();
		var sel = document.selection.createRange();
		sel.text = start_tag + sel.text + end_tag;
	}
	else {  // Firefox
		var len = textarea.value.length;
		var start = textarea.selectionStart;
		var end = textarea.selectionEnd;
		var scrollTop = textarea.scrollTop;
		var scrollLeft = textarea.scrollLeft;
	        var sel = textarea.value.substring(start, end);
		var rep = start_tag + sel + end_tag;
        	textarea.value =  textarea.value.substring(0,start) + rep + textarea.value.substring(end,len);
		textarea.scrollTop = scrollTop;
		textarea.scrollLeft = scrollLeft;
	}
	selobj.selectedIndex = 0;
}


function bbsizer(textarea_id, select_id) {
	var selobj = document.getElementById(select_id);
	textarea = document.getElementById(textarea_id);
	var sel = selobj.selectedIndex;
	var selval = selobj.options[sel].value;
	var start_tag;
	var end_tag = "[/size]";
	start_tag = "[size="+selval+"]";	
	if (document.selection) { 	// IE
		textarea.focus();
		var sel = document.selection.createRange();
		sel.text = start_tag + sel.text + end_tag;
	}
	else {  // Firefox
		var len = textarea.value.length;
		var start = textarea.selectionStart;
		var end = textarea.selectionEnd;
		var scrollTop = textarea.scrollTop;
		var scrollLeft = textarea.scrollLeft;
	        var sel = textarea.value.substring(start, end);
		var rep = start_tag + sel + end_tag;
        	textarea.value =  textarea.value.substring(0,start) + rep + textarea.value.substring(end,len);
		textarea.scrollTop = scrollTop;
		textarea.scrollLeft = scrollLeft;
	}
	selobj.selectedIndex = 0;
}



function bbtube(textarea_id) {
	textarea = document.getElementById(textarea_id);
	var url = prompt('Enter the YouTube Video ID:','');
	var scrollTop = textarea.scrollTop;
	var scrollLeft = textarea.scrollLeft;
	if (url) {
		if (document.selection) {
			textarea.focus();
			var sel = document.selection.createRange();
			sel.text = '[youtube]' + url + '[/youtube]';
		}
		else {
			var len = textarea.value.length;
			var start = textarea.selectionStart;
			var end = textarea.selectionEnd;
		
			var sel = textarea.value.substring(start, end);
			var rep = '[youtube]' + url + '[/youtube]';
			textarea.value =  textarea.value.substring(0,start) + rep + textarea.value.substring(end,len);
		
			textarea.scrollTop = scrollTop;
			textarea.scrollLeft = scrollLeft;
		}
	}
}


function bbgvid(textarea_id) {
	textarea = document.getElementById(textarea_id);
	var url = prompt('Enter the Google Video ID:','');
	var scrollTop = textarea.scrollTop;
	var scrollLeft = textarea.scrollLeft;
	if (url) {
		if (document.selection) {
			textarea.focus();
			var sel = document.selection.createRange();
			sel.text = '[gvid]' + url + '[/gvid]';
		}
		else {
			var len = textarea.value.length;
			var start = textarea.selectionStart;
			var end = textarea.selectionEnd;
		
			var sel = textarea.value.substring(start, end);
			var rep = '[gvid]' + url + '[/gvid]';
			textarea.value =  textarea.value.substring(0,start) + rep + textarea.value.substring(end,len);
		
			textarea.scrollTop = scrollTop;
			textarea.scrollLeft = scrollLeft;
		}
	}
}
function uptext(textarea_id) {
	document.getElementById(textarea_id).rows = document.getElementById(textarea_id).rows - 2;
}

function downtext(textarea_id) {
	document.getElementById(textarea_id).rows = document.getElementById(textarea_id).rows + 2;
}



function fade(eid) {
  var element = document.getElementById(eid);
  if(element == null)
    return;
   
  if(element.FadeState == null)
  {
    if(element.style.opacity == null
        || element.style.opacity == ''
        || element.style.opacity == '1')
    { element.FadeState = -2; }
    else
    { element.FadeState = 2; }
  }
   
  if(element.FadeState == 1 || element.FadeState == -1)
  {
    element.FadeState = element.FadeState == 1 ? -1 : 1;
    element.FadeTimeLeft = TimeToFade - element.FadeTimeLeft;
  }
  else
  {
    element.FadeState = element.FadeState == 2 ? -1 : 1;
    element.FadeTimeLeft = TimeToFade;
    element.style.visibility = element.FadeState == 2
        ? 'hidden' : 'visible'; // Switch visibility style rather than Dislay
    setTimeout("animateFade(" + new Date().getTime()
        + ",'" + eid + "')", 33);
  }
}

function animateFade(lastTick, eid) {
  var curTick = new Date().getTime();
  var elapsedTicks = curTick - lastTick;
 
  var element = document.getElementById(eid);
 
  if(element.FadeTimeLeft <= elapsedTicks)
  {
    element.style.visibility = element.FadeState == 1 ? 'visible' : 'hidden'; // Switch visibility style rather than Dislay
    element.style.opacity = element.FadeState == 1 ? '1' : '0';
    element.style.filter = 'alpha(opacity = '
        + (element.FadeState == 1 ? '100' : '0') + ')';
    //element.FadeState = element.FadeState == 1 ? 2 : -2; // This code is commented out to prevent a fade out
    return;
  }
 
  element.FadeTimeLeft -= elapsedTicks;
  var newOpVal = element.FadeTimeLeft/TimeToFade;
  if(element.FadeState == 1)
    newOpVal = 1 - newOpVal;

 
  element.style.opacity = newOpVal;
  element.style.filter =
      'alpha(opacity = ' + (newOpVal*100) + ')';
 
  setTimeout("animateFade(" + curTick
      + ",'" + eid + "')", 33);
}


var getElementsByClassName = function (className, tag, elm){
/*
   Developed by Robert Nyman, http://www.robertnyman.com
  	Code/licensing: http://code.google.com/p/getelementsbyclassname/
*/	

	if (document.getElementsByClassName) {
		getElementsByClassName = function (className, tag, elm) {
			elm = elm || document;
			var elements = elm.getElementsByClassName(className),
				nodeName = (tag)? new RegExp("\\b" + tag + "\\b", "i") : null,
				returnElements = [],
				current;
			for(var i=0, il=elements.length; i<il; i+=1){
				current = elements[i];
				if(!nodeName || nodeName.test(current.nodeName)) {
					returnElements.push(current);
				}
			}
			return returnElements;
		};
	}
	else if (document.evaluate) {
		getElementsByClassName = function (className, tag, elm) {
			tag = tag || "*";
			elm = elm || document;
			var classes = className.split(" "),
				classesToCheck = "",
				xhtmlNamespace = "http://www.w3.org/1999/xhtml",
				namespaceResolver = (document.documentElement.namespaceURI === xhtmlNamespace)? xhtmlNamespace : null,
				returnElements = [],
				elements,
				node;
			for(var j=0, jl=classes.length; j<jl; j+=1){
				classesToCheck += "[contains(concat(' ', @class, ' '), ' " + classes[j] + " ')]";
			}
			try	{
				elements = document.evaluate(".//" + tag + classesToCheck, elm, namespaceResolver, 0, null);
			}
			catch (e) {
				elements = document.evaluate(".//" + tag + classesToCheck, elm, null, 0, null);
			}
			while ((node = elements.iterateNext())) {
				returnElements.push(node);
			}
			return returnElements;
		};
	}
	else {
		getElementsByClassName = function (className, tag, elm) {
			tag = tag || "*";
			elm = elm || document;
			var classes = className.split(" "),
				classesToCheck = [],
				elements = (tag === "*" && elm.all)? elm.all : elm.getElementsByTagName(tag),
				current,
				returnElements = [],
				match;
			for(var k=0, kl=classes.length; k<kl; k+=1){
				classesToCheck.push(new RegExp("(^|\\s)" + classes[k] + "(\\s|$)"));
			}
			for(var l=0, ll=elements.length; l<ll; l+=1){
				current = elements[l];
				match = false;
				for(var m=0, ml=classesToCheck.length; m<ml; m+=1){
					match = classesToCheck[m].test(current.className);
					if (!match) {
						break;
					}
				}
				if (match) {
					returnElements.push(current);
				}
			}
			return returnElements;
		};
	}
	return getElementsByClassName(className, tag, elm);
};




var ffresults = {

	// copyright 2008 - 2010 FreeFind.com - authorized for use with the FreeFind service only

	// Start of config settings

    autoPos : false,			// automatic initial window position / size. 

	// if autoPos if false, the following four numbers are used as initial window position and size

	initialX : 100,			// left position (pixels)
	initialY : 175,			// top position (pixels) 40px = underbar,
	initialH : 1400,			// height of window
	initialW : 978,			// width of window

	// choose a number for z-index that is high enough so the results window appears above other windows on your page

	initialZ : 10000000,    // initial z-index of the results window
	
	// the following value controls the color of the window's drag bar (top area of window)
	
	barColor : '#01539F',

	// end of config settings

	element : undefined,
	cover : undefined,
	mouseDownX : 0,
	mouseDownY : 0,
	objectX : 0,
	objectY : 0,
	objectH : 0,
	objectW : 0,
    ipos : false,
	resize : false,
	
	sizeImageUrl : 'http://search.freefind.com/img/rsize.gif',

	selectFunc : undefined,
	selectState : undefined,
	mozSelect : undefined,

	noSelect : function()
	{
	    var obj = document.body;

        ffresults.selectFunc = obj.onselectstart;
		ffresults.selectState = obj.unselectable;
		ffresults.mozSelect = obj.style.MozUserSelect;

		obj.onselectstart = function(){ return false; };
		obj.unselectable = 'on';
		obj.style.MozUserSelect = 'none';
	},

	restoreSelect : function()
	{
	    var obj = document.body;

		obj.onselectstart = ffresults.selectFunc;
		obj.unselectable = ffresults.selectState;
		obj.style.MozUserSelect = ffresults.mozSelect;
	},


	drag : function (e,size)
	{
		if(!document.getElementById) return;
		
		if(!e) e = window.event;
		var targ = e.target || e.srcElement;
	    ffresults.resize = size;

		if(targ.id != 'ffresult_bar' && targ.id != 'ffresult_szimg') return true;
		ffresults.noSelect();

		ffresults.element = document.getElementById('ffresult_win');
		ffresults.objectX = parseInt(ffresults.element.style.left,10);
		ffresults.objectY = parseInt(ffresults.element.style.top,10);
		ffresults.objectH = parseInt(ffresults.element.style.height,10);
		ffresults.objectW = parseInt(ffresults.element.style.width,10);

		ffresults.cover = document.getElementById('ffresult_cvr');
		ffresults.cover.style.zIndex = '40';
		ffresults.mouseDownX = e.clientX;
		ffresults.mouseDownY = e.clientY;
		if(e.preventDefault) e.preventDefault();
		e.returnValue = false;
		e.cancelBubble = true;
		ffresults.attach(document,"mouseup",ffresults.drop);
		ffresults.attach(document,"mousemove",ffresults.move);
	},




	attach : function(to,eventname,func)
	{
		if(to.addEventListener) 
			to.addEventListener(eventname,func,false);
		else
			to.attachEvent("on" + eventname,func);
	},

	detach : function(to,eventname,func)
	{
		if(to.removeEventListener) 
			to.removeEventListener(eventname,func,false);
		else
			to.detachEvent("on" + eventname,func);
	},

	drop : function(e)
	{
		ffresults.detach(document,"mouseup",ffresults.drop);
		ffresults.detach(document,"mousemove",ffresults.move);
		ffresults.cover.style.zIndex = 0;	
		ffresults.element = null;
		ffresults.restoreSelect();
	},

	move: function(e)
	{
	   if(!e) e = window.event;

	   e.returnValue = false;
	   e.cancelBubble = true;
	   if(e.preventDefault) e.preventDefault();

		var x = e.clientX;
		var y = e.clientY; 

		if(ffresults.resize)
		{
			var winW = ffresults.objectW + x - ffresults.mouseDownX;
			var winH = ffresults.objectH + y - ffresults.mouseDownY;
			
			if(winH < 128) winH = 128;
			if(winW < 128) winW = 128;

			ffresults.element.style.width = winW + "px";
			ffresults.element.style.height = winH + "px";
		}
		else
		{
			var left = ffresults.objectX + x - ffresults.mouseDownX;
			var top = ffresults.objectY + y - ffresults.mouseDownY;

			ffresults.element.style.left = left + "px";
			ffresults.element.style.top = top + "px";
		}
		

	},

	hide : function()
	{
		var rStyle = document.getElementById('ffresult_win').style;
		rStyle.display = "none";
		rStyle.zIndex = 0;
		var ifr = document.getElementById('ffresult_ifr');
		if(ifr) ifr.src="";
		var szImg = document.getElementById('ffresult_szimg');
		if(szImg) szImg.src = "";

	},


	show : function(num)
	{
		if(!document.getElementById) return;

		var searchForm = document.getElementById('ffresult_sbox'+num);
		var idxLink = document.getElementById('ffresult_idx'+num);
		var smpLink = document.getElementById('ffresult_smp'+num);
		var advLink = document.getElementById('ffresult_adv'+num);

		if(searchForm) searchForm.target = 'ffresult_frame';
		if(idxLink) idxLink.target = 'ffresult_frame';
		if(smpLink) smpLink.target = 'ffresult_frame';
		if(advLink) advLink.target = 'ffresult_frame';

		var rDiv = document.getElementById('ffresult_win');

		if(!ffresults.ipos)
		{
		    if(ffresults.autoPos)
			{
			    ffresults.computePos(rDiv); 
			}
			else
			{


            var m = document.getElementById('container');
            var mleft = 0;
            if (m.offsetParent) {
               do {
                  mleft += m.offsetLeft;
               } while (m = m.offsetParent);
            }
				rDiv.style.top = ffresults.initialY + 'px';
				rDiv.style.left = (mleft + 20) + 'px';
				rDiv.style.width = ffresults.initialW + 'px';
				rDiv.style.height = (ffresults.initialH - 36) + 'px';	
			}
			ffresults.ipos = true;
		}

		var szImg = document.getElementById('ffresult_szimg');
		if(szImg) szImg.src = ffresults.sizeImageUrl;

		var dragBar = document.getElementById('ffresult_bar');
		if(dragBar) 
		{
			dragBar.style.backgroundColor = ffresults.barColor;
			dragBar.style.borderColor = ffresults.barColor;
		}

		rDiv.style.zIndex = ffresults.initialZ;
		rDiv.style.display = "block";
	},



	computePos : function(rDiv)
	{

		var view = ffresults.viewSize();
		var w = parseInt(view.width * 0.75,10);
		var h = parseInt(view.height * 0.75,10);
		if(w < 220) w = 220;
		if(h < 220) h = 220;


		var left = parseInt((view.width - w ) / 2,10);
		var top = parseInt((view.height - (h + 36)) / 2,10);


		if(left < 0) left = 0;
		if(top < 0) top = 0;

		rDiv.style.top = (top + view.scrollY) + 'px';
		rDiv.style.left =  (left + view.scrollX) + 'px';
		rDiv.style.width =  w + 'px';
		rDiv.style.height =  h + 'px';

	},
	
	viewSize : function()
	{   
		var w = 0;
		var h = 0;
		var sx = 0;
		var sy = 0;

	    if(window.innerWidth)	
		{  // non-ie
		   w = window.innerWidth;
		   h = window.innerHeight;
		   sx = window.pageXOffset;
		   sy = window.pageYOffset;
		}
		else
		{
		    var elem;
			if(document.documentElement && document.documentElement.clientWidth != 0)
			{   // ie strict
				elem = document.documentElement;
			}
			else
			{	// ie quirks
				elem = document.body;
			}
			w = elem.clientWidth;
			h = elem.clientHeight;
			sx = elem.scrollLeft;
			sy = elem.scrollTop;
			
		}
		  
		
		return {width: w,height: h, scrollX: sx, scrollY: sy};
		
	}
};



//addLoadEvent(initads);



//window.onload = initads();

// shields down -->


