From b8d2bcb913827e1db612b2952e74d316669e6835 Mon Sep 17 00:00:00 2001 From: Joe Sak Date: Wed, 15 Jun 2011 11:02:59 -0500 Subject: autocomplete added for tags --- app/controllers/admin/blog/posts_controller.rb | 8 ++++ app/views/admin/blog/posts/_form.html.erb | 1 + app/views/shared/admin/_autocomplete.html.erb | 55 ++++++++++++++++++++++++++ 3 files changed, 64 insertions(+) create mode 100644 app/views/shared/admin/_autocomplete.html.erb (limited to 'app') diff --git a/app/controllers/admin/blog/posts_controller.rb b/app/controllers/admin/blog/posts_controller.rb index e8ffed2..7569aa6 100644 --- a/app/controllers/admin/blog/posts_controller.rb +++ b/app/controllers/admin/blog/posts_controller.rb @@ -11,6 +11,14 @@ class Admin::Blog::PostsController < Admin::BaseController }) end + def tags + @tags = BlogPost.tag_counts_on(:tags).where(["tags.name LIKE ?", "%#{params[:term].to_s.downcase}%"]) + .collect { |tag| + {:id => tag.id, :value => tag.name} + } + render :json => @tags.flatten + end + def create # if the position field exists, set this object as last object, given the conditions of this class. if BlogPost.column_names.include?("position") diff --git a/app/views/admin/blog/posts/_form.html.erb b/app/views/admin/blog/posts/_form.html.erb index 24b14ba..c0467fd 100644 --- a/app/views/admin/blog/posts/_form.html.erb +++ b/app/views/admin/blog/posts/_form.html.erb @@ -88,3 +88,4 @@ <% content_for :stylesheets, render(:partial => 'form.css') -%> <% content_for :javascripts, render(:partial => 'form.js') -%> +<%= render 'shared/admin/autocomplete', :dom_id => '#blog_post_tag_list', :url => tags_admin_blog_posts_url %> diff --git a/app/views/shared/admin/_autocomplete.html.erb b/app/views/shared/admin/_autocomplete.html.erb new file mode 100644 index 0000000..7a3baa1 --- /dev/null +++ b/app/views/shared/admin/_autocomplete.html.erb @@ -0,0 +1,55 @@ +<% content_for :stylesheets, stylesheet_link_tag("ui-lightness/jquery-ui-1.8.13.custom") -%> + +<% content_for :javascripts do %> + <%= javascript_include_tag "https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.13/jquery-ui.min.js" %> + +<% end %> \ No newline at end of file -- cgit v1.2.3