diff --git a/app/controllers/admin/import_controller.rb b/app/controllers/admin/import_controller.rb index d1aa033..a5508a7 100644 --- a/app/controllers/admin/import_controller.rb +++ b/app/controllers/admin/import_controller.rb @@ -725,10 +725,14 @@ class Admin::ImportController < OrbitAdminController if old_book.nil? new_book = Book.new(:book_title_translations => {"en" => book["book_title"]["en"], "zh_tw" => book["book_title"]["zh-tw"]}, :extracted_chapters_translations => {"en" => book["extracted_chapters"]["en"], "zh_tw" => book["extracted_chapters"]["zh-tw"]}, :publisher_translations => {"en" => book["publishers"]["en"], "zh_tw" => book["publishers"]["zh-tw"]}, :editor_translations => {"en" => book["editor"]["en"], "zh_tw" => book["editor"]["zh-tw"]}, :year => book["year"], :language => book["language"].sub("-","_"), :pages => book["number_of_pages"], :isbn => book["issn"], :publication_date => book["publication_date"], :url => book["reference_url"], :note => book["note"], :rss2_id => book["rss2_id"]) new_book.member_profile = member - book_file = new_book.book_files.new - book_file.remote_member_book_file_url = book["file"]["file"] - book_file.title_translations = {"en" => book["file"]["name"], "zh_tw" => book["file"]["name"]} - book_file.save + + if !book["file"].blank? + book_file = new_book.book_files.new + book_file.remote_member_book_file_url = book["file"]["file"] + book_file.title_translations = {"en" => book["file"]["name"], "zh_tw" => book["file"]["name"]} + book_file.save + end + author_types.each do |author| bat = BookAuthorType.where(:title => author).first if bat.nil? @@ -766,16 +770,41 @@ class Admin::ImportController < OrbitAdminController projects.each do |project| old_project = Project.where(:rss2_id => project["rss2_id"]).first if old_project.nil? - new_project = Project.new(:project_title_translations => {"en" => project["project_title"]["en"], "zh_tw" => project["project_title"]["zh-tw"]},:job_title_translations => {"en" => project["job_title"]["en"],"zh_tw" => project["job_title"]["zh-tw"]}, :participator_translations => {"en" => project["participant"]["en"],"zh_tw" => project["participant"]["zh-tw"]}, :unit_translations => {"en" => project["unit"]["en"],"zh_tw" => project["unit"]["zh-tw"]},:year => project["year"], :language => project["language"].sub("-","_"), :period_start_date => Date.strptime(project["start_date"], '%Y-%m'), :period_end_date => Date.strptime(project["end_date"], '%Y-%m'), :url => project["reference_url"], :note_translations => {"en" => project["note"]["en"],"zh_tw" => project["note"]["zh-tw"]}, :rss2_id => project["rss2_id"]) + new_project = Project.new( + :project_title_translations => { + "en" => project["project_title"]["en"], + "zh_tw" => project["project_title"]["zh-tw"]}, + :job_title_translations => { + "en" => project["job_title"]["en"], + "zh_tw" => project["job_title"]["zh-tw"]}, + :participator_translations => { + "en" => project["participant"]["en"], + "zh_tw" => project["participant"]["zh-tw"]}, + :unit_translations => { + "en" => project["unit"]["en"], + "zh_tw" => project["unit"]["zh-tw"]}, + :year => project["year"], + :language => project["language"].sub("-","_"), + :period_start_date => Date.strptime(project["start_date"].gsub('00','01'), '%Y-%m'), + :period_end_date => Date.strptime(project["end_date"].gsub('00','01'), '%Y-%m'), + :url => project["reference_url"], + :note_translations => { + "en" => project["note"]["en"], + "zh_tw" => project["note"]["zh-tw"]}, + :rss2_id => project["rss2_id"]) pc = ProjectType.where(:title => project["project_categories"]["zh-tw"]).first if pc.nil? pc = ProjectType.new(:title_translations => {"en" => project["project_categories"]["en"], "zh_tw" => project["project_categories"]["zh-tw"]}) pc.save end - project_file = new_project.project_files.new - project_file.remote_file_url = project["file"]["file"] - project_file.title_translations = {"en" => project["file"]["name"], "zh_tw" => project["file"]["name"]} - project_file.save + + if !project["file"].blank? + project_file = new_project.project_files.new + project_file.remote_file_url = project["file"]["file"] + project_file.title_translations = {"en" => project["file"]["name"], "zh_tw" => project["file"]["name"]} + project_file.save + end + new_project.project_type = pc new_project.member_profile = member new_project.save @@ -833,10 +862,14 @@ class Admin::ImportController < OrbitAdminController old_research = Research.where(:rss2_id => research["rss2_id"]).first if old_research.nil? new_research = Research.new(:research_title_translations => {"en" => research["title"]["en"],"zh_tw" => research["title"]["zh-tw"]},:language => research["language"], :publish_date => research["date_of_publication"], :rss2_id => research["rss2_id"]) - research_file = new_research.research_files.new - research_file.remote_file_url = research["file"]["file"] - research_file.title_translations = {"en" => research["file"]["name"], "zh_tw" => research["file"]["name"]} - research_file.save + + if research["file"] + research_file = new_research.research_files.new + research_file.remote_file_url = research["file"]["file"] + research_file.title_translations = {"en" => research["file"]["name"], "zh_tw" => research["file"]["name"]} + research_file.save + end + new_research.member_profile = member new_research.save end @@ -883,7 +916,21 @@ class Admin::ImportController < OrbitAdminController experiences.each do |experience| old_experience = Experience.where(:rss2_id => experience["rss2_id"]).first if old_experience.nil? - new_experience = Experience.new(:organizationt_title_translations => {"en" => experience["organization_title"]["en"], "zh_tw" => experience["organization_title"]["zh-tw"]}, :department_translations => {"en" => experience["department"]["en"], "zh_tw" => experience["department"]["zh-tw"]}, :job_title_translations => {"en" => experience["job_title"]["en"], "zh_tw" => experience["job_title"]["zh-tw"]}, :language => experience["language"], :start_date => Date.strptime(experience["start_date"], '%Y-%m'), :end_date => Date.strptime(experience["end_date"], '%Y-%m'), :rss2_id => experience["rss2_id"]) + new_experience = Experience.new( + :organizationt_title_translations => { + "en" => experience["organization_title"]["en"], + "zh_tw" => experience["organization_title"]["zh-tw"]}, + :department_translations => { + "en" => experience["department"]["en"], + "zh_tw" => experience["department"]["zh-tw"]}, + :job_title_translations => { + "en" => experience["job_title"]["en"], + "zh_tw" => experience["job_title"]["zh-tw"]}, + :language => experience["language"], + :start_date => Date.strptime(experience["start_date"].gsub('00','01'), '%Y-%m'), + :end_date => Date.strptime(experience["end_date"].gsub('00','01'), '%Y-%m'), + :rss2_id => experience["rss2_id"]) + new_experience.member_profile = member new_experience.save end @@ -982,10 +1029,13 @@ class Admin::ImportController < OrbitAdminController end journal.journal_paper_files.destroy_all - paper_file = journal.journal_paper_files.new - paper_file.remote_journal_file_url = rss2_journal["file"]["file"] - paper_file.title_translations = {"en" => rss2_journal["file"]["name"], "zh_tw" => rss2_journal["file"]["name"]} - paper_file.save rescue nil + + if !rss2_journal["file"].blank? + paper_file = journal.journal_paper_files.new + paper_file.remote_journal_file_url = rss2_journal["file"]["file"] + paper_file.title_translations = {"en" => rss2_journal["file"]["name"], "zh_tw" => rss2_journal["file"]["name"]} + paper_file.save rescue nil + end journal.member_profile = member journal.save @@ -1076,10 +1126,12 @@ class Admin::ImportController < OrbitAdminController end conference.writing_conference_files.destroy_all - paper_file = conference.writing_conference_files.new - paper_file.remote_file_url = rss2_conference["file"]["file"] - paper_file.title_translations = {"en" => rss2_conference["file"]["name"], "zh_tw" => rss2_conference["file"]["name"]} - paper_file.save rescue nil + if !rss2_conference["file"].blank? + paper_file = conference.writing_conference_files.new + paper_file.remote_file_url = rss2_conference["file"]["file"] + paper_file.title_translations = {"en" => rss2_conference["file"]["name"], "zh_tw" => rss2_conference["file"]["name"]} + paper_file.save rescue nil + end conference.member_profile = member conference.save diff --git a/app/templates/orbit_bootstrap/modules/personal_conference/index.html.erb b/app/templates/orbit_bootstrap/modules/personal_conference/index.html.erb index 8e925eb..39e6c19 100644 --- a/app/templates/orbit_bootstrap/modules/personal_conference/index.html.erb +++ b/app/templates/orbit_bootstrap/modules/personal_conference/index.html.erb @@ -7,8 +7,8 @@ {{th_author}} - - + + {{year}} {{paper_title}} {{author}} diff --git a/app/templates/orbit_bootstrap/modules/personal_diploma/index.html.erb b/app/templates/orbit_bootstrap/modules/personal_diploma/index.html.erb index 07222e9..d111e39 100644 --- a/app/templates/orbit_bootstrap/modules/personal_diploma/index.html.erb +++ b/app/templates/orbit_bootstrap/modules/personal_diploma/index.html.erb @@ -9,8 +9,8 @@ - - + + {{member}} {{school_name}} {{degree}} diff --git a/app/templates/orbit_bootstrap/modules/personal_experience/index.html.erb b/app/templates/orbit_bootstrap/modules/personal_experience/index.html.erb index 55be226..cd0763a 100644 --- a/app/templates/orbit_bootstrap/modules/personal_experience/index.html.erb +++ b/app/templates/orbit_bootstrap/modules/personal_experience/index.html.erb @@ -9,8 +9,8 @@ - - + + {{member}} {{organizationt_title}} {{department}} diff --git a/app/templates/orbit_bootstrap/modules/personal_honor/index.html.erb b/app/templates/orbit_bootstrap/modules/personal_honor/index.html.erb index 1c42b15..ec27353 100644 --- a/app/templates/orbit_bootstrap/modules/personal_honor/index.html.erb +++ b/app/templates/orbit_bootstrap/modules/personal_honor/index.html.erb @@ -9,8 +9,8 @@ - - + + {{year}} {{award_name}} {{awarding_unit}} diff --git a/app/templates/orbit_bootstrap/modules/personal_lab/index.html.erb b/app/templates/orbit_bootstrap/modules/personal_lab/index.html.erb index bf24889..776451c 100644 --- a/app/templates/orbit_bootstrap/modules/personal_lab/index.html.erb +++ b/app/templates/orbit_bootstrap/modules/personal_lab/index.html.erb @@ -9,8 +9,8 @@ - - + + {{year}} {{lab_title}} {{location}} diff --git a/app/templates/orbit_bootstrap/modules/personal_patent/index.html.erb b/app/templates/orbit_bootstrap/modules/personal_patent/index.html.erb index 0fd78b8..6a31e07 100644 --- a/app/templates/orbit_bootstrap/modules/personal_patent/index.html.erb +++ b/app/templates/orbit_bootstrap/modules/personal_patent/index.html.erb @@ -9,8 +9,8 @@ {{th_authors}} - - + + {{publication_date}} {{patent_title}} {{patent_no}} diff --git a/app/templates/orbit_bootstrap/modules/personal_project/index.html.erb b/app/templates/orbit_bootstrap/modules/personal_project/index.html.erb index 9e815fa..3f2737d 100644 --- a/app/templates/orbit_bootstrap/modules/personal_project/index.html.erb +++ b/app/templates/orbit_bootstrap/modules/personal_project/index.html.erb @@ -9,8 +9,8 @@ {{th_authors}} - - + + {{duration}} {{project_title}} {{job_title}} diff --git a/app/templates/orbit_bootstrap/modules/personal_research/index.html.erb b/app/templates/orbit_bootstrap/modules/personal_research/index.html.erb index e3696c4..785f4b8 100644 --- a/app/templates/orbit_bootstrap/modules/personal_research/index.html.erb +++ b/app/templates/orbit_bootstrap/modules/personal_research/index.html.erb @@ -9,8 +9,8 @@ - - + + {{year}} {{publication_date}} {{research_title}}