Mercurial > hg > soundsoftware-site
annotate vendor/plugins/redmine_bibliography/app/controllers/bibtex_entries_controller.rb @ 405:8a105a53b8f4 feature_36
Refactoring.
| author | luisf <luis.figueira@eecs.qmul.ac.uk> |
|---|---|
| date | Wed, 13 Apr 2011 18:16:45 +0100 |
| parents | |
| children | 40144aa9dfe7 |
| rev | line source |
|---|---|
| luis@405 | 1 class BibtexEntriesController < ApplicationController |
| luis@405 | 2 |
| luis@405 | 3 # parse string with bibtex authors |
| luis@405 | 4 # return an ordered array |
| luis@405 | 5 def parse_authors |
| luis@405 | 6 |
| luis@405 | 7 end |
| luis@405 | 8 |
| luis@405 | 9 # parses the bibtex file |
| luis@405 | 10 def parse_bibtex_file |
| luis@405 | 11 |
| luis@405 | 12 end |
| luis@405 | 13 |
| luis@405 | 14 def parse_bibtex_list(bibtex_list) |
| luis@405 | 15 bibliography = BibTeX.parse bibtex_list |
| luis@405 | 16 |
| luis@405 | 17 no_entries = bibliography.data.length |
| luis@405 | 18 |
| luis@405 | 19 logger.error "Gonna parse " no_entries.to_s " Bibtex entries" |
| luis@405 | 20 |
| luis@405 | 21 # parses the bibtex entries |
| luis@405 | 22 bibliography.data.map do |d| |
| luis@405 | 23 create_bibtex_entry d |
| luis@405 | 24 end |
| luis@405 | 25 |
| luis@405 | 26 @publication.bibtex_entry = @bentry |
| luis@405 | 27 |
| luis@405 | 28 if @publication.save |
| luis@405 | 29 logger.error "SAVED" |
| luis@405 | 30 else |
| luis@405 | 31 logger.error "NOT SAVED" |
| luis@405 | 32 end |
| luis@405 | 33 |
| luis@405 | 34 logger.error @publication.bibtex_entry |
| luis@405 | 35 end |
| luis@405 | 36 |
| luis@405 | 37 |
| luis@405 | 38 |
| luis@405 | 39 def create_bibtex_entry(d) |
| luis@405 | 40 result = '' |
| luis@405 | 41 if d.class == BibTeX::Entry |
| luis@405 | 42 @bentry = BibtexEntry.new |
| luis@405 | 43 |
| luis@405 | 44 d.fields.keys.map do |k| |
| luis@405 | 45 if k == "title" |
| luis@405 | 46 @publication.title = d[k] |
| luis@405 | 47 else |
| luis@405 | 48 @bentry[k] = d[k] |
| luis@405 | 49 end |
| luis@405 | 50 end |
| luis@405 | 51 @bentry.save! |
| luis@405 | 52 end |
| luis@405 | 53 end |
| luis@405 | 54 |
| luis@405 | 55 end |
