Commit 310bb1f93d88a2f3713ab6d16f7fc5da4529b2e4

Authored by Antonio Terceiro
2 parents c5a8c717 90636c0a

Merge branch 'metadata-only-for-public-content' into 'master'

metadata: do not expose metadata on private pages

See merge request !639
plugins/metadata/lib/metadata_plugin.rb
... ... @@ -53,6 +53,7 @@ class MetadataPlugin < Noosfero::Plugin
53 53 when Proc then instance_exec(&variable)
54 54 else instance_variable_get variable
55 55 end
  56 + return if object.respond_to? :public? and not object.public?
56 57 return unless specs = (object.class.metadata_specs rescue nil)
57 58  
58 59 r = []
... ...
plugins/metadata/test/functional/content_viewer_controller_test.rb
... ... @@ -57,4 +57,12 @@ class ContentViewerControllerTest < ActionController::TestCase
57 57 end
58 58 end
59 59  
  60 + should 'not expose metadata on private pages' do
  61 + profile.update_column :public_profile, false
  62 + a = TinyMceArticle.create(name: 'Article to be shared with images', body: 'This article should be shared with all social networks <img src="/images/x.png" />', profile: profile)
  63 +
  64 + get :view_page, profile: profile.identifier, page: [ a.name.to_slug ]
  65 + assert_no_tag tag: 'meta', attributes: { property: 'og:image', content: /\/images\/x.png/ }
  66 + end
  67 +
60 68 end
... ...