增加问卷调查相关的路由、action、以及部分对应的页面

This commit is contained in:
sw 2015-01-12 16:02:15 +08:00
parent 9604117e93
commit c964194d85
7 changed files with 140 additions and 0 deletions

View File

@ -1,2 +1,112 @@
class PollController < ApplicationController
before_filter :find_poll_and_course, :only => [:edit,:update,:destory]
before_filter :find_container, :only => [:new,:create, :index]
def index
if @course
@polls = Poll.where("polls_type = 'Course' and polls_group_id = #{@course.id}")
respond_to do |format|
format.html{render :layout => 'base_courses'}
end
elsif @project
#项目的问卷调查相关代码
end
end
def show
@poll = Poll.find params[:id]
end
def new
if @course
option = {
:polls_name => "未命名问卷",
:polls_type => @course.class.to_s,
:polls_group_id => @course.id,
:polls_status => 1,
:user_id => User.current.id,
:published_at => Time.now,
:closed_at => Time.now,
:polls_description => ""
}
@poll = Poll.create option
if @poll
respond_to do |format|
format.html{render :layout => 'base_courses'}
end
end
elsif @project
#项目的问卷调查相关代码
end
end
def create
end
def edit
respond_to do |format|
format.html{render :layout => 'base_courses'}
end
end
def update
@poll.polls_name = params[:polls_name]
if @poll.save
respond_to do |format|
format.html { redirect_to poll_index_url(:polls_type => @course.class.to_s, :polls_group_id => @course.id) }
end
else
end
end
def destroy
if @poll.destroy
respond_to do |format|
format.js
end
end
end
#修改问卷标题和描述
def save_polls
end
#添加问题
def add_question
end
#添加选项
def add_answer
puts '1111111111111'
end
#选答案
def vote
end
#统计
def statistics
end
private
def find_poll_and_course
@poll = Poll.find params[:id]
@course = Course.find @poll.polls_group_id
rescue Exception => e
render_404
end
def find_container
if params[:polls_type] && params[:polls_group_id]
case params[:polls_type]
when "Course"
@course = Course.find_by_id params[:polls_group_id]
when "Project"
@project = Project.find_by_id params[:polls_group_id]
end
else
render_404
end
end
end

View File

View File

@ -0,0 +1 @@
alert("删除成功");

View File

@ -0,0 +1,13 @@
<script type="text/javascript">
function submit_poll_edit()
{
$('#edit_poll_<%= @poll.id%>').submit();
}
</script>
<%= form_for(@poll) do |f|%>
<%= f.text_field :polls_name, :required => true, :name => "polls_name"%>
<a href="#" class="tijiao" onclick="submit_poll_edit();">
<%= l(:label_button_ok) %>
</a>
<% end%>

View File

@ -0,0 +1,7 @@
<% @polls.each do |poll|%>
<%= poll.id%>#####<%= poll.polls_name%>
<%= link_to l(:button_edit), edit_poll_path(poll.id)%>
<%= link_to(l(:button_delete), poll,
method: :delete, :confirm => l(:text_are_you_sure), :remote => true ) %>
<br/>
<%end%>

View File

View File

@ -58,6 +58,15 @@ RedmineApp::Application.routes.draw do
end
end
resources :poll do
member do
get 'add_question'
get 'add_answer'
get 'vote'
get 'statistics'
end
end
resources :contest_notification
resources :open_source_projects do