topical media & game development

talk show tell print

professional-sql-10-public-files-js-blog.js / js



  // toggle the comments display of a particular post
  function toggleComments(id, link)
  {
      var div = document.getElementById('comments_' + id);
  
      if (div.style.display == 'none')
      {
          link.innerHTML = 'Hide Comments';
          fetchComments(id);
          div.style.display = '';
      }
      else
      {
          link.innerHTML = 'Show Comments';
          div.style.display = 'none';
      }
  }
  
  // retrieve existing comments via "AJAX" 
  window.httpObj;
  function fetchComments(id)
  {
      var div = document.getElementById('comments_' + id);
  
      var url = 'fetch.php?post_id=' + id + "&nocache=" + 
          (new Date()).getTime();
  
      window.httpObj = createXMLHTTPObject();
      window.httpObj.open('GET', url , true);
      window.httpObj.onreadystatechange = function()
      {
          // populate the fields
          if (window.httpObj.readyState == 4 && httpObj.responseText)
          {
              div.innerHTML = httpObj.responseText;
          }
      }
      window.httpObj.send(null);
  }
  
  // submit a comment via "AJAX"
  function postComment(id, form)
  {
      var url = form.action + "&nocache=" + (new Date()).getTime();
      var data = 'person_name=' + escape(form.person_name.value) +
          '&post_comment=' + escape(form.post_comment.value);
  
      window.httpObj = createXMLHTTPObject();
      window.httpObj.open('POST', url , true);
      window.httpObj.setRequestHeader('Content-type',
          'application/x-www-form-urlencoded');
      window.httpObj.setRequestHeader('Content-length', data.length);
      window.httpObj.setRequestHeader('Connection', 'close');
  
      window.httpObj.onreadystatechange = function()
      {
          // populate the fields
          if (window.httpObj.readyState == 4 && window.httpObj.responseText)
          {
              if (window.httpObj.responseText == 'OK')
              {
                  fetchComments(id);
              }
              else
              {
                  alert('Error posting comment.');
              }
          }
      }
      window.httpObj.send(data);
      return false;
  }
  
  


(C) Æliens 20/2/2008

You may not copy or print any of this material without explicit permission of the author or the publisher. In case of other copyright issues, contact the author.