changeset 1259:94a6e3687c45 redmine-2.2-integration

simplified tag searching on the projects#index
author luisf <luis.figueira@eecs.qmul.ac.uk>
date Wed, 10 Apr 2013 18:13:16 +0100
parents f8c5708a6fd6
children b18f581b260a
files plugins/redmine_tags/app/helpers/tags_helper.rb plugins/redmine_tags/app/views/projects/_filter_search_tags.html.erb plugins/redmine_tags/lib/redmine_tags/patches/projects_controller_patch.rb
diffstat 3 files changed, 35 insertions(+), 15 deletions(-) [+]
line wrap: on
line diff
--- a/plugins/redmine_tags/app/helpers/tags_helper.rb	Wed Apr 10 16:53:44 2013 +0100
+++ b/plugins/redmine_tags/app/helpers/tags_helper.rb	Wed Apr 10 18:13:16 2013 +0100
@@ -41,7 +41,8 @@
   end
 
   def render_project_tag_link(tag, options = {})
-    content = link_to tag.name, :controller => :projects, :action => :index, :project => { :tag_list => tag.name } 
+    content = link_to tag.name, :controller => :projects, :action => :index, :tag_search => tag.name
+
     if options[:show_count]
       content << content_tag('span', "(#{tag.count})", :class => 'tag-count')
     end
--- a/plugins/redmine_tags/app/views/projects/_filter_search_tags.html.erb	Wed Apr 10 16:53:44 2013 +0100
+++ b/plugins/redmine_tags/app/views/projects/_filter_search_tags.html.erb	Wed Apr 10 18:13:16 2013 +0100
@@ -1,12 +1,31 @@
-<p class='tag'>
-  <%- fields_for @project do |f| -%>
-    <div>
-      <p id="project_tags">
-        <%= f.text_field :tag_list, :label => :label_tags_search, :size => 60, :class => 'hol' -%>
-      </p>
-      <div id="project_tag_candidates" class="autocomplete"></div>
-      <%= javascript_include_tag 'tags_input', :plugin => 'redmine_tags' -%>
-      <%= javascript_tag "observeProjectTagsField('#{url_for(:controller => 'auto_completes', :action => 'project_search_tags')}', true)" -%>
-    </div>
-  <%- end -%>
-</p>
+<div>
+  <p id="project_tags"><%= text_field_tag 'tag_search', params[:tag_search] -%>
+    <br />
+    <em class="info"><%= l(:text_tags_info).html_safe %></em>
+  </p>
+  <div id="project_tag_candidates" class="autocomplete"></div>
+  <%= stylesheet_link_tag 'jquery.tagit.css', :plugin => 'redmine_tags' %>
+  <%= stylesheet_link_tag 'redmine_tags', :plugin => 'redmine_tags' %>
+  <%= javascript_include_tag 'tag-it', :plugin => 'redmine_tags' %>
+
+  <%= javascript_tag "$('#tag_search').tagit({
+            tagSource: function(search, showChoices) {
+            var that = this;
+            $.ajax({
+              url: '#{url_for(:controller => 'auto_completes', :action => 'project_tags')}',
+              data: {q: search.term},
+              success: function(choices) {
+              showChoices(that._subtractArray(jQuery.parseJSON(choices), that.assignedTags()));
+            }
+          });
+        },
+    });
+" %>
+
+</div>
+
+
+
+
+
+
--- a/plugins/redmine_tags/lib/redmine_tags/patches/projects_controller_patch.rb	Wed Apr 10 16:53:44 2013 +0100
+++ b/plugins/redmine_tags/lib/redmine_tags/patches/projects_controller_patch.rb	Wed Apr 10 18:13:16 2013 +0100
@@ -111,8 +111,8 @@
           end
 
           # search for tags
-          if params.has_key?(:project)
-             tag_list = (params[:project][:tag_list] || "").strip.split(",")
+          if params.has_key?(:tag_search)
+             tag_list = (params[:tag_search] || "").strip.split(",")
           else
              tag_list = ""
           end