annotate vendor/plugins/redmine_bibliography/app/controllers/publications_controller.rb @ 385:a6f8c0584a92 feature_36

using new bibtex parsing plugin; implementing multipage create bibtex form
author luisf <luis.figueira@eecs.qmul.ac.uk>
date Tue, 05 Apr 2011 18:31:02 +0100
parents 4be6b16bc6f9
children 8ed0a0a268e0
rev   line source
luis@385 1 # vendor/plugins/redmine_bibliography/app/controllers/publications_controller.rb
luis@385 2
luis@328 3 class PublicationsController < ApplicationController
luis@328 4
luis@385 5 # parse string with bibtex authors
luis@385 6 # return an ordered array
luis@385 7 def parse_authors
luis@385 8
luis@385 9 end
luis@385 10
luis@385 11 def parse_bibtex_file
luis@385 12
luis@385 13 end
luis@385 14
luis@384 15 def parse_bibtex_text
luis@384 16 bibtex_entry = params[:bibtex_entry]
luis@384 17
luis@385 18 if bibtex_entry
luis@385 19 bib = BibTeX.parse bibtex_entry
luis@385 20
luis@385 21 # parses the bibtex entries
luis@385 22 bib.data.map do |d|
luis@385 23 result = ''
luis@385 24 if d.class == BibTeX::Entry
luis@385 25 # d.replace!(bib.strings)
luis@385 26 result = [d.author, '. ', d.title].join
luis@385 27 end
luis@384 28
luis@385 29 logger.error result
luis@384 30 end
luis@384 31 end
luis@384 32 end
luis@384 33
luis@385 34 def new
luis@385 35 session[:publication_params] ||= {}
luis@385 36 @publication = Publication.new
luis@384 37
luis@384 38 if request.post?
luis@384 39 parse_bibtex_text
luis@384 40 @publication = Publication.new(params[:publication])
luis@384 41
luis@384 42 if @publication.save
luis@384 43 logger.error "GRAVOU XXXdsfgXXX"
luis@384 44 else
luis@384 45 logger.error "nao gravou"
luis@384 46 end
luis@384 47
luis@376 48 end
luis@384 49
luis@328 50 end
luis@328 51
luis@328 52 def create
luis@384 53
luis@376 54 logger.error "AAAA create"
luis@384 55
luis@334 56 @publication.save
luis@329 57 end
luis@329 58
luis@329 59 def index
luis@329 60 @publications = Publication.find(:all)
luis@328 61 end
luis@328 62
luis@328 63 def edit
luis@384 64 logger.error "AAAA edit"
luis@376 65
luis@328 66 end
luis@328 67
luis@328 68 def update
luis@384 69
luis@384 70 logger.error "AAAA update"
luis@376 71
luis@376 72
luis@328 73 end
luis@329 74
luis@329 75 def show
luis@329 76 @publication = Publication.find(params[id])
luis@329 77 @authors = @publication.authors
luis@329 78 end
luis@329 79
luis@329 80
luis@328 81 end