|
|
|
@ -375,7 +375,7 @@ class BidsController < ApplicationController
|
|
|
|
|
unless(membership.project.project_type==1)
|
|
|
|
|
membership.member_roles.each{|role|
|
|
|
|
|
if(role.role_id == 3)
|
|
|
|
|
@option << membership.project
|
|
|
|
|
@option << membership.project
|
|
|
|
|
end
|
|
|
|
|
}
|
|
|
|
|
end
|
|
|
|
@ -397,18 +397,95 @@ class BidsController < ApplicationController
|
|
|
|
|
end
|
|
|
|
|
@bidding_project = @temp
|
|
|
|
|
else
|
|
|
|
|
#added by nie
|
|
|
|
|
@temp = []
|
|
|
|
|
@bidding_project.each do |pro|
|
|
|
|
|
if pro.project && pro.project.project_status
|
|
|
|
|
@temp << pro
|
|
|
|
|
#added by nie
|
|
|
|
|
@temp = []
|
|
|
|
|
@bidding_project.each do |pro|
|
|
|
|
|
if pro.project && pro.project.project_status
|
|
|
|
|
@temp << pro
|
|
|
|
|
end
|
|
|
|
|
@temp
|
|
|
|
|
end
|
|
|
|
|
@temp
|
|
|
|
|
end
|
|
|
|
|
if @temp.size > 0
|
|
|
|
|
if @temp.size > 0
|
|
|
|
|
@bidding_project = @temp.sort {|a,b| b.project.project_status.grade <=> a.project.project_status.grade}
|
|
|
|
|
end
|
|
|
|
|
#ended
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
if @bid.homework_type == 1
|
|
|
|
|
@homework = HomeworkAttach.new
|
|
|
|
|
#@homework_list = @bid.homeworks
|
|
|
|
|
#增加作业按评分排序,
|
|
|
|
|
@homework_list = @bid.homeworks.eager_load(:rate_averages, :user, :attachments).order('seems_rateable_cached_ratings.avg DESC').order("#{HomeworkAttach.table_name}.created_at ASC")
|
|
|
|
|
if params[:student_id].present?
|
|
|
|
|
@temp = []
|
|
|
|
|
@homework_list.each do |pro|
|
|
|
|
|
if /#{params[:student_id]}/ =~ pro.user.user_extensions.student_id
|
|
|
|
|
@temp << pro
|
|
|
|
|
end
|
|
|
|
|
@temp
|
|
|
|
|
end
|
|
|
|
|
@homework_list = @temp
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
respond_to do |format|
|
|
|
|
|
if @bid.reward_type == 3
|
|
|
|
|
format.html {
|
|
|
|
|
render :layout => 'base_homework'
|
|
|
|
|
}
|
|
|
|
|
elsif @bid.reward_type == 1
|
|
|
|
|
format.html {
|
|
|
|
|
render :layout => 'base_bids'
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
format.html {
|
|
|
|
|
render :layout => 'base_contest'
|
|
|
|
|
}
|
|
|
|
|
end
|
|
|
|
|
format.api
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
# 显示作业课程
|
|
|
|
|
# add by nwb
|
|
|
|
|
def show_course
|
|
|
|
|
# flash[:notice] = ""
|
|
|
|
|
@membership = User.current.coursememberships.all(:conditions => Course.visible_condition(User.current))
|
|
|
|
|
@option = []
|
|
|
|
|
@membership.each do |membership|
|
|
|
|
|
membership.member_roles.each{|role|
|
|
|
|
|
if(role.role_id == 3)
|
|
|
|
|
@option << membership.course
|
|
|
|
|
end
|
|
|
|
|
}
|
|
|
|
|
end
|
|
|
|
|
#ended
|
|
|
|
|
|
|
|
|
|
@user = @bid.author
|
|
|
|
|
@bidding_project = @bid.biding_projects.all
|
|
|
|
|
if params[:student_id].present?
|
|
|
|
|
@temp = []
|
|
|
|
|
@bidding_project.each do |pro|
|
|
|
|
|
if pro.project && pro.project.project_status
|
|
|
|
|
if /#{params[:student_id]}/ =~ pro.user.user_extensions.student_id
|
|
|
|
|
@temp << pro
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
@temp
|
|
|
|
|
end
|
|
|
|
|
@bidding_project = @temp
|
|
|
|
|
else
|
|
|
|
|
#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
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
if @bid.homework_type == 1
|
|
|
|
@ -419,9 +496,9 @@ class BidsController < ApplicationController
|
|
|
|
|
if params[:student_id].present?
|
|
|
|
|
@temp = []
|
|
|
|
|
@homework_list.each do |pro|
|
|
|
|
|
if /#{params[:student_id]}/ =~ pro.user.user_extensions.student_id
|
|
|
|
|
@temp << pro
|
|
|
|
|
end
|
|
|
|
|
if /#{params[:student_id]}/ =~ pro.user.user_extensions.student_id
|
|
|
|
|
@temp << pro
|
|
|
|
|
end
|
|
|
|
|
@temp
|
|
|
|
|
end
|
|
|
|
|
@homework_list = @temp
|
|
|
|
@ -430,17 +507,17 @@ class BidsController < ApplicationController
|
|
|
|
|
|
|
|
|
|
respond_to do |format|
|
|
|
|
|
if @bid.reward_type == 3
|
|
|
|
|
format.html {
|
|
|
|
|
render :layout => 'base_homework'
|
|
|
|
|
}
|
|
|
|
|
format.html {
|
|
|
|
|
render :layout => 'base_homework'
|
|
|
|
|
}
|
|
|
|
|
elsif @bid.reward_type == 1
|
|
|
|
|
format.html {
|
|
|
|
|
render :layout => 'base_bids'
|
|
|
|
|
}
|
|
|
|
|
render :layout => 'base_bids'
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
format.html {
|
|
|
|
|
render :layout => 'base_contest'
|
|
|
|
|
}
|
|
|
|
|
format.html {
|
|
|
|
|
render :layout => 'base_contest'
|
|
|
|
|
}
|
|
|
|
|
end
|
|
|
|
|
format.api
|
|
|
|
|
end
|
|
|
|
@ -724,14 +801,16 @@ class BidsController < ApplicationController
|
|
|
|
|
render file: 'courses/new_homework', layout: 'base_courses'
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# modify by nwb\
|
|
|
|
|
# 编辑作业
|
|
|
|
|
def edit
|
|
|
|
|
@bid = Bid.find(params[:bid_id])
|
|
|
|
|
if (User.current.admin?||User.current.id==@bid.author_id)
|
|
|
|
|
@project_id = params[:project_id]
|
|
|
|
|
@course_id = params[:course_id]
|
|
|
|
|
respond_to do |format|
|
|
|
|
|
format.html {
|
|
|
|
|
@project = Project.find(params[:project_id])
|
|
|
|
|
@course = Course.find(params[:course_id])
|
|
|
|
|
@user= User.find(User.current.id)
|
|
|
|
|
render :layout => 'base_courses'
|
|
|
|
|
}
|
|
|
|
@ -743,11 +822,11 @@ class BidsController < ApplicationController
|
|
|
|
|
|
|
|
|
|
def update
|
|
|
|
|
@bid = Bid.find(params[:id])
|
|
|
|
|
@project = @bid.courses.first#Project.find(params[:course_id])
|
|
|
|
|
@course = @bid.courses.first#Project.find(params[:course_id])
|
|
|
|
|
@bid.save_attachments(params[:attachments] || (params[:bid] && params[:bid][:uploads]))
|
|
|
|
|
if @bid.update_attributes(params[:bid]) && @bid.save
|
|
|
|
|
flash[:notice] = l(:label_update_homework_succeed)
|
|
|
|
|
redirect_to project_homework_path(@project)
|
|
|
|
|
redirect_to course_homework_path(@course)
|
|
|
|
|
else
|
|
|
|
|
@bid.safe_attributes = params[:bid]
|
|
|
|
|
render :action => 'edit', :layout =>'base_courses'
|
|
|
|
|