From 63eca447d083b20df73218f7f728a8d651c0e8f0 Mon Sep 17 00:00:00 2001 From: Marcelo Briones Date: Wed, 31 Dec 2014 01:08:50 -0300 Subject: [PATCH] Strip EXIF data as user preference --- app/controllers/users_controller.rb | 7 ++++ app/models/photo.rb | 5 ++- app/models/user.rb | 3 +- app/serializers/export/user_serializer.rb | 5 +-- app/uploaders/processed_image.rb | 12 ------- app/uploaders/unprocessed_image.rb | 12 +++++-- app/views/users/privacy_settings.html.haml | 20 +++++++++++ config/locales/diaspora/en.yml | 2 ++ .../20141230214830_user_pref_strip_exif.rb | 9 +++++ db/schema.rb | 3 +- spec/fixtures/exif.jpg | Bin 0 -> 117835 bytes spec/lib/diaspora/exporter_spec.rb | 1 + spec/models/photo_spec.rb | 33 ++++++++++++++++++ spec/support/fixture_builder.rb | 2 +- 14 files changed, 94 insertions(+), 20 deletions(-) create mode 100644 db/migrate/20141230214830_user_pref_strip_exif.rb create mode 100644 spec/fixtures/exif.jpg diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index fabb3f3a4..2ff5c9c15 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -52,6 +52,12 @@ class UsersController < ApplicationController else flash[:notice] = I18n.t 'users.update.settings_not_updated' end + elsif u[:strip_exif] + if @user.update_attributes(u) + flash[:notice] = I18n.t 'users.update.settings_updated' + else + flash[:notice] = I18n.t 'users.update.settings_not_updated' + end elsif u[:language] if @user.update_attributes(u) I18n.locale = @user.language @@ -182,6 +188,7 @@ class UsersController < ApplicationController :invitation_service, :invitation_identifier, :show_community_spotlight_in_stream, + :strip_exif, :auto_follow_back, :auto_follow_back_aspect_id, :remember_me, diff --git a/app/models/photo.rb b/app/models/photo.rb index 7c57d1cb2..b652093e7 100644 --- a/app/models/photo.rb +++ b/app/models/photo.rb @@ -81,10 +81,13 @@ class Photo < ActiveRecord::Base photo.random_string = SecureRandom.hex(10) + if photo.author.local? + photo.unprocessed_image.strip_exif = photo.author.owner.strip_exif + end + if params[:user_file] image_file = params.delete(:user_file) photo.unprocessed_image.store! image_file - elsif params[:image_url] photo.remote_unprocessed_image_url = params[:image_url] photo.unprocessed_image.store! diff --git a/app/models/user.rb b/app/models/user.rb index 3fdbec790..1fa150afb 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -489,6 +489,7 @@ class User < ActiveRecord::Base :show_community_spotlight_in_stream].each do |field| self[field] = false end + self[:strip_exif] = true self[:email] = "deletedaccount_#{self[:id]}@example.org" random_password = SecureRandom.hex(20) @@ -527,6 +528,6 @@ class User < ActiveRecord::Base "created_at", "updated_at", "locked_at", "serialized_private_key", "getting_started", "disable_mail", "show_community_spotlight_in_stream", - "email", "remove_after", "export", "exporting", "exported_at"] + "strip_exif", "email", "remove_after", "export", "exporting", "exported_at"] end end diff --git a/app/serializers/export/user_serializer.rb b/app/serializers/export/user_serializer.rb index 9621d2095..a7563cc27 100644 --- a/app/serializers/export/user_serializer.rb +++ b/app/serializers/export/user_serializer.rb @@ -7,7 +7,8 @@ module Export :disable_mail, :show_community_spotlight_in_stream, :auto_follow_back, - :auto_follow_back_aspect + :auto_follow_back_aspect, + :strip_exif has_one :profile, serializer: Export::ProfileSerializer has_many :aspects, each_serializer: Export::AspectSerializer has_many :contacts, each_serializer: Export::ContactSerializer @@ -19,4 +20,4 @@ module Export end end -end \ No newline at end of file +end diff --git a/app/uploaders/processed_image.rb b/app/uploaders/processed_image.rb index 89750f336..71bae76a1 100644 --- a/app/uploaders/processed_image.rb +++ b/app/uploaders/processed_image.rb @@ -19,27 +19,15 @@ class ProcessedImage < CarrierWave::Uploader::Base version :thumb_small do process :resize_to_fill => [50,50] - process :strip end version :thumb_medium do process :resize_to_limit => [100,100] - process :strip end version :thumb_large do process :resize_to_limit => [300,300] - process :strip end version :scaled_full do process :resize_to_limit => [700,nil] - process :strip - end - - def strip - manipulate! do |img| - img.strip - img = yield(img) if block_given? - img - end end end diff --git a/app/uploaders/unprocessed_image.rb b/app/uploaders/unprocessed_image.rb index 8de9ed0f3..86d425eb2 100644 --- a/app/uploaders/unprocessed_image.rb +++ b/app/uploaders/unprocessed_image.rb @@ -5,6 +5,12 @@ class UnprocessedImage < CarrierWave::Uploader::Base include CarrierWave::MiniMagick + attr_accessor :strip_exif + + def strip_exif + @strip_exif || false + end + def store_dir "uploads/images" end @@ -17,11 +23,13 @@ class UnprocessedImage < CarrierWave::Uploader::Base model.random_string + File.extname(@filename) if @filename end - process :orient_image + process :basic_process - def orient_image + def basic_process manipulate! do |img| img.auto_orient + img.strip if strip_exif + img = yield(img) if block_given? img end end diff --git a/app/views/users/privacy_settings.html.haml b/app/views/users/privacy_settings.html.haml index 830f65eb8..7fec95c91 100644 --- a/app/views/users/privacy_settings.html.haml +++ b/app/views/users/privacy_settings.html.haml @@ -15,6 +15,26 @@ = t('privacy') = render 'shared/settings_nav' + .row-fluid + .span3 + .span5 + %h3 + = t('.title') + + = form_for current_user, :url => user_path, :html => { :method => :put } do |f| + = f.error_messages + + = f.fields_for :stream_preferences do |type| + #stream_prefs + = f.label :strip_exif, :class => "checkbox" do + = f.check_box :strip_exif + = t('.strip_exif') + + .small-horizontal-spacer + = f.submit t('.change'), :class => 'btn' + + %hr + .row-fluid .span3 .span5 diff --git a/config/locales/diaspora/en.yml b/config/locales/diaspora/en.yml index 80f13fda3..468f929e0 100644 --- a/config/locales/diaspora/en.yml +++ b/config/locales/diaspora/en.yml @@ -1316,8 +1316,10 @@ en: privacy_settings: title: "Privacy Settings" ignored_users: "Ignored Users" + strip_exif: "Strip metadata such as location, author, and camera model from uploaded images (recommended)" stop_ignoring: "Stop ignoring" no_user_ignored_message: "You are currently ignoring no other user" + change: "Change" destroy: success: "Your account has been locked. It may take 20 minutes for us to finish closing your account. Thank you for trying diaspora*." diff --git a/db/migrate/20141230214830_user_pref_strip_exif.rb b/db/migrate/20141230214830_user_pref_strip_exif.rb new file mode 100644 index 000000000..79983181d --- /dev/null +++ b/db/migrate/20141230214830_user_pref_strip_exif.rb @@ -0,0 +1,9 @@ +class UserPrefStripExif < ActiveRecord::Migration + def up + add_column :users, :strip_exif, :boolean, default: true + end + + def down + remove_column :users, :strip_exif + end +end diff --git a/db/schema.rb b/db/schema.rb index d176940cd..e2251207a 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 20141227120907) do +ActiveRecord::Schema.define(version: 20141230214830) do create_table "account_deletions", force: true do |t| t.string "diaspora_handle" @@ -558,6 +558,7 @@ ActiveRecord::Schema.define(version: 20141227120907) do t.datetime "reset_password_sent_at" t.datetime "last_seen" t.datetime "remove_after" + t.boolean "strip_exif", default: true t.string "export" t.datetime "exported_at" t.boolean "exporting", default: false diff --git a/spec/fixtures/exif.jpg b/spec/fixtures/exif.jpg new file mode 100644 index 0000000000000000000000000000000000000000..60236d594ba7fe81e3cbfaf7f9702927485952a7 GIT binary patch literal 117835 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 z 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�Qy5ENaHlFIZmEU9`6i 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 E*^!FUIsgCw literal 0 HcmV?d00001 diff --git a/spec/lib/diaspora/exporter_spec.rb b/spec/lib/diaspora/exporter_spec.rb index 412be8a8f..7bb429cc8 100644 --- a/spec/lib/diaspora/exporter_spec.rb +++ b/spec/lib/diaspora/exporter_spec.rb @@ -37,6 +37,7 @@ describe Diaspora::Exporter do it { matches :user, :show_community_spotlight_in_stream } it { matches :user, :auto_follow_back } it { matches :user, :auto_follow_back_aspect } + it { matches :user, :strip_exif } it { matches :user, :profile, :first_name, root: @user1.person.profile } it { matches :user, :profile, :last_name, root: @user1.person.profile } diff --git a/spec/models/photo_spec.rb b/spec/models/photo_spec.rb index 5b568f401..df2ca276a 100644 --- a/spec/models/photo_spec.rb +++ b/spec/models/photo_spec.rb @@ -140,6 +140,39 @@ describe Photo, :type => :model do end end + context 'with a saved photo containing EXIF data' do + before do + @exif_filename = 'exif.jpg' + @exif_name = File.join(File.dirname(__FILE__), '..', 'fixtures', @exif_filename) + end + + it 'should contain EXIF data if user prefer' do + @alice_photo = alice.build_post(:photo, :user_file => File.open(@exif_name), :to => alice.aspects.first.id) + + with_carrierwave_processing do + @alice_photo.unprocessed_image.store! File.open(@exif_name) + @alice_photo.save + end + + new_filename = File.join(File.dirname(__FILE__), '../../public/', @alice_photo.unprocessed_image.store_dir, @alice_photo.unprocessed_image.filename) + image = MiniMagick::Image.new(new_filename) + expect(image.exif.length).not_to eq(0) + end + + it 'should not contain EXIF data if user prefer' do + @bob_photo = bob.build_post(:photo, :user_file => File.open(@exif_name), :to => @aspect.id) + + with_carrierwave_processing do + @bob_photo.unprocessed_image.store! File.open(@exif_name) + @bob_photo.save + end + + new_filename = File.join(File.dirname(__FILE__), '../../public/', @bob_photo.unprocessed_image.store_dir, @bob_photo.unprocessed_image.filename) + image = MiniMagick::Image.new(new_filename) + expect(image.exif.length).to eq(0) + end + end + describe 'non-image files' do it 'should not store' do file = File.open(@fail_fixture_name) diff --git a/spec/support/fixture_builder.rb b/spec/support/fixture_builder.rb index 656406025..34f981a33 100644 --- a/spec/support/fixture_builder.rb +++ b/spec/support/fixture_builder.rb @@ -8,7 +8,7 @@ FixtureBuilder.configure do |fbuilder| # now declare objects fbuilder.factory do # Users - alice = FactoryGirl.create(:user_with_aspect, :username => "alice") + alice = FactoryGirl.create(:user_with_aspect, :username => "alice", :strip_exif => false) alices_aspect = alice.aspects.where(:name => "generic").first eve = FactoryGirl.create(:user_with_aspect, :username => "eve")