chris@1234: module Bibliography chris@1234: module MyHelperPatch luis@535: chris@1234: def self.included(base) # :nodoc: chris@1234: base.send(:include, InstanceMethods) chris@1234: chris@1234: base.class_eval do chris@1234: unloadable chris@1234: end luis@535: end luis@535: chris@1234: module InstanceMethods chris@1234: chris@1234: def get_my_publications() chris@1234: if not User.current.author.nil? chris@1234: @my_publications = Publication.all(:include => :authors, :conditions => "authors.id = #{User.current.author.id}") chris@1234: else chris@1234: @my_publications = [] chris@1234: end chris@1234: end chris@1234: chris@1234: def render_publications_projects(publication) chris@1234: s = "" chris@1234: projs = [] chris@1234: chris@1234: publication.projects.each do |proj| chris@1234: projs << link_to(proj.name, proj) chris@1234: end chris@1234: chris@1234: s << projs.join(', ') chris@1234: chris@1234: s.html_safe chris@1234: end chris@1234: chris@1234: def render_publications_authors(publication) chris@1234: s = "" chris@1234: auths = [] chris@1234: chris@1234: publication.authorships.each do |auth| chris@1234: auths << h(auth.name_on_paper) chris@1234: end chris@1234: chris@1234: s << auths.join(', ') chris@1234: chris@1234: s.html_safe chris@1234: end chris@1234: chris@1234: luis@535: end luis@535: end chris@1234: end luis@535: