Mercurial > hg > soundsoftware-site
annotate vendor/plugins/redmine_bibliography/app/models/authorship.rb @ 535:dd9d9c0ff0f9 feature_36
created the helpers to display correctly the My Publications Authors and Projects.
author | luisf <luis.figueira@eecs.qmul.ac.uk> |
---|---|
date | Tue, 26 Jul 2011 18:25:14 +0100 |
parents | ce1614b19759 |
children | 82a6e3756383 |
rev | line source |
---|---|
luis@328 | 1 class Authorship < ActiveRecord::Base |
luis@328 | 2 belongs_to :author |
luis@328 | 3 belongs_to :publication |
luis@393 | 4 |
luis@483 | 5 accepts_nested_attributes_for :author |
luis@483 | 6 accepts_nested_attributes_for :publication |
luis@483 | 7 |
luis@530 | 8 |
luis@518 | 9 # setter and getter for virtual attribute :user_id |
luis@519 | 10 def user_id |
luis@518 | 11 end |
luis@481 | 12 |
luis@530 | 13 def user_id=(uid) |
luis@530 | 14 unless uid.blank? |
luis@530 | 15 user = User.find(uid) |
luis@530 | 16 if user.author.nil? |
luis@530 | 17 # TODO: should reflect the name_on_paper parameter |
luis@530 | 18 author = Author.new :name => user.name |
luis@530 | 19 author.save! |
luis@530 | 20 user.author = author |
luis@530 | 21 user.save! |
luis@530 | 22 end |
luis@530 | 23 |
luis@530 | 24 self.author_id = user.author.id |
luis@519 | 25 end |
luis@518 | 26 end |
luis@328 | 27 end |