   

if (window.taValidate == undefined) {
   window.taOnLoad   = window.onload;
   window.taValList  = Array();
   window.taValIndex = 0;
   window.taValidate = function () {
      if (window.taOnLoad != null) {
         try {
         window.taOnLoad();
         } catch (err) { }
      }
      for (ii = 0; ii < window.taValIndex; ii=ii+1) {
         fname = window.taValList[ii]
         fname();
      }
   }
   window.taAddValidator = function (fname) {
      window.taValList[window.taValIndex] = fname;
      window.taValIndex                   = window.taValIndex + 1;
      }
   window.onload = window.taValidate
}
window.taAddValidator (injectexcellent223)

                  if(document.createStyleSheet) {
        document.createStyleSheet("http://cdn.tripadvisor.com/css2/widget/cdswidEXC-v2199024502a.css");
      } else {
        var stylesImport = "@import url(' http://cdn.tripadvisor.com/css2/widget/cdswidEXC-v2199024502a.css ');";
        var newSS=document.createElement('link');
        newSS.rel='stylesheet';
        newSS.href='data:text/css,'+escape(stylesImport);
        if (document.getElementsByTagName("head")[0]) {
            document.getElementsByTagName("head")[0].appendChild(newSS);
        } else {             document.write('<link rel="stylesheet" href="data:text/css,' + escape(stylesImport) + '"/>');
        }
      }
        

function injectexcellent223() {
    var container = document.getElementById('TA_excellent808');
  if (container == null) {
        var scriptTags = document.getElementsByTagName("script");
    for (var i=0; i<scriptTags.length; i++)
    {
      if (scriptTags[i] != null && scriptTags[i].src != null &&
          scriptTags[i].src.indexOf("excellent?uniq=808") >= 0)
      {
        var msgElem = document.createElement('div');
        if (msgElem != null && msgElem != 'undefined')
        {
          msgElem.style.margin='8px';
          msgElem.style.color='red';
          msgElem.innerHTML="Please check the TripAdvisor code and install again.";
          var parentElem = scriptTags[i].parentNode;
          if (parentElem != null && parentElem != 'undefined')
          {
            parentElem.appendChild(msgElem);
          }
          break;
        }
      }
    }
    return;
  }

    var validityRegEx = new RegExp('https?://([^/]+\.|)tripadvisor\.(com|co\.uk|fr|it|es|de|ie|in|jp|se|ca|com\.br)/.*');
  var taServerName = 'tripadvisor';
   var valid = true;
  var linksNum = 0;
      var links = container.getElementsByTagName("a");
    for (var i=0; i<links.length; i++) {
    var taLink = links[i];
    var taLinkStr = taLink.href;
    if (taLinkStr.indexOf(taServerName) != -1) {
      linksNum = linksNum + 1;
      if (typeof(taLink.rel) != 'undefined' && taLink.rel == 'nofollow') {
        valid = false;
        continue;
      }
            if (!taLinkStr.match(validityRegEx)) {
        valid = false;
        continue;
      }
    }
  }
  if (linksNum == 0) {
    valid = false;
  }
  if (!valid) {
    var tmpStr = '<dl><dt>' + "Please check the TripAdvisor code and install again." + '</dt></dl>';
    container.innerHTML = tmpStr;
  } else {
    container.innerHTML = '<div id="CDSWIDEXC" class="widEXC"> '+
'<a target="_blank" href="http://www.tripadvisor.com/Hotel_Review-g60982-d120684-Reviews-Outrigger_Waikiki_on_the_Beach-Honolulu_Oahu_Hawaii.html"><img class="widEXCIMG" id="CDSWIDEXCIMG" src="http://www.tripadvisor.com/img/cdsi/img2/badges/excellent_en-11863-1.gif" alt="Outrigger Waikiki on the Beach, Honolulu, Oahu"/></a><br/> '+
'<div id="CDSWIDEXCLINK" class="widEXCLINK"> '+
'<a target="_blank" href=http://www.tripadvisor.com/Hotel_Review-g60982-d120684-Reviews-Outrigger_Waikiki_on_the_Beach-Honolulu_Oahu_Hawaii.html>Outrigger Waikiki on the Beach</a> rated "excellent" by 372 travelers<br/> '+
'</div> '+
'<div> '+
'<img class="widEXCIMG" id="CDSWIDEXCLOGO" src="http://cdn.tripadvisor.com/img2/widget/tripadvisor_logo_100x25.gif"/> '+
'</div> '+
'</div><!--/ cdsEXCBadge--> '+
'';
  }  
}
