Skip to content
Open

Done #1296

Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 19 additions & 3 deletions app/application.rb
Original file line number Diff line number Diff line change
@@ -1,30 +1,46 @@
class Application

@@items = ["Apples","Carrots","Pears"]
@@cart = []

def call(env)
resp = Rack::Response.new
req = Rack::Request.new(env)

if req.path.match(/items/)
@@items.each do |item|
resp.write "#{item}\n"
end
elsif req.path.match(/search/)
search_term = req.params["q"]
resp.write handle_search(search_term)
elsif req.path.match(/cart/)
if @@cart.empty?
resp.write "Your cart is empty."
else
@@cart.each {|item| resp.write "#{item}\n"}
end
elsif req.path.match(/add/)
add_item = req.params["item"]
if @@items.include?(add_item)
@@cart << add_item
resp.write "added #{add_item}"
else
resp.write "We don't have that item"
end
else
resp.write "Path Not Found"
end

resp.finish
end



def handle_search(search_term)
if @@items.include?(search_term)
return "#{search_term} is one of our items"
else
return "Couldn't find #{search_term}"
end
end

end