Skip to content

Commit

Permalink
Merge pull request #3622 from nebulab/kennyadsl/revert-3573
Browse files Browse the repository at this point in the history
Revert "API uploads images via URL" (#3573)
  • Loading branch information
kennyadsl authored May 15, 2020
2 parents b8296bd + 97cac91 commit 83ea392
Show file tree
Hide file tree
Showing 3 changed files with 2 additions and 54 deletions.
25 changes: 2 additions & 23 deletions api/app/controllers/spree/api/images_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -15,23 +15,13 @@ def show

def create
authorize! :create, Image

@image = scope.images.build(image_params.except(:attachment))
@image.attachment = prepared_attachment
@image.save

@image = scope.images.create(image_params)
respond_with(@image, status: 201, default_template: :show)
end

def update
@image = scope.images.accessible_by(current_ability, :update).find(params[:id])
if image_params[:attachment].present?
@image.assign_attributes(image_params.except(:attachment))
@image.attachment = prepared_attachment
@image.save
else
@image.update image_params
end
@image.update(image_params)
respond_with(@image, default_template: :show)
end

Expand All @@ -54,17 +44,6 @@ def scope
Spree::Variant.find(params[:variant_id])
end
end

def prepared_attachment
uri = URI.parse image_params[:attachment]
if uri.is_a? URI::HTTP
URI.open(image_params[:attachment])
else
image_params[:attachment]
end
rescue URI::InvalidURIError
image_params[:attachment]
end
end
end
end
1 change: 0 additions & 1 deletion api/openapi/solidus-api.oas.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6378,7 +6378,6 @@ components:
type: string
attachment:
type: string
description: 'This field can be used to pass an image URL. When used in this manner, the image undergoes the standard post upload processing via paperclip.'
position:
type: integer
viewable_type:
Expand Down
30 changes: 0 additions & 30 deletions api/spec/requests/spree/api/images_controller_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -32,22 +32,6 @@ module Spree
end.to change(Image, :count).by(1)
end

it 'can upload a new image from a valid URL' do
expect do
post spree.api_product_images_path(product.id), params: {
image: {
attachment: 'https://github.com/solidusio/brand/raw/1827e7afb7ebcf5a1fc9cf7bf6cf9d277183ef11/PNG/solidus-logo-dark.png',
viewable_type: 'Spree::Variant',
viewable_id: product.master.to_param,
alt: 'just a test'
},
}
expect(response.status).to eq(201)
expect(json_response).to have_attributes(attributes)
expect(json_response[:alt]).to eq('just a test')
end.to change(Image, :count).by(1)
end

context "working with an existing product image" do
let!(:product_image) { product.master.images.create!(attachment: image('thinking-cat.jpg')) }

Expand Down Expand Up @@ -85,20 +69,6 @@ module Spree
expect(product_image.reload.position).to eq(2)
end

it "can update image URL" do
expect(product_image.position).to eq(1)
put spree.api_variant_image_path(product.master.id, product_image), params: {
image: {
position: 2,
attachment: 'https://github.com/solidusio/brand/raw/1827e7afb7ebcf5a1fc9cf7bf6cf9d277183ef11/PNG/solidus-logo-dark.png'
},
}
expect(response.status).to eq(200)
expect(json_response).to have_attributes(attributes)
expect(product_image.reload.position).to eq(2)
expect(product_image.reload.attachment_height).to eq(420)
end

it "can delete an image" do
delete spree.api_variant_image_path(product.master.id, product_image)
expect(response.status).to eq(204)
Expand Down

0 comments on commit 83ea392

Please sign in to comment.