40 lines
923 B
Ruby
40 lines
923 B
Ruby
|
class Lab
|
||
|
include Mongoid::Document
|
||
|
include Mongoid::Timestamps
|
||
|
include OrbitModel::Status
|
||
|
include Slug
|
||
|
|
||
|
belongs_to :member_profile
|
||
|
|
||
|
field :lab_title, :as=>:slug_title, localize: true
|
||
|
field :location, localize: true
|
||
|
field :participating_professor, localize: true
|
||
|
field :participating_student, localize: true
|
||
|
|
||
|
field :year
|
||
|
field :language
|
||
|
field :keywords
|
||
|
field :extension_no
|
||
|
field :research_direction
|
||
|
field :facility
|
||
|
field :url
|
||
|
field :note
|
||
|
field :create_user_id, :type => BSON::ObjectId
|
||
|
field :update_user_id, :type => BSON::ObjectId
|
||
|
|
||
|
paginates_per 10
|
||
|
|
||
|
has_many :lab_files, :autosave => true, :dependent => :destroy
|
||
|
accepts_nested_attributes_for :lab_files, :allow_destroy => true
|
||
|
|
||
|
before_validation :add_http
|
||
|
|
||
|
protected
|
||
|
|
||
|
def add_http
|
||
|
unless self.url.blank? || self.url[/^http:\/\//] || self.url[/^https:\/\//]
|
||
|
self.url = 'http://' + self.url
|
||
|
end
|
||
|
end
|
||
|
|
||
|
end
|