|
|
|
@ -22,6 +22,24 @@ module WelcomeHelper
|
|
|
|
|
include CoursesHelper
|
|
|
|
|
include ProjectsHelper
|
|
|
|
|
|
|
|
|
|
# 前略·天国の首页君/Earth has been unable stop to welcomePage's.
|
|
|
|
|
# sum - 要搜索的项目数量
|
|
|
|
|
# max_rate - 新项目所占所有项目的比重,10分制
|
|
|
|
|
#
|
|
|
|
|
# Examples
|
|
|
|
|
#
|
|
|
|
|
# find_miracle_course(10, 7)
|
|
|
|
|
# # => 前7个项目为新课程,后面三个是参与人数最多的
|
|
|
|
|
#
|
|
|
|
|
# Returns project&courses array
|
|
|
|
|
def find_miracle_course(sum=10, max_rate=7)
|
|
|
|
|
max = sum*(max_rate.to_f/10)
|
|
|
|
|
c1 = find_new_course(sum).to_a.dup
|
|
|
|
|
c2 = find_all_hot_course(sum).to_a.dup
|
|
|
|
|
c2 = c2 - c1
|
|
|
|
|
(c1.take(max)+c2).take(sum)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def find_new_course limit=15
|
|
|
|
|
Project.visible.joins(:course_extra).where("#{Project.table_name}.project_type = ? ", 1).order("courses.time DESC, #{Project.table_name}.created_on DESC").limit(limit).all
|
|
|
|
|
end
|
|
|
|
|