app/views/forms/list.html.erb in sferik-merb-admin-0.1.8 vs app/views/forms/list.html.erb in sferik-merb-admin-0.1.9
- old
+ new
@@ -1,15 +1,33 @@
+<% params = request.params.except(:action, :controller, :model_name) %>
<div id="content-main">
<ul class="object-tools">
<li>
<%= link_to("Add #{@model_name.snake_case.gsub('_', ' ')}", slice_url(:admin_new, :model_name => @model_name.snake_case), :class => "addlink") %>
</li>
</ul>
<div class="module filtered" id="changelist">
+ <div id="toolbar">
+ <form id="changelist-search" action="" method="get">
+ <div>
+ <label for="searchbar"><img src="<%= image_path("icon_searchbox.png") %>" alt="Search" /></label>
+ <input type="text" size="40" name="query" value="" id="searchbar" />
+ <input type="submit" value="Search" />
+ <% if params[:query] || params[:filter] %>
+ <span class="small quiet"><%= @record_count %> <%= @record_count == 1 ? "result" : "results" %> (<a href="?"><%= @model.count %> total</a>)</span>
+ <% end %>
+ <% if params[:filter] %>
+ <% params[:filter].each do |name, value| %>
+ <input type="hidden" name="filter[<%= name %>]" value="<%= value %>"/>
+ <% end %>
+ <% end %>
+ </div>
+ </form>
+ </div>
+ <script type="text/javascript">document.getElementById("searchbar").focus();</script>
<div id="changelist-filter">
<h2>Filter</h2>
- <% params = request.params.except(:action, :controller, :model_name) %>
<% @properties.each do |property| %>
<% if property.primitive.to_s == "TrueClass" %>
<h3>By <%= property.field.gsub('_', ' ') %></h3>
<ul>
<li<%= params[:filter].nil? || params[:filter][property.name].blank? ? ' class="selected"' : nil %>>
@@ -85,16 +103,16 @@
</tr>
<% end %>
</tbody>
</table>
<p class="paginator">
- <% if @page_count.to_i > 1 %>
- <%= paginate(@current_page, @page_count, :url => slice_url(:admin_list, :model_name => @model_name.snake_case)) %>
- <% end %>
- <%= @model.count %> <%= @model.count == 1 ? @model_name.snake_case.gsub('_', ' ') : @model_name.snake_case.gsub('_', ' ').pluralize %>
- <% if @page_count.to_i == 2 %>
- <%= link_to("Show all", slice_url(:admin_list, :model_name => @model_name.snake_case, :all => true), :class => "showall") %>
- <% end %>
+ <% if @page_count.to_i > 1 %>
+ <%= paginate(@current_page, @page_count, :url => '?' + Merb::Parse.params_to_query_string(params)) %>
+ <% end %>
+ <%= @record_count %> <%= @record_count == 1 ? @model_name.snake_case.gsub('_', ' ') : @model_name.snake_case.gsub('_', ' ').pluralize %>
+ <% if @page_count.to_i == 2 %>
+ <%= link_to("Show all", '?' + Merb::Parse.params_to_query_string(params.merge(:all => true)), :class => "showall") %>
+ <% end %>
</p>
</div>
</div>
<br class="clear" />