Add signup search feature.
Add assign organizer to seminar events and assign signups to reviewers feature.
This commit is contained in:
1 parent
a605fc0df7
commit
2f076ab2cf
29 files changed
+1474
-349
No files matched your search
@@ -28,9 +28,13 @@ class SeminarMain
|
||||
|
||||
field :create_user_id
|
||||
field :update_user_id
|
||||
|
||||
field :reviewer_ids
|
||||
field :reviewer_show_ids
|
||||
field :unassigned_seminar_signup_ids
|
||||
field :review_start_date, :type => Date
|
||||
field :review_end_date, :type => Date
|
||||
belongs_to :seminar_item
|
||||
|
||||
belongs_to :organizer , :class_name=>"MemberProfile", :foreign_key => :organizer_id
|
||||
has_many :seminar_links, :autosave => true, :dependent => :destroy
|
||||
has_many :seminar_files, :autosave => true, :dependent => :destroy
|
||||
has_many :seminar_item_contents, :autosave => true, :dependent => :destroy
|
||||
@@ -53,6 +57,85 @@ class SeminarMain
|
||||
accepts_nested_attributes_for :seminar_submission_field_sets, :allow_destroy => true
|
||||
accepts_nested_attributes_for :seminar_email_sets, :allow_destroy => true
|
||||
accepts_nested_attributes_for :seminar_signup_field_customs, :allow_destroy => true
|
||||
before_save do
|
||||
module_app_key = "seminar"
|
||||
add_module_app_member_ids = []
|
||||
remove_module_app_member_ids = []
|
||||
if self.reviewer_ids_changed?
|
||||
new_reviewer_ids = self.reviewer_ids.to_a - self.reviewer_ids_was.to_a
|
||||
remove_reviewer_ids = self.reviewer_ids_was.to_a - self.reviewer_ids.to_a
|
||||
new_reviewer_ids.each do |reviewer_id|
|
||||
SeminarReview.create(:reviewer_id=>reviewer_id,:seminar_main=>self)
|
||||
add_module_app_member_ids << reviewer_id
|
||||
end
|
||||
remove_reviewer_ids.each do |reviewer_id|
|
||||
SeminarReview.where(:reviewer_id=>reviewer_id,:seminar_main=>self).destroy
|
||||
remove_module_app_member_ids << reviewer_id
|
||||
end
|
||||
unassigned_seminar_signup_ids = self.seminar_signup_ids.map{|s| s.to_s}
|
||||
seminar_reviews = self.seminar_reviews
|
||||
seminar_reviews.each do |sr|
|
||||
unassigned_seminar_signup_ids = unassigned_seminar_signup_ids - sr.all_seminar_signup_ids
|
||||
end
|
||||
self.unassigned_seminar_signup_ids = unassigned_seminar_signup_ids
|
||||
end
|
||||
if self.organizer_id_changed?
|
||||
if self.organizer_id_was.present?
|
||||
remove_module_app_member_ids << self.organizer_id_was
|
||||
end
|
||||
if self.organizer_id.present?
|
||||
add_module_app_member_ids << self.organizer_id
|
||||
end
|
||||
end
|
||||
remove_module_app_member_ids.delete(self.organizer_id)
|
||||
self.reviewer_ids.each{|r| remove_module_app_member_ids.delete(r)}
|
||||
remove_module_app_member_ids.each do |m_id|
|
||||
user = User.where(:member_profile_id=>m_id).first
|
||||
begin
|
||||
user.extra_link_module_app_keys.delete(module_app_key)
|
||||
user.save
|
||||
rescue
|
||||
next
|
||||
end
|
||||
end
|
||||
add_module_app_member_ids.each do |m_id|
|
||||
user = User.where(:member_profile_id=>m_id).first
|
||||
begin
|
||||
user.extra_link_module_app_keys << module_app_key
|
||||
user.save
|
||||
rescue
|
||||
next
|
||||
end
|
||||
end
|
||||
end
|
||||
before_create do
|
||||
self.unassigned_seminar_signup_ids = []
|
||||
end
|
||||
after_initialize do
|
||||
unless self.new_record?
|
||||
save_flag = false
|
||||
seminar_reviews = self.seminar_reviews
|
||||
if seminar_reviews.present?
|
||||
if self["reviewer_ids"].nil?
|
||||
self["reviewer_ids"] = seminar_reviews.pluck(:reviewer_id).flatten.select{|s| !s.nil?}.to_a
|
||||
save_flag = true
|
||||
end
|
||||
if seminar_reviews.count != 0 && self.review_start_date.nil? && self.review_end_date.nil?
|
||||
seminar_review = seminar_reviews.first
|
||||
self.review_start_date = seminar_review.review_start_date rescue nil
|
||||
self.review_end_date = seminar_review.review_end_date rescue nil
|
||||
unless (self.review_start_date.nil? && self.review_end_date.nil?)
|
||||
save_flag = true
|
||||
end
|
||||
end
|
||||
end
|
||||
if self.unassigned_seminar_signup_ids.nil?
|
||||
self.unassigned_seminar_signup_ids = self.seminar_signup_ids.map{|s| s.to_s}
|
||||
save_flag = true
|
||||
end
|
||||
self.save if save_flag
|
||||
end
|
||||
end
|
||||
def self.time_range(date1 = null, date2 = null)
|
||||
|
||||
if !date1.blank?
|
||||
|
||||
@@ -5,8 +5,53 @@ class SeminarReview
|
||||
include Mongoid::Document
|
||||
include Mongoid::Timestamps
|
||||
|
||||
field :review_start_date, :type => Date, :default => Time.now
|
||||
field :review_end_date, :type => Date, :default => Time.now
|
||||
field :review_start_date, :type => Date, :default => Time.now #Already move to seminar_main
|
||||
field :review_end_date, :type => Date, :default => Time.now #Already move to seminar_main
|
||||
field :reviewer_id
|
||||
field :seminar_signup_ids, :type => Array, :default => []
|
||||
field :remove_seminar_signup_ids, :type => Array, :default => []
|
||||
field :default_seminar_signup_ids, :type => Array, :default => []
|
||||
field :default_topics, :type => Array, :default => []
|
||||
field :default_topics_values, :type => Array, :default => []
|
||||
belongs_to :seminar_main
|
||||
after_initialize do
|
||||
unless self.new_record?
|
||||
if (self.reviewer_id.class == Array rescue false)
|
||||
reviewer_ids = self.reviewer_id[1..-1]
|
||||
reviewer_ids.each do |reviewer_id|
|
||||
self.class.create(:reviewer_id=>reviewer_id,:seminar_main=>self.seminar_main)
|
||||
end
|
||||
self.reviewer_id = self.reviewer_id.first
|
||||
self.save
|
||||
end
|
||||
end
|
||||
end
|
||||
before_save do
|
||||
default_seminar_signup_ids = []
|
||||
self.default_topics.each_with_index do |topic,i|
|
||||
fn,id = (topic.split(".") rescue [])
|
||||
next if fn.nil?
|
||||
if fn == "seminar_signup_fields"
|
||||
default_seminar_signup_ids += SeminarSignupValue.where(:seminar_signup_field_id=>id,:val.in=>self.default_topics_values[i].to_a).pluck(:seminar_signup_id)
|
||||
elsif "seminar_submission_fields"
|
||||
seminar_signup_contribute_ids = SeminarSubmissionValue.where(:seminar_submission_field_id=>id,:val.in=>self.default_topics_values[i].to_a).pluck(:seminar_signup_contribute)
|
||||
default_seminar_signup_ids += SeminarSignupContribute.where(:id.in=>seminar_signup_contribute_ids).pluck(:seminar_signup_id)
|
||||
end
|
||||
end
|
||||
default_seminar_signup_ids.uniq!
|
||||
default_seminar_signup_ids = default_seminar_signup_ids.map{|s| s.to_s}
|
||||
self.default_seminar_signup_ids = default_seminar_signup_ids
|
||||
end
|
||||
def review
|
||||
MemberProfile.find(self.reviewer_id) rescue nil
|
||||
end
|
||||
def all_seminar_signup_ids
|
||||
seminar_signup_ids - remove_seminar_signup_ids + default_seminar_signup_ids
|
||||
end
|
||||
def append_default_signup_id(signup_id)
|
||||
sid = signup_id.to_s
|
||||
unless self.default_seminar_signup_ids.include?(sid)
|
||||
self.default_seminar_signup_ids << sid
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -22,6 +22,21 @@ class SeminarSignup
|
||||
|
||||
accepts_nested_attributes_for :seminar_signup_values, allow_destroy: true
|
||||
accepts_nested_attributes_for :seminar_signup_contributes, allow_destroy: true
|
||||
|
||||
after_destroy do
|
||||
seminar_main = self.seminar_main
|
||||
seminar_reviews = seminar_main.seminar_reviews
|
||||
id = self.id.to_s
|
||||
seminar_reviews.each do |sr|
|
||||
if sr.all_seminar_signup_ids.include?(id)
|
||||
sr.seminar_signup_ids.delete(id)
|
||||
sr.remove_seminar_signup_ids.delete(id)
|
||||
sr.default_seminar_signup_ids.delete(id)
|
||||
sr.save
|
||||
end
|
||||
end
|
||||
if seminar_main.unassigned_seminar_signup_ids.delete(id)
|
||||
seminar_main.save
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
@@ -0,0 +1,7 @@
|
||||
# encoding: utf-8
|
||||
class SeminarSignupAdminSetting
|
||||
include Mongoid::Document
|
||||
include Mongoid::Timestamps
|
||||
field :display_field , type: Array , default: []
|
||||
field :seminar_main_id
|
||||
end
|
||||
@@ -46,25 +46,30 @@ class SeminarSignupValue
|
||||
end
|
||||
|
||||
def get_field_value
|
||||
if (self.seminar_signup_field.markup.eql?("text_field") || self.seminar_signup_field.markup.eql?("text_area"))
|
||||
seminar_signup_field = self.seminar_signup_field
|
||||
if (seminar_signup_field.markup.eql?("text_field") || seminar_signup_field.markup.eql?("text_area"))
|
||||
if self.value.class == String
|
||||
field_value = self.value
|
||||
else
|
||||
field_value = self.value[I18n.locale]
|
||||
elsif (self.seminar_signup_field.markup.eql?("select") || self.seminar_signup_field.markup.eql?("radio_button"))
|
||||
field_value = self.seminar_signup_field.markup_value["#{self.value}"][I18n.locale] rescue nil
|
||||
elsif self.seminar_signup_field.markup.eql?("address")
|
||||
field_value = rf[:address_key][I18n.locale].map{|k,v| v}.delete_if(&:blank?).join(', ')
|
||||
elsif self.seminar_signup_field.markup.eql?("date")
|
||||
case self.seminar_signup_field.typeC['format']
|
||||
when 'format1'
|
||||
field_value = self.value.to_date.strftime("%Y/%m/%d")
|
||||
when 'format2'
|
||||
field_value = self.value.to_date.strftime("%Y/%m/%d")
|
||||
when 'format3'
|
||||
field_value = self.value.to_date.strftime("%Y/%m")
|
||||
when 'format4'
|
||||
field_value = self.value.to_date.strftime("%Y")
|
||||
end
|
||||
elsif self.seminar_signup_field.markup.eql?("checkbox")
|
||||
field_value = self.value.map {|v| self.seminar_signup_field.markup_value["#{v}"][I18n.locale]}.join(', ') rescue nil
|
||||
end
|
||||
elsif (seminar_signup_field.markup.eql?("select") || seminar_signup_field.markup.eql?("radio_button"))
|
||||
field_value = seminar_signup_field.markup_value["#{self.value}"][I18n.locale] rescue nil
|
||||
elsif seminar_signup_field.markup.eql?("address")
|
||||
field_value = rf[:address_key][I18n.locale].map{|k,v| v}.delete_if(&:blank?).join(', ')
|
||||
elsif seminar_signup_field.markup.eql?("date")
|
||||
case seminar_signup_field.typeC['format']
|
||||
when 'format1'
|
||||
field_value = self.value.to_date.strftime("%Y/%m/%d")
|
||||
when 'format2'
|
||||
field_value = self.value.to_date.strftime("%Y/%m/%d")
|
||||
when 'format3'
|
||||
field_value = self.value.to_date.strftime("%Y/%m")
|
||||
when 'format4'
|
||||
field_value = self.value.to_date.strftime("%Y")
|
||||
end
|
||||
elsif seminar_signup_field.markup.eql?("checkbox")
|
||||
field_value = self.value.map {|v| seminar_signup_field.markup_value["#{v}"][I18n.locale]}.join(', ') rescue nil
|
||||
end
|
||||
|
||||
field_value = (field_value =~ /\A#{URI::regexp(['http', 'https'])}\z/) ? "<a href='#{field_value}' target='blank'>#{field_value}</a>" : field_value
|
||||
@@ -72,15 +77,15 @@ class SeminarSignupValue
|
||||
|
||||
if !field_value.blank?
|
||||
{
|
||||
"key" => self.seminar_signup_field.key,
|
||||
"title" => self.seminar_signup_field.title,
|
||||
"key" => seminar_signup_field.key,
|
||||
"title" => seminar_signup_field.title,
|
||||
"value" => field_value,
|
||||
"val" => field_value = self.value
|
||||
}
|
||||
else
|
||||
{
|
||||
"key" => self.seminar_signup_field.key,
|
||||
"title" => self.seminar_signup_field.title,
|
||||
"key" => seminar_signup_field.key,
|
||||
"title" => seminar_signup_field.title,
|
||||
"value" => "",
|
||||
"val" => field_value = self.value
|
||||
}
|
||||
@@ -88,29 +93,30 @@ class SeminarSignupValue
|
||||
end
|
||||
|
||||
def get_value_by_locale(locale,add_more_index=nil)
|
||||
case self.seminar_signup_field.markup
|
||||
seminar_signup_field = self.seminar_signup_field
|
||||
case seminar_signup_field.markup
|
||||
when "text_field"
|
||||
case self.seminar_signup_field.add_more
|
||||
when true
|
||||
if self.seminar_signup_field.locale
|
||||
add_more_index.nil? ? self.value.collect{|t| t[locale.to_s]}.join(",") : self.value(add_more_index)[locale]
|
||||
else
|
||||
add_more_index.nil? ? self.value.join(",") : self.value(add_more_index)
|
||||
end
|
||||
|
||||
when false
|
||||
self.seminar_signup_field.locale ? self[locale.to_s] : self.value
|
||||
case seminar_signup_field.add_more
|
||||
when true
|
||||
if seminar_signup_field.locale
|
||||
add_more_index.nil? ? self.value.collect{|t| t[locale.to_s]}.join(",") : self.value(add_more_index)[locale]
|
||||
else
|
||||
add_more_index.nil? ? self.value.join(",") : self.value(add_more_index)
|
||||
end
|
||||
|
||||
when false
|
||||
seminar_signup_field.locale ? self[locale.to_s] : self.value
|
||||
end
|
||||
|
||||
when "select"
|
||||
markup_values = self.seminar_signup_field.self_defined_markup_options? ? self.seminar_signup_field.markup_value : self.seminar_signup_field.markup_value
|
||||
markup_values = seminar_signup_field.self_defined_markup_options? ? seminar_signup_field.markup_value : self.seminar_signup_field.markup_value
|
||||
markup_values[self.value][locale.to_s] rescue 'NoData'
|
||||
|
||||
when "text_area"
|
||||
self.seminar_signup_field.locale ? self[locale.to_s] : self.value
|
||||
seminar_signup_field.locale ? self[locale.to_s] : self.value
|
||||
|
||||
when "date"
|
||||
if self.seminar_signup_field.date_is_range?
|
||||
if seminar_signup_field.date_is_range?
|
||||
get_date_by_format(:from) + ' ~ ' + get_date_by_format(:to)
|
||||
# self.value["from"] + ' ~ ' + self.value["to"]
|
||||
else
|
||||
@@ -122,17 +128,17 @@ class SeminarSignupValue
|
||||
self.value[locale.to_s]
|
||||
|
||||
when "radio_button"
|
||||
markup_values = self.seminar_signup_field.markup_value
|
||||
markup_values = seminar_signup_field.markup_value
|
||||
markup_values[self.value][locale.to_s]
|
||||
|
||||
when "checkbox"
|
||||
markup_values = self.seminar_signup_field.markup_value
|
||||
markup_values = seminar_signup_field.markup_value
|
||||
self.value.collect{|key| markup_values["#{key}"][I18n.locale]}.join(",")
|
||||
when "date_durnation"
|
||||
self.value
|
||||
|
||||
else
|
||||
self.seminar_signup_field.locale ? self[locale.to_s] : self.value
|
||||
seminar_signup_field.locale ? self[locale.to_s] : self.value
|
||||
end
|
||||
end
|
||||
|
||||
@@ -174,18 +180,19 @@ def unset_all_lang_values
|
||||
end
|
||||
|
||||
def data_proc
|
||||
seminar_signup_field = self.seminar_signup_field
|
||||
unless self[:temp_data].nil?
|
||||
case self.seminar_signup_field.markup
|
||||
case seminar_signup_field.markup
|
||||
when "address"
|
||||
self["val"] = self["temp_data"]
|
||||
when 'text_field','text_area'
|
||||
if self.seminar_signup_field.add_more
|
||||
if seminar_signup_field.add_more
|
||||
self["val"] = self["temp_data"]
|
||||
else # if not add_more
|
||||
if self.seminar_signup_field.can_muti_lang_input?
|
||||
if seminar_signup_field.can_muti_lang_input?
|
||||
self[:temp_data].each do |key,val|
|
||||
self[key] = val
|
||||
end if(!self.seminar_signup_field.get_data[:cross_lang])
|
||||
end if(!seminar_signup_field.get_data[:cross_lang])
|
||||
else
|
||||
self["val"] = self[:temp_data]
|
||||
end
|
||||
|
||||
@@ -45,25 +45,30 @@ class SeminarSubmissionValue
|
||||
end
|
||||
|
||||
def get_field_value
|
||||
if (self.seminar_submission_field.markup.eql?("text_field") || self.seminar_submission_field.markup.eql?("text_area"))
|
||||
seminar_submission_field = self.seminar_submission_field
|
||||
if (seminar_submission_field.markup.eql?("text_field") || seminar_submission_field.markup.eql?("text_area"))
|
||||
if self.value.class == String
|
||||
field_value = self.value
|
||||
else
|
||||
field_value = self.value[I18n.locale]
|
||||
elsif (self.seminar_submission_field.markup.eql?("select") || self.seminar_submission_field.markup.eql?("radio_button"))
|
||||
field_value = self.seminar_submission_field.markup_value["#{self.value}"][I18n.locale] rescue nil
|
||||
elsif self.seminar_submission_field.markup.eql?("address")
|
||||
field_value = rf[:address_key][I18n.locale].map{|k,v| v}.delete_if(&:blank?).join(', ')
|
||||
elsif self.seminar_submission_field.markup.eql?("date")
|
||||
case self.seminar_submission_field.typeC['format']
|
||||
when 'format1'
|
||||
field_value = self.value.to_date.strftime("%Y/%m/%d")
|
||||
when 'format2'
|
||||
field_value = self.value.to_date.strftime("%Y/%m/%d")
|
||||
when 'format3'
|
||||
field_value = self.value.to_date.strftime("%Y/%m")
|
||||
when 'format4'
|
||||
field_value = self.value.to_date.strftime("%Y")
|
||||
end
|
||||
elsif self.seminar_submission_field.markup.eql?("checkbox")
|
||||
field_value = self.value.map {|v| self.seminar_submission_field.markup_value["#{v}"][I18n.locale]}.join(', ') rescue nil
|
||||
end
|
||||
elsif (seminar_submission_field.markup.eql?("select") || seminar_submission_field.markup.eql?("radio_button"))
|
||||
field_value = seminar_submission_field.markup_value["#{self.value}"][I18n.locale] rescue nil
|
||||
elsif seminar_submission_field.markup.eql?("address")
|
||||
field_value = rf[:address_key][I18n.locale].map{|k,v| v}.delete_if(&:blank?).join(', ')
|
||||
elsif seminar_submission_field.markup.eql?("date")
|
||||
case seminar_submission_field.typeC['format']
|
||||
when 'format1'
|
||||
field_value = self.value.to_date.strftime("%Y/%m/%d")
|
||||
when 'format2'
|
||||
field_value = self.value.to_date.strftime("%Y/%m/%d")
|
||||
when 'format3'
|
||||
field_value = self.value.to_date.strftime("%Y/%m")
|
||||
when 'format4'
|
||||
field_value = self.value.to_date.strftime("%Y")
|
||||
end
|
||||
elsif seminar_submission_field.markup.eql?("checkbox")
|
||||
field_value = self.value.map {|v| seminar_submission_field.markup_value["#{v}"][I18n.locale]}.join(', ') rescue nil
|
||||
end
|
||||
|
||||
field_value = (field_value =~ /\A#{URI::regexp(['http', 'https'])}\z/) ? "<a href='#{field_value}' target='blank'>#{field_value}</a>" : field_value
|
||||
@@ -71,15 +76,15 @@ class SeminarSubmissionValue
|
||||
|
||||
if !field_value.blank?
|
||||
{
|
||||
"key" => self.seminar_submission_field.key,
|
||||
"title" => self.seminar_submission_field.title,
|
||||
"key" => seminar_submission_field.key,
|
||||
"title" => seminar_submission_field.title,
|
||||
"value" => field_value,
|
||||
"val" => field_value = self.value
|
||||
}
|
||||
else
|
||||
{
|
||||
"key" => self.seminar_submission_field.key,
|
||||
"title" => self.seminar_submission_field.title,
|
||||
"key" => seminar_submission_field.key,
|
||||
"title" => seminar_submission_field.title,
|
||||
"value" => "",
|
||||
"val" => field_value = self.value
|
||||
}
|
||||
@@ -87,29 +92,30 @@ class SeminarSubmissionValue
|
||||
end
|
||||
|
||||
def get_value_by_locale(locale,add_more_index=nil)
|
||||
case self.seminar_submission_field.markup
|
||||
seminar_submission_field = self.seminar_submission_field
|
||||
case seminar_submission_field.markup
|
||||
when "text_field"
|
||||
case self.seminar_submission_field.add_more
|
||||
when true
|
||||
if self.seminar_submission_field.locale
|
||||
add_more_index.nil? ? self.value.collect{|t| t[locale.to_s]}.join(",") : self.value(add_more_index)[locale]
|
||||
else
|
||||
add_more_index.nil? ? self.value.join(",") : self.value(add_more_index)
|
||||
end
|
||||
|
||||
when false
|
||||
self.seminar_submission_field.locale ? self[locale.to_s] : self.value
|
||||
case seminar_submission_field.add_more
|
||||
when true
|
||||
if seminar_submission_field.locale
|
||||
add_more_index.nil? ? self.value.collect{|t| t[locale.to_s]}.join(",") : self.value(add_more_index)[locale]
|
||||
else
|
||||
add_more_index.nil? ? self.value.join(",") : self.value(add_more_index)
|
||||
end
|
||||
|
||||
when false
|
||||
seminar_submission_field.locale ? self[locale.to_s] : self.value
|
||||
end
|
||||
|
||||
when "select"
|
||||
markup_values = self.seminar_submission_field.self_defined_markup_options? ? self.seminar_submission_field.markup_value : self.seminar_submission_field.markup_value
|
||||
markup_values = seminar_submission_field.self_defined_markup_options? ? seminar_submission_field.markup_value : self.seminar_submission_field.markup_value
|
||||
markup_values[self.value][locale.to_s] rescue 'NoData'
|
||||
|
||||
when "text_area"
|
||||
self.seminar_submission_field.locale ? self[locale.to_s] : self.value
|
||||
seminar_submission_field.locale ? self[locale.to_s] : self.value
|
||||
|
||||
when "date"
|
||||
if self.seminar_submission_field.date_is_range?
|
||||
if seminar_submission_field.date_is_range?
|
||||
get_date_by_format(:from) + ' ~ ' + get_date_by_format(:to)
|
||||
# self.value["from"] + ' ~ ' + self.value["to"]
|
||||
else
|
||||
@@ -121,17 +127,17 @@ class SeminarSubmissionValue
|
||||
self.value[locale.to_s]
|
||||
|
||||
when "radio_button"
|
||||
markup_values = self.seminar_submission_field.markup_value
|
||||
markup_values = seminar_submission_field.markup_value
|
||||
markup_values[self.value][locale.to_s]
|
||||
|
||||
when "checkbox"
|
||||
markup_values = self.seminar_submission_field.markup_value
|
||||
markup_values = seminar_submission_field.markup_value
|
||||
self.value.collect{|key| markup_values["#{key}"][I18n.locale]}.join(",")
|
||||
when "date_durnation"
|
||||
self.value
|
||||
|
||||
else
|
||||
self.seminar_submission_field.locale ? self[locale.to_s] : self.value
|
||||
seminar_submission_field.locale ? self[locale.to_s] : self.value
|
||||
end
|
||||
end
|
||||
|
||||
@@ -167,22 +173,23 @@ class SeminarSubmissionValue
|
||||
protected
|
||||
|
||||
def unset_all_lang_values
|
||||
VALID_LOCALES.each{|t| self.unset t}
|
||||
end
|
||||
VALID_LOCALES.each{|t| self.unset t}
|
||||
end
|
||||
|
||||
def data_proc
|
||||
seminar_submission_field = self.seminar_submission_field
|
||||
unless self[:temp_data].nil?
|
||||
case self.seminar_submission_field.markup
|
||||
case seminar_submission_field.markup
|
||||
when "address"
|
||||
self["val"] = self["temp_data"]
|
||||
when 'text_field','text_area'
|
||||
if self.seminar_submission_field.add_more
|
||||
if seminar_submission_field.add_more
|
||||
self["val"] = self["temp_data"]
|
||||
else # if not add_more
|
||||
if self.seminar_submission_field.can_muti_lang_input?
|
||||
if seminar_submission_field.can_muti_lang_input?
|
||||
self[:temp_data].each do |key,val|
|
||||
self[key] = val
|
||||
end if(!self.seminar_submission_field.get_data[:cross_lang])
|
||||
end if(!seminar_submission_field.get_data[:cross_lang])
|
||||
else
|
||||
self["val"] = self[:temp_data]
|
||||
end
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
class SeminarUser
|
||||
include Mongoid::Document
|
||||
include Mongoid::Timestamps
|
||||
field :user_name
|
||||
field :password
|
||||
belongs_to :seminar_main
|
||||
# belongs_to :user
|
||||
# before_save do
|
||||
# if self.new_record?
|
||||
# self.user = User.find()
|
||||
# end
|
||||
# end
|
||||
end
|
||||
Reference in new issue
Block a user