Mercurial > hg > soundsoftware-site
changeset 727:e3e958595e07 feature_14
added new files for hooks; modified redmine tags init file so that patches are loaded.
author | luisf <luis.figueira@eecs.qmul.ac.uk> |
---|---|
date | Tue, 25 Oct 2011 17:10:42 +0100 |
parents | 386fcfd7459f |
children | cc4d3d842171 |
files | vendor/plugins/redmine_tags/app/views/projects/_tags.html.erb vendor/plugins/redmine_tags/assets/javascripts/tags_input.js vendor/plugins/redmine_tags/init.rb vendor/plugins/redmine_tags/lib/redmine_tags/hooks/views_projects_hook.rb vendor/plugins/redmine_tags/lib/redmine_tags/patches/project_patch.rb |
diffstat | 5 files changed, 82 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/vendor/plugins/redmine_tags/app/views/projects/_tags.html.erb Tue Oct 25 17:10:42 2011 +0100 @@ -0,0 +1,8 @@ +BAHAUS + +<% unless project.tag_list.empty? %> + <tr> + <td><b><%=l(:tags)%>:</b></td> + <td><%= project.tag_counts.collect{ |t| render_tag_link(t, :show_count => false, :open_only => false) }.join(', ') %></td> + </tr> +<% end %>
--- a/vendor/plugins/redmine_tags/assets/javascripts/tags_input.js Mon Oct 24 15:28:29 2011 +0100 +++ b/vendor/plugins/redmine_tags/assets/javascripts/tags_input.js Tue Oct 25 17:10:42 2011 +0100 @@ -92,3 +92,8 @@ function observeIssueTagsField(url) { new Redmine.TagsInput('issue_tag_list').autocomplete('issue_tag_candidates', url); } + + +function observeProjectTagsField(url) { + new Redmine.TagsInput('project_tag_list').autocomplete('project_tag_candidates', url); +} \ No newline at end of file
--- a/vendor/plugins/redmine_tags/init.rb Mon Oct 24 15:28:29 2011 +0100 +++ b/vendor/plugins/redmine_tags/init.rb Tue Oct 25 17:10:42 2011 +0100 @@ -41,6 +41,10 @@ require 'dispatcher' Dispatcher.to_prepare :redmine_tags do + unless Project.included_modules.include?(RedmineTags::Patches::ProjectPatch) + Project.send(:include, RedmineTags::Patches::ProjectPatch) + end + unless Issue.included_modules.include?(RedmineTags::Patches::IssuePatch) Issue.send(:include, RedmineTags::Patches::IssuePatch) end @@ -65,3 +69,5 @@ require 'redmine_tags/hooks/model_issue_hook' require 'redmine_tags/hooks/views_issues_hook' +require 'redmine_tags/hooks/views_projects_hook' +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/vendor/plugins/redmine_tags/lib/redmine_tags/hooks/views_projects_hook.rb Tue Oct 25 17:10:42 2011 +0100 @@ -0,0 +1,10 @@ +module RedmineTags + module Hooks + class ViewsProjectsHook < Redmine::Hook::ViewListener + render_on :view_projects_show_left, :partial => 'projects/tags' +# render_on :view_issues_form_details_bottom, :partial => 'issues/tags_form' +# render_on :view_issues_sidebar_planning_bottom, :partial => 'issues/tags_sidebar' + end + end +end +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/vendor/plugins/redmine_tags/lib/redmine_tags/patches/project_patch.rb Tue Oct 25 17:10:42 2011 +0100 @@ -0,0 +1,53 @@ +# C4DM + +require_dependency 'project' + +module RedmineTags + module Patches + module ProjectPatch + def self.included(base) + base.extend(ClassMethods) + + base.class_eval do + unloadable + acts_as_taggable + end + end + + module ClassMethods + # Returns available issue tags + # === Parameters + # * <i>options</i> = (optional) Options hash of + # * project - Project to search in. + # * open_only - Boolean. Whenever search within open issues only. + # * name_like - String. Substring to filter found tags. + def available_tags(options = {}) + project = options[:project] + open_only = options[:open_only] + name_like = options[:name_like] + options = {} + visible = ARCondition.new + + if project + project = project.id if project.is_a? Project + visible << ["#{Issue.table_name}.project_id = ?", project] + end + + if open_only + visible << ["#{Issue.table_name}.status_id IN " + + "( SELECT issue_status.id " + + " FROM #{IssueStatus.table_name} issue_status " + + " WHERE issue_status.is_closed = ? )", false] + end + + if name_like + visible << ["#{ActsAsTaggableOn::Tag.table_name}.name LIKE ?", "%#{name_like.downcase}%"] + end + + options[:conditions] = visible.conditions + self.all_tag_counts(options) + end + end + end + end +end