Class: Researcher

Inherits:
ApplicationRecord show all
Defined in:
app/models/researcher.rb

Class Method Summary collapse

Class Method Details

.autocomplete_list(search_term) ⇒ Object



15
16
17
18
19
20
21
22
23
24
# File 'app/models/researcher.rb', line 15

def self.autocomplete_list(search_term)
  researchers = []
  researchers_list = Researcher.where("first_name ILIKE ? OR last_name ILIKE ?", "%" + search_term + "%", "%" + search_term + "%")
  researchers_list.each do |researcher|
    display_value = "#{researcher.first_name} #{researcher.last_name} (#{researcher.orcid})"
    data = "#{researcher.first_name}|#{researcher.last_name}|#{researcher.orcid}"
    researchers << { value: display_value, data: }
  end
  researchers
end

.new_researcher(first_name, last_name, orcid) ⇒ Object



3
4
5
6
7
8
9
10
11
12
13
# File 'app/models/researcher.rb', line 3

def self.new_researcher(first_name, last_name, orcid)
  researcher = Researcher.where(orcid:).first
  if researcher.nil?
    researcher = Researcher.new
    researcher.orcid = orcid
  end
  researcher.first_name = first_name
  researcher.last_name = last_name
  researcher.save!
  researcher
end