添加删除作业功能
This commit is contained in:
parent
47e3e93a2f
commit
1fe49c8cb1
|
@ -675,11 +675,12 @@ class BidsController < ApplicationController
|
||||||
#删除作业
|
#删除作业
|
||||||
#by xianbo
|
#by xianbo
|
||||||
def homework_destroy
|
def homework_destroy
|
||||||
@bid_to_destroy = Bid.find params[:course_id]
|
@bid_to_destroy = Bid.find params[:id]
|
||||||
|
course_url = course_homework_path(@bid_to_destroy.courses.first)
|
||||||
(render_403; return false) unless User.current.admin?||User.current.id==@bid_to_destroy.author_id
|
(render_403; return false) unless User.current.admin?||User.current.id==@bid_to_destroy.author_id
|
||||||
@bid_to_destroy.destroy
|
@bid_to_destroy.destroy
|
||||||
respond_to do |format|
|
respond_to do |format|
|
||||||
format.html { redirect_to :back }
|
format.html { redirect_to course_url }
|
||||||
format.js
|
format.js
|
||||||
#format.api { render_api_ok }
|
#format.api { render_api_ok }
|
||||||
end
|
end
|
||||||
|
|
|
@ -21,6 +21,9 @@
|
||||||
<p class="fl "><%= l(:lebel_homework_commit)%> ( <%= link_to bid.homeworks.count, course_for_bid_path(bid.id), :class => 'c_red'%> )</p>
|
<p class="fl "><%= l(:lebel_homework_commit)%> ( <%= link_to bid.homeworks.count, course_for_bid_path(bid.id), :class => 'c_red'%> )</p>
|
||||||
<% if @is_teacher%>
|
<% if @is_teacher%>
|
||||||
<%= bid_anonymous_comment(bid)%>
|
<%= bid_anonymous_comment(bid)%>
|
||||||
|
<% if bid.homeworks.empty? %>
|
||||||
|
<%= link_to(l(:button_delete),bids_homework_path(:id => bid.id), :method => :delete, :confirm => l(:label_delete_confirm), :class => "fr mr10 work_edit") %>
|
||||||
|
<% end %>
|
||||||
<%= link_to(l(:button_edit),edit_bid_path(:course_id =>@course.id, :bid_id => bid.id), :class => "fr mr10 work_edit") %>
|
<%= link_to(l(:button_edit),edit_bid_path(:course_id =>@course.id, :bid_id => bid.id), :class => "fr mr10 work_edit") %>
|
||||||
<% elsif @is_student%>
|
<% elsif @is_student%>
|
||||||
<%= student_anonymous_comment bid %>
|
<%= student_anonymous_comment bid %>
|
||||||
|
@ -59,4 +62,4 @@
|
||||||
<ul class="wlist">
|
<ul class="wlist">
|
||||||
<%= pagination_links_full @obj_pages, @obj_count, :per_page_links => false, :remote => false, :flag => true%>
|
<%= pagination_links_full @obj_pages, @obj_count, :per_page_links => false, :remote => false, :flag => true%>
|
||||||
</ul>
|
</ul>
|
||||||
<div class="cl"></div>
|
<div class="cl"></div>
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
<!-- added by fq -->
|
<!-- added by fq -->u
|
||||||
<!--huang-->
|
<!--huang-->
|
||||||
<% if @user.user_extensions.identity == 0 %>
|
<% if @user.user_extensions.identity == 0 %>
|
||||||
<%= render :partial => 'my_create_homework' %>
|
<%= render :partial => 'my_create_homework' %>
|
||||||
|
|
|
@ -759,6 +759,7 @@ en:
|
||||||
button_create_and_continue: Create and continue
|
button_create_and_continue: Create and continue
|
||||||
button_test: Test
|
button_test: Test
|
||||||
button_edit: Edit
|
button_edit: Edit
|
||||||
|
button_delete: Delete
|
||||||
button_edit_associated_wikipage: "Edit associated Wiki page: %{page_title}"
|
button_edit_associated_wikipage: "Edit associated Wiki page: %{page_title}"
|
||||||
button_add: Add
|
button_add: Add
|
||||||
button_change: Change
|
button_change: Change
|
||||||
|
|
|
@ -849,6 +849,7 @@ zh:
|
||||||
button_create_and_continue: 创建并继续
|
button_create_and_continue: 创建并继续
|
||||||
button_test: 测试
|
button_test: 测试
|
||||||
button_edit: 编辑
|
button_edit: 编辑
|
||||||
|
button_delete: 删除
|
||||||
button_edit_associated_wikipage: "编辑相关wiki页面: %{page_title}"
|
button_edit_associated_wikipage: "编辑相关wiki页面: %{page_title}"
|
||||||
button_add: 新增
|
button_add: 新增
|
||||||
button_change: 修改
|
button_change: 修改
|
||||||
|
|
|
@ -251,7 +251,7 @@ RedmineApp::Application.routes.draw do
|
||||||
post 'boards/:board_id/topics/:id/edit', :to => 'messages#edit'
|
post 'boards/:board_id/topics/:id/edit', :to => 'messages#edit'
|
||||||
post 'boards/:board_id/topics/:id/destroy', :to => 'messages#destroy'
|
post 'boards/:board_id/topics/:id/destroy', :to => 'messages#destroy'
|
||||||
# boards end
|
# boards end
|
||||||
post 'bids/homework_destroy', :to => 'bids#homework_destroy'
|
delete 'bids/homework', :to => 'bids#homework_destroy'
|
||||||
|
|
||||||
# Misc issue routes. TODO: move into resources
|
# Misc issue routes. TODO: move into resources
|
||||||
match '/issues/auto_complete', :to => 'auto_completes#issues', :via => :get, :as => 'auto_complete_issues'
|
match '/issues/auto_complete', :to => 'auto_completes#issues', :via => :get, :as => 'auto_complete_issues'
|
||||||
|
|
|
@ -0,0 +1,52 @@
|
||||||
|
require 'rails_helper'
|
||||||
|
require 'shared_account_spec'
|
||||||
|
|
||||||
|
RSpec.describe "homework", type: :request do
|
||||||
|
include_context "create user"
|
||||||
|
let(:course) {FactoryGirl.create(:course, teacher: current_user)}
|
||||||
|
let(:homework){FactoryGirl.attributes_for(:homework)}
|
||||||
|
|
||||||
|
before {
|
||||||
|
shared_register
|
||||||
|
}
|
||||||
|
describe "创建作业" do
|
||||||
|
before do
|
||||||
|
post calls_create_homework_path(course_id: course.id), {
|
||||||
|
bid: homework
|
||||||
|
}
|
||||||
|
@homework = assigns(:bid)
|
||||||
|
end
|
||||||
|
it "参数正确,可以成功创建作业" do
|
||||||
|
expect(response).to redirect_to(course_homework_url(course.id))
|
||||||
|
end
|
||||||
|
it {expect(course.homeworks).to_not be_empty}
|
||||||
|
it {expect(@homework.acts).to_not be_empty}
|
||||||
|
it {expect(@homework.watchers).to_not be_empty}
|
||||||
|
it {expect(@homework.attachments).to_not be_empty}
|
||||||
|
end
|
||||||
|
|
||||||
|
describe "删除作业" do
|
||||||
|
before do
|
||||||
|
shared_login
|
||||||
|
post calls_create_homework_path(course_id: course.id), {
|
||||||
|
bid: homework
|
||||||
|
}
|
||||||
|
@homework = assigns(:bid)
|
||||||
|
delete bids_homework_path(id: @homework.id)
|
||||||
|
end
|
||||||
|
it{expect(response).to redirect_to(course_homework_path(course.id))}
|
||||||
|
it "homework_for_courses应删除" do
|
||||||
|
expect(course.homeworks).to be_empty
|
||||||
|
end
|
||||||
|
it "相关活动也删除" do
|
||||||
|
expect(@homework.acts).to be_empty
|
||||||
|
end
|
||||||
|
it "watches 删除" do
|
||||||
|
expect(@homework.watchers).to be_empty
|
||||||
|
end
|
||||||
|
it "附件 删除" do
|
||||||
|
expect(@homework.attachments).to be_empty
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
Loading…
Reference in New Issue