/*************************************************************/
/* Copyright 2002-2003 by JAR Networks. All rights reserved. */
/*************************************************************/


var eventWindow
function eventWin(page)
{
if( !eventWindow || eventWindow.closed)
  {
  eventWindow=window.open('','eventWindow','menubar,resizable,scrollbars,status,toolbar,height=450,width=650')
  eventWindow.location = page
  }
 else
  {
  eventWindow.location = page
  eventWindow.focus()
  }
}


var submitWindow
function submitWin(page)
{
if( !submitWindow || submitWindow.closed)
  {
  submitWindow=window.open('','submitWindow','menubar,resizable,scrollbars,status,toolbar,height=450,width=450')
  submitWindow.location = page
  }
 else
  {
  submitWindow.location = page
  submitWindow.focus()
  }
}


var artWindow
function artWin(page)
{
var url = ""
for( var i=0; i<page.length; i++ )
   {
   url = url+page.charAt(page.length-(1+i))
   }
if( !artWindow || artWindow.closed)
  {
  artWindow=window.open('','artWindow','menubar,resizable,scrollbars,status,toolbar,height=450,width=650')
  artWindow.location = url
  }
 else
  {
  artWindow.location = url
  artWindow.focus()
  }
}

function removeWhiteSpace(text)
  {
  var length = text.length;
  var start  = 0;
  var char1  = ' ';
  for( var i=0; i<length; i++ )
     {
     char1 = text.charAt(i);
     if( char1 != ' ')
       {
       start = i;
       break;
       }
     } 
  if( (start==0) && (i==length) )
    {
    return '';
    }
  var end = i + 1;
  for( i; i<length; i++ )
     {
     char1 = text.charAt(i);
     if( (char1 != ' ') )
       {
       end = i + 1;
       }
     }
  return text.substring(start, end);
  }


var detailsReq  = false;
var detailsElm  = '';
var detailsId   = 0;
var detailsType = 0;

function loadDetails( elementName, elementID, eventType ) {
var url = 'http://www.eventjar.com/cgi-bin/community_event.cgi';
    url += '?eventID=' + elementID + '&eventType=' + eventType;
var html_text  = 'Loading event details, please wait.';
    detailsElm = elementName;
    detailsId  = elementID;
    detailsType= eventType;
    document.getElementById( elementName ).innerHTML = html_text;
    loadXML( url, detailsReqChange ); 
}  


function loadXML( url, callback ) {
  detailsReq = false;
  if( window.XMLHttpRequest ) {
    detailsReq = new XMLHttpRequest();
    } 
  else { 
    detailsReq = new ActiveXObject( 'Msxml2.XMLHTTP' );
    if( !(detailsReq) ) {
      detailsReq = new ActiveXObject( 'Microsoft.XMLHTTP' );
      } 
    }
  if( detailsReq ) {
    detailsReq.onreadystatechange = callback;
    detailsReq.open( 'GET', url );
    detailsReq.send( '' );
    }
  else {
    alert( 'no XMLHttpRequest object' );
    }
}


function detailsReqChange() {
  var html_text = 'Error loading event details.';
  if( detailsReq.readyState == 4 ) {
    if( detailsReq.status == 200 ) {
      html_text  = detailsReq.responseText;
      html_text += "<br><a href='javascript:detailsClose(";
      html_text += '"';
      html_text += detailsElm;
      html_text += '",' + detailsId + ',' + detailsType;
      html_text += ")'><b class='details'>Close</b></a>";
      document.getElementById(detailsElm).innerHTML = html_text;
      }
    else {
      document.getElementById(detailsElm).innerHTML = html_text;
      }
    }
}    


function detailsClose( a, b, c) {
  var html_text = "<a href='javascript:loadDetails(";
      html_text += '"';
      html_text += a;
      html_text += '",';
      html_text += b;
      html_text += ',';
      html_text += c;
      html_text += ")'><b class='details'>Details</b></a>";
  document.getElementById(a).innerHTML = html_text;
}

var rateReq  = false;
var rateElm  = '';
var rateId   = 0;
var venName  = '';
var at2Name  = '';
var at3Name  = '';

function rate_it( elementName, elementID, vName, a2Name, a3Name, rating, num ) {
    rateElm = elementName;
    rateId  = elementID;
    venName = vName;
    at2Name = a2Name;
    at3Name = a3Name;

var html_text  = '';
    html_text += "<FORM>";
    html_text += "<TABLE BORDER='0' CELLSPACING='0' CELLPADDING=4>";
    html_text += "<tr><td colspan=2 align='left'>\n";
    html_text += "This " + vName + " has a current rating of <b>" + rating.charAt(0) + "." + rating.charAt(1);
    html_text += " based on " + num + " ratings</b>. ";
    html_text += "Rate this " + vName + " on the 4 attributes below, then click on the Submit Rating button.";
    html_text += "</td></tr>\n";

    html_text += "<tr><td align='right'><b>Value:</b>";
    html_text += "</td><td><SELECT NAME='v' > \n";
    html_text += "<OPTION VALUE='0'> Rate It \n";
    html_text += "<OPTION VALUE='1'> Bad \n";
    html_text += "<OPTION VALUE='2'> Poor \n";
    html_text += "<OPTION VALUE='3'> Fair \n";
    html_text += "<OPTION VALUE='4'> Good \n";
    html_text += "<OPTION VALUE='5'> Excellent \n";
    html_text += "</SELECT> </td></tr>\n";

    html_text += "<tr><td align='right'><b>" + a2Name + ":</b>";
    html_text += "</td><td><SELECT NAME='f' > \n";
    html_text += "<OPTION VALUE='0'> Rate It \n";
    html_text += "<OPTION VALUE='1'> Bad \n";
    html_text += "<OPTION VALUE='2'> Poor \n";
    html_text += "<OPTION VALUE='3'> Fair \n";
    html_text += "<OPTION VALUE='4'> Good \n";
    html_text += "<OPTION VALUE='5'> Excellent \n";
    html_text += "</SELECT> </td></tr>\n";

    html_text += "<tr><td align='right'><b>" + a3Name + ":</b>"; 
    html_text += "</td><td><SELECT NAME='a' > \n";
    html_text += "<OPTION VALUE='0'> Rate It \n";
    html_text += "<OPTION VALUE='1'> Bad \n";
    html_text += "<OPTION VALUE='2'> Poor \n";
    html_text += "<OPTION VALUE='3'> Fair \n";
    html_text += "<OPTION VALUE='4'> Good \n";
    html_text += "<OPTION VALUE='5'> Excellent \n";
    html_text += "</SELECT> </td></tr>\n";

    html_text += "<tr><td align='right'><b>Service:</b>"; 
    html_text += "</td><td><SELECT NAME='s' > \n";
    html_text += "<OPTION VALUE='0'> Rate It \n";
    html_text += "<OPTION VALUE='1'> Bad \n";
    html_text += "<OPTION VALUE='2'> Poor \n";
    html_text += "<OPTION VALUE='3'> Fair \n";
    html_text += "<OPTION VALUE='4'> Good \n";
    html_text += "<OPTION VALUE='5'> Excellent \n";
    html_text += "</SELECT> </td></tr>\n";

    html_text += "<tr><td align='right'>";
    html_text += "<INPUT type='button' name='cb' value='Cancel' onClick='rateClose(rateElm, rateId)'> ";
    html_text += "</td><td><INPUT type='button' name='sb' value='Submit Rating' ";
    html_text += "                onClick='submit_rate(this.form, rateElm, rateId, venName, at2Name, at3Name)'> ";
    html_text += "</td></tr>";
    html_text += "</TABLE>";
    html_text += "</FORM>";
    html_text += "<hr>";
    document.getElementById( elementName ).innerHTML = html_text;
}

function submit_rate( form, elementName, elementID, vName, a2Name, a3Name ) {
    var v = form.v.options[form.v.selectedIndex].value;
    var f = form.f.options[form.f.selectedIndex].value;
    var a = form.a.options[form.a.selectedIndex].value;
    var s = form.s.options[form.s.selectedIndex].value;
    var msg = '';

    if( v == 0 ) {
      alert( 'Please rate this ' + vName +'\'s overall Value.' );
      return;
      }

    if( f == 0 ) {
      alert( 'Please rate this ' + vName +'\'s ' + a2Name + '.' );
      return;
      } 

    if( a == 0 ) {
      alert( 'Please rate this ' + vName +'\'s ' + a3Name + '.' );
      return;
      } 
    
    if( s == 0 ) {
      alert( 'Please rate this ' + vName +'\'s Service provided.' ); 
      return;
      }

var url = 'http://www.eventjar.com/cgi-bin/submit_rating.cgi';
    url += '?venueID=' + elementID;
    url += '&v=' + v + '&f=' + f + '&a=' + a + '&s=' + s;
var html_text  = 'Submitting rating details, please wait.';
    rateElm = elementName;
    rateId  = elementID;  
    document.getElementById( elementName ).innerHTML = html_text;
    r_loadXML( url, rateReqChange );
} 
  
   
function r_loadXML( url, callback ) {
  rateReq = false;
  if( window.XMLHttpRequest ) {
    rateReq = new XMLHttpRequest();
    }
  else {
    rateReq = new ActiveXObject( 'Msxml2.XMLHTTP' );
    if( !(rateReq) ) {
      rateReq = new ActiveXObject( 'Microsoft.XMLHTTP' );
      }
    }
  if( rateReq ) {
    rateReq.onreadystatechange = callback;
    rateReq.open( 'GET', url );
    rateReq.send( '' );
    }
  else {
    alert( 'no XMLHttpRequest object' );
    }
}

 
function rateReqChange() {
  var html_text = 'Error submitting rating details.';
      html_text += "<hr>";
  if( rateReq.readyState == 4 ) {
    if( rateReq.status == 200 ) {
      html_text  = rateReq.responseText;
      html_text += "<INPUT type='button' name='cb' value='Close' onClick='rateClose(rateElm, rateId)'> ";
      html_text += "<HR>";
      document.getElementById(rateElm).innerHTML = html_text;
      }
    else {
      document.getElementById(rateElm).innerHTML = html_text;
      }
    }
}

function rateClose( a, b) {
  var html_text = '';
  document.getElementById(a).innerHTML = html_text;
}   



var postReq  = false;
var postElm  = ''; 
var postId   = 0;
var postType = 0;
       
function post_review(  elementName, elementID, eventType ) {
    postElm = elementName;
    postId  = elementID;
    postType= eventType;
var html_text  = '';
    html_text += "<FORM>";
    html_text += "<TABLE BORDER='0' CELLSPACING='0' CELLPADDING=4>";
    html_text += "<tr><td>\n";
    html_text += "<b>Review:</b> ";
    html_text += "1000 characters max, ";
    html_text += "<INPUT name='review_cnt' disable value=1000 size=4 onFocus='this.blur();' > ";
    html_text += "left.";
    html_text += "</td></tr>\n";

    html_text += "<tr><td>\n";
    html_text += "<textarea name='review' \n";
    html_text += "          rows=5 cols=33 wrap='physical' ";  
    html_text += "          onKeyDown='onReviewKey(this.form)'";      
    html_text += "          onKeyUp  ='onReviewKey(this.form)'";
    html_text += "          onBlur   ='onReviewBlur(this.form)' ";
    html_text += "          onFocus  ='onReview(this.form)' >";
    html_text += "\n\nenter your review here.";
    html_text += "</textarea>";
    html_text += "</td></tr>\n";

    html_text += "<tr><td align='right'>\n";
    html_text += "<b>Email Addr:</b> ";
    html_text += "<INPUT type='text' name='email_text' size=25 value='' onBlur='onRemailBlur(this.form)' >&nbsp;&nbsp;";
    html_text += "</td></tr>\n";

    html_text += "<tr><td align='right'>\n";
    html_text += "<b>Confirm Addr:</b> ";
    html_text += "<INPUT type='text' name='email2_text' size=25 value='' onBlur='onRemail2Blur(this.form)' >&nbsp;&nbsp;<br>";
    html_text += "</td></tr>\n";

    html_text += "<tr><td>\n";
    html_text += "Your email is needed so you can confirm your review, it will not be displayed, ";
    html_text += "sold, sharded, or abused.<br>";
    html_text += "</td></tr>\n";

    html_text += "<tr><td>\n";
    html_text += "&nbsp;&nbsp;&nbsp;&nbsp;";
    html_text += "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
    html_text += "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
    html_text += "<INPUT type='button' name='cb' value='Cancel' onClick='postClose(postElm, postId)'> ";
    html_text += "&nbsp;&nbsp;&nbsp;&nbsp;";
    html_text += "<INPUT type='button' name='sb' value='Submit Review' onClick='submit_post(this.form, postElm, postId, postType)'> ";
    html_text += "<INPUT type='hidden' name='name_req'    value='0'> ";
    html_text += "<INPUT type='hidden' name='screen_name' value=''> ";
    html_text += "</td></tr>";
    html_text += "</TABLE>";
    html_text += "</FORM>";
    html_text += "<hr>";
    document.getElementById( elementName ).innerHTML = html_text;
}

var review_max   = 1000;
var r_first_edit = 1;
function onReviewKey(form)
  {
  if( form.review.value.length > review_max )
    {
    form.review.value = form.review.value.substring(0,review_max);
    }
  else 
    {
    form.review_cnt.value = review_max - form.review.value.length;
    }
  } 

function onReviewBlur(form)
  {
  form.review.value = removeWhiteSpace(form.review.value);
  if( form.review.value.length > review_max )
    {
    form.review.value = form.review.value.substring(0,review_max);
    }
  form.review_cnt.value = review_max - form.review.value.length;
  }
  
function onReview(form)
  {
  if( r_first_edit )
    {
    form.review.value = '';
    r_first_edit = 0;
    }
  }

function onRemailBlur(form)
  {
  form.email_text.value = removeWhiteSpace(form.email_text.value);
  var text   = form.email_text.value;
  var length = text.length;
  var at_cnt = 0;
  var bcount = 0;
  var count  = 0;
  if( length == 0 )
    {
    return(1);
    }
  for( var i=0; i<length; i++ )
     {
     if( text.charAt(i) == '\@' )
       {
       at_cnt += 1;
       bcount  = count;
       count   = 0;
       }
     else
       {
       count += 1;
       }
     }
  if( (at_cnt!=1) || (bcount<1) || (count<1) )
    {
    alert( 'Not a valid E-mail address, please re-enter.' );
    return( 1 );
    }
  return( 0 );
  }

function onRemail2Blur(form)
  {
  form.email2_text.value = removeWhiteSpace(form.email2_text.value);
  var text  = form.email_text.value;
  var text2 = form.email2_text.value;
  if( text.length != text2.length )
    {
    form.email2_text.value = '';
    alert( 'Sorry.  Your e-mail does not match, please re-confirm.' );
    return(1);
    }
  for( var i=0; i<text.length; i++ )
     {
     if( text.charAt(i) != text2.charAt(i) )
       {
       form.email2_text.value = '';
       alert( 'Sorry.  Your e-mail does not match, please re-confirm.' );
       return(1);
       }
     }
  return(0);
  }



function submit_post( form, elementName, elementID, eventType ) 
  {
  if( form.review_cnt.value == 1000 )
    {
    alert( 'Please enter your 1000 character or less Review in the space provided.' );
    return;
    }

  if( form.email_text.value.length < 1 )
    {
    alert( 'Please enter Email address.' );
    return;
    }
  if( onRemailBlur(form) )
    {
    return;
    }
  if( form.email2_text.value.length < 3 )
    {
    alert( 'Please confirm Email address.' );
    return;
    }

  r_first_edit = 1; 
  var url = 'http://www.eventjar.com/cgi-bin/submit_review.cgi';
  var html_text  = 'Submitting review, please wait.';
  var post_text = 'venueID='      + encodeURI(elementID) + 
                  '&venueType='   + encodeURI(eventType) +
                  '&email='       + encodeURI(form.email_text.value) + 
                  '&review_cnt='  + encodeURI(form.review_cnt.value) +
                  '&review='      + encodeURI(form.review.value) +
                  '&name_req='    + encodeURI(form.name_req.value) +
                  '&screen_name=' + encodeURI(form.screen_name.value);
  postElm = elementName;
  postId  = elementID;
  postType= eventType;
  document.getElementById( elementName ).innerHTML = html_text;
  p_loadXML( url, postReqChange, post_text );
}

function p_loadXML( url, callback, post_text ) {
  postReq = false;
  if( window.XMLHttpRequest ) {
    postReq = new XMLHttpRequest();
    }
  else {
    postReq = new ActiveXObject( 'Msxml2.XMLHTTP' );
    if( !(rateReq) ) {
      postReq = new ActiveXObject( 'Microsoft.XMLHTTP' );
      } 
    }
  if( postReq ) {
    postReq.onreadystatechange = callback;
    postReq.open( 'POST', url );
    postReq.send( post_text );
    }
  else { 
    alert( 'no XMLHttpRequest object' );
    }
}   


function postReqChange() {
  var html_text = 'Error posting review.';
      html_text += "<INPUT type='button' name='cb' value='Close' onClick='postClose(postElm, postId)'> ";
      html_text += "<hr>";
  if( postReq.readyState == 4 ) {
    if( postReq.status == 200 ) {
      html_text  = postReq.responseText;
      html_text += "<HR>";
      document.getElementById(postElm).innerHTML = html_text;
      }
    else {
      document.getElementById(postElm).innerHTML = html_text;
      }
    } 
}

function postClose( a, b) {
  var html_text = '';
  document.getElementById(a).innerHTML = html_text;
}
   


var readReq  = false;
var readElm  = '';
var readId   = 0;
var readType = 0;

function read_review( elementName, elementID, eventType ) {
    var i;
    var v = 0;
    var f = 0;
    var a = 0;
    var s = 0;
   
var url  = 'http://www.eventjar.com/cgi-bin/read_reviews.cgi';
    url += '?venueID=' + elementID + '&venueType=' + eventType;
var html_text  = 'Reading reviews, please wait.';
    readElm = elementName;
    readId  = elementID;
    readType= eventType;
    document.getElementById( elementName ).innerHTML = html_text;
    rd_loadXML( url, readReqChange );
}

function rd_loadXML( url, callback ) {
  readReq = false;
  if( window.XMLHttpRequest ) {
    readReq = new XMLHttpRequest();
    }
  else {
    readReq = new ActiveXObject( 'Msxml2.XMLHTTP' );
    if( !(rateReq) ) {
      readReq = new ActiveXObject( 'Microsoft.XMLHTTP' );
      }
    }
  if( readReq ) {
    readReq.onreadystatechange = callback;
    readReq.open( 'GET', url );
    readReq.send( '' );
    }   
  else {
    alert( 'no XMLHttpRequest object' );
    }
}   

   
function readReqChange() {
  var html_text = 'Sorry, we found no reviews for this restaurants.';
      html_text += "<INPUT type='button' name='cb' value='Close' onClick='readClose(readElm, readId)'> ";
      html_text += "<hr>";
  if( readReq.readyState == 4 ) {
    if( readReq.status == 200 ) {
      html_text  = readReq.responseText;
      document.getElementById(readElm).innerHTML = html_text;
      }
    else {
      document.getElementById(readElm).innerHTML = html_text;
      }
    } 
}    

function readClose( a, b) {
  var html_text = '';
  document.getElementById(a).innerHTML = html_text;
}



var yesReq  = false;
var yesElm  = '';
var yesId   = 0;
var yesFlag = 0;

function reviewYesNo( elementName, elementID, review_id, flag ) {
var html_text  = '';
var url  = 'http://www.eventjar.com/cgi-bin/review_yes_no.cgi';
    url += '?venueID=' + elementID + '&reviewID=' + review_id + '&flag=' + flag;
    if( flag == 1 ) {
      html_text  = 'Submitting you Yes for this review, please wait.';
      }
    else {
      html_text  = 'Submitting you No for this review, please wait.';
      }
    yesElm = elementName;
    yesId  = elementID;
    yesFlag= flag;
    document.getElementById( elementName ).innerHTML = html_text;
    yes_loadXML( url, yesReqChange );
}
 
function yes_loadXML( url, callback ) {
  yesReq = false;
  if( window.XMLHttpRequest ) {
    yesReq = new XMLHttpRequest();
    } 
  else {
    yesReq = new ActiveXObject( 'Msxml2.XMLHTTP' );
    if( !(yesReq) ) {
      yesReq = new ActiveXObject( 'Microsoft.XMLHTTP' );
      } 
    } 
  if( yesReq ) {
    yesReq.onreadystatechange = callback;
    yesReq.open( 'GET', url );
    yesReq.send( '' );
    }
  else {
    alert( 'no XMLHttpRequest object' );
    }
}
    
   
function yesReqChange() {
  var html_text = "<font color='red'>";
  if(yesFlag == 1) {
    html_text += "Sorry, we could not report your Yes for this review.</font>";
    }
  else {
    html_text += "Sorry, we could not report your No for this review.</font>";
    }
  html_text += "</font>";
  if( yesReq.readyState == 4 ) {
    if( yesReq.status == 200 ) {
      html_text  = yesReq.responseText;
      document.getElementById(yesElm).innerHTML = html_text;
      }
    else {
      document.getElementById(yesElm).innerHTML = html_text;
      }
    }
}


var abuseReq  = false;
var abuseElm  = '';
var abuseId   = 0;

function reviewAbuse(  elementName, elementID, review_id ) {
    abuseElm = elementName; 
    abuseId  = elementID;
    reviewId = review_id;
var html_text  = '';
    html_text += "<FORM>";
    html_text += "<TABLE BORDER='0' CELLSPACING='0' CELLPADDING=4>";
    html_text += "<tr><td>\n";
    html_text += "<b>Abuse Report:</b> ";
    html_text += "1000 characters max, ";
    html_text += "<INPUT name='review_cnt' disable value=1000 size=4 onFocus='this.blur();' > ";
    html_text += "left.";
    html_text += "</td></tr>\n";
  
    html_text += "<tr><td>\n";
    html_text += "<textarea name='review' \n";
    html_text += "          rows=5 cols=33 wrap='physical' ";
    html_text += "          onKeyDown='onReviewKey(this.form)'";
    html_text += "          onKeyUp  ='onReviewKey(this.form)'";
    html_text += "          onBlur   ='onReviewBlur(this.form)' ";
    html_text += "          onFocus  ='onReview(this.form)' >";
    html_text += "\nEnter why you feel this is review is abusive here.";
    html_text += "Please include your email address if you what a reponse.";
    html_text += "</textarea>";
    html_text += "</td></tr>\n";
    
    html_text += "<tr><td>\n";
    html_text += "&nbsp;&nbsp;";
    html_text += "<INPUT type='button' name='cb' value='Cancel' onClick='abuseClose(abuseElm, abuseId)'> ";
    html_text += "&nbsp;&nbsp;";
    html_text += "<INPUT type='button' name='sb' value='Submit Abuse Report' ";
    html_text += "       onClick='submit_abuse(this.form, abuseElm, abuseId, reviewId)'> ";
    html_text += "</td></tr>";
    html_text += "</TABLE>";
    html_text += "</FORM>";
    document.getElementById( elementName ).innerHTML = html_text;
}   

function abuseClose( a, b) {
  var html_text = '';
  document.getElementById(a).innerHTML = html_text;
}

function submit_abuse( form, elementName, elementID, reviewID )
  {
  if( form.review_cnt.value == 1000 )
    {
    alert( 'Please enter your 1000 character or less Restaurant Review in the space provided.' );
    return;
    }
    
  r_first_edit = 1;
  var url = 'http://www.eventjar.com/cgi-bin/submit_abuse.cgi';
  var html_text  = 'Submitting review, please wait.';
  var post_text = 'venueID='      + encodeURI(elementID) +
                  '&reviewID='    + encodeURI(reviewID) +
                  '&review_cnt='  + encodeURI(form.review_cnt.value) +
                  '&review='      + encodeURI(form.review.value) ;
  postElm = elementName;
  postId  = elementID;
  document.getElementById( elementName ).innerHTML = html_text;
  ab_loadXML( url, abuseReqChange, post_text );
}   

function ab_loadXML( url, callback, post_text ) {
  abuseReq = false;
  if( window.XMLHttpRequest ) {
    abuseReq = new XMLHttpRequest();
    }
  else {
    abuseReq = new ActiveXObject( 'Msxml2.XMLHTTP' );
    if( !(rateReq) ) {
      abuseReq = new ActiveXObject( 'Microsoft.XMLHTTP' );
      }
    }
  if( abuseReq ) {
    abuseReq.onreadystatechange = callback;
    abuseReq.open( 'POST', url );
    abuseReq.send( post_text );
    }
  else {
    alert( 'no XMLHttpRequest object' );
    }
}

function abuseReqChange() { 
  var html_text = "<font color='red'>Error posting Abuse Report.</font>";
  if( abuseReq.readyState == 4 ) {
    if( abuseReq.status == 200 ) {
      html_text  = abuseReq.responseText;
      document.getElementById(abuseElm).innerHTML = html_text;
      }
    else {
      document.getElementById(abuseElm).innerHTML = html_text;
      }
    }
} 


function rating( elementName, vName, a2Name, a3Name )
  {
    readElm = elementName;
var html_text  = '';
    html_text += "<TABLE BORDER='0' CELLSPACING='0' CELLPADDING=2>";
    html_text += "<tr><td colspan=2 align='center'>";
    html_text += '<b>EventJar Rating System</b>';
    html_text += "</td></tr>";

    html_text += "<tr><td colspan=2>";
    html_text += vName;
    html_text += " ratings are computed using a weighted average of four attributes, ";
    html_text += "<font color='blue'><b>V</b></font>alue, ";
    html_text += "<font color='blue'><b>" + a2Name.charAt(0) + "</b></font>" + a2Name.substring(1,a2Name.length) + ", ";
    html_text += "<font color='blue'><b>" + a3Name.charAt(0) + "</b></font>" + a3Name.substring(1,a3Name.length) + ", and ";
    html_text += "<font color='blue'><b>S</b></font>ervice which are rated on a scale of 1 to 5.<br> ";
    html_text += "</td></tr>";

    html_text += "<tr><td align='right' width='45%'>";
    html_text += "1 </td><td>Bad";
    html_text += "</td></tr>";

    html_text += "<tr><td align='right'>";  
    html_text += "2 </td><td>Poor";  
    html_text += "</td></tr>";
    
    html_text += "<tr><td align='right'>";  
    html_text += "3 </td><td>Fair";  
    html_text += "</td></tr>";
    
    html_text += "<tr><td align='right'>";  
    html_text += "4 </td><td>Good";  
    html_text += "</td></tr>";
    
    html_text += "<tr><td align='right'>";  
    html_text += "5 </td><td>Excellent";  
    html_text += "</td></tr>";
    

    html_text += "<tr><td  colspan=2 align='right'>";
    html_text += "<INPUT type='button' name='cb' value='Close' onClick='readClose(readElm, readId)'> ";
    html_text += "</td></tr>";
    html_text += "</TABLE>";
    html_text += "<hr>";
    document.getElementById(readElm).innerHTML = html_text;
  }

function riOv( name ) {
  window.status = 'Click to rate this ' + name + '.';
  return true;
  }
function raOv( name ) {
  window.status = 'Click to read reviews for this ' + name + '.';
  return true;
  }
function pOv( name ) {
  window.status = 'Click to post a review for this ' + name + '.';
  return true;
  }
function rOv( cat_name ) {
  window.status = cat_name + ' score base on a 1-5 scale.';
  return true;
  }
function rOu() {
  window.status = '';
  return true;
  }


