File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -173,16 +173,22 @@ def attachable_url
173173 return nil if significant_attachable . blank?
174174
175175 if significant_attachable . is_a? ( Edition )
176- attachable_in_pre_publication_state = Edition ::PRE_PUBLICATION_STATES . include? ( significant_attachable . state )
177- attachable_in_pre_publication_state ? significant_attachable . public_url ( draft : true ) : significant_attachable . public_url
176+ url_for ( significant_attachable )
178177 elsif significant_attachable . respond_to? ( :parent_attachable ) && significant_attachable . parent_attachable . is_a? ( Edition )
179- parent_attachable_in_pre_publication_state = Edition ::PRE_PUBLICATION_STATES . include? ( significant_attachable . parent_attachable . state )
180- parent_attachable_in_pre_publication_state ? significant_attachable . parent_attachable . public_url ( draft : true ) : significant_attachable . parent_attachable . public_url
178+ url_for ( significant_attachable . parent_attachable )
181179 elsif significant_attachable . is_a? ( PolicyGroup )
182180 significant_attachable . public_url
183181 end
184182 end
185183
184+ def url_for ( edition )
185+ if Edition ::PRE_PUBLICATION_STATES . include? ( edition . state )
186+ edition . public_url ( draft : true )
187+ elsif edition . publicly_visible?
188+ edition . public_url
189+ end
190+ end
191+
186192 def access_limitation
187193 return [ ] unless access_limited?
188194
@@ -193,7 +199,7 @@ def keep_existing_file?
193199 to_replace_id . present? && keep_or_replace != "replace"
194200 end
195201
196- private
202+ private
197203
198204 def filtered_attachments ( include_deleted_attachables : false )
199205 if include_deleted_attachables
Original file line number Diff line number Diff line change @@ -475,6 +475,7 @@ class AttachmentDataTest < ActiveSupport::TestCase
475475 assert_equal edition . public_url ( draft : true ) , attachment_data . attachable_url
476476 end
477477
478+ # TODO - This is for published and withdrawn
478479 it "returns live url for published edition" do
479480 # Works because visible_to?(user) returns true because !draft
480481 edition = create ( :published_standard_edition , :with_file_attachment )
@@ -483,6 +484,7 @@ class AttachmentDataTest < ActiveSupport::TestCase
483484 assert_equal edition . public_url , attachment_data . attachable_url
484485 end
485486
487+ # Cover unpublished edition?
486488 it "returns nil for deleted edition" do
487489 edition = create ( :draft_standard_edition , :with_file_attachment )
488490 attachment_data = edition . attachments . first . attachment_data
You can’t perform that action at this time.
0 commit comments