From 981e6dab67a46d57e76bc180fe0dec776a52e462 Mon Sep 17 00:00:00 2001 From: r888888888 Date: Thu, 23 Oct 2014 16:34:31 -0700 Subject: [PATCH] no longer require presence of ugoira tag to process ugoira posts --- app/logical/downloads/file.rb | 2 +- app/logical/downloads/rewrite_strategies/pixiv.rb | 1 + app/logical/pixiv_ugoira_service.rb | 10 ++++++---- app/models/upload.rb | 10 +++------- 4 files changed, 11 insertions(+), 12 deletions(-) diff --git a/app/logical/downloads/file.rb b/app/logical/downloads/file.rb index 4d104bbfd..ab1e031d0 100644 --- a/app/logical/downloads/file.rb +++ b/app/logical/downloads/file.rb @@ -14,7 +14,7 @@ module Downloads @file_path = file_path # we sometimes need to capture data from the source page - @data = {:is_ugoira => options[:is_ugoira]} + @data = {} end def download! diff --git a/app/logical/downloads/rewrite_strategies/pixiv.rb b/app/logical/downloads/rewrite_strategies/pixiv.rb index 358add316..9b6fc80a9 100644 --- a/app/logical/downloads/rewrite_strategies/pixiv.rb +++ b/app/logical/downloads/rewrite_strategies/pixiv.rb @@ -18,6 +18,7 @@ module Downloads # http://i2.pixiv.net/img-zip-ugoira/img/2014/08/05/06/01/10/44524589_ugoira1920x1080.zip if url =~ %r!\Ahttps?://i\d+\.pixiv\.net/img-zip-ugoira/img/\d{4}/\d{2}/\d{2}/\d{2}/\d{2}/\d{2}/\d+_ugoira\d+x\d+\.zip\z!i + data[:is_ugoira] = true data[:ugoira_frame_data] = source.ugoira_frame_data data[:ugoira_width] = source.ugoira_width data[:ugoira_height] = source.ugoira_height diff --git a/app/logical/pixiv_ugoira_service.rb b/app/logical/pixiv_ugoira_service.rb index a56de5abc..2657ceb93 100644 --- a/app/logical/pixiv_ugoira_service.rb +++ b/app/logical/pixiv_ugoira_service.rb @@ -19,9 +19,11 @@ class PixivUgoiraService end def load(data) - @frame_data = data[:ugoira_frame_data] - @width = data[:ugoira_width] - @height = data[:ugoira_height] - @content_type = data[:ugoira_content_type] + if data[:is_ugoira] + @frame_data = data[:ugoira_frame_data] + @width = data[:ugoira_width] + @height = data[:ugoira_height] + @content_type = data[:ugoira_content_type] + end end end diff --git a/app/models/upload.rb b/app/models/upload.rb index dcc17ef55..5cb4f0393 100644 --- a/app/models/upload.rb +++ b/app/models/upload.rb @@ -149,7 +149,7 @@ class Upload < ActiveRecord::Base end def async_conversion? - has_ugoira_tag? + is_ugoira? end def ugoira_service @@ -366,16 +366,12 @@ class Upload < ActiveRecord::Base source =~ /^https?:\/\// && file_path.blank? end - def has_ugoira_tag? - tag_string =~ /\bugoira\b/i - end - # Downloads the file to destination_path def download_from_source(destination_path) self.file_path = destination_path - download = Downloads::File.new(source, destination_path, :is_ugoira => has_ugoira_tag?) + download = Downloads::File.new(source, destination_path) download.download! - ugoira_service.load(download.data) if has_ugoira_tag? + ugoira_service.load(download.data) end end