fixed author sample data generation and model method
This commit is contained in:
parent
65e306a854
commit
b5fd6c7a1a
|
@ -42,6 +42,7 @@ class WritingConference
|
|||
validates :paper_title, :at_least_one => true
|
||||
before_validation :add_http
|
||||
after_save :save_writing_conference_files
|
||||
before_save :update_co_author
|
||||
validates :url, :format => /^(http|https):\/\/(([a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.[a-z]{2,5})|((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))(:[0-9]{1,5})?(\/.*)?/i, :unless => Proc.new{self.url.blank?}
|
||||
|
||||
attr_reader :author_tokens
|
||||
|
@ -63,6 +64,19 @@ class WritingConference
|
|||
self.conference_co_author_ids = authors_ids
|
||||
end
|
||||
|
||||
def update_co_author
|
||||
if new_record?
|
||||
current_user = self.create_user_id
|
||||
else
|
||||
current_user = self.update_user_id
|
||||
end
|
||||
|
||||
self.conference_co_author_ids.each do |id|
|
||||
co_author = ConferenceCoAuthor.find(id)
|
||||
co_author.update_attribute(:name_id, current_user)
|
||||
end
|
||||
end
|
||||
|
||||
def self.search( category_id = nil )
|
||||
if category_id.to_s.size > 0
|
||||
find(:all, :conditions => {writing_conference_category_id: category_id}).desc( :is_top, :title )
|
||||
|
|
Reference in New Issue