Commit dd53c55a
Changed files (5)
app
controllers
admin
views
admin
tools
my
shared
app/controllers/admin/tools_controller.rb
@@ -0,0 +1,15 @@
+module Admin
+ class ToolsController < AdminController
+ def index
+ @tools = search_for_tools(params[:q])
+ end
+
+ private
+
+ def search_for_tools(query)
+ return [] if query.blank?
+ client = ASIN::Client.instance
+ client.search(Keywords: query, SearchIndex: :Kitchen, Sort: :salesrank)
+ end
+ end
+end
app/views/admin/tools/index.html.erb
@@ -0,0 +1,33 @@
+<div class="row-fluid">
+ <div class="span2">
+ <%= render partial: "my/shared/my_nav" %>
+ </div>
+ <div class="span10">
+ <h1>Tools</h1>
+ <%= form_tag admin_tools_path, method: :get, name: 'search', class: 'form-horizontal' do %>
+ <%= text_field_tag :q, params[:q], class: "search-query", placeholder: "Search" %>
+ <%= submit_tag 'Search', class: 'btn btn-primary' %>
+ <% end %>
+
+ <table class="table table-striped">
+ <tbody>
+ <% @tools.each do |tool| %>
+ <tr>
+ <td><%= link_to tool.asin, tool.detail_page_url %></td>
+ <td>
+ <%= link_to tool.item_attributes.title, tool.detail_page_url %> is made by <%= tool.item_attributes.manufacturer %> in category <%= tool.item_attributes.product_group %>
+ </td>
+ <td>
+ <ul>
+ <% tool.item_links.item_link.each do |link| %>
+ <li><%= link_to link.description, link.url %></li>
+ <% end %>
+ </ul>
+ </td>
+ </tr>
+ <% end %>
+ </tbody>
+ </table>
+ </div>
+</div>
+
config/initializers/asin.rb
@@ -3,3 +3,5 @@ ASIN::Configuration.configure do |config|
config.secret = ENV.fetch('AWS_PRODUCT_SECRET')
config.associate_tag = ENV.fetch('AWS_PRODUCT_ASSOCIATE_ID')
end
+HTTPI.adapter = :curb
+HTTPI.logger = Rails.logger
config/routes.rb
@@ -84,6 +84,7 @@ Cake::Application.routes.draw do
resources :blobs, only: [:index, :show]
resources :errors, only: [:index, :create]
resources :sessions, only: [:index, :destroy]
+ resources :tools, only: [:index]
end
namespace :my do