From bfa8c2dcadad3cd223c48b9642aa5d9becd5213c Mon Sep 17 00:00:00 2001 From: rulingcom Date: Fri, 24 Jul 2026 18:08:49 +0800 Subject: [PATCH] refactor: deprecate event_date and fully migrate to recruitment_date --- .../recruitment_mods_controller.rb | 28 +++++++------- app/helpers/admin/recruitment_helper.rb | 2 +- app/helpers/recruitment_helper.rb | 32 ++++++++-------- app/models/recruitment.rb | 38 +++++++++---------- app/models/recruitment_setting.rb | 18 ++++----- 5 files changed, 59 insertions(+), 59 deletions(-) diff --git a/app/controllers/recruitment_mods_controller.rb b/app/controllers/recruitment_mods_controller.rb index a7f64d3..df9b389 100644 --- a/app/controllers/recruitment_mods_controller.rb +++ b/app/controllers/recruitment_mods_controller.rb @@ -94,7 +94,7 @@ class RecruitmentModsController < ApplicationController "statuses" => statuses, "category" => (a.category.title rescue ""), "postdate" => event_time, - "event_start_date" => a.event_date_frontend, + "event_start_date" => a.recruitment_date_frontend, "event_end_date" => a.event_end_date_frontend, "event-time-formated" => event_time_formated, "event-time-css" => (event_time_formated.blank? ? "display: none;" : ""), @@ -133,8 +133,8 @@ class RecruitmentModsController < ApplicationController "salary_info-head" => RecruitmentCustomTitle.get_trans('salary_info'), "notes-head" => RecruitmentCustomTitle.get_trans('notes'), "contact_info-head" => RecruitmentCustomTitle.get_trans('contact_info'), - "event_date-head" => RecruitmentCustomTitle.get_trans('event_date'), - "date-head" => RecruitmentCustomTitle.get_trans('event_date'), + "recruitment_date-head" => RecruitmentCustomTitle.get_trans('recruitment_date'), + "date-head" => RecruitmentCustomTitle.get_trans('recruitment_date'), "event_start_date-head" => RecruitmentCustomTitle.get_trans('start_date'), "event_end_date-head" => RecruitmentCustomTitle.get_trans('end_date'), "status-head" => t('recruitment.table.status'), @@ -439,8 +439,8 @@ class RecruitmentModsController < ApplicationController "salary_info-head" => RecruitmentCustomTitle.get_trans('salary_info'), "notes-head" => RecruitmentCustomTitle.get_trans('notes'), "contact_info-head" => RecruitmentCustomTitle.get_trans('contact_info'), - "event_date-head" => RecruitmentCustomTitle.get_trans('event_date'), - "date-head" => RecruitmentCustomTitle.get_trans('event_date'), + "recruitment_date-head" => RecruitmentCustomTitle.get_trans('recruitment_date'), + "date-head" => RecruitmentCustomTitle.get_trans('recruitment_date'), "event_start_date-head" => RecruitmentCustomTitle.get_trans('start_date'), "event_end_date-head" => RecruitmentCustomTitle.get_trans('end_date'), "author-head" => t('recruitment.table.author'), @@ -730,8 +730,8 @@ class RecruitmentModsController < ApplicationController "salary_info-head" => RecruitmentCustomTitle.get_trans('salary_info'), "notes-head" => RecruitmentCustomTitle.get_trans('notes'), "contact_info-head" => RecruitmentCustomTitle.get_trans('contact_info'), - "event_date-head" => RecruitmentCustomTitle.get_trans('event_date'), - "date-head" => RecruitmentCustomTitle.get_trans('event_date'), + "recruitment_date-head" => RecruitmentCustomTitle.get_trans('recruitment_date'), + "date-head" => RecruitmentCustomTitle.get_trans('recruitment_date'), "event-time-css" => (event_time.blank? ? "display: none;" : ""), "education_requirement" => recruitment.education_requirement, "experience_requirement" => recruitment.experience_requirement, @@ -823,9 +823,9 @@ class RecruitmentModsController < ApplicationController end OrbitHelper.render_meta_tags(metas) - event_date = DateTime.parse(recruitment["event_date"].to_s) rescue nil + recruitment_date = DateTime.parse(recruitment["recruitment_date"].to_s) rescue nil event_end_date = DateTime.parse(recruitment["event_end_date"].to_s) rescue nil - event_time = RecruitmentSetting.event_time_formated_for_frontend(event_date, event_end_date) + event_time = RecruitmentSetting.event_time_formated_for_frontend(recruitment_date, event_end_date) recruitment_carousel_images = Array(recruitment["recruitment_carousel_images"]) resume_btn_title = (I18n.locale.to_s =="zh_tw") ? "繼續播放" : "resume" pause_btn_title = (I18n.locale.to_s =="zh_tw") ? "暫停播放" : "pause" @@ -858,8 +858,8 @@ class RecruitmentModsController < ApplicationController "title-head" => RecruitmentCustomTitle.get_trans('title'), "place-head" => RecruitmentCustomTitle.get_trans('place'), "notes-head" => RecruitmentCustomTitle.get_trans('notes'), - "event_date-head" => RecruitmentCustomTitle.get_trans('event_date'), - "date-head" => RecruitmentCustomTitle.get_trans('event_date'), + "recruitment_date-head" => RecruitmentCustomTitle.get_trans('recruitment_date'), + "date-head" => RecruitmentCustomTitle.get_trans('recruitment_date'), "event-time-css" => (event_time.blank? ? "display: none;" : ""), "notes" => (recruitment["notes_translations"][locale].to_s rescue ""), "image" => recruitment["image"]["original"], @@ -948,7 +948,7 @@ class RecruitmentModsController < ApplicationController "statuses" => statuses, "category" => (a.category.title rescue ""), "postdate" => event_time, - "event_start_date" => a.event_date_frontend, + "event_start_date" => a.recruitment_date_frontend, "event_end_date" => a.event_end_date_frontend, "author" => author, "is_top" => (a.is_top? ? 1 : 0), @@ -979,8 +979,8 @@ class RecruitmentModsController < ApplicationController "title-head" => RecruitmentCustomTitle.get_trans('title'), "place-head" => RecruitmentCustomTitle.get_trans('place'), "notes-head" => RecruitmentCustomTitle.get_trans('notes'), - "event_date-head" => RecruitmentCustomTitle.get_trans('event_date'), - "date-head" => RecruitmentCustomTitle.get_trans('event_date'), + "recruitment_date-head" => RecruitmentCustomTitle.get_trans('recruitment_date'), + "date-head" => RecruitmentCustomTitle.get_trans('recruitment_date'), "event_start_date-head" => RecruitmentCustomTitle.get_trans('start_date'), "event_end_date-head" => RecruitmentCustomTitle.get_trans('end_date'), "status-head" => t('recruitment.table.status'), diff --git a/app/helpers/admin/recruitment_helper.rb b/app/helpers/admin/recruitment_helper.rb index 58133d2..ad291d6 100644 --- a/app/helpers/admin/recruitment_helper.rb +++ b/app/helpers/admin/recruitment_helper.rb @@ -128,7 +128,7 @@ module Admin::RecruitmentHelper end anns.tags=new_tags when 2 - anns.event_date = val + anns.recruitment_date = val when 3 anns.postdate = val when 4 diff --git a/app/helpers/recruitment_helper.rb b/app/helpers/recruitment_helper.rb index 4775271..e191f0b 100644 --- a/app/helpers/recruitment_helper.rb +++ b/app/helpers/recruitment_helper.rb @@ -52,9 +52,9 @@ module RecruitmentHelper "category" => (a.category.title rescue ""), "tag_ids" => (set_tag_ids.nil? ? (a.tag_ids.map{|id| id.to_s}.to_s.gsub('"',"'") rescue '[]') : set_tag_ids), "postdate" => event_time_formated, - "event_start_date" => a.event_date_frontend, + "event_start_date" => a.recruitment_date_frontend, "event_end_date" => a.event_end_date_frontend, - "event_date" => event_time_formated, + "recruitment_date" => event_time_formated, "author" => author, "link_to_show" => link_to_show, "target" => target, @@ -93,13 +93,13 @@ module RecruitmentHelper if !(defined? SiteFeedAnnc).nil? sort_maps = nil if @show_today_data_first - sort_maps = {event_date: :asc, is_top: :desc, postdate: :asc, id: :asc} + sort_maps = {recruitment_date: :asc, is_top: :desc, postdate: :asc, id: :asc} else sort_maps = {is_top: :desc} if is_postdate_sort_first - sort_maps = sort_maps.merge({postdate: :desc, event_date: :desc, id: :desc}) + sort_maps = sort_maps.merge({postdate: :desc, recruitment_date: :desc, id: :desc}) else - sort_maps = sort_maps.merge({event_date: :desc, postdate: :desc, id: :desc}) + sort_maps = sort_maps.merge({recruitment_date: :desc, postdate: :desc, id: :desc}) end end match_cond = { @@ -119,7 +119,7 @@ module RecruitmentHelper match_cond["$and"] += extra_match_cond end if @show_today_data_first - match_cond["event_date"] = {"$gte" => Date.today.to_time} + match_cond["recruitment_date"] = {"$gte" => Date.today.to_time} end feeds, feeds_count = get_feed_annc(type,site_source,locale,categories,max_len,sort_maps,match_cond) end @@ -189,13 +189,13 @@ module RecruitmentHelper if !params[:stime].blank? stime = OrbitHelper.get_time_from_str(params[:stime]) extra_match_cond << { - "event_date" => {"$gte" => stime} + "recruitment_date" => {"$gte" => stime} } end if !params[:etime].blank? etime = OrbitHelper.get_time_from_str(params[:etime]) + 1.days extra_match_cond << { - "event_date" => {"$lt" => etime} + "recruitment_date" => {"$lt" => etime} } end if !extra_match_cond.empty? @@ -250,20 +250,20 @@ module RecruitmentHelper if @show_today_data_first || !is_postdate_sort_first if enable_manually_sort recruitment_list = recruitment_list.sort_by { |recruitment| - tmp1 = recruitment["event_date"].blank? + tmp1 = recruitment["recruitment_date"].blank? tmp2 = recruitment["postdate"].blank? [ (@show_today_data_first ? recruitment['sort_number'].to_i : -recruitment['sort_number'].to_i), - tmp1 ? 0 : 1, tmp1 ? nil : recruitment["event_date"].to_time, + tmp1 ? 0 : 1, tmp1 ? nil : recruitment["recruitment_date"].to_time, tmp2 ? 0 : 1, tmp2 ? nil : recruitment["postdate"].to_time ] } else recruitment_list = recruitment_list.sort_by { |recruitment| - tmp1 = recruitment["event_date"].blank? + tmp1 = recruitment["recruitment_date"].blank? tmp2 = recruitment["postdate"].blank? [ - tmp1 ? 0 : 1, tmp1 ? nil : recruitment["event_date"].to_time, + tmp1 ? 0 : 1, tmp1 ? nil : recruitment["recruitment_date"].to_time, tmp2 ? 0 : 1, tmp2 ? nil : recruitment["postdate"].to_time ] } @@ -274,21 +274,21 @@ module RecruitmentHelper else if enable_manually_sort recruitment_list = recruitment_list.sort_by { |recruitment| - tmp1 = recruitment["event_date"].blank? + tmp1 = recruitment["recruitment_date"].blank? tmp2 = recruitment["postdate"].blank? [ -a['sort_number'].to_i, tmp2 ? 0 : 1, tmp2 ? nil : recruitment["postdate"].to_time, - tmp1 ? 0 : 1, tmp1 ? nil : recruitment["event_date"].to_time + tmp1 ? 0 : 1, tmp1 ? nil : recruitment["recruitment_date"].to_time ] }.reverse else recruitment_list = recruitment_list.sort_by { |recruitment| - tmp1 = recruitment["event_date"].blank? + tmp1 = recruitment["recruitment_date"].blank? tmp2 = recruitment["postdate"].blank? [ tmp2 ? 0 : 1, tmp2 ? nil : recruitment["postdate"].to_time, - tmp1 ? 0 : 1, tmp1 ? nil : recruitment["event_date"].to_time + tmp1 ? 0 : 1, tmp1 ? nil : recruitment["recruitment_date"].to_time ] }.reverse end diff --git a/app/models/recruitment.rb b/app/models/recruitment.rb index dea180f..140a5ec 100644 --- a/app/models/recruitment.rb +++ b/app/models/recruitment.rb @@ -121,13 +121,13 @@ class Recruitment .valid_time_range .order( RecruitmentHelper.is_postdate_sort_first ? - {postdate: :desc, event_date: :desc, id: :desc} : - {event_date: :desc, postdate: :desc, id: :desc} + {postdate: :desc, recruitment_date: :desc, id: :desc} : + {recruitment_date: :desc, postdate: :desc, id: :desc} ) } scope :can_display_and_sorted_according_today, ->{ is_approved_and_show - .order(event_date: :asc).valid_time_range.order({postdate: :asc, id: :asc}).where(:event_date.gte => Date.today.to_time) + .order(recruitment_date: :asc).valid_time_range.order({postdate: :asc, id: :asc}).where(:recruitment_date.gte => Date.today.to_time) } scope :valid_time_range, ->{ and_any_of([ @@ -155,13 +155,13 @@ class Recruitment self.migrate_title_plain_text end index({postdate: 1}, { unique: false, background: true }) - index({is_top: -1, postdate: -1, event_date: -1, _id: -1}, { unique: false, background: true }) - index({is_top: -1, event_date: 1, postdate: -1, _id: -1}, { unique: false, background: true }) - index({approved: -1, is_hidden: 1, is_preview: 1, is_top: -1, postdate: -1, event_date: -1, _id: -1, deadline: -1}, { unique: false, background: true }) - index({approved: -1, is_hidden: 1, is_preview: 1, is_top: -1, event_date: 1, postdate: -1, _id: -1, deadline: -1}, { unique: false, background: true }) + index({is_top: -1, postdate: -1, recruitment_date: -1, _id: -1}, { unique: false, background: true }) + index({is_top: -1, recruitment_date: 1, postdate: -1, _id: -1}, { unique: false, background: true }) + index({approved: -1, is_hidden: 1, is_preview: 1, is_top: -1, postdate: -1, recruitment_date: -1, _id: -1, deadline: -1}, { unique: false, background: true }) + index({approved: -1, is_hidden: 1, is_preview: 1, is_top: -1, recruitment_date: 1, postdate: -1, _id: -1, deadline: -1}, { unique: false, background: true }) if RecruitmentSetting.pluck(:enable_manually_sort).first == true - index({approved: -1, is_hidden: 1, is_preview: 1, is_top: -1, sort_number: 1, postdate: -1, event_date: -1, _id: -1, deadline: -1}, { unique: false, background: true }) - index({approved: -1, is_hidden: 1, is_preview: 1, is_top: -1, sort_number: 1, event_date: 1, postdate: -1, _id: -1, deadline: -1}, { unique: false, background: true }) + index({approved: -1, is_hidden: 1, is_preview: 1, is_top: -1, sort_number: 1, postdate: -1, recruitment_date: -1, _id: -1, deadline: -1}, { unique: false, background: true }) + index({approved: -1, is_hidden: 1, is_preview: 1, is_top: -1, sort_number: 1, recruitment_date: 1, postdate: -1, _id: -1, deadline: -1}, { unique: false, background: true }) end field :sort_number, type: Integer def get_org_model @@ -179,7 +179,7 @@ class Recruitment end def date_parse_format #all_day ? '%Y-%m-%d' : '%Y-%m-%d %H:%M' - event_date_format + recruitment_date_format end def get_weekday(w) trans = self.class::Week_day_trans @@ -189,10 +189,10 @@ class Recruitment trans[:en][w] end end - def event_date_format - @event_date_format ||= (self.event_date_use_default_setting ? RecruitmentSetting.event_date_default_format : self.event_date_custom_format) + def recruitment_date_format + @recruitment_date_format ||= (self.recruitment_date_use_default_setting ? RecruitmentSetting.recruitment_date_default_format : self.recruitment_date_custom_format) end - def event_date_custom_format + def recruitment_date_custom_format datetime_format = "%Y-%m-%d" if self.including_day_of_the_week datetime_format += " %a" @@ -227,8 +227,8 @@ class Recruitment "#{st} ~ #{ed}" end end - def event_date_frontend - s = self.event_date.in_time_zone(Time.zone.utc_offset / 3600) rescue nil + def recruitment_date_frontend + s = self.recruitment_date.in_time_zone(Time.zone.utc_offset / 3600) rescue nil if s.blank? "" else @@ -246,7 +246,7 @@ class Recruitment end end def event_time_formated - s = self.event_date.in_time_zone(Time.zone.utc_offset / 3600) rescue nil + s = self.recruitment_date.in_time_zone(Time.zone.utc_offset / 3600) rescue nil e = self.event_end_date.in_time_zone(Time.zone.utc_offset / 3600) rescue nil if s.blank? && e.blank? "" @@ -433,7 +433,7 @@ class Recruitment events = self.monthly_event(agenda_start, agenda_end).convert_front(read_more_url) end def self.monthly_event(start_date,end_date) - self.any_of({:event_date.lte => start_date,:event_end_date.gte => start_date},{:event_date.gte => start_date,:event_end_date.lte => end_date},{:event_date.lte => end_date,:event_end_date.gte => end_date}).asc(:event_date) + self.any_of({:recruitment_date.lte => start_date,:event_end_date.gte => start_date},{:recruitment_date.gte => start_date,:event_end_date.lte => end_date},{:recruitment_date.lte => end_date,:event_end_date.gte => end_date}).asc(:recruitment_date) end def self.convert_front(read_more_url) self.all.collect do |re| @@ -443,7 +443,7 @@ class Recruitment :allDay => false, :color => nil, :url_linked => (re.is_external_link ? re.external_link : "#{read_more_url}/#{re.to_param}" rescue ""), - :start => re.event_date, + :start => re.recruitment_date, :end => re.event_end_date} end end @@ -501,7 +501,7 @@ class Recruitment text_translations.each do |l, text| a["text_translations"][l] = self.class.smart_convertor(text,base_url) end - a["event_date"] = self.event_date + a["recruitment_date"] = self.recruitment_date a["event_end_date"] = self.event_end_date a["postdate"] = self.postdate a["img_description_translations"] = self.image_description_translations diff --git a/app/models/recruitment_setting.rb b/app/models/recruitment_setting.rb index 75c0b79..5b8b9c4 100644 --- a/app/models/recruitment_setting.rb +++ b/app/models/recruitment_setting.rb @@ -55,11 +55,11 @@ class RecruitmentSetting def self.is_pro? self.first.pro_enabled rescue false end - def self.event_date_default_format + def self.recruitment_date_default_format setting = self.first - setting.event_date_default_format + setting.recruitment_date_default_format end - def event_date_default_format + def recruitment_date_default_format datetime_format = "%Y-%m-%d" if self.including_day_of_the_week datetime_format += " %a" @@ -88,8 +88,8 @@ class RecruitmentSetting "" end end - def event_date_format - @event_date_format ||= self.event_date_default_format + def recruitment_date_format + @recruitment_date_format ||= self.recruitment_date_default_format end def self.event_time_formated_for_frontend(st,ed) self.first.event_time_formated_for_frontend(st,ed) @@ -112,11 +112,11 @@ class RecruitmentSetting if s.blank? && e.blank? "" elsif e.blank? - custom_strftime(s, self.event_date_format) + custom_strftime(s, self.recruitment_date_format) elsif s.blank? - "~ " + custom_strftime(e, self.event_date_format) + "~ " + custom_strftime(e, self.recruitment_date_format) else - parse_format = self.event_date_format + parse_format = self.recruitment_date_format if s.to_date == e.to_date parse_format_arr = parse_format.split(/(%d %a|%d) /) parse_format_arr = parse_format_arr[0..-2].join(""), parse_format_arr[-1] @@ -125,7 +125,7 @@ class RecruitmentSetting e_time = e.strftime(parse_format_arr[1]) "#{date_str} #{s_time} ~ #{e_time}" else - custom_strftime(s, self.event_date_format) + " ~ " + custom_strftime(e, self.event_date_format) + custom_strftime(s, self.recruitment_date_format) + " ~ " + custom_strftime(e, self.recruitment_date_format) end end end