diff --git a/app/document.rb b/app/document.rb index 3bac225..e7895f0 100644 --- a/app/document.rb +++ b/app/document.rb @@ -1,3 +1,5 @@ +require 'article_json' + class Document def initialize(google_document) @google_document = google_document @@ -27,11 +29,22 @@ def html_body article_json.to_html end + def amp_body + article_json.to_amp + end + + def amp_libraries + [ + '', + *article_json.amp_exporter.amp_libraries + ] + end + private def article_json @article_json ||= - ArticleJSON::Article.from_google_doc_html(google_doc_html) + ::ArticleJSON::Article.from_google_doc_html(google_doc_html) end def google_doc_html diff --git a/app/server.rb b/app/server.rb index 13f47c2..62447af 100644 --- a/app/server.rb +++ b/app/server.rb @@ -15,9 +15,20 @@ get '/:document_id' do doc = GoogleDriveConnector.new.doc(params[:document_id]) halt 404 unless doc - erb :show, + erb :'show.html', locals: { blog_title: Config[:blog_title], doc: doc, } end + +get '/:document_id/amp' do + doc = GoogleDriveConnector.new.doc(params[:document_id]) + halt 404 unless doc + erb :'show.amp', + locals: { + blog_title: Config[:blog_title], + doc: doc, + header_tags: doc.amp_libraries.join(''), + } +end diff --git a/app/views/layout.erb b/app/views/layout.erb index 2a30845..ff19923 100644 --- a/app/views/layout.erb +++ b/app/views/layout.erb @@ -5,6 +5,9 @@