mirror of
https://github.com/meineerde/redmine.git
synced 2025-12-19 15:01:14 +00:00
Adds a 'sorted' scope to Project.
git-svn-id: http://svn.redmine.org/redmine/trunk@13541 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
655a4a1ba0
commit
f5e5822945
@ -32,7 +32,7 @@ class AdminController < ApplicationController
|
|||||||
def projects
|
def projects
|
||||||
@status = params[:status] || 1
|
@status = params[:status] || 1
|
||||||
|
|
||||||
scope = Project.status(@status).order('lft')
|
scope = Project.status(@status).sorted
|
||||||
scope = scope.like(params[:name]) if params[:name].present?
|
scope = scope.like(params[:name]) if params[:name].present?
|
||||||
@projects = scope.to_a
|
@projects = scope.to_a
|
||||||
|
|
||||||
|
|||||||
@ -40,21 +40,22 @@ class ProjectsController < ApplicationController
|
|||||||
|
|
||||||
# Lists visible projects
|
# Lists visible projects
|
||||||
def index
|
def index
|
||||||
|
scope = Project.visible.sorted
|
||||||
|
|
||||||
respond_to do |format|
|
respond_to do |format|
|
||||||
format.html {
|
format.html {
|
||||||
scope = Project
|
|
||||||
unless params[:closed]
|
unless params[:closed]
|
||||||
scope = scope.active
|
scope = scope.active
|
||||||
end
|
end
|
||||||
@projects = scope.visible.order('lft').to_a
|
@projects = scope.to_a
|
||||||
}
|
}
|
||||||
format.api {
|
format.api {
|
||||||
@offset, @limit = api_offset_and_limit
|
@offset, @limit = api_offset_and_limit
|
||||||
@project_count = Project.visible.count
|
@project_count = scope.count
|
||||||
@projects = Project.visible.offset(@offset).limit(@limit).order('lft').to_a
|
@projects = scope.offset(@offset).limit(@limit).to_a
|
||||||
}
|
}
|
||||||
format.atom {
|
format.atom {
|
||||||
projects = Project.visible.order('created_on DESC').limit(Setting.feeds_limit.to_i).to_a
|
projects = scope.reorder(:created_on => :desc).limit(Setting.feeds_limit.to_i).to_a
|
||||||
render_feed(projects, :title => "#{Setting.app_title}: #{l(:label_project_latest)}")
|
render_feed(projects, :title => "#{Setting.app_title}: #{l(:label_project_latest)}")
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|||||||
@ -111,6 +111,7 @@ class Project < ActiveRecord::Base
|
|||||||
where("LOWER(identifier) LIKE :p OR LOWER(name) LIKE :p", :p => pattern)
|
where("LOWER(identifier) LIKE :p OR LOWER(name) LIKE :p", :p => pattern)
|
||||||
end
|
end
|
||||||
}
|
}
|
||||||
|
scope :sorted, lambda {order(:lft)}
|
||||||
|
|
||||||
def initialize(attributes=nil, *args)
|
def initialize(attributes=nil, *args)
|
||||||
super
|
super
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user