diff --git a/app/controllers/bids_controller.rb b/app/controllers/bids_controller.rb index b1f0b987d..6c4e6697f 100644 --- a/app/controllers/bids_controller.rb +++ b/app/controllers/bids_controller.rb @@ -310,8 +310,18 @@ class BidsController < ApplicationController # @project = Project.where("id in []", a) @user = @bid.author @bidding_project = @bid.biding_projects.all - - @bidding_project = @bidding_project.sort {|a,b| b.project.project_status.grade <=> a.project.project_status.grade} + #added by nie + @temp = [] + @bidding_project.each do |pro| + if pro.project && pro.project.project_status + @temp << pro + end + @temp + end + if @temp.size > 0 + @bidding_project = @temp.sort {|a,b| b.project.project_status.grade <=> a.project.project_status.grade} + end + #ended if @bid.homework_type == 1 @homework = HomeworkAttach.new @homework_list = @bid.homeworks diff --git a/app/controllers/members_controller.rb b/app/controllers/members_controller.rb index 940172e9c..712c86680 100644 --- a/app/controllers/members_controller.rb +++ b/app/controllers/members_controller.rb @@ -48,14 +48,14 @@ class MembersController < ApplicationController def create members = [] project_info = [] - user_grade = [] + user_grades = [] if params[:membership] if params[:membership][:user_ids] attrs = params[:membership].dup user_ids = attrs.delete(:user_ids) user_ids.each do |user_id| members << Member.new(:role_ids => params[:membership][:role_ids], :user_id => user_id) - user_grade << UserGrade.new(:user_id => user_id, :project_id => @project.id) + user_grades << UserGrade.new(:user_id => user_id, :project_id => @project.id) ## added by nie if(params[:membership][:role_ids] && params[:membership][:role_ids][0] == "3") project_info << ProjectInfo.new(:user_id => user_id, :project_id => @project.id) @@ -65,6 +65,7 @@ class MembersController < ApplicationController end else members << Member.new(:role_ids => params[:membership][:role_ids], :user_id => params[:membership][:user_id]) + user_grades << UserGrade.new(:user_id => params[:membership][:user_id], :project_id => @project.id) ## added by nie if(params[:membership][:role_ids] && params[:membership][:role_ids][0] == "3") project_info << ProjectInfo.new(:project_id => @project.id, :user_id => params[:membership][:user_id]) @@ -74,7 +75,7 @@ class MembersController < ApplicationController @project.members << members # added by nie @project.project_infos << project_info - @project.user_grades << user_grade + @project.user_grades << user_grades # end end @@ -126,21 +127,21 @@ class MembersController < ApplicationController def destroy if request.delete? && @member.deletable? - @member.destroy - # end - user_admin = ProjectInfo.where("user_id = ? and project_id = ?", @member.user_id, @project.id) - if user_admin.size > 0 - user_admin.each do |user| - user.destroy + @member.destroy + # end + user_admin = ProjectInfo.where("user_id = ? and project_id = ?", @member.user_id, @project.id) + if user_admin.size > 0 + user_admin.each do |user| + user.destroy + end end - end - user_grade = UserGrade.where("user_id = ? and project_id = ?", @member.user_id, @project.id) - if user_grade.size > 0 - user_grade.each do |grade| - grade.destroy + user_grade = UserGrade.where("user_id = ? and project_id = ?", @member.user_id, @project.id) + if user_grade.size > 0 + user_grade.each do |grade| + grade.destroy + end end end - end respond_to do |format| format.html { redirect_to_settings_in_projects } format.js diff --git a/app/views/bids/_list_projects.html.erb b/app/views/bids/_list_projects.html.erb index f54c6f982..790ee53d2 100644 --- a/app/views/bids/_list_projects.html.erb +++ b/app/views/bids/_list_projects.html.erb @@ -1,5 +1,6 @@ <% bidding_project.each do |b_project|%> +<% if b_project.project %>
@@ -23,7 +24,7 @@ | - <%= l(:label_system_grade) %>:<%= (b_project.project.project_status.grade.nil? ? 0 : b_project.project.project_status.grade) unless (b_project.project.project_status.nil? && b_project.project.nil?) %> + <%= l(:label_system_grade) %>:<%= (b_project.project.project_status.nil? ? 0 : b_project.project.project_status.grade) unless (b_project.project.project_status.nil? && b_project.project.nil?) %> <% if get_prize(b_project).nil? or get_prize(b_project) == "" %> <% if @bid.deadline < Date.today %> <%= l(:label_noawards)%> @@ -157,4 +158,5 @@ |