var base_path = '/stylesheets-pic/';
var hide_user = false;

function morePictures() {
  // Hide the button, show the wait spinner
  document.getElementById('loadmore').style.display = 'none';
  document.getElementById('wait').style.display = 'block';

  // Send the request
  $.ajax({
    type: 'GET',
	  url: base_path + 'infiniscroll_ajax.php',
    data: {start: first_hash, skip: current_skip, limit: page_limit,
           source: source, sourcemeta: sourcemeta, sort: sort},
	  dataType: 'xml',
	  success: picturesArrive
  });
}

function picturesArrive(response) {
  //alert(response);
  var error = response.getElementsByTagName('error')[0].childNodes[0].nodeValue;

  if (error == 0) {
    // Extract the photo list from the XML
    var photos = response.getElementsByTagName('photo');
    var has_more = response.getElementsByTagName('hasmore')[0].childNodes[0].nodeValue;
    var result_type = response.getElementsByTagName('resulttype')[0].childNodes[0].nodeValue;
    
    if (result_type == 'brand' || result_type == 'product') {
      var sublead = 'on ';
    } else {
      var sublead = 'by ';
    }

    // For each returned tag, add a thumbnail
    var out = '';
    for (i = 0; i < photos.length; i++) {
      var title         = response.getElementsByTagName('title')[i].childNodes[0].nodeValue;
      var title_link    = response.getElementsByTagName('titlelink')[i].childNodes[0].nodeValue;
      var subtitle      = response.getElementsByTagName('subtitle')[i].childNodes[0].nodeValue;
      var subtitle_link = response.getElementsByTagName('subtitlelink')[i].childNodes[0].nodeValue;
      var thumb         = response.getElementsByTagName('thumb')[i].childNodes[0].nodeValue;
      var thumb_link    = response.getElementsByTagName('thumblink')[i].childNodes[0].nodeValue;
      var sponsored     = response.getElementsByTagName('sponsored')[i].childNodes[0].nodeValue;
      
      if (thumb == 0) {
        thumb = base_path + 'static/default_avatar.png';
      } else {
        thumb = base_path + 'images/' + thumb;
      }

      // Generate some delicious markup
      out += '<div class="thumbnail">';
      out += '<a href="' + thumb_link + '">';
      if (sponsored != 0) {
        out += '<img src="' + thumb + '" class="sponsor">';
      } else {
        out += '<img src="' + thumb + '">';
      }
      out += '</a><br /><div>';
      out += '<a href="' + title_link + '">' + title + '</a>';
      if (subtitle != 0 && subtitle_link != 0) {
        out += '<br /><span class="thumbuser">';
        out += sublead + '<a href="' + subtitle_link + '">' + subtitle + '</a>';
        if (sponsored != 0) out += ' (sponsored)';
        out += '</span>';
      } else if (sponsored != 0) {
        out += '<br /><span class="thumbuser">(sponsored)</span>';
      }
      out += '</div></div>';
      
      current_skip++;
    }
    
    // Add all thumbnails to the page
    document.getElementById('thumbnail_page').innerHTML += out;
    
    if (has_more == 0) {
      // No more. Hide both elements
      document.getElementById('loadmore').style.display = 'none';
      document.getElementById('wait').style.display = 'none';

    } else{
      // More are left. Hide the 'wait' thing, re-show the button
      document.getElementById('loadmore').style.display = 'block';
      document.getElementById('wait').style.display = 'none';
    }

  } else {
    // Something's amiss. Hide both elements
    document.getElementById('loadmore').style.display = 'none';
    document.getElementById('wait').style.display = 'none';
    alert(error);
  }
}

function htmlentities(text) {
  return text.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;');
}
