diff --git a/app/controllers/bits_controller.rb b/app/controllers/bits_controller.rb index 90595d3..0c8256c 100644 --- a/app/controllers/bits_controller.rb +++ b/app/controllers/bits_controller.rb @@ -26,10 +26,11 @@ def index @bits = @bits.tagged_with params[:tag] # :tags is a json tag string array # (only uses first tag for now) + # Should this be an OR or an AND operation? elsif params[:tags] - tagsArray = ActiveSupport::JSON.decode(params[:tags]) - if tagsArray.length > 0 - @bits = @bits.tagged_with tagsArray.first + @tagsArray = ActiveSupport::JSON.decode(params[:tags]) + if @tagsArray.any? + @bits = @bits.tagged_with @tagsArray.first end end diff --git a/app/views/bits/index.html.haml b/app/views/bits/index.html.haml index dd91174..fc663ae 100644 --- a/app/views/bits/index.html.haml +++ b/app/views/bits/index.html.haml @@ -1,9 +1,19 @@ %p#notice= notice - cache do - %h1= @title + %h1 + = @title + - if params[:tag].present? + tagged #{params[:tag]} + - elsif @tagsArray.present? + tagged #{@tagsArray.to_sentence} - content_for(:title) do - = params[:sort].capitalize + - if params[:sort].present? + = params[:sort].capitalize + - elsif params[:tag].present? + = params[:tag].capitalize + - elsif @tagsArray + = @tagsArray.to_sentence.capitalize .row %form.tag-search{ method:'get', action:('/bits') } diff --git a/db/schema.rb b/db/schema.rb index 0dfef09..86d7ccb 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -15,11 +15,11 @@ create_table "bits", :force => true do |t| t.string "title" - t.text "code", :limit => 5000 - t.text "description", :limit => 5000 + t.text "code" + t.text "description" t.integer "user_id" - t.datetime "created_at", :null => false - t.datetime "updated_at", :null => false + t.datetime "created_at", :null => false + t.datetime "updated_at", :null => false end create_table "comments", :force => true do |t|