|
|
|
@ -18,7 +18,6 @@
|
|
|
|
|
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
|
|
|
|
|
|
|
|
module WelcomeHelper
|
|
|
|
|
include ProjectsHelper
|
|
|
|
|
|
|
|
|
|
def newbieTopiclist
|
|
|
|
|
find_all_topic_by_board_id
|
|
|
|
@ -36,7 +35,19 @@ module WelcomeHelper
|
|
|
|
|
def find_all_hot_project
|
|
|
|
|
sort_project_by_hot
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def find_all_hot_course
|
|
|
|
|
sort_course_by_hot
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def find_all_hot_bid
|
|
|
|
|
sort_bid_by_hot
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def find_all_hot_contest
|
|
|
|
|
sort_contest_by_hot
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
private
|
|
|
|
|
|
|
|
|
|
def search_project
|
|
|
|
@ -57,4 +68,40 @@ module WelcomeHelper
|
|
|
|
|
def find_project_by_board board
|
|
|
|
|
Project.find_by_id(board.project_id)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def sort_project_by_hot
|
|
|
|
|
return sort_project_by_hot_rails 0
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def sort_course_by_hot
|
|
|
|
|
return sort_project_by_hot_rails 1
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def sort_bid_by_hot
|
|
|
|
|
return sort_bid_by_hot_rails 1
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def sort_contest_by_hot
|
|
|
|
|
return sort_bid_by_hot_rails 2
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def sort_project_by_hot_rails project_type
|
|
|
|
|
limit = 10
|
|
|
|
|
project_type == 0 ? Project.find_by_sql("
|
|
|
|
|
SELECT p.id, p.name, p.description, p.identifier, t.project_id
|
|
|
|
|
FROM projects AS p RIGHT OUTER JOIN (
|
|
|
|
|
SELECT project_id,grade FROM project_statuses
|
|
|
|
|
WHERE project_type = #{project_type} ORDER BY grade DESC LIMIT #{limit} ) AS t ON p.id = t.project_id ")
|
|
|
|
|
: Project.find_by_sql("
|
|
|
|
|
SELECT p.id, p.name, p.description, p.identifier, t.project_id
|
|
|
|
|
FROM projects AS p RIGHT OUTER JOIN (
|
|
|
|
|
SELECT project_id,grade FROM project_statuses
|
|
|
|
|
WHERE project_type = #{project_type} ORDER BY course_ac_para DESC LIMIT #{limit} ) AS t ON p.id = t.project_id ")
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def sort_bid_by_hot_rails reward_type
|
|
|
|
|
limit = 10
|
|
|
|
|
Bid.visible.where('reward_type = ?', reward_type).reorder('bids.commit desc').limit(limit).all
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
end
|
|
|
|
|