Patches against version 0.1.6 » redmine_issues_group-journal.patch
| redmine_issues_group/init.rb 2009-11-05 22:07:28.000000000 -0500 | ||
|---|---|---|
| 27 | 27 | 
    Dispatcher.to_prepare do  | 
| 28 | 28 | 
    IssuesHelper.send(:include, IssuesHelperPatch)  | 
| 29 | 29 | 
    Issue.send(:include, IssueRelationPatch)  | 
| 30 | 
    Issue.send(:include, IssueJournalPatch)  | 
|
| 30 | 31 | 
    CollectiveIdea::Acts::NestedSet::InstanceMethods.send(:include, AwesomeNestedSetIssuesPatch)  | 
| 31 | 32 | 
    end  | 
| redmine_issues_group/lib/issue_journal_patch.rb 2009-11-05 22:09:29.000000000 -0500 | ||
|---|---|---|
| 1 | ||
| 2 | 
    require 'issue'  | 
|
| 3 | ||
| 4 | 
    module IssueJournalPatch  | 
|
| 5 | 
    def self.included(base) # :nodoc:  | 
|
| 6 | 
    base.class_eval do  | 
|
| 7 | ||
| 8 | 
    # Saves the changes in a Journal  | 
|
| 9 | 
    # Called after_save  | 
|
| 10 | 
    def create_journal  | 
|
| 11 | 
    if @current_journal  | 
|
| 12 | 
    # attributes changes  | 
|
| 13 | 
              (Issue.column_names - %w(id description lock_version created_on updated_on)).each {|c|
   | 
|
| 14 | 
    @current_journal.details << JournalDetail.new(:property => 'attr',  | 
|
| 15 | 
    :prop_key => c,  | 
|
| 16 | 
    :old_value => @issue_before_change.send(c),  | 
|
| 17 | 
    :value => send(c)) unless send(c)==@issue_before_change.send(c) ||  | 
|
| 18 | 
    @current_journal.details.exists?(:property => 'attr',  | 
|
| 19 | 
    :prop_key => c,  | 
|
| 20 | 
    :old_value => @issue_before_change.send(c),  | 
|
| 21 | 
    :value => send(c))  | 
|
| 22 | 
    }  | 
|
| 23 | 
    # custom fields changes  | 
|
| 24 | 
              custom_values.each {|c|
   | 
|
| 25 | 
    next if (@custom_values_before_change[c.custom_field_id]==c.value ||  | 
|
| 26 | 
    (@custom_values_before_change[c.custom_field_id].blank? && c.value.blank?)) ||  | 
|
| 27 | 
    @current_journal.details.exists?(:property => 'cf',  | 
|
| 28 | 
    :prop_key => c.custom_field_id,  | 
|
| 29 | 
    :old_value => @custom_values_before_change[c.custom_field_id],  | 
|
| 30 | 
    :value => c.value)  | 
|
| 31 | 
    @current_journal.details << JournalDetail.new(:property => 'cf',  | 
|
| 32 | 
    :prop_key => c.custom_field_id,  | 
|
| 33 | 
    :old_value => @custom_values_before_change[c.custom_field_id],  | 
|
| 34 | 
    :value => c.value)  | 
|
| 35 | 
    }  | 
|
| 36 | 
    @current_journal.save  | 
|
| 37 | 
    end  | 
|
| 38 | 
    end  | 
|
| 39 | ||
| 40 | 
    end  | 
|
| 41 | 
    end  | 
|
| 42 | 
    end  | 
|