if ( typeof ScrollSearch == 'undefined' ) {
  var ScrollSearch = {};
  ScrollSearch.url = "http://www.thingslabo.com/apps/json/";
}

ScrollSearch.int = function () {
	ScrollSearch.isSerach = 1;
	ScrollSearch.loaded = 1;
	ScrollSearch.page = 1;

	$(window).scroll(function(){
		if (! ScrollSearch.loaded) return 0;
		if (! ScrollSearch.isSerach) return 0;
		var offset = $(document).scrollTop() / $(document).height();
		var ratio = $(document).height() / $(window).height();

		if (ratio < 2 && offset > 0.3) {
			ScrollSearch.loaded = 0;
			ScrollSearch.serach();
		}
		else if (ratio < 3 && offset > 0.5) {
			ScrollSearch.loaded = 0;
			ScrollSearch.serach();
		}
		else if (ratio < 4 && offset > 0.6) {
			ScrollSearch.loaded = 0;
			ScrollSearch.serach();
		}
		else if (offset > 0.7) {
			ScrollSearch.loaded = 0;
			ScrollSearch.serach();
		}
	});
}

ScrollSearch.serach = function () {
	ScrollSearch.page++;
	$.ajax({
		type: "GET",
		url: ScrollSearch.url + "?callback=ScrollSearch.callback&page="+ScrollSearch.page,
		dataType: "jsonp",
		jsonp : 'ScrollSearch.callback',
	});
}

ScrollSearch.callback = function (cb) {
  if (! cb.length) {
    ScrollSearch.isSerach = 0;
    return 0;
  }
  for (var i=0; i<cb.length; i++){
    var name = decodeURIComponent(cb[i].name);
    var url = cb[i].url;
    var description = decodeURIComponent(cb[i].description);
    var version = cb[i].version;
    var image = cb[i].image;
    var category = decodeURIComponent(cb[i].category);

    var body = '';
    body += '<a href="'+url+'">';
    body += '<div class="column size0 clickable" style="display:none;">';
    if (image) body += '<div class="g"><img src="'+image+'" border="0"></div>';
    body += '<h2>'+name+'</h2>';
    if (description) body += '<p class="description">'+description+'</p>';
    if (version) body += '<p class="ver">ver.'+version+'</p>';
    if (category) body += '<p class="category">&lt;'+category+'&gt;</p>';
    body += '</div>';
    body += '</a>';

    container.mas( 'reload', body );
  }

  ScrollSearch.loaded = 1;
}

ScrollSearch.int();


