File: app/controllers/auto_completes_controller.rb

Overview
Module Structure
Class Hierarchy
Code

Overview

Module Structure

  module: <Toplevel Module>
  class: AutoCompletesController#1
inherits from
  ApplicationController   
has properties
method: issues #4
method: find_project #20

Class Hierarchy

Code

   1  class AutoCompletesController < ApplicationController
   2    before_filter :find_project
   3 
   4    def issues
   5      @issues = []
   6      q = params[:q].to_s
   7      query = (params[:scope] == "all" && Setting.cross_project_issue_relations?) ? Issue : @project.issues
   8      if q.match(/^\d+$/)
   9        @issues << query.visible.find_by_id(q.to_i)
  10      end
  11      unless q.blank?
  12        @issues += query.visible.find(:all, :conditions => ["LOWER(#{Issue.table_name}.subject) LIKE ?", "%#{q.downcase}%"], :limit => 10)
  13      end
  14      @issues.compact!
  15      render :layout => false
  16    end
  17 
  18    private
  19 
  20    def find_project
  21      project_id = (params[:issue] && params[:issue][:project_id]) || params[:project_id]
  22      @project = Project.find(project_id)
  23    rescue ActiveRecord::RecordNotFound
  24      render_404
  25    end
  26 
  27  end