diff --git a/app/helpers/welcome_helper.rb b/app/helpers/welcome_helper.rb index 5a7866dc7..c5ac62024 100644 --- a/app/helpers/welcome_helper.rb +++ b/app/helpers/welcome_helper.rb @@ -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 diff --git a/app/views/welcome/index.html.erb b/app/views/welcome/index.html.erb index 768ddfe0d..6bf624eb6 100644 --- a/app/views/welcome/index.html.erb +++ b/app/views/welcome/index.html.erb @@ -119,7 +119,7 @@ --> -
+
-
- +

    用户动态

    @@ -200,7 +199,7 @@
    -

    热门项目

    +

    热门项目

      -
    • -

      - DIV布局测试 -

      -

      - 给大家一个版本库,路径为trustie2@10.0.47.245:/home/trustie2密码是http://10.0.47.245/trustie21234 -

      - -
    • -
    • -

      - javatwx -

      -

      - javamall -

      -
    • -
    • -

      - sz_digital_ocean -

      -

      - sz_digital_ocean -

      -
    • -
    • -

      - android_1 -

      -

      - android study -

      -
    • -
    • -

      - tair -

      -

      - Tair is a distributed, high performance key/value storage sy... -

      -
    • -
    -
    -
    + <% find_all_hot_project.map do |project| break if(project == find_all_hot_project[5]) %> +
  • +

    + <%= link_to( project.name, project_path(project.project_id), :class => "d-g-blue d-p-project-name", :target => "_blank", :title => "#{project.name}")%> +

    +

    + <%= project.description %> +

    + +
  • + <% end %> +
+
+
-

热门竞赛

+

热门竞赛

-
-
    - - - -
  • -

    - tfs - -

    -

    - TFS(Taobao FileSystem)是一个高可扩展、高可用、高性能、面向互联网服务的分布式文件系统,其设计目标是... - -

    -
  • - -
  • -

    - javatwx - -

    -

    - javamall - -

    -
  • - -
  • -

    - sz_digital_ocean - -

    -

    - sz_digital_ocean - -

    -
  • - -
  • -

    - android_1 - -

    -

    - android study - -

    -
  • - -
  • -

    - tair - -

    -

    - Tair is a distributed, high performance key/value storage sy... - -

    -
  • -
+
+
    + <% find_all_hot_contest.map do |contest| break if(contest == find_all_hot_contest[5]) %> +
  • +

    + <%= link_to( contest.name, respond_path(contest.id), :class => "d-g-blue d-p-project-name", :target => "_blank", :title => "#{contest.name}")%> +

    +

    + <%= contest.description %> +

    + +
  • + <% end %> +
+
+
-
-
-

最新众包

+

最新众包

-
- - -
-
+
+ +
+ +
-

热门课程

+

热门课程

+ <% find_all_hot_course.map do |project| break if(project == find_all_hot_course[5]) %> +
  • +

    + <%= link_to( project.name, project_path(project.project_id), :class => "d-g-blue d-p-project-name", :target => "_blank", :title => "#{project.name}")%> +

    +

    + <%= project.description %> +

    +
  • + <% end %> + +
    +
    - - -
    +
    diff --git a/public/stylesheets/application.css b/public/stylesheets/application.css index 7e81ad09e..96333e2d1 100644 --- a/public/stylesheets/application.css +++ b/public/stylesheets/application.css @@ -593,6 +593,7 @@ ul.tool li{list-style-type:none; .welcome_right{ float:right; width: 49%; + padding-left: 30px; } .inf_user_motto{