diff --git a/app/controllers/members_controller.rb b/app/controllers/members_controller.rb index c0b6c66..893a9d0 100644 --- a/app/controllers/members_controller.rb +++ b/app/controllers/members_controller.rb @@ -37,7 +37,7 @@ class MembersController < ApplicationController pd = plugin_data.collect do |p| { "data_title" => p.slug_title, - "link_to_show" => OrbitHelper.url_to_show(p.to_param) + "link_to_show" => OrbitHelper.url_to_show(p.to_param) + "?method=personal_plugin&plugin_name=#{plugin.app_name}" } end @@ -132,4 +132,17 @@ class MembersController < ApplicationController } } end + + def personal_plugin + params = OrbitHelper.params + plugin_class = params[:plugin_name].constantize + plugin_value = plugin_class.find_by(uid: params[:uid]) + data = [] + plugin_value.values_for_view.each do |key,value| + data << {"key" => key.humanize, "value" => value} + end + { + "plugin_data" => data + } + end end diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index 36cdffd..ed9e85e 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -341,6 +341,16 @@ module ApplicationHelper html.html_safe end + def show_attribute_value(value) + if value.kind_of? Hash + result = [] + value.each{|t| result.push(t.last)} + result.join "," + else + value + end + end + def create_pagination(total_pages) file = File.join(Rails.root, 'app', 'templates', "#{@key}", 'home', "pagination.html.erb") html = "" diff --git a/app/helpers/member_helper.rb b/app/helpers/member_helper.rb index 65965f5..22b1e65 100644 --- a/app/helpers/member_helper.rb +++ b/app/helpers/member_helper.rb @@ -1,2 +1,11 @@ module MemberHelper + include ActionView::Helpers::UrlHelper + + def url_to_file(url,title) + link_to "#{title}", url + end + + def nl2br(val) + val.gsub(/\r\n/, '
').html_safe + end end diff --git a/app/models/attribute_value.rb b/app/models/attribute_value.rb index 8aa2651..ff67d2d 100644 --- a/app/models/attribute_value.rb +++ b/app/models/attribute_value.rb @@ -46,7 +46,6 @@ class AttributeValue def get_value_by_locale(locale,add_more_index=nil) - case self.attribute_field.markup when "text_field" case self.attribute_field.add_more @@ -86,8 +85,7 @@ class AttributeValue when "checkbox" markup_values = self.attribute_field.markup_value - self.value.collect{|key| markup_values[key][locale.to_s]}.join(",") - + self.value.collect{|key| markup_values["#{key}"][I18n.locale]}.join(",") when "date_durnation" self.value diff --git a/app/templates/orbit_bootstrap/modules/journal_paper/show.html.erb b/app/templates/orbit_bootstrap/modules/journal_paper/show.html.erb new file mode 100644 index 0000000..82571e1 --- /dev/null +++ b/app/templates/orbit_bootstrap/modules/journal_paper/show.html.erb @@ -0,0 +1 @@ +

test

\ No newline at end of file diff --git a/app/templates/orbit_bootstrap/modules/member/personal_plugin.html.erb b/app/templates/orbit_bootstrap/modules/member/personal_plugin.html.erb new file mode 100644 index 0000000..6fc5625 --- /dev/null +++ b/app/templates/orbit_bootstrap/modules/member/personal_plugin.html.erb @@ -0,0 +1,5 @@ +
+
+

{{key}} : {{value}}

+
+
\ No newline at end of file diff --git a/app/views/admin/members/_show_roles.html.erb b/app/views/admin/members/_show_roles.html.erb index b2bb986..cb7d17d 100644 --- a/app/views/admin/members/_show_roles.html.erb +++ b/app/views/admin/members/_show_roles.html.erb @@ -4,5 +4,9 @@
<%= t('status') %>
<%= @member.role_statuses.where(role_id: show_roles.id).map{|t|t.title.to_s}.join(',') rescue '' %>
+ <% show_roles.attribute_fields.where(:disabled=>false).asc(:_id).each do |rf| %> +
<%= rf.title %>
+
<%= nl2br(show_attribute_value(@member.get_attribute_value(rf,"role").get_value_by_locale(I18n.locale))) rescue '' %>
+ <% end -%>
diff --git a/app/views/admin/members/_user_profile.html.erb b/app/views/admin/members/_user_profile.html.erb index 9a13d32..b0ab07e 100644 --- a/app/views/admin/members/_user_profile.html.erb +++ b/app/views/admin/members/_user_profile.html.erb @@ -17,7 +17,7 @@
<%= t("users.#{(@member.sex.nil? ? 'unknown' : @member.sex)}") %>
<% items.each do |item| %>
<%= item.member_profile_field.title %>
-
<%= item.value %>
+
<%= nl2br(show_attribute_value(@member.get_attribute_value(item.member_profile_field).get_value_by_locale(I18n.locale))) rescue '' %>
<% end -%> \ No newline at end of file diff --git a/app/views/members/personal_plugin.html.erb b/app/views/members/personal_plugin.html.erb new file mode 100644 index 0000000..648b75c --- /dev/null +++ b/app/views/members/personal_plugin.html.erb @@ -0,0 +1 @@ +<%= render_view %> \ No newline at end of file