问卷调查增加重新发布功能
This commit is contained in:
parent
e493ae22cf
commit
7b9d88ecfe
|
@ -1,8 +1,8 @@
|
||||||
class PollController < ApplicationController
|
class PollController < ApplicationController
|
||||||
before_filter :find_poll_and_course, :only => [:edit,:update,:destroy,:show,:statistics_result,:create_poll_question,:commit_poll,:commit_answer,:publish_poll]
|
before_filter :find_poll_and_course, :only => [:edit,:update,:destroy,:show,:statistics_result,:create_poll_question,:commit_poll,:commit_answer,:publish_poll,:republish_poll]
|
||||||
before_filter :find_container, :only => [:new,:create, :index]
|
before_filter :find_container, :only => [:new,:create, :index]
|
||||||
before_filter :is_member_of_course, :only => [:index,:show]
|
before_filter :is_member_of_course, :only => [:index,:show]
|
||||||
before_filter :is_course_teacher, :only => [:new,:create,:edit,:update,:destroy,:publish_poll]
|
before_filter :is_course_teacher, :only => [:new,:create,:edit,:update,:destroy,:publish_poll,:republish_poll]
|
||||||
include PollHelper
|
include PollHelper
|
||||||
def index
|
def index
|
||||||
if @course
|
if @course
|
||||||
|
@ -311,6 +311,19 @@ class PollController < ApplicationController
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
#重新发布问卷
|
||||||
|
def republish_poll
|
||||||
|
@poll.poll_questions.each do |poll_question|
|
||||||
|
poll_question.poll_votes.destroy_all
|
||||||
|
end
|
||||||
|
@poll.poll_users.destroy_all
|
||||||
|
@poll.polls_status = 1
|
||||||
|
@poll.save
|
||||||
|
respond_to do |format|
|
||||||
|
format.js
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
def find_poll_and_course
|
def find_poll_and_course
|
||||||
@poll = Poll.find params[:id]
|
@poll = Poll.find params[:id]
|
||||||
|
@ -337,7 +350,8 @@ class PollController < ApplicationController
|
||||||
end
|
end
|
||||||
|
|
||||||
def is_course_teacher
|
def is_course_teacher
|
||||||
render_403 unless(@course && User.current.allowed_to?(:as_teacher,@course))
|
@is_teacher = User.current.allowed_to?(:as_teacher,@course)
|
||||||
|
render_403 unless(@course && @is_teacher)
|
||||||
end
|
end
|
||||||
|
|
||||||
#获取未完成的题目
|
#获取未完成的题目
|
||||||
|
|
|
@ -0,0 +1,43 @@
|
||||||
|
<li title="<%= poll.polls_name %>">
|
||||||
|
<% if @is_teacher %>
|
||||||
|
<% if has_commit_poll?(poll.id ,User.current) %>
|
||||||
|
<sapn class="polls_title fl"> <%= poll.polls_name %></sapn>
|
||||||
|
<% else %>
|
||||||
|
<%= link_to poll.polls_name, poll_path(poll.id), :class => "polls_title fl" %>
|
||||||
|
<% end %>
|
||||||
|
<% else %>
|
||||||
|
<% if has_commit_poll?(poll.id ,User.current) && poll.polls_status == 2 %>
|
||||||
|
<sapn class="polls_title fl" >
|
||||||
|
<%= poll.polls_name %>
|
||||||
|
</sapn>
|
||||||
|
<% elsif (!has_commit_poll?(poll.id ,User.current)) && poll.polls_status == 2 %>
|
||||||
|
<%= link_to poll.polls_name, poll_path(poll.id), :class => "polls_title fl" %>
|
||||||
|
<% end %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<%if @is_teacher && poll.polls_status == 2%>
|
||||||
|
<%= link_to l(:label_statistical_results), statistics_result_poll_path(poll.id), :class => "pollsbtn fl ml10"%>
|
||||||
|
<% end%>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<% if @is_teacher %>
|
||||||
|
<!--新建状态的问卷可删除-->
|
||||||
|
<%= link_to(l(:button_delete), poll,
|
||||||
|
method: :delete, :confirm => l(:text_are_you_sure), :remote => true, :class => "polls_de fr ml20 mr10") %>
|
||||||
|
<% end%>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<% if @is_teacher && poll.polls_status == 1%>
|
||||||
|
<!--新建状态的问卷可编辑-->
|
||||||
|
<%= link_to l(:button_edit), edit_poll_path(poll.id), :class => "polls_de fr ml20"%>
|
||||||
|
<% end%>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<% if @is_teacher && poll.polls_status == 2%>
|
||||||
|
<%= link_to "重新发布", republish_poll_poll_path(poll.id), :remote => true, :class => 'polls_de fr ml20' %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
|
<li class="polls_date fr">
|
||||||
|
<%= format_time poll.created_at%>
|
||||||
|
</li>
|
|
@ -12,44 +12,7 @@
|
||||||
<div class="polls_list">
|
<div class="polls_list">
|
||||||
<% @polls.each do |poll|%>
|
<% @polls.each do |poll|%>
|
||||||
<ul id="polls_<%= poll.id %>">
|
<ul id="polls_<%= poll.id %>">
|
||||||
<li title="<%= poll.polls_name %>">
|
<%= render :partial => 'poll', :locals => {:poll => poll} %>
|
||||||
<% if @is_teacher %>
|
|
||||||
<% if has_commit_poll?(poll.id ,User.current) %>
|
|
||||||
<sapn class="polls_title fl"> <%= poll.polls_name %></sapn>
|
|
||||||
<% else %>
|
|
||||||
<%= link_to poll.polls_name, poll_path(poll.id), :class => "polls_title fl" %>
|
|
||||||
<% end %>
|
|
||||||
<% else %>
|
|
||||||
<% if has_commit_poll?(poll.id ,User.current) && poll.polls_status == 2 %>
|
|
||||||
<sapn class="polls_title fl" >
|
|
||||||
<%= poll.polls_name %>
|
|
||||||
</sapn>
|
|
||||||
<% elsif (!has_commit_poll?(poll.id ,User.current)) && poll.polls_status == 2 %>
|
|
||||||
<%= link_to poll.polls_name, poll_path(poll.id), :class => "polls_title fl" %>
|
|
||||||
<% end %>
|
|
||||||
<% end %>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<%if @is_teacher && poll.polls_status == 2%>
|
|
||||||
<%= link_to l(:label_statistical_results), statistics_result_poll_path(poll.id), :class => "pollsbtn fl ml10"%>
|
|
||||||
<% end%>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<% if @is_teacher %>
|
|
||||||
<!--新建状态的问卷可删除-->
|
|
||||||
<%= link_to(l(:button_delete), poll,
|
|
||||||
method: :delete, :confirm => l(:text_are_you_sure), :remote => true, :class => "polls_de fr ml20 mr10") %>
|
|
||||||
<% end%>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<% if @is_teacher && poll.polls_status == 1%>
|
|
||||||
<!--新建状态的问卷可编辑-->
|
|
||||||
<%= link_to l(:button_edit), edit_poll_path(poll.id), :class => "polls_de fr ml20"%>
|
|
||||||
<% end%>
|
|
||||||
</li>
|
|
||||||
<li class="polls_date fr">
|
|
||||||
<%= format_time poll.created_at%>
|
|
||||||
</li>
|
|
||||||
</ul>
|
</ul>
|
||||||
<div class="cl"></div>
|
<div class="cl"></div>
|
||||||
<% end%>
|
<% end%>
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
$("#polls_<%= @poll.id %>").html("<%= escape_javascript(render :partial => 'poll',:locals => {:poll => @poll}) %>");
|
|
@ -65,6 +65,7 @@ RedmineApp::Application.routes.draw do
|
||||||
post 'create_poll_question'
|
post 'create_poll_question'
|
||||||
post 'commit_poll'
|
post 'commit_poll'
|
||||||
get 'publish_poll'
|
get 'publish_poll'
|
||||||
|
get 'republish_poll'
|
||||||
end
|
end
|
||||||
collection do
|
collection do
|
||||||
delete 'delete_poll_question'
|
delete 'delete_poll_question'
|
||||||
|
|
Loading…
Reference in New Issue