Commit 46900c37

mo khan <mo@mokhan.ca>
2014-08-24 14:34:38
add infinite scroll to homepage.
1 parent 7681a87
Changed files (3)
app/views/creations/_index.html.erb
@@ -0,0 +1,23 @@
+<div class="row-fluid">
+  <% @creations.each_slice(6).each do |batch| %>
+    <ul class='thumbnails'>
+      <% batch.each do |creation| %>
+        <li class="span2">
+          <div class="thumbnail">
+            <%= link_to creation do %>
+              <%= image_tag creation.primary_image.url_for(:thumb) %>
+            <% end %>
+            <div class="caption">
+              <h4><%= link_to shrink(creation.name, 12), creation %></h4>
+              <p><%= link_to shrink(creation.user.name, 20), profile_path(creation.user) %></p>
+              <p><small><%= time_ago_in_words(creation.created_at) %> ago.</small></p>
+            </div>
+          </div>
+        </li>
+      <% end %>
+    </ul>
+  <% end %>
+</div>
+<div id='more-button-row' class="row-fluid">
+  <%= link_to_next_page @creations, 'More...', remote: true, class: 'btn pull-right more-button hidden', data: { disable_with: 'loading...' } %>
+</div>
app/views/creations/index.html.erb
@@ -1,4 +1,11 @@
 <% provide(:description, "CakeSide is a free site to share your cake creations and ideas with other cake fanatics like yourself") -%>
+<%= content_for(:javascript) do %>
+<script type="text/javascript" charset="utf-8">
+  $(window).scroll(function(){
+    $('.more-button').trigger('click');
+  });
+</script>
+<% end %>
 <% unless user_signed_in?  -%>
   <div class="row-fluid">
     <div class="span6">
@@ -15,26 +22,11 @@
     </div>
   </div>
 <% end -%>
-<div class="row-fluid">
-  <% @creations.each_slice(6).each do |batch| %>
-    <ul class='thumbnails'>
-      <% batch.each do |creation| %>
-        <li class="span2">
-          <div class="thumbnail">
-            <%= link_to creation do %>
-              <%= image_tag creation.primary_image.url_for(:thumb) %>
-            <% end %>
-            <div class="caption">
-              <h4><%= link_to shrink(creation.name, 12), creation %></h4>
-              <p><%= link_to shrink(creation.user.name, 20), profile_path(creation.user) %></p>
-              <p><small><%= time_ago_in_words(creation.created_at) %> ago.</small></p>
-            </div>
-          </div>
-        </li>
-      <% end %>
-    </ul>
-  <% end %>
+
+<div id="bakery">
+  <%= render partial: 'index' %>
 </div>
+
 <div class="row-fluid">
   <%= render "shared/paging", items: @creations %>
 </div>
app/views/creations/index.js.erb
@@ -0,0 +1,2 @@
+$('#more-button-row').remove()
+$('#bakery').append('<%= j render partial: 'index' %>');