Class: Tracker

Inherits:
ActiveRecord::Base show all
Defined in:
app/models/tracker.rb

Overview

redMine - project management software Copyright (C) 2006 Jean-Philippe Lang

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

Class Method Summary

Instance Method Summary

Methods inherited from ActiveRecord::Base

quoted_table_name

Class Method Details

+ (Object) all



42
43
44
# File 'app/models/tracker.rb', line 42

def self.all
  find(:all, :order => 'position')
end

Instance Method Details

- (Object) <=>(tracker)



38
39
40
# File 'app/models/tracker.rb', line 38

def <=>(tracker)
  name <=> tracker.name
end

- (Object) issue_statuses

Returns an array of IssueStatus that are used in the tracker’s workflows



48
49
50
51
52
53
54
55
56
57
58
59
60
61
# File 'app/models/tracker.rb', line 48

def issue_statuses
  if @issue_statuses
    return @issue_statuses 
  elsif new_record?
    return []
  end
  
  ids = Workflow.
          connection.select_rows("SELECT DISTINCT old_status_id, new_status_id FROM #{Workflow.table_name} WHERE tracker_id = #{id}").
          flatten.
          uniq
  
  @issue_statuses = IssueStatus.find_all_by_id(ids).sort
end

- (Object) to_s



36
# File 'app/models/tracker.rb', line 36

def to_s; name end