olympiamanagement/app/models/sign_up_setting.rb

46 lines
2.2 KiB
Ruby
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

class SignUpSetting
include Mongoid::Document
include Mongoid::Timestamps
include OrbitModel::Status
include OrbitModel::Impression
# encoding: utf-8
include OrbitTag::Taggable
include OrbitCategory::Categorizable
field :start_year , type: String , default: Time.now.strftime("%Y")
field :end_year , type: String , default: Time.now.strftime("%Y")
field :start_month , type: String , default: Time.now.strftime("%m")
field :end_month , type: String , default: Time.now.strftime("%m")
field :start_day , type: String , default: Time.now.strftime("%d")
field :end_day , type: String , default: Time.now.strftime("%d")
field :start_o_clock , type: String , default: Time.now.strftime("%H")
field :end_o_clock , type: String , default: Time.now.strftime("%H")
field :start_minute , type: String , default: Time.now.strftime("%M")
field :end_minute , type: String , default: Time.now.strftime("%M")
field :default_password , type: String , default: ""
field :set_default_password , type: Boolean , default: false
field :remark_field , type: Hash , default: {:zh_tw=>"<strong><span style="font-size: 14pt"><span style="font-family: arial, helvetica, sans-serif">注意事項:</span></span></strong><span style="font-size: 14pt"><br />
請於<strong><span style="color: rgb(255,0,0)">2019年5月3日前</span></strong>(以郵戳為憑),將本報名表正本(需核章)以掛號方式郵寄至【<strong><span style="color: rgb(0,0,255)">11677台北市文山區汀州路4段88號科教中心收件人 IJSO選訓委員會</span></strong>】,逾期概不受理報名。 <br />
<br type="_moz" />
</span><br />",:en=>""}
field :registration_instructions , type: Hash , default: {:zh_tw=>"",:en=>""}
field :active , type: Boolean , default: true
after_save :change_all_password , :check_active
def change_all_password
if self.set_default_password
OlympiaSchoolDataFields.all.each do |school_field|
school_field.password = self.default_password
school_field.save
end
self.set_default_password = false
self.save
end
end
def check_active
if self.active
SignUpSetting.where.not(:id=>self.id).each do |setting|
setting.active = false
setting.save!
end
end
end
end