diff --git a/app/controllers/softapplications_controller.rb b/app/controllers/softapplications_controller.rb
index 586bb509e..d72c0859c 100644
--- a/app/controllers/softapplications_controller.rb
+++ b/app/controllers/softapplications_controller.rb
@@ -47,7 +47,7 @@ class SoftapplicationsController < ApplicationController
def show
@softapplication = Softapplication.find(params[:id])
- @project = Project.find_by_identifier(@softapplication.deposit_project)
+ @project = @softapplication.project
# 打分统计
stars_reates = @softapplication.
rates(:quality)
@@ -142,7 +142,8 @@ class SoftapplicationsController < ApplicationController
def create
@softapplication = Softapplication.new(params[:softapplication])
@softapplication.user = User.current
- @softapplication.deposit_project = params[:project]
+ #@softapplication.deposit_project = params[:project]
+ @softapplication.project = Project.find_by_id(params[:project])
@softapplication.save_attachments(params[:attachments])
diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb
index 96ea86da2..ca946bf7d 100644
--- a/app/helpers/application_helper.rb
+++ b/app/helpers/application_helper.rb
@@ -745,7 +745,7 @@ module ApplicationHelper
tmp = Hash.new
tmp={"" => ""}
option.each do |project|
- tmp[project.name] = project.identifier
+ tmp[project.name] = project.id
end
tmp
end
diff --git a/app/models/softapplication.rb b/app/models/softapplication.rb
index 5e1e1bd50..f7eed43fc 100644
--- a/app/models/softapplication.rb
+++ b/app/models/softapplication.rb
@@ -6,10 +6,11 @@ class Softapplication < ActiveRecord::Base
has_many :journals_for_messages, :as => :jour, :dependent => :destroy
has_many :contesting_softapplications, :dependent => :destroy
- has_many :projecting_softapplications, :dependent => :destroy
+ #has_many :projecting_softapplications, :dependent => :destroy
belongs_to :user
belongs_to :project
has_many :contests, :through => :contesting_softapplications
+ belongs_to :project
def add_jour(user, notes, reference_user_id = 0, options = {})
if options.count == 0
diff --git a/app/views/contests/show_attendingcontest.html.erb b/app/views/contests/show_attendingcontest.html.erb
index 017659d72..8a567bd53 100644
--- a/app/views/contests/show_attendingcontest.html.erb
+++ b/app/views/contests/show_attendingcontest.html.erb
@@ -1,170 +1,177 @@
<%= render_flash_messages %>
-
<%= l(:label_wellmeaning_intimation_contentone)%>
-
1) <%= l(:label_wellmeaning_intimation_contenttwo)%>
-
2) <%= l(:label_wellmeaning_intimation_contentthree)%>
+
<%= l(:label_wellmeaning_intimation_contentone) %>
+
1) <%= l(:label_wellmeaning_intimation_contenttwo) %>
+
2) <%= l(:label_wellmeaning_intimation_contentthree) %>
<% if User.current.logged? %>
-
-
- <%= l(:label_attending_contest)%>:
- <%= link_to l(:label_new_attendingcontest_work), "javascript:void(0);", onclick: "$('#put-project-form').toggle();" %>
-
-
-
-
+
+
+ <%= l(:label_attending_contest) %>:
+ <%= link_to l(:label_new_attendingcontest_work), "javascript:void(0);", onclick: "$('#put-project-form').toggle();" %>
+
+
<% else %>
-
- <%= l(:label_user_login_attending_contest) %>
- <%= link_to l(:label_user_login_new), signin_path %>
-
+
+ <%= l(:label_user_login_attending_contest) %>
+ <%= link_to l(:label_user_login_new), signin_path %>
+
<% end %>
@@ -176,173 +183,185 @@
<% if @contest.id == 2 or @contest.id == 3 or @contest.id == 6 %>
-<% @contesting_project.sort.reverse.each do |c_project|%>
-<% if c_project.project %>
-
-
-
-
<%= l(:label_contest_work)%>: <%= link_to(c_project.project.name, project_path(c_project.project), :target => '_blank') %>
-
-
-
-
- <% if get_prize(c_project).nil? or get_prize(c_project) == "" %>
+ <% @contesting_project.sort.reverse.each do |c_project| %>
+ <% if c_project.project %>
+
+
+
+ <%= l(:label_contest_work) %>
+ : <%= link_to(c_project.project.name, project_path(c_project.project), :target => '_blank') %>
+
+
+
+
+
+ <% if get_prize(c_project).nil? or get_prize(c_project) == "" %>
<% if @contest.deadline < Date.today %>
- <%= l(:label_noawards)%>
- <% else%>
- <%= l(:label_noawards_current)%>
+ <%= l(:label_noawards) %>
+ <% else %>
+ <%= l(:label_noawards_current) %>
<% end %>
<% else %>
- <% case get_prize(c_project) %>
+ <% case get_prize(c_project) %>
<% when '-1' %>
- <%= image_tag("/images/bid/special_reward.png")%>
+ <%= image_tag("/images/bid/special_reward.png") %>
<% when '0' %>
- <%= image_tag("/images/bid/first_reward.png")%>
+ <%= image_tag("/images/bid/first_reward.png") %>
<% when '1' %>
- <%= image_tag("/images/bid/second_reward.png")%>
+ <%= image_tag("/images/bid/second_reward.png") %>
<% when '2' %>
- <%= image_tag("/images/bid/third_reward.png")%>
+ <%= image_tag("/images/bid/third_reward.png") %>
<% when '3' %>
- <%= image_tag("/images/bid/forth_reward.png")%>
+ <%= image_tag("/images/bid/forth_reward.png") %>
<% when '4' %>
- <%= image_tag("/images/bid/fifth_reward.png")%>
+ <%= image_tag("/images/bid/fifth_reward.png") %>
<% when '5' %>
- <%= image_tag("/images/bid/qualified.png")%>
+ <%= image_tag("/images/bid/qualified.png") %>
<% end %>
<% end %>
-
- |
-
-
- <% if ((User.current.id == @contest.author_id) && (@contest.deadline > Date.today))||User.current.admin %>
-
- <%= toggle_link l(:label_reward), c_project.id.to_s %>
-
-
- <%= form_for "set_reward_project",:remote=>true,:url=>set_reward_project_contest_path do |f| %>
- <%= f.text_field :c_id,:style => "display:none",:value => c_project.id,:size=>"0" %>
- <%= f.select :reward,"
+
+ |
+
+
+ <% if ((User.current.id == @contest.author_id) && (@contest.deadline > Date.today))||User.current.admin %>
+
+ <%= toggle_link l(:label_reward), c_project.id.to_s %>
+
+
+ <%= form_for "set_reward_project", :remote => true, :url => set_reward_project_contest_path do |f| %>
+ <%= f.text_field :c_id, :style => "display:none", :value => c_project.id, :size => "0" %>
+ <%= f.select :reward, "
- ".html_safe %>
- <%= f.submit :value => l(:button_submit),:class=>"submit" %>
+ ".html_safe %>
+ <%= f.submit :value => l(:button_submit), :class => "submit" %>
<% end %>
-
- |
- <% end %>
-
-
-
-
-
-
- <%= l(:label_profile)%>: |
- <%= c_project.project.description.truncate(90, omission: '...') %> |
-
-
-
- <%= l(:label_attendingcontest_time)%>:<%= format_time c_project.created_at%>
- <%= l(:label_attendingcontest_spoksman)%>:<%= c_project.user.name %>
-
+
+ |
+ <% end %>
+
+
+
+
+
+
+
+ <%= l(:label_profile) %>: |
+ <%= c_project.project.description.truncate(90, omission: '...') %> |
+
+
+
+
+ <%= l(:label_attendingcontest_time) %>
+ :<%= format_time c_project.created_at %>
+ <%= l(:label_attendingcontest_spoksman) %>
+ :<%= c_project.user.name %>
+
-
-<% end %>
-
-<% end %>
+
+
+ <% end %>
+
+ <% end %>
<% else %>
-<% @contesting_softapplication.each do |c_softapplication|%>
-<% if c_softapplication.softapplication %>
-
-
-
- <%= l(:label_contest_work)%>: |
- <%= link_to(c_softapplication.softapplication.name, softapplication_path(c_softapplication.softapplication), :target => '_blank') %> |
-
-
-
-
-
- <%= l(:label_profile)%>: |
- <%= c_softapplication.softapplication.description.truncate(90, omission: '...') %> |
-
-
-
-
- <%= l(:label_attendingcontest_time)%>:<%= format_time c_softapplication.created_at %>
- <%= l(:label_attendingcontest_spoksman)%>:<%= c_softapplication.softapplication.user.name %>
-
-
-
-
-
<%= l(:label_final_scores)%>:<%= c_softapplication.softapplication.average(:quality).try(:avg).try(:round, 2).to_i.to_s%>分
+ <% @contesting_softapplication.each do |c_softapplication| %>
+ <% if c_softapplication.softapplication %>
+
+
+
+ <%= l(:label_contest_work) %>: |
+ <%= link_to(c_softapplication.softapplication.name, softapplication_path(c_softapplication.softapplication), :target => '_blank') %> |
+
+
+
+
+
+
+ <%= l(:label_profile) %>: |
+ <%= c_softapplication.softapplication.description.truncate(90, omission: '...') %> |
+
+
+
+
+
+ <%= l(:label_attendingcontest_time) %>
+ :<%= format_time c_softapplication.created_at %>
+ <%= l(:label_attendingcontest_spoksman) %>
+ :<%= c_softapplication.softapplication.user.name %>
+
+
+
+
+
<%= l(:label_final_scores) %>
+ :<%= c_softapplication.softapplication.average(:quality).try(:avg).try(:round, 2).to_i.to_s %>
+ 分
-
-
- <% if get_prize(c_softapplication).nil? or get_prize(c_softapplication) == "" %>
+
+
+ <% if get_prize(c_softapplication).nil? or get_prize(c_softapplication) == "" %>
<% if @contest.deadline < Date.today %>
- <%= l(:label_noawards)%>
- <% else%>
- <%= l(:label_noawards_current)%>
+ <%= l(:label_noawards) %>
+ <% else %>
+ <%= l(:label_noawards_current) %>
<% end %>
<% else %>
- <% case get_prize(c_softapplication) %>
+ <% case get_prize(c_softapplication) %>
<% when '-1' %>
- <%= image_tag("/images/bid/special_reward.png")%>
+ <%= image_tag("/images/bid/special_reward.png") %>
<% when '0' %>
- <%= image_tag("/images/bid/first_reward.png")%>
+ <%= image_tag("/images/bid/first_reward.png") %>
<% when '1' %>
- <%= image_tag("/images/bid/second_reward.png")%>
+ <%= image_tag("/images/bid/second_reward.png") %>
<% when '2' %>
- <%= image_tag("/images/bid/third_reward.png")%>
+ <%= image_tag("/images/bid/third_reward.png") %>
<% when '3' %>
- <%= image_tag("/images/bid/forth_reward.png")%>
+ <%= image_tag("/images/bid/forth_reward.png") %>
<% when '4' %>
- <%= image_tag("/images/bid/fifth_reward.png")%>
+ <%= image_tag("/images/bid/fifth_reward.png") %>
<% when '5' %>
- <%= image_tag("/images/bid/qualified.png")%>
+ <%= image_tag("/images/bid/qualified.png") %>
<% end %>
<% end %>
-
- |
+
+
- <% if ((User.current.id == @contest.author_id) && (@contest.deadline > Date.today))||User.current.admin %>
-
+ <% if ((User.current.id == @contest.author_id) && (@contest.deadline > Date.today))||User.current.admin %>
+
<%= toggle_link '评奖', c_softapplication.id.to_s %>
-
- <%= form_for "set_reward_softapplication",:remote=>true,:url=>set_reward_softapplication_contest_path do |f| %>
- <%= f.text_field :c_id,:style => "display:none",:value => c_softapplication.id,:size=>"0" %>
- <%= f.select :reward,"
+
+ <%= form_for "set_reward_softapplication", :remote => true, :url => set_reward_softapplication_contest_path do |f| %>
+ <%= f.text_field :c_id, :style => "display:none", :value => c_softapplication.id, :size => "0" %>
+ <%= f.select :reward, "
- ".html_safe %>
- <%= f.submit :value => l(:button_submit),:class=>"submit" %>
+ ".html_safe %>
+ <%= f.submit :value => l(:button_submit), :class => "submit" %>
<% end %>
-
-
+
+
<% end %>
-
-
-
-<% end %>
-
-<% end %>
+
+
+
+ <% end %>
+
+ <% end %>
<% end %>
diff --git a/app/views/softapplications/index.html.erb b/app/views/softapplications/index.html.erb
index 841a8a207..5b355f65c 100644
--- a/app/views/softapplications/index.html.erb
+++ b/app/views/softapplications/index.html.erb
@@ -16,13 +16,13 @@
<%= softapplication.description.truncate(95, omission: '...') %>
<%contest = softapplication.contests.first%>
-
所属竞赛:<%= contest ? link_to(contest.name.truncate(14, omission: '...'), show_attendingcontest_contest_path(contest), title: contest.name.to_s ) : '尚未加入竞赛'%>
-
所属类别:<%= softapplication.app_type_name.truncate(10, omission: '...') %>
-
系统支持:<%= softapplication.android_min_version_available %>
+
<%=l(:label_attendingcontestwork_belongs_contest)%>:<%= contest ? link_to(contest.name.truncate(14, omission: '...'), show_attendingcontest_contest_path(contest), title: contest.name.to_s ) : '尚未加入竞赛'%>
+
<%=l(:label_attendingcontestwork_belongs_type)%>:<%= softapplication.app_type_name.truncate(10, omission: '...') %>
+
<%=l(:label_attendingcontestwork_adaptive_system)%>:<%= softapplication.android_min_version_available %>
- 开发人员:<%= softapplication.application_developers %>
- 发布时间:<%=format_time softapplication.created_at %>
+ <%=l(:label_attendingcontestwork_developers)%>:<%= softapplication.application_developers %>
+ <%=l(:label_attendingcontestwork_release_time)%>:<%=format_time softapplication.created_at %>
diff --git a/app/views/softapplications/show.html.erb b/app/views/softapplications/show.html.erb
index 8b9b3260d..700a326fd 100644
--- a/app/views/softapplications/show.html.erb
+++ b/app/views/softapplications/show.html.erb
@@ -16,38 +16,35 @@
- 所属类别:<%= @softapplication.app_type_name %> |
+ <%=l(:label_attendingcontestwork_belongs_type)%>:<%= @softapplication.app_type_name %> |
<% contest = @softapplication.contests.first %>
- 所属竞赛:<%= contest ? link_to(contest.name, show_attendingcontest_contest_path(contest)) : '尚未加入竞赛' %> |
+ <%=l(:label_attendingcontestwork_belongs_contest)%>:<%= contest ? link_to(contest.name, show_attendingcontest_contest_path(contest)) : '尚未加入竞赛' %> |
- 发布人员:<%= @softapplication.user.name %> |
- 系统支持:<%= @softapplication.android_min_version_available %> |
+ <%=l(:label_attendingcontestwork_release_person)%>:<%= @softapplication.user.name %> |
+ <%=l(:label_attendingcontestwork_adaptive_system)%>:<%= @softapplication.android_min_version_available %> |
- 作品下载:
+ <%=l(:label_attendingcontestwork_download)%>:
<% options = {:author => true, :deletable => @softapplication.user.eql?(User.current)} %><%= render :partial => 'attachments/app_link', :locals => {:attachments => @app_items, :options => options} %>
|
- 开发人员:<%= @softapplication.application_developers %> |
+ <%=l(:label_attendingcontestwork_developers)%>:<%= @softapplication.application_developers %> |
- 平均评分: <%= rating_for @softapplication, :static => true, dimension: :quality, class: 'rateable div_inline' %> |
- 发布时间:<%=format_time @softapplication.created_at %> |
+ <%=l(:label_attendingcontestwork_average_scores)%>: <%= rating_for @softapplication, :static => true, dimension: :quality, class: 'rateable div_inline' %> |
+ <%=l(:label_attendingcontestwork_release_time)%>:<%=format_time @softapplication.created_at %> |
- <% if (@softapplication.deposit_project != "nil" && @softapplication.deposit_project != "") %>
- <%#= textilizable ("托管项目: " + @project.name) %>
- 托管项目:<%= link_to "#@project", project_path(@project.id) %>
- <% end %>
+ <% if @project %>
+ 托管项目:<%= link_to "#@project", project_path(@project) %>
+ <% end %>
|
-
-
@@ -56,7 +53,7 @@
- 作品简介:
+ <%=l(:label_work_description)%>:
<%= @softapplication.description %>
@@ -64,11 +61,11 @@
-
作品得分:
+
<%=l(:label_work_scores)%>:
-
得分比例
+
<%=l(:label_work_scores_proportion)%>
<% 100.step(20, -20) do |star| %>
@@ -83,14 +80,12 @@
-
最终得分
-
<%= @softapplication.average(:quality).try(:avg).try(:round, 2).to_i.to_s %>
- 分
-
+
<%=l(:label_final_scores)%>
+
<%= @softapplication.average(:quality).try(:avg).try(:round, 2).to_i.to_s %>分
<%= rating_for @softapplication, :static => true, dimension: :quality, class: 'rateable div_inline' %>
-
打分总人数
+
<%=l(:label_rating_person_amount)%>
<%= @softapplication.raters(:quality).count %>
@@ -100,7 +95,7 @@
- 作品截图:
+ <%=l(:label_work_photo)%>:
@@ -119,9 +114,9 @@
-
作品评论:
+
<%=l(:label_work_comment)%>:
<% if (User.current.logged? and User.current.id != @softapplication.user_id) %>
-
评分: <%= rating_for @softapplication, dimension: :quality, class: 'rateable div_inline' %>
+
<%=l(:label_work_rating)%>: <%= rating_for @softapplication, dimension: :quality, class: 'rateable div_inline' %>
(您可以重新打分,打分结果以最后一次打分为主!)
<% end %>
diff --git a/db/migrate/20140526104509_add_project_to_softapplication.rb b/db/migrate/20140526104509_add_project_to_softapplication.rb
new file mode 100644
index 000000000..f7b6690c9
--- /dev/null
+++ b/db/migrate/20140526104509_add_project_to_softapplication.rb
@@ -0,0 +1,5 @@
+class AddProjectToSoftapplication < ActiveRecord::Migration
+ def change
+ add_column :softapplications, :project_id, :integer
+ end
+end
diff --git a/db/schema.rb b/db/schema.rb
index 686c55260..68b9ad655 100644
--- a/db/schema.rb
+++ b/db/schema.rb
@@ -11,7 +11,7 @@
#
# It's strongly recommended to check this file into your version control system.
-ActiveRecord::Schema.define(:version => 20140526031949) do
+ActiveRecord::Schema.define(:version => 20140526104509) do
create_table "activities", :force => true do |t|
t.integer "act_id", :null => false
@@ -803,6 +803,7 @@ ActiveRecord::Schema.define(:version => 20140526031949) do
t.string "application_developers"
t.string "deposit_project_url"
t.string "deposit_project"
+ t.integer "project_id"
end
create_table "students_for_courses", :force => true do |t|