/kai/public/javascripts/community.js

https://bitbucket.org/bbangert/kai/ · JavaScript · 45 lines · 37 code · 3 blank · 5 comment · 1 complexity · e5125b6fde9455dce9be08f326072fad MD5 · raw file

  1. $(document).ready(function() {
  2. // Trigger the recent mail list thread loading
  3. var ml = $('#maillist');
  4. ml.html('Loading');
  5. var data = {mode:'json', page:1, q:'list:pylons'};
  6. var searchResults = $.getJSON('http://markmail.org/results.xqy?callback=?', data,
  7. function(data) {
  8. ml.html('');
  9. // If there's no search results, stop here
  10. if (!data.search.results) {
  11. return false;
  12. }
  13. // Iterate through the search results adding them dynamically
  14. // to the element
  15. $.each(data.search.results.result, function(i, val) {
  16. var result = $(document.createElement('div')).addClass('result');
  17. var link = document.createElement('a');
  18. link.href = 'http://markmail.org' + val.url.replace(/\?callback.*?\&/, '?');
  19. link.target = '_blank';
  20. $(link).html(val.subject);
  21. result.append(link);
  22. var blurb = $(document.createElement('div')).addClass('blurb');
  23. // Pull out just the first 50 words
  24. var words = val.blurb.split(' ', limit=25);
  25. blurb.html(words.join(' '));
  26. result.append(blurb);
  27. var meta = $(document.createElement('div')).addClass('meta');
  28. meta.html(val.date + ' - ' + val.from);
  29. result.append(meta);
  30. ml.append(result);
  31. });
  32. var searchlink = document.createElement('a');
  33. searchlink.href = data.search.permalink;
  34. searchlink.target = '_blank';
  35. $(searchlink).html('View entire mail list');
  36. var numresults = $(document.createElement('p'));
  37. numresults.addClass('results');
  38. numresults.prepend(searchlink);
  39. ml.append(numresults);
  40. }
  41. );
  42. });