diff --git a/plugins/stoa/controllers/stoa_plugin_controller.rb b/plugins/stoa/controllers/stoa_plugin_controller.rb index 7eedbf3..b4248c5 100644 --- a/plugins/stoa/controllers/stoa_plugin_controller.rb +++ b/plugins/stoa/controllers/stoa_plugin_controller.rb @@ -42,15 +42,4 @@ class StoaPluginController < PublicController end end - private - - def selected_fields(kind, user) - fields = FIELDS[kind] || FIELDS['essential'] - return fields.reject { |field| !FIELDS['essential'].include?(field) } unless user.person.public_profile - fields.reject do |field| - !user.person.public_fields.include?(field) && - !FIELDS['essential'].include?(field) - end - end - end diff --git a/plugins/stoa/lib/stoa_plugin/person_fields.rb b/plugins/stoa/lib/stoa_plugin/person_fields.rb index e30273f..7b0a014 100644 --- a/plugins/stoa/lib/stoa_plugin/person_fields.rb +++ b/plugins/stoa/lib/stoa_plugin/person_fields.rb @@ -1,10 +1,11 @@ module StoaPlugin::PersonFields HEAVY = %w[image_base64] FILTER = %w[image] - EXTRA = %w[tags] + EXTRA = %w[tags communities] + CUSTOM = %w[first_name surname homepage image_base64 tags communities] ESSENTIAL = %w[username email nusp] - AVERAGE = ESSENTIAL + %w[name first_name surname address homepage communities] + AVERAGE = ESSENTIAL + %w[name first_name surname address homepage] FULL = (AVERAGE + Person.fields + HEAVY + EXTRA - FILTER).uniq COMPLETE = FULL - HEAVY @@ -15,4 +16,16 @@ module StoaPlugin::PersonFields 'full' => FULL, 'complete' => COMPLETE } + + private + + def selected_fields(kind, user) + fields = FIELDS[kind] || FIELDS['essential'] + return fields.reject { |field| !FIELDS['essential'].include?(field) } unless user.person.public_profile + fields.reject do |field| + !user.person.public_fields.include?(field) && + !FIELDS['essential'].include?(field) && + !CUSTOM.include?(field) + end + end end -- libgit2 0.21.2