Mercurial > hg > soundsoftware-site
annotate .svn/pristine/70/70b926e7066e6ffc74e399f32bfdf24420695960.svn-base @ 1295:622f24f53b42 redmine-2.3
Update to Redmine SVN revision 11972 on 2.3-stable branch
author | Chris Cannam |
---|---|
date | Fri, 14 Jun 2013 09:02:21 +0100 |
parents | |
children |
rev | line source |
---|---|
Chris@1295 | 1 # Redmine - project management software |
Chris@1295 | 2 # Copyright (C) 2006-2012 Jean-Philippe Lang |
Chris@1295 | 3 # |
Chris@1295 | 4 # This program is free software; you can redistribute it and/or |
Chris@1295 | 5 # modify it under the terms of the GNU General Public License |
Chris@1295 | 6 # as published by the Free Software Foundation; either version 2 |
Chris@1295 | 7 # of the License, or (at your option) any later version. |
Chris@1295 | 8 # |
Chris@1295 | 9 # This program is distributed in the hope that it will be useful, |
Chris@1295 | 10 # but WITHOUT ANY WARRANTY; without even the implied warranty of |
Chris@1295 | 11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
Chris@1295 | 12 # GNU General Public License for more details. |
Chris@1295 | 13 # |
Chris@1295 | 14 # You should have received a copy of the GNU General Public License |
Chris@1295 | 15 # along with this program; if not, write to the Free Software |
Chris@1295 | 16 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. |
Chris@1295 | 17 |
Chris@1295 | 18 class AutoCompletesController < ApplicationController |
Chris@1295 | 19 before_filter :find_project |
Chris@1295 | 20 |
Chris@1295 | 21 def issues |
Chris@1295 | 22 @issues = [] |
Chris@1295 | 23 q = (params[:q] || params[:term]).to_s.strip |
Chris@1295 | 24 if q.present? |
Chris@1295 | 25 scope = (params[:scope] == "all" || @project.nil? ? Issue : @project.issues).visible |
Chris@1295 | 26 if q.match(/^\d+$/) |
Chris@1295 | 27 @issues << scope.find_by_id(q.to_i) |
Chris@1295 | 28 end |
Chris@1295 | 29 @issues += scope.where("LOWER(#{Issue.table_name}.subject) LIKE ?", "%#{q.downcase}%").order("#{Issue.table_name}.id DESC").limit(10).all |
Chris@1295 | 30 @issues.compact! |
Chris@1295 | 31 end |
Chris@1295 | 32 render :layout => false |
Chris@1295 | 33 end |
Chris@1295 | 34 |
Chris@1295 | 35 private |
Chris@1295 | 36 |
Chris@1295 | 37 def find_project |
Chris@1295 | 38 if params[:project_id].present? |
Chris@1295 | 39 @project = Project.find(params[:project_id]) |
Chris@1295 | 40 end |
Chris@1295 | 41 rescue ActiveRecord::RecordNotFound |
Chris@1295 | 42 render_404 |
Chris@1295 | 43 end |
Chris@1295 | 44 end |