Mercurial > hg > soundsoftware-site
annotate app/controllers/auto_completes_controller.rb @ 1478:5ca1f4a47171 bibplugin_db_migrations
Close obsolete branch bibplugin_db_migrations
author | Chris Cannam |
---|---|
date | Fri, 30 Nov 2012 14:40:50 +0000 |
parents | cbb26bc654de |
children | 433d4f72a19b |
rev | line source |
---|---|
Chris@14 | 1 class AutoCompletesController < ApplicationController |
Chris@14 | 2 before_filter :find_project |
Chris@909 | 3 |
Chris@14 | 4 def issues |
Chris@14 | 5 @issues = [] |
Chris@14 | 6 q = params[:q].to_s |
Chris@119 | 7 query = (params[:scope] == "all" && Setting.cross_project_issue_relations?) ? Issue : @project.issues |
Chris@14 | 8 if q.match(/^\d+$/) |
Chris@119 | 9 @issues << query.visible.find_by_id(q.to_i) |
Chris@14 | 10 end |
Chris@14 | 11 unless q.blank? |
Chris@119 | 12 @issues += query.visible.find(:all, :conditions => ["LOWER(#{Issue.table_name}.subject) LIKE ?", "%#{q.downcase}%"], :limit => 10) |
Chris@14 | 13 end |
Chris@119 | 14 @issues.compact! |
Chris@14 | 15 render :layout => false |
Chris@14 | 16 end |
Chris@14 | 17 |
Chris@14 | 18 private |
Chris@14 | 19 |
Chris@14 | 20 def find_project |
Chris@14 | 21 project_id = (params[:issue] && params[:issue][:project_id]) || params[:project_id] |
Chris@14 | 22 @project = Project.find(project_id) |
Chris@14 | 23 rescue ActiveRecord::RecordNotFound |
Chris@14 | 24 render_404 |
Chris@14 | 25 end |
Chris@14 | 26 |
Chris@14 | 27 end |