From c964194d85a7ada908ef05a5874174d211b7c759 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Mon, 12 Jan 2015 16:02:15 +0800 Subject: [PATCH 001/142] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E9=97=AE=E5=8D=B7?= =?UTF-8?q?=E8=B0=83=E6=9F=A5=E7=9B=B8=E5=85=B3=E7=9A=84=E8=B7=AF=E7=94=B1?= =?UTF-8?q?=E3=80=81action=E3=80=81=E4=BB=A5=E5=8F=8A=E9=83=A8=E5=88=86?= =?UTF-8?q?=E5=AF=B9=E5=BA=94=E7=9A=84=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/poll_controller.rb | 110 +++++++++++++++++++++++++++++ app/views/poll/add_answer.html.erb | 0 app/views/poll/destroy.js.erb | 1 + app/views/poll/edit.html.erb | 13 ++++ app/views/poll/index.html.erb | 7 ++ app/views/poll/new.html.erb | 0 config/routes.rb | 9 +++ 7 files changed, 140 insertions(+) create mode 100644 app/views/poll/add_answer.html.erb create mode 100644 app/views/poll/destroy.js.erb create mode 100644 app/views/poll/edit.html.erb create mode 100644 app/views/poll/index.html.erb create mode 100644 app/views/poll/new.html.erb diff --git a/app/controllers/poll_controller.rb b/app/controllers/poll_controller.rb index a21fdb549..fbfef025e 100644 --- a/app/controllers/poll_controller.rb +++ b/app/controllers/poll_controller.rb @@ -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 \ No newline at end of file diff --git a/app/views/poll/add_answer.html.erb b/app/views/poll/add_answer.html.erb new file mode 100644 index 000000000..e69de29bb diff --git a/app/views/poll/destroy.js.erb b/app/views/poll/destroy.js.erb new file mode 100644 index 000000000..a9efe790e --- /dev/null +++ b/app/views/poll/destroy.js.erb @@ -0,0 +1 @@ +alert("删除成功"); \ No newline at end of file diff --git a/app/views/poll/edit.html.erb b/app/views/poll/edit.html.erb new file mode 100644 index 000000000..a35b1d2e7 --- /dev/null +++ b/app/views/poll/edit.html.erb @@ -0,0 +1,13 @@ + +<%= form_for(@poll) do |f|%> + <%= f.text_field :polls_name, :required => true, :name => "polls_name"%> + + <%= l(:label_button_ok) %> + +<% end%> + diff --git a/app/views/poll/index.html.erb b/app/views/poll/index.html.erb new file mode 100644 index 000000000..4cf90d210 --- /dev/null +++ b/app/views/poll/index.html.erb @@ -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 ) %> +
+<%end%> \ No newline at end of file diff --git a/app/views/poll/new.html.erb b/app/views/poll/new.html.erb new file mode 100644 index 000000000..e69de29bb diff --git a/config/routes.rb b/config/routes.rb index 5611ed2b6..222fe17eb 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -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 From c0fa21eb9f605ef9357aa368fe84de339bf904bc Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Mon, 12 Jan 2015 16:07:15 +0800 Subject: [PATCH 002/142] =?UTF-8?q?=E9=97=AE=E5=8D=B7=E8=B0=83=E6=9F=A5?= =?UTF-8?q?=E8=A1=A8=E5=A2=9E=E5=8A=A0=E6=8F=8F=E8=BF=B0=E5=88=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- db/migrate/20150112080435_add_description_to_polls.rb | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 db/migrate/20150112080435_add_description_to_polls.rb diff --git a/db/migrate/20150112080435_add_description_to_polls.rb b/db/migrate/20150112080435_add_description_to_polls.rb new file mode 100644 index 000000000..135dc6bd4 --- /dev/null +++ b/db/migrate/20150112080435_add_description_to_polls.rb @@ -0,0 +1,9 @@ +class AddDescriptionToPolls < ActiveRecord::Migration + def up + add_column :polls, :polls_description, :text + end + + def down + remove_column :polls,:polls_description + end +end From d0a6fa64e57683561d725aea1a3441724bfe07bc Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Mon, 12 Jan 2015 16:27:47 +0800 Subject: [PATCH 003/142] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=B7=AF=E7=94=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/routes.rb | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/config/routes.rb b/config/routes.rb index 222fe17eb..911a0643f 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -58,14 +58,7 @@ 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 :poll resources :contest_notification From 1c24a306fe5b7476cd2a7dcd4b1bab7ae5ed90a2 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Mon, 12 Jan 2015 16:37:23 +0800 Subject: [PATCH 004/142] =?UTF-8?q?=E5=8E=BB=E6=8E=89=E6=97=A0=E7=94=A8?= =?UTF-8?q?=E7=9A=84control?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/poll_answer_controller.rb | 2 - app/controllers/poll_controller.rb | 112 -------------------- app/controllers/poll_question_controller.rb | 2 - app/controllers/poll_user_controller.rb | 2 - app/controllers/poll_vote_controller.rb | 2 - 5 files changed, 120 deletions(-) delete mode 100644 app/controllers/poll_answer_controller.rb delete mode 100644 app/controllers/poll_controller.rb delete mode 100644 app/controllers/poll_question_controller.rb delete mode 100644 app/controllers/poll_user_controller.rb delete mode 100644 app/controllers/poll_vote_controller.rb diff --git a/app/controllers/poll_answer_controller.rb b/app/controllers/poll_answer_controller.rb deleted file mode 100644 index 521f7ed3f..000000000 --- a/app/controllers/poll_answer_controller.rb +++ /dev/null @@ -1,2 +0,0 @@ -class PollAnswerController < ApplicationController -end \ No newline at end of file diff --git a/app/controllers/poll_controller.rb b/app/controllers/poll_controller.rb deleted file mode 100644 index fbfef025e..000000000 --- a/app/controllers/poll_controller.rb +++ /dev/null @@ -1,112 +0,0 @@ -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 \ No newline at end of file diff --git a/app/controllers/poll_question_controller.rb b/app/controllers/poll_question_controller.rb deleted file mode 100644 index 46a75c0ab..000000000 --- a/app/controllers/poll_question_controller.rb +++ /dev/null @@ -1,2 +0,0 @@ -class PollQuestionController < ApplicationController -end \ No newline at end of file diff --git a/app/controllers/poll_user_controller.rb b/app/controllers/poll_user_controller.rb deleted file mode 100644 index 0373fe085..000000000 --- a/app/controllers/poll_user_controller.rb +++ /dev/null @@ -1,2 +0,0 @@ -class PollUserController < ApplicationController -end \ No newline at end of file diff --git a/app/controllers/poll_vote_controller.rb b/app/controllers/poll_vote_controller.rb deleted file mode 100644 index e77bdc622..000000000 --- a/app/controllers/poll_vote_controller.rb +++ /dev/null @@ -1,2 +0,0 @@ -class PollVoteController < ApplicationController -end \ No newline at end of file From 475b046898373a5eb8f628dacf852c5516424303 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Mon, 12 Jan 2015 16:56:53 +0800 Subject: [PATCH 005/142] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=AE=BF=E9=97=AEpol?= =?UTF-8?q?l#index=E6=8A=A5ArgumentError?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/poll_controller.rb | 89 ++++++++++++++++++++++++++++++ app/views/poll/index.html.erb | 8 +-- config/locales/zh.yml | 1 + 3 files changed, 91 insertions(+), 7 deletions(-) create mode 100644 app/controllers/poll_controller.rb diff --git a/app/controllers/poll_controller.rb b/app/controllers/poll_controller.rb new file mode 100644 index 000000000..2a190166f --- /dev/null +++ b/app/controllers/poll_controller.rb @@ -0,0 +1,89 @@ +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 => l(:label_poll_new), + :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 + + 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 + + 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 \ No newline at end of file diff --git a/app/views/poll/index.html.erb b/app/views/poll/index.html.erb index 4cf90d210..3c78c257e 100644 --- a/app/views/poll/index.html.erb +++ b/app/views/poll/index.html.erb @@ -1,7 +1 @@ -<% @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 ) %> -
-<%end%> \ No newline at end of file +1111111111111 \ No newline at end of file diff --git a/config/locales/zh.yml b/config/locales/zh.yml index 568a60cac..abf20e370 100644 --- a/config/locales/zh.yml +++ b/config/locales/zh.yml @@ -2241,4 +2241,5 @@ zh: label_quote_resource_failed: ",此资源引用失败! " label_file_lost: 以下无法成功下载,请联系相关人员重新上传: label_file_exist: 该作品中有重复命名文件,请通过文件名学号和姓名信息进入该作业详细界面手动下载 + label_poll_new: 未命名问卷 From d2dfff33d019de2b54cd1013c8421c5662223062 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Mon, 12 Jan 2015 17:01:39 +0800 Subject: [PATCH 006/142] =?UTF-8?q?=E8=AF=BE=E7=A8=8B=E9=A1=B5=E9=9D=A2?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E9=97=AE=E5=8D=B7=E8=B0=83=E6=9F=A5=E7=9A=84?= =?UTF-8?q?=E9=93=BE=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/layouts/base_courses.html.erb | 4 ++++ config/locales/zh.yml | 1 + 2 files changed, 5 insertions(+) diff --git a/app/views/layouts/base_courses.html.erb b/app/views/layouts/base_courses.html.erb index 43adab15f..459fc43af 100644 --- a/app/views/layouts/base_courses.html.erb +++ b/app/views/layouts/base_courses.html.erb @@ -275,6 +275,10 @@
+ +
+ <%= link_to l(:label_poll), poll_index_path(:polls_type => "Course", :polls_group_id => @course.id)%> +
diff --git a/config/locales/zh.yml b/config/locales/zh.yml index abf20e370..f3e6d4d8d 100644 --- a/config/locales/zh.yml +++ b/config/locales/zh.yml @@ -2242,4 +2242,5 @@ zh: label_file_lost: 以下无法成功下载,请联系相关人员重新上传: label_file_exist: 该作品中有重复命名文件,请通过文件名学号和姓名信息进入该作业详细界面手动下载 label_poll_new: 未命名问卷 + label_poll: 问卷调查 From 8080ca80643c84eac04e0ba9ee140debbf8c9220 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Mon, 12 Jan 2015 17:02:35 +0800 Subject: [PATCH 007/142] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E7=95=8C=E9=9D=A2=E7=9A=84css?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/stylesheets/polls.css | 40 ++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 public/stylesheets/polls.css diff --git a/public/stylesheets/polls.css b/public/stylesheets/polls.css new file mode 100644 index 000000000..8621c20dc --- /dev/null +++ b/public/stylesheets/polls.css @@ -0,0 +1,40 @@ +/* CSS Document */ +body{ font-size:12px; font-family:"微软雅黑","宋体"; line-height:1.9; background:#fff; font-style:normal;} +div,html,img,ul,li,p,body,h1,h2,h3,h4,p,a,table,tr,td,fieldset,input,span{ margin:0; padding:0;} +div,img,tr,td{ border:0;} +table,tr,td{border:0; cellspacing:0; cellpadding:0;} +ul,li{ list-style-type:none} +.cl{ clear:both; overflow:hidden; } +a{ text-decoration:none; } +a:hover{ text-decoration:underline; } +.ml10{ margin-left:10px;} +.ml20{ margin-left:20px;} +.mr10{ margin-right:10px;} +.fl{ float: left;} +.fr{ float:right;} + +/*问卷列表*/ +.polls_content{ width:677px;} +.polls_head{ width:677px; height:48px; background:#eaeaea;} +.polls_head h2{ float:left; font-size:14px; color:#585858; margin:11px 0 0 10px;} +.polls_head span{ font-weight:normal; color:#15bccf;} +a.newbtn{ float:right; display:block; width:80px; height:30px; background:#64bdd9; color:#fff; font-size:14px; margin:10px; text-align:center;} +a:hover.newbtn{ background:#55a1b9; text-decoration:none;} +.polls_list ul{ padding-left:10px; border-bottom:1px dashed #c9c9c9; height:32px; padding-top:8px;} +a.polls_title{ font-weight:bold; color:#3e6d8e;} +a.pollsbtn{ display:block; width:66px; height:22px; text-align:center; border:1px solid #64bdd9; color:#64bdd9;} +a:hover.pollsbtn{ background:#64bdd9; color:#fff; text-decoration:none;} +.polls_date{ color:#666666;} +.polls_de{ color:#6883b6;} +/****翻页***/ +.wlist{} +.wlist a{ float:right; border:1px solid #64bdd9; padding:0 5px; margin-left:3px; color:#64bdd9;} +.wlist a:hover{border:1px solid #64bdd9; background-color:#64bdd9; color:#fff; text-decoration:none;} +.wlist_select a { background-color:#48aac9; color:#fff;} + +/*问卷内容*/ +.polls_box{ border:1px solid #dcdcdc; padding:15px 30px 30px;} +.ur_page_title{ font-size:16px; text-align:center; color:#353535;} +.ur_prefix_content{ color:#656565; text-indent:30px; margin-top:10px; } +.ur_card{border-top:1px solid #dcdcdc;margin-top:20px;} +.ur_title{ padding:5px 0px 15px; border-bottom:1px solid #dcdcdc; } From f54cf536632c8b380180b07b66c92400e922971a Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Mon, 12 Jan 2015 17:25:48 +0800 Subject: [PATCH 008/142] =?UTF-8?q?1.=E9=97=AE=E5=8D=B7=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2=E5=8A=A8=E6=80=81=E6=98=BE=E7=A4=BA=EF=BC=8C?= =?UTF-8?q?=202.=E9=97=AE=E5=8D=B7=E8=B0=83=E6=9F=A5=E9=A1=B5=E9=9D=A2?= =?UTF-8?q?=E5=BC=95=E8=B5=B7base=5Fcourse=E7=9A=84=E6=A0=B7=E5=BC=8F?= =?UTF-8?q?=E6=98=BE=E7=A4=BA=E4=B8=8D=E6=AD=A3=E7=A1=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/poll/index.html.erb | 52 ++++++++++++++++++++++++++++++++++- public/stylesheets/polls.css | 24 ++++++++-------- 2 files changed, 63 insertions(+), 13 deletions(-) diff --git a/app/views/poll/index.html.erb b/app/views/poll/index.html.erb index 3c78c257e..68d16f4f7 100644 --- a/app/views/poll/index.html.erb +++ b/app/views/poll/index.html.erb @@ -1 +1,51 @@ -1111111111111 \ No newline at end of file + + + + + 问卷调查_列表 + <%= stylesheet_link_tag 'polls', :media => 'all' %> + + + +
+
+

所有问卷 + (<%= @polls.count%>) +

+ 新建问卷 +
+
+
+ <% @polls.each do |poll|%> + +
+ <% end%> + + +
+
+ +
+ + diff --git a/public/stylesheets/polls.css b/public/stylesheets/polls.css index 8621c20dc..9d3059245 100644 --- a/public/stylesheets/polls.css +++ b/public/stylesheets/polls.css @@ -1,17 +1,17 @@ /* CSS Document */ -body{ font-size:12px; font-family:"微软雅黑","宋体"; line-height:1.9; background:#fff; font-style:normal;} +#polls{ font-size:12px; font-family:"微软雅黑","宋体"; line-height:1.9; background:#fff; font-style:normal;} div,html,img,ul,li,p,body,h1,h2,h3,h4,p,a,table,tr,td,fieldset,input,span{ margin:0; padding:0;} -div,img,tr,td{ border:0;} -table,tr,td{border:0; cellspacing:0; cellpadding:0;} -ul,li{ list-style-type:none} -.cl{ clear:both; overflow:hidden; } -a{ text-decoration:none; } -a:hover{ text-decoration:underline; } -.ml10{ margin-left:10px;} -.ml20{ margin-left:20px;} -.mr10{ margin-right:10px;} -.fl{ float: left;} -.fr{ float:right;} +#polls div,img,tr,td{ border:0;} +#polls table,tr,td{border:0; cellspacing:0; cellpadding:0;} +#polls ul,li{ list-style-type:none} +#polls .cl{ clear:both; overflow:hidden; } +#polls a{ text-decoration:none; } +#polls a:hover{ text-decoration:underline; } +#polls .ml10{ margin-left:10px;} +#polls .ml20{ margin-left:20px;} +#polls .mr10{ margin-right:10px;} +#polls .fl{ float: left;} +#polls .fr{ float:right;} /*问卷列表*/ .polls_content{ width:677px;} From 450c4b203dd2138cd3919ecb730b4bd29765eb41 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Mon, 12 Jan 2015 17:30:33 +0800 Subject: [PATCH 009/142] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=96=B0=E5=BB=BA?= =?UTF-8?q?=E9=97=AE=E5=8D=B7=E6=8C=89=E9=92=AE=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/poll/index.html.erb | 2 +- app/views/poll/new.html.erb | 1 + config/locales/zh.yml | 1 + 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/app/views/poll/index.html.erb b/app/views/poll/index.html.erb index 68d16f4f7..7c1529406 100644 --- a/app/views/poll/index.html.erb +++ b/app/views/poll/index.html.erb @@ -12,7 +12,7 @@

所有问卷 (<%= @polls.count%>)

- 新建问卷 + <%= link_to l(:label_new_poll), new_poll_path(:polls_type => "Course",:polls_group_id => @course.id), :class => "newbtn" %>
diff --git a/app/views/poll/new.html.erb b/app/views/poll/new.html.erb index e69de29bb..9d07aa0df 100644 --- a/app/views/poll/new.html.erb +++ b/app/views/poll/new.html.erb @@ -0,0 +1 @@ +111 \ No newline at end of file diff --git a/config/locales/zh.yml b/config/locales/zh.yml index f3e6d4d8d..b6a293c6a 100644 --- a/config/locales/zh.yml +++ b/config/locales/zh.yml @@ -2243,4 +2243,5 @@ zh: label_file_exist: 该作品中有重复命名文件,请通过文件名学号和姓名信息进入该作业详细界面手动下载 label_poll_new: 未命名问卷 label_poll: 问卷调查 + label_new_poll: 新建问卷 From d0dc01b99215177f7495e8fad7090277e9a96c72 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Mon, 12 Jan 2015 17:55:22 +0800 Subject: [PATCH 010/142] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E9=97=AE=E5=8D=B7?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=8A=9F=E8=83=BD=EF=BC=8C=E4=BB=A5=E5=8F=8A?= =?UTF-8?q?=E7=9B=B8=E5=85=B3js?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/poll_controller.rb | 4 ++-- app/views/poll/destroy.js.erb | 5 ++++- app/views/poll/index.html.erb | 9 ++++++--- config/locales/zh.yml | 1 + 4 files changed, 13 insertions(+), 6 deletions(-) diff --git a/app/controllers/poll_controller.rb b/app/controllers/poll_controller.rb index 2a190166f..5f0119022 100644 --- a/app/controllers/poll_controller.rb +++ b/app/controllers/poll_controller.rb @@ -1,5 +1,5 @@ class PollController < ApplicationController - before_filter :find_poll_and_course, :only => [:edit,:update,:destory] + before_filter :find_poll_and_course, :only => [:edit,:update,:destroy] before_filter :find_container, :only => [:new,:create, :index] def index @@ -59,7 +59,7 @@ class PollController < ApplicationController end def destroy - if @poll.destroy + if @poll && @poll.destroy respond_to do |format| format.js end diff --git a/app/views/poll/destroy.js.erb b/app/views/poll/destroy.js.erb index a9efe790e..abfecb167 100644 --- a/app/views/poll/destroy.js.erb +++ b/app/views/poll/destroy.js.erb @@ -1 +1,4 @@ -alert("删除成功"); \ No newline at end of file +<% if @poll%> + $("#polls_<%= @poll.id%>").remove(); +<%else%> +<% end %> diff --git a/app/views/poll/index.html.erb b/app/views/poll/index.html.erb index 7c1529406..39230774b 100644 --- a/app/views/poll/index.html.erb +++ b/app/views/poll/index.html.erb @@ -17,17 +17,20 @@
<% @polls.each do |poll|%> -
diff --git a/public/stylesheets/polls.css b/public/stylesheets/polls.css index c83ef6833..494d9cb60 100644 --- a/public/stylesheets/polls.css +++ b/public/stylesheets/polls.css @@ -27,10 +27,11 @@ a:hover.pollsbtn{ background:#64bdd9; color:#fff; text-decoration:none;} .polls_date{ color:#666666;} .polls_de{ color:#6883b6;} /****翻页***/ -.wlist{} -.wlist a{ float:right; border:1px solid #64bdd9; padding:0 5px; margin-left:3px; color:#64bdd9;} -.wlist a:hover{border:1px solid #64bdd9; background-color:#64bdd9; color:#fff; text-decoration:none;} -.wlist_select a { background-color:#48aac9; color:#fff;} +ul.wlist{ float:right; border-bottom:none; height:30px; margin-top:20px; } +ul.wlist li{float: left;} +ul.wlist li a{ border:1px solid #15bccf; padding:4px; margin-left:3px;} +ul.wlist li a:hover{ background:#15bccf; color:#fff; text-decoration:none;} +.wlist_select { background-color:#64bdd9; color:#fff; padding:0 5px; margin-left:3px;margin-top: -2px; border:1px solid #64bdd9;} /*问卷页面*/ .polls_box{ border:1px solid #dcdcdc; padding:15px 30px;} From d8e6b4a92f4a1f116e348f8152980d4489a7ae69 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Tue, 13 Jan 2015 11:54:07 +0800 Subject: [PATCH 015/142] =?UTF-8?q?=E5=AD=A6=E7=94=9F=E5=8F=96=E6=B6=88?= =?UTF-8?q?=E6=96=B0=E5=BB=BA=E9=97=AE=E5=8D=B7=E6=8C=89=E9=92=AE=E6=98=BE?= =?UTF-8?q?=E7=A4=BA=20=E4=BF=AE=E6=94=B9=E9=97=AE=E5=8D=B7=E6=80=BB?= =?UTF-8?q?=E6=95=B0=E6=98=BE=E7=A4=BA=E4=B8=8D=E6=AD=A3=E7=A1=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/poll/index.html.erb | 6 ++++-- public/stylesheets/polls.css | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/app/views/poll/index.html.erb b/app/views/poll/index.html.erb index fc36a8abf..0b49cd92d 100644 --- a/app/views/poll/index.html.erb +++ b/app/views/poll/index.html.erb @@ -10,9 +10,11 @@

所有问卷 - (<%= @polls.count%>) + (<%= @obj_count%>)

- <%= link_to l(:label_new_poll), new_poll_path(:polls_type => "Course",:polls_group_id => @course.id), :class => "newbtn" %> + <% if @is_teacher%> + <%= link_to l(:label_new_poll), new_poll_path(:polls_type => "Course",:polls_group_id => @course.id), :class => "newbtn" %> + <% end%>
diff --git a/public/stylesheets/polls.css b/public/stylesheets/polls.css index 494d9cb60..641d1726d 100644 --- a/public/stylesheets/polls.css +++ b/public/stylesheets/polls.css @@ -31,7 +31,7 @@ ul.wlist{ float:right; border-bottom:none; height:30px; margin-top:20px; } ul.wlist li{float: left;} ul.wlist li a{ border:1px solid #15bccf; padding:4px; margin-left:3px;} ul.wlist li a:hover{ background:#15bccf; color:#fff; text-decoration:none;} -.wlist_select { background-color:#64bdd9; color:#fff; padding:0 5px; margin-left:3px;margin-top: -2px; border:1px solid #64bdd9;} +.wlist_select { background-color:#64bdd9; color:#fff; padding: 1px 5px 0px 5px; margin-left:3px;margin-top: -2px; border:1px solid #64bdd9;} /*问卷页面*/ .polls_box{ border:1px solid #dcdcdc; padding:15px 30px;} From fc72d6f9a9710256f70ee98a9a9db4030b1bcceb Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Tue, 13 Jan 2015 15:59:02 +0800 Subject: [PATCH 016/142] =?UTF-8?q?1.=E5=A2=9E=E5=8A=A0=E9=97=AE=E5=8D=B7?= =?UTF-8?q?=E7=BB=9F=E8=AE=A1=E3=80=81=E9=97=AE=E5=8D=B7=E7=AD=94=E5=8D=B7?= =?UTF-8?q?=E7=AD=89=E9=A1=B5=E9=9D=A2=E8=B7=B3=E8=BD=AC=EF=BC=8C=E5=B9=B6?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=AF=B9=E5=BA=94=E8=B7=AF=E7=94=B1=202.?= =?UTF-8?q?=E8=B0=83=E6=95=B4=E9=A1=B5=E9=9D=A2=E6=A0=B7=E5=BC=8F=203.?= =?UTF-8?q?=E5=8A=A8=E6=80=81=E5=88=86=E9=A1=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/poll_controller.rb | 13 +- app/views/poll/index.html.erb | 22 +-- app/views/poll/show.html.erb | 114 +++++++++++ app/views/poll/statistics_result.html.erb | 220 ++++++++++++++++++++++ config/routes.rb | 6 +- public/stylesheets/polls.css | 2 +- 6 files changed, 356 insertions(+), 21 deletions(-) create mode 100644 app/views/poll/show.html.erb create mode 100644 app/views/poll/statistics_result.html.erb diff --git a/app/controllers/poll_controller.rb b/app/controllers/poll_controller.rb index d4e2517e7..e5b1025a4 100644 --- a/app/controllers/poll_controller.rb +++ b/app/controllers/poll_controller.rb @@ -1,5 +1,5 @@ class PollController < ApplicationController - before_filter :find_poll_and_course, :only => [:edit,:update,:destroy] + before_filter :find_poll_and_course, :only => [:edit,:update,:destroy,:show,:statistics_result] before_filter :find_container, :only => [:new,:create, :index] before_filter :is_member_of_course, :only => [:index,:show] before_filter :is_course_teacher, :only => [:new,:create,:edit,:update,:destroy] @@ -19,6 +19,11 @@ class PollController < ApplicationController def show @poll = Poll.find params[:id] + @poll_questions = @poll.poll_questions + + respond_to do |format| + format.html {render :layout => 'base_courses'} + end end def new @@ -70,6 +75,12 @@ class PollController < ApplicationController end end + def statistics_result + respond_to do |format| + format.html{render :layout => 'base_courses'} + end + end + private def find_poll_and_course @poll = Poll.find params[:id] diff --git a/app/views/poll/index.html.erb b/app/views/poll/index.html.erb index 0b49cd92d..79f930565 100644 --- a/app/views/poll/index.html.erb +++ b/app/views/poll/index.html.erb @@ -1,12 +1,4 @@ - - - - - 问卷调查_列表 - <%= stylesheet_link_tag 'polls', :media => 'all' %> - - - +<%= stylesheet_link_tag 'polls', :media => 'all' %>

所有问卷 @@ -21,15 +13,11 @@ <% @polls.each do |poll|%>

-
- - +
\ No newline at end of file diff --git a/app/views/poll/show.html.erb b/app/views/poll/show.html.erb new file mode 100644 index 000000000..66fcd3bcd --- /dev/null +++ b/app/views/poll/show.html.erb @@ -0,0 +1,114 @@ + + + + + 问卷调查_问卷页面 + <%= stylesheet_link_tag 'polls', :media => 'all' %> + + + +
+
+

+ <%= @poll.polls_name%> +

+

+ <%= @poll.polls_description %> +

+
+ + +
+
    + +
  1. +
    + 第1题: 单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题 * +
    +
    + + + + + + + + + + + + +
    + +
    + +
    + +
    +
    +
  2. + +
  3. +
    + 第2题: 多选题 * +
    +
    + + + + + + + + + + + + +
    + +
    + +
    + +
    +
    +
  4. + + +
  5. +
    + 第3题: 单行主观 +
    +
    + +
    +
  6. + +
  7. +
    +
    + 第4题: 多行主观 +
    +
    + +
    +
    +
  8. + +
+ + +
+
答题已完成 0%
+ +
+ + + +
+ + diff --git a/app/views/poll/statistics_result.html.erb b/app/views/poll/statistics_result.html.erb new file mode 100644 index 000000000..f07d17215 --- /dev/null +++ b/app/views/poll/statistics_result.html.erb @@ -0,0 +1,220 @@ + + + + + 问卷调查_问卷结果 + <%= stylesheet_link_tag 'polls', :media => 'all' %> + + + +
+
+

某问卷统计

+
+ + +
+
    +
  1. +
    + 第1题:问题描述问题描述 [单选题] +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    选项 小计 比例
    第一选项 24
    75%
    第二选项 1
    3.13%
    第三选项 1
    3.13%
    本题有效填写人次 26 
    +
    +
  2. +
  3. +
    + 第1题:问题描述问题描述 [单选题] +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    选项 小计 比例
    第一选项 24
    75%
    第二选项 1
    3.13%
    第三选项 1
    3.13%
    本题有效填写人次 26 
    +
    +
  4. +
  5. +
    + 第1题:问题描述问题描述 [单选题] +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    选项 小计 比例
    第一选项 24
    75%
    第二选项 1
    3.13%
    第三选项 1
    3.13%
    本题有效填写人次 26 
    +
    +
  6. +
  7. +
    + 第1题:问题描述问题描述 [单选题] +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    选项 小计 比例
    第一选项 24
    75%
    第二选项 1
    3.13%
    第三选项 1
    3.13%
    本题有效填写人次 26 
    +
    +
  8. +
  9. +
    + 第1题:问题描述问题描述 [单选题] +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    选项 小计 比例
    第一选项 24
    75%
    第二选项 1
    3.13%
    第三选项 1
    3.13%
    本题有效填写人次 26 
    +
    +
  10. + + + + + + + + +
+
+ + +
+
+
答题已完成 0%
+ +
+ + + +
+ + diff --git a/config/routes.rb b/config/routes.rb index 911a0643f..617a5ade4 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -58,7 +58,11 @@ RedmineApp::Application.routes.draw do end end - resources :poll + resources :poll do + member do + get 'statistics_result' + end + end resources :contest_notification diff --git a/public/stylesheets/polls.css b/public/stylesheets/polls.css index 641d1726d..3ace9e459 100644 --- a/public/stylesheets/polls.css +++ b/public/stylesheets/polls.css @@ -46,7 +46,7 @@ ul.wlist li a:hover{ background:#15bccf; color:#fff; text-decoration:none;} .ur_inputs label{ padding-left:10px;} .ur_inputs input{ margin-right:5px;} .ur_text{ height:30px;} -.ur_textbox{ border:1px solid #dcdcdc; color:#676765;} +.ur_textbox{ border:1px solid #dcdcdc !important; color:#676765;} .ur_buttons{ width:250px; margin:20px auto 10px;} a.ur_button{ display:block; width:106px; height:37px; background:#15bccf; color:#fff; font-size:16px; text-align:center; padding-top:3px; float:left; margin-right:15px;} a:hover.ur_button{ background:#0fa9bb; text-decoration:none;} From 8503f0c8030997ba050999e61e9e58a7761d6590 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Tue, 13 Jan 2015 16:58:44 +0800 Subject: [PATCH 017/142] =?UTF-8?q?=E6=A0=B9=E6=8D=AE=E6=9C=80=E6=96=B0?= =?UTF-8?q?=E8=AE=BE=E8=AE=A1=E9=A1=B5=E9=9D=A2=EF=BC=8C=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2=E6=98=BE=E7=A4=BA=E6=A0=B7=E5=BC=8F=EF=BC=8C?= =?UTF-8?q?=E8=B0=83=E6=95=B4css=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/poll/index.html.erb | 2 +- app/views/poll/statistics_result.html.erb | 10 +--- public/stylesheets/polls.css | 59 +++++++++++++++++++++-- 3 files changed, 56 insertions(+), 15 deletions(-) diff --git a/app/views/poll/index.html.erb b/app/views/poll/index.html.erb index 79f930565..150c13382 100644 --- a/app/views/poll/index.html.erb +++ b/app/views/poll/index.html.erb @@ -1,5 +1,5 @@ <%= stylesheet_link_tag 'polls', :media => 'all' %> -
+

所有问卷 (<%= @obj_count%>) diff --git a/app/views/poll/statistics_result.html.erb b/app/views/poll/statistics_result.html.erb index f07d17215..164020cde 100644 --- a/app/views/poll/statistics_result.html.erb +++ b/app/views/poll/statistics_result.html.erb @@ -7,7 +7,7 @@ -
+

某问卷统计

@@ -195,14 +195,6 @@
- - - - - - - -
diff --git a/public/stylesheets/polls.css b/public/stylesheets/polls.css index 3ace9e459..99e88c98d 100644 --- a/public/stylesheets/polls.css +++ b/public/stylesheets/polls.css @@ -14,7 +14,7 @@ div,html,img,ul,li,p,body,h1,h2,h3,h4,p,a,table,tr,td,fieldset,input,span{ margi #polls .fr{ float:right;} /*问卷列表*/ -.polls_content{ width:677px;} +.polls_content{ width:615px;} .polls_head{ width:677px; height:48px; background:#eaeaea;} .polls_head h2{ float:left; font-size:14px; color:#585858; margin:11px 0 0 10px;} .polls_head span{ font-weight:normal; color:#15bccf;} @@ -33,16 +33,17 @@ ul.wlist li a{ border:1px solid #15bccf; padding:4px; margin-left:3px;} ul.wlist li a:hover{ background:#15bccf; color:#fff; text-decoration:none;} .wlist_select { background-color:#64bdd9; color:#fff; padding: 1px 5px 0px 5px; margin-left:3px;margin-top: -2px; border:1px solid #64bdd9;} + /*问卷页面*/ .polls_box{ border:1px solid #dcdcdc; padding:15px 30px;} .ur_page_title{ font-size:16px; text-align:center; color:#353535;} .ur_prefix_content{ color:#656565; text-indent:30px; margin-top:10px; } .ur_card{border-top:1px solid #dcdcdc;margin-top:20px; color:#3a3a3a;} -.ur_title{ padding:20px 0px ; } +.ur_title{ padding:20px 0px ; float:left; width:604px; } .ur_required{ font-weight: bold; color:red;} .ur_inputs{ color:#666;} .ur_table{border-top:1px solid #dcdcdc;} -.ur_inputs tr td{ height:40px;border-bottom:1px solid #dcdcdc; width:677px;} +.ur_inputs tr td{ height:40px;border-bottom:1px solid #dcdcdc; width:617px;} .ur_inputs label{ padding-left:10px;} .ur_inputs input{ margin-right:5px;} .ur_text{ height:30px;} @@ -58,9 +59,57 @@ a:hover.ur_button{ background:#0fa9bb; text-decoration:none;} .ur_table_result{ color:#5d5d5d;border-right:1px solid #cbcbcb;border-bottom:1px solid #cbcbcb;} .ur_table_result tr td{ border-left:1px solid #cbcbcb;border-top:1px solid #cbcbcb; height:20px;} .table_bluebg{ background:#d7e5ee; color:#2f3a40; height:24px;} -.td327{ width:334px; padding-left:5px;} +.td327{ width:300px; padding-left:5px;} .td42{ width:42px; text-align:center;} -.td287{ width:287px;padding-left:5px; } +.td287{ width:259px;padding-left:5px; } .Bar{ position: relative; width: 120px; border: 1px solid #cbcbcb; float:left; height:10px; margin-top:5px; margin-right:3px; } .Bar span{ display: block; position: relative;background:#64badb;/* 进度条背景颜色 */ color: #333333;height: 10px; /* 高度 */ line-height: 20px; } .ur_progress_text{ color:#3a3a3a;} + +/*问卷编辑*/ +.polls_edit{ color:#767676;} +a:hover{ text-decoration:none; cursor:pointer;} +.tabs{ width:665px; height: auto; border:1px solid #cbcbcb; padding:10px 0 0 10px; margin-bottom:10px;} +.tab_item { float:left; height:30px; background:#eeeeee; margin-right:4px; padding:0 8px; margin-bottom:10px;} +.icon_delete{ font-size:16px;} +a:hover.icon_delete{ font-weight: bold;} +.current{ color:#4f4f4d; background:#c4c4c4;} +.tab_add{float:left; width:22px; height:22px; border:1px solid #cbcbcb; margin-top:6px; } +.icon_page_add{ background:url(../images/icons.png) 4px -314px no-repeat; width:22px; height:27px; display:block;} +a:hover.icon_page_add{ background:url(../images/icons.png) -16px -314px no-repeat;} +.tab_item02{ float:left; width:141px; height:30px;background:#eeeeee; margin-right:10px; padding:0 10px; margin-bottom:10px; padding:10px 0 0 15px;} +.tab_item02:hover{ background:#c9c9c9;} +.tab_icon{padding-left:25px;} +a:hover.tab_item02{ background:#fff;} +.icon_radio{background:url(../images/icons.png) 0px 0px no-repeat; } +.icon_checkbox{background:url(../images/icons.png) 0px -40px no-repeat; } +.icon_text{background:url(../images/icons.png) 0px -80px no-repeat; } +.icon_textarea{background:url(../images/icons.png) 0px -120px no-repeat; } + +.ur_editor {width:655px; border:1px solid #cbcbcb;background:#eeeeee; padding:10px; margin-bottom:10px;} +.ur_title_editor_title{ margin-bottom:10px;} +.input_title{ width:630px; height:40px; padding:0 10px; text-align:center; font-size:16px; font-weight:bold;} +.textarea_editor{ width:632px; height:120px; padding:10px; margin-bottom:10px;} +.btn_submit{ width:56px; height:24px; padding-top:4px;background:#15bccf; color:#fff; text-align:center; display:block; float:left; margin-right:10px;} +a:hover.btn_submit{background:#0fa9bb;} +.btn_cancel{width:54px; height:22px; padding-top:4px;background:#fff; color:#999; border:1px solid #999; text-align:center; display:block; float:left; } +a:hover.btn_cancel{ color:#666;} +.ur_question_title{ width:534px; height:30px; border:1px solid #cbcbcb; padding-left:5px; margin-right:10px;} +.ur_editor_title{ margin-bottom:10px;} +.ur_editor_content{ } +.ur_item{ margin-bottom:5px; height:32px; } +.ur_item input{ width:324px; height:30px;border:1px solid #cbcbcb; padding-left:5px; float:left; margin-right:10px; } +.ur_item label{ float:left;} +.icon_add{ background:url(../images/icons.png) 0px -310px no-repeat; width:16px; height:27px; display:block;float:left; margin-right:5px;} +a:hover.icon_add{background:url(../images/icons.png) -20px -310px no-repeat;} +.icon_remove{background:url(../images/icons.png) 0px -338px no-repeat; width:16px; height:27px; display:block;float:left;} +a:hover.icon_remove{background:url(../images/icons.png) -20px -338px no-repeat;} +.ur_editor_toolbar{ margin-bottom:10px;} +.ur_editor_toolbar input{ width:40px; height:20px;} +.ur_editor02{width:655px; border:1px solid #cbcbcb; padding:10px; margin-bottom:10px;} +a.ur_button_submit{ display:block; width:106px; height:37px; margin:0 auto; background:#15bccf; color:#fff; font-size:16px; text-align:center; padding-top:3px; margin-bottom:10px; } +a:hover.ur_button_submit{ background:#0fa9bb; text-decoration:none;} +a.ur_icon_de{ background:url(../images/icons.png) 0px -338px no-repeat; width:16px; height:27px; display:block;float:right; margin-top:15px;} +a:hover.ur_icon_de{ background:url(../images/icons.png) -20px -338px no-repeat;} +.ur_icon_edit{ background:url(../images/icons.png) 0px -272px no-repeat; width:16px; height:27px; display:block;float:right; margin-top:15px; margin-right:10px;} +a:hover.ur_icon_edit{ background:url(../images/icons.png) -21px -272px no-repeat;} From e59e9cd66141e4140515e88a63f7a1b296132374 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Tue, 13 Jan 2015 17:03:41 +0800 Subject: [PATCH 018/142] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E9=97=AE=E5=8D=B7=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/poll/new.html.erb | 236 +++++++++++++++++++++++++++- public/stylesheets/images/icons.png | Bin 0 -> 2382 bytes 2 files changed, 235 insertions(+), 1 deletion(-) create mode 100644 public/stylesheets/images/icons.png diff --git a/app/views/poll/new.html.erb b/app/views/poll/new.html.erb index 9d07aa0df..85a4ab8e3 100644 --- a/app/views/poll/new.html.erb +++ b/app/views/poll/new.html.erb @@ -1 +1,235 @@ -111 \ No newline at end of file + + + + + 问卷调查_问卷编辑 + <%= stylesheet_link_tag 'polls', :media => 'all' %> + + + +
+ +
+ +
+
+ +
+
+ +
+
+ +
+ +
+
+ +
+
+
+ + + + +
+
+
    +
  • + + + + +
  • +
    +
  • + + + + +
  • +
    +
+
+ +
+
+
+
+
+ 第1题: 单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题 * +
+ + +
+
+ + + + + + + + + + + + +
+ +
+ +
+ +
+
+
+ +
+
+
+ + + + +
+
+
    +
  • + + + + +
  • +
    +
  • + + + + +
  • +
    +
+
+ +
+
+
+
+
+ 第2题: 多选题 * +
+ + +
+
+ + + + + + + + + + + + +
+ +
+ +
+ +
+
+
+ +
+
+ + + + +
+ +
+
+
+
+ 第3题: 单行文字 +
+ + +
+
+ +
+
+ + +
+
+ + + + +
+
+ + , + +
+ +
+
+
+
+
+ 第4题: 多行主观 +
+ + +
+
+ +
+
+
+ +
+ 提交 +
+
+ +
+ + diff --git a/public/stylesheets/images/icons.png b/public/stylesheets/images/icons.png new file mode 100644 index 0000000000000000000000000000000000000000..2d2b33fe1a24f741e781b935549f8172180870ad GIT binary patch literal 2382 zcmZ`*3pA8l8{VHWqG)o7C9r0BG?5d|Mar z6ae8y08IM>V3h@cTu7Q<(*XcPdvOl-CnAStbN!wudMdrPV|YE4Jn|@OBmujK`<;Mu zxJ@@p<%H{>OElK>Pq;RsM@f0&zU5RV*2|HrZ7AL#3effFNye*YNm~Wfym_72@`neJHLtBX5s`ccOby$7Sx^S+`hO#yY z1E_T?$Ke3Dz)bSkUt| z+;RNG=zjN(rV`4K6(K$_%op0Su`}#_% z^>m}{bXGNlbZ9@talLX+i$4uE4_-C#vHg`}g6GarG@XRWX#qxW+i0iy;_bo;WF_(c zcJN2wHxoKHz#W5lFA5lCCXMQP^4iel{D z3y&vuvAm_x>2+3+%-;V4ct(~yp|IzUd9G*H1?EXyu^JTmN1pM4>R$jfja%IjWx)z) z<{scTGDq#-nL0kQY%)EioPtaBiJ+DDX#Cu#!2CG0vuIz@3Cr-kMZGRXCk)DV7Ev<9 z*jf!KOeSL5vwhTH;kM9N|{tf*r7I#GwD_?$piKMt;10G&6dH+Cx))^JvAe5(Db2}Ku z(2hnD^U%J}U$aou+Aq#9MCUh|fB|#qxvbTcu=zmbdH+hGoQ#S{o^a*h)3CtCZ_3dO zB~Qu4gBATpwH@Z|5w@vTPywuK+HNxquNjDSTw2vtIMJ0AU9k((FD=FUBL6IAGrL_` z#r2SquKIAIX`j0ZqxVrnX}Z;PVJ7Ab`)hp1Cs#VZxJ5bMuL7lvY%c2ko<22~-&2RU@Y;D@d};d7RFZl?i0GIvPl~5c-7lH(3jW^REI8RtSQaruG|0z- z=`Cj;J>#hC{ zLX|UTScy*X8e#nOV89kZLL}`(zoZ!Z-31>V>x3H`h>RtzMFZJBvu?2XpJHr@uwsU~ zsk7cG`6)t=Gi+uZgBCAwuhK*=Gb9(YlkyK^Hsj#J)^mN%usK~E2h09$s4hkJlAN8i zzj=p7OmoSg3A(NnNJBOJwK2*1&{B4iXY2G>yFP?cmoiG#`9b7{!N{kx1|n?Eh@wwh zD^FIi1d^3i|ESX$hAw-CZS8El?pJlXsS!6GuK zKz=4A#>9Y|+U`*j9_9+OK*$-q)MafR-+0u#;{I0Nepn^8!MGIu9wyE{Y|a4nt(DXo zyy3di@@}$tWTC1LAzJ|&fpQ4=!`09-J%$@B_bF;rinu*s-mKZDW#h7I&CM%%yg;N5 zj)6OEB(yO;q-?&hHv<-$S=9o5Xl(0qsq75~U5|~mx(JGhEo?{|pz@Cnt*DW&5m#tO zkk`i7^O$!iRlw)zk$|@MrN@U)DL8UYkG!vsBmZV@5f=spi_6e0nrfY!5UN(xsGFd+ z$zUQ-f$E{?o;?vhN$9A?9blN9%zDJjmW347VWKHi)Ue3NMQ#XWnD`-6v5{7cld0_IKIfVMo`C33gQL6?e5 zorWXGn%4j7*#?%-0_vW=lOngA$S`}A?aK(VA45zyCC1B^BhD}# zTZoD%AuK;uBG2*F*HraA&8r&^8Y{4lUy_<@a*WvNFV4k_ zW5pEZ@f|36l*MU7y)$p7E>bicgTvQ8h~muGr^RWA6fhn=d}7J zHL_m#9sZn*`lj~i9XDAo`0H5h_+CQ!(mDk6uNQX3y-ao&{DlC{(Z%7}KL5DC0Rml0 AWB>pF literal 0 HcmV?d00001 From 0a9509a9211433c66e8f4b2401c224d3f5f33365 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Tue, 13 Jan 2015 17:54:19 +0800 Subject: [PATCH 019/142] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E9=97=AE=E5=8D=B7?= =?UTF-8?q?=E7=95=8C=E9=9D=A2=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/poll/new.html.erb | 2 +- public/stylesheets/polls.css | 34 +++++++++---------- .../stylesheets/application.css | 4 +-- 3 files changed, 20 insertions(+), 20 deletions(-) diff --git a/app/views/poll/new.html.erb b/app/views/poll/new.html.erb index 85a4ab8e3..b182f4a29 100644 --- a/app/views/poll/new.html.erb +++ b/app/views/poll/new.html.erb @@ -9,7 +9,7 @@
-
+
  • 单选题 diff --git a/public/stylesheets/polls.css b/public/stylesheets/polls.css index 99e88c98d..fe8af280f 100644 --- a/public/stylesheets/polls.css +++ b/public/stylesheets/polls.css @@ -1,5 +1,5 @@ /* CSS Document */ -#polls{ font-size:12px; font-family:"微软雅黑","宋体"; line-height:1.9; background:#fff; font-style:normal;} +#polls{ font-size:12px; font-family:"微软雅黑","宋体" !important; line-height:1.9; background:#fff; font-style:normal;} div,html,img,ul,li,p,body,h1,h2,h3,h4,p,a,table,tr,td,fieldset,input,span{ margin:0; padding:0;} #polls div,img,tr,td{ border:0;} #polls table,tr,td{border:0; cellspacing:0; cellpadding:0;} @@ -69,22 +69,22 @@ a:hover.ur_button{ background:#0fa9bb; text-decoration:none;} /*问卷编辑*/ .polls_edit{ color:#767676;} a:hover{ text-decoration:none; cursor:pointer;} -.tabs{ width:665px; height: auto; border:1px solid #cbcbcb; padding:10px 0 0 10px; margin-bottom:10px;} +.tabs_1{ width:665px; height: auto; border:1px solid #cbcbcb; padding:10px 0 0 10px; margin-bottom:10px;} .tab_item { float:left; height:30px; background:#eeeeee; margin-right:4px; padding:0 8px; margin-bottom:10px;} .icon_delete{ font-size:16px;} a:hover.icon_delete{ font-weight: bold;} .current{ color:#4f4f4d; background:#c4c4c4;} .tab_add{float:left; width:22px; height:22px; border:1px solid #cbcbcb; margin-top:6px; } -.icon_page_add{ background:url(../images/icons.png) 4px -314px no-repeat; width:22px; height:27px; display:block;} -a:hover.icon_page_add{ background:url(../images/icons.png) -16px -314px no-repeat;} +.icon_page_add{ background:url(images/icons.png) 4px -314px no-repeat; width:22px; height:27px; display:block;} +a:hover.icon_page_add{ background:url(images/icons.png) -16px -314px no-repeat;} .tab_item02{ float:left; width:141px; height:30px;background:#eeeeee; margin-right:10px; padding:0 10px; margin-bottom:10px; padding:10px 0 0 15px;} .tab_item02:hover{ background:#c9c9c9;} .tab_icon{padding-left:25px;} a:hover.tab_item02{ background:#fff;} -.icon_radio{background:url(../images/icons.png) 0px 0px no-repeat; } -.icon_checkbox{background:url(../images/icons.png) 0px -40px no-repeat; } -.icon_text{background:url(../images/icons.png) 0px -80px no-repeat; } -.icon_textarea{background:url(../images/icons.png) 0px -120px no-repeat; } +.icon_radio{background:url(images/icons.png) 0px 0px no-repeat;color: gray; padding-bottom: 5px;} +.icon_checkbox{background:url(images/icons.png) 0px -40px no-repeat;color: gray; padding-bottom: 5px;} +.icon_text{background:url(images/icons.png) 0px -80px no-repeat;color: gray; padding-bottom: 5px;} +.icon_textarea{background:url(images/icons.png) 0px -120px no-repeat; color: gray;padding-bottom: 5px;} .ur_editor {width:655px; border:1px solid #cbcbcb;background:#eeeeee; padding:10px; margin-bottom:10px;} .ur_title_editor_title{ margin-bottom:10px;} @@ -98,18 +98,18 @@ a:hover.btn_cancel{ color:#666;} .ur_editor_title{ margin-bottom:10px;} .ur_editor_content{ } .ur_item{ margin-bottom:5px; height:32px; } -.ur_item input{ width:324px; height:30px;border:1px solid #cbcbcb; padding-left:5px; float:left; margin-right:10px; } +.ur_item input{ width:324px; height:30px;border:1px solid #cbcbcb; padding:0 5px; float:left; margin-right:10px; } .ur_item label{ float:left;} -.icon_add{ background:url(../images/icons.png) 0px -310px no-repeat; width:16px; height:27px; display:block;float:left; margin-right:5px;} -a:hover.icon_add{background:url(../images/icons.png) -20px -310px no-repeat;} -.icon_remove{background:url(../images/icons.png) 0px -338px no-repeat; width:16px; height:27px; display:block;float:left;} -a:hover.icon_remove{background:url(../images/icons.png) -20px -338px no-repeat;} +.icon_add{ background:url(images/icons.png) 0px -310px no-repeat; width:16px; height:27px; display:block;float:left; margin-right:5px;} +a:hover.icon_add{background:url(images/icons.png) -20px -310px no-repeat;} +.icon_remove{background:url(images/icons.png) 0px -338px no-repeat; width:16px; height:27px; display:block;float:left;} +a:hover.icon_remove{background:url(images/icons.png) -20px -338px no-repeat;} .ur_editor_toolbar{ margin-bottom:10px;} .ur_editor_toolbar input{ width:40px; height:20px;} .ur_editor02{width:655px; border:1px solid #cbcbcb; padding:10px; margin-bottom:10px;} a.ur_button_submit{ display:block; width:106px; height:37px; margin:0 auto; background:#15bccf; color:#fff; font-size:16px; text-align:center; padding-top:3px; margin-bottom:10px; } a:hover.ur_button_submit{ background:#0fa9bb; text-decoration:none;} -a.ur_icon_de{ background:url(../images/icons.png) 0px -338px no-repeat; width:16px; height:27px; display:block;float:right; margin-top:15px;} -a:hover.ur_icon_de{ background:url(../images/icons.png) -20px -338px no-repeat;} -.ur_icon_edit{ background:url(../images/icons.png) 0px -272px no-repeat; width:16px; height:27px; display:block;float:right; margin-top:15px; margin-right:10px;} -a:hover.ur_icon_edit{ background:url(../images/icons.png) -21px -272px no-repeat;} +a.ur_icon_de{ background:url(images/icons.png) 0px -338px no-repeat; width:16px; height:27px; display:block;float:right; margin-top:15px;} +a:hover.ur_icon_de{ background:url(images/icons.png) -20px -338px no-repeat;} +.ur_icon_edit{ background:url(images/icons.png) 0px -272px no-repeat; width:16px; height:27px; display:block;float:right; margin-top:15px; margin-right:10px;} +a:hover.ur_icon_edit{ background:url(images/icons.png) -21px -272px no-repeat;} diff --git a/public/themes/redpenny-master/stylesheets/application.css b/public/themes/redpenny-master/stylesheets/application.css index e10c5a91b..897434393 100644 --- a/public/themes/redpenny-master/stylesheets/application.css +++ b/public/themes/redpenny-master/stylesheets/application.css @@ -851,8 +851,8 @@ p.breadcrumb input[type="text"],input[type="password"],textarea,select { - padding:2px; - border:1px solid #039ea0 + #padding:2px; + #border:1px solid #039ea0 } input[type="text"],input[type="password"] From ac7c0081d5189fb4d987af8b542aafda46b5ae66 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Tue, 13 Jan 2015 18:06:02 +0800 Subject: [PATCH 020/142] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=80=89=E6=8B=A9?= =?UTF-8?q?=E9=A2=98=E6=A0=87=E9=A2=98input=E8=BF=87=E5=AE=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/stylesheets/polls.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/stylesheets/polls.css b/public/stylesheets/polls.css index fe8af280f..428ade808 100644 --- a/public/stylesheets/polls.css +++ b/public/stylesheets/polls.css @@ -94,7 +94,7 @@ a:hover.tab_item02{ background:#fff;} a:hover.btn_submit{background:#0fa9bb;} .btn_cancel{width:54px; height:22px; padding-top:4px;background:#fff; color:#999; border:1px solid #999; text-align:center; display:block; float:left; } a:hover.btn_cancel{ color:#666;} -.ur_question_title{ width:534px; height:30px; border:1px solid #cbcbcb; padding-left:5px; margin-right:10px;} +.ur_question_title{ width:534px; height:30px; border:1px solid #cbcbcb; padding:0 5px !important; margin-right:10px;} .ur_editor_title{ margin-bottom:10px;} .ur_editor_content{ } .ur_item{ margin-bottom:5px; height:32px; } From c84b8f75cc85960f9e72fcb744d8a723d7547fc6 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Tue, 13 Jan 2015 18:21:46 +0800 Subject: [PATCH 021/142] =?UTF-8?q?=E7=BC=96=E8=BE=91=E9=97=AE=E5=8D=B7?= =?UTF-8?q?=E7=9A=84=E9=A1=B5=E9=9D=A2=E7=9A=84=E5=88=86=E5=89=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/poll/_edit_MC.html.erb | 33 +++++ app/views/poll/_edit_MCQ.html.erb | 33 +++++ app/views/poll/_edit_mulit.html.erb | 18 +++ app/views/poll/_edit_single.html.erb | 13 ++ app/views/poll/_show_MC.html.erb | 29 +++++ app/views/poll/_show_MCQ.html.erb | 29 +++++ app/views/poll/_show_mulit.html.erb | 13 ++ app/views/poll/_show_single.html.erb | 11 ++ app/views/poll/new.html.erb | 184 --------------------------- 9 files changed, 179 insertions(+), 184 deletions(-) create mode 100644 app/views/poll/_edit_MC.html.erb create mode 100644 app/views/poll/_edit_MCQ.html.erb create mode 100644 app/views/poll/_edit_mulit.html.erb create mode 100644 app/views/poll/_edit_single.html.erb create mode 100644 app/views/poll/_show_MC.html.erb create mode 100644 app/views/poll/_show_MCQ.html.erb create mode 100644 app/views/poll/_show_mulit.html.erb create mode 100644 app/views/poll/_show_single.html.erb diff --git a/app/views/poll/_edit_MC.html.erb b/app/views/poll/_edit_MC.html.erb new file mode 100644 index 000000000..fb94bc7c8 --- /dev/null +++ b/app/views/poll/_edit_MC.html.erb @@ -0,0 +1,33 @@ +
    +
    +
    + + + + +
    +
    +
      +
    • + + + + +
    • +
      +
    • + + + + +
    • +
      +
    +
    + +
    +
    +
    \ No newline at end of file diff --git a/app/views/poll/_edit_MCQ.html.erb b/app/views/poll/_edit_MCQ.html.erb new file mode 100644 index 000000000..1d221c144 --- /dev/null +++ b/app/views/poll/_edit_MCQ.html.erb @@ -0,0 +1,33 @@ +
    +
    +
    + + + + +
    +
    +
      +
    • + + + + +
    • +
      +
    • + + + + +
    • +
      +
    +
    + +
    +
    +
    \ No newline at end of file diff --git a/app/views/poll/_edit_mulit.html.erb b/app/views/poll/_edit_mulit.html.erb new file mode 100644 index 000000000..bab897489 --- /dev/null +++ b/app/views/poll/_edit_mulit.html.erb @@ -0,0 +1,18 @@ +
    +
    + + + + +
    +
    + + , + +
    + +
    +
    \ No newline at end of file diff --git a/app/views/poll/_edit_single.html.erb b/app/views/poll/_edit_single.html.erb new file mode 100644 index 000000000..73f22c2cd --- /dev/null +++ b/app/views/poll/_edit_single.html.erb @@ -0,0 +1,13 @@ +
    +
    + + + + +
    + +
    +
    \ No newline at end of file diff --git a/app/views/poll/_show_MC.html.erb b/app/views/poll/_show_MC.html.erb new file mode 100644 index 000000000..c647582ca --- /dev/null +++ b/app/views/poll/_show_MC.html.erb @@ -0,0 +1,29 @@ +
    +
    + 第1题: 单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题 * +
    + + +
    +
    + + + + + + + + + + + + +
    + +
    + +
    + +
    +
    +
    \ No newline at end of file diff --git a/app/views/poll/_show_MCQ.html.erb b/app/views/poll/_show_MCQ.html.erb new file mode 100644 index 000000000..e56de53b9 --- /dev/null +++ b/app/views/poll/_show_MCQ.html.erb @@ -0,0 +1,29 @@ +
    +
    + 第2题: 多选题 * +
    + + +
    +
    + + + + + + + + + + + + +
    + +
    + +
    + +
    +
    +
    \ No newline at end of file diff --git a/app/views/poll/_show_mulit.html.erb b/app/views/poll/_show_mulit.html.erb new file mode 100644 index 000000000..35e37ef06 --- /dev/null +++ b/app/views/poll/_show_mulit.html.erb @@ -0,0 +1,13 @@ +
    +
    +
    + 第4题: 多行主观 +
    + + +
    +
    + +
    +
    +
    \ No newline at end of file diff --git a/app/views/poll/_show_single.html.erb b/app/views/poll/_show_single.html.erb new file mode 100644 index 000000000..437e38044 --- /dev/null +++ b/app/views/poll/_show_single.html.erb @@ -0,0 +1,11 @@ +
    +
    + 第3题: 单行文字 +
    + + +
    +
    + +
    +
    \ No newline at end of file diff --git a/app/views/poll/new.html.erb b/app/views/poll/new.html.erb index b182f4a29..8f3cde9da 100644 --- a/app/views/poll/new.html.erb +++ b/app/views/poll/new.html.erb @@ -41,190 +41,6 @@
-
-
-
- - - - -
-
-
    -
  • - - - - -
  • -
    -
  • - - - - -
  • -
    -
-
- -
-
-
-
-
- 第1题: 单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题单选题 * -
- - -
-
- - - - - - - - - - - - -
- -
- -
- -
-
-
- -
-
-
- - - - -
-
-
    -
  • - - - - -
  • -
    -
  • - - - - -
  • -
    -
-
- -
-
-
-
-
- 第2题: 多选题 * -
- - -
-
- - - - - - - - - - - - -
- -
- -
- -
-
-
- -
-
- - - - -
- -
-
-
-
- 第3题: 单行文字 -
- - -
-
- -
-
- - -
-
- - - - -
-
- - , - -
- -
-
-
-
-
- 第4题: 多行主观 -
- - -
-
- -
-
-
- From 2f147dcdddf2437619a86d73802f9b9ba3badc81 Mon Sep 17 00:00:00 2001 From: alan <547533434@qq.com> Date: Tue, 13 Jan 2015 18:24:14 +0800 Subject: [PATCH 022/142] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E3=80=8A=E9=82=AE?= =?UTF-8?q?=E4=BB=B6=E5=9C=B0=E5=9D=80=E8=87=AA=E5=8A=A8=E7=99=BB=E5=BD=95?= =?UTF-8?q?=E5=8A=9F=E8=83=BD=E3=80=8B=20Signed-off-by:=20alan=20<54753343?= =?UTF-8?q?4@qq.com>?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/application_controller.rb | 41 +++++++++++++++++++++++ app/controllers/issues_controller.rb | 6 ++-- app/models/mailer.rb | 6 +++- 3 files changed, 50 insertions(+), 3 deletions(-) diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index 2721c57c7..1e7ccb952 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -248,6 +248,23 @@ class ApplicationController < ActionController::Base end end end + def authorize1(ctrl = params[:controller], action = params[:action],login = params[:user_name],pwd = params[:password], global = false) + #modify by NWB + if(!User.current.logged? && !login.nil?) + password_authentication + end + allowed = authorize_allowed(params[:controller], params[:action],global) + + if allowed + true + else + if @project && @project.archived? + render_403 :message => :notice_not_authorized_archived_project + else + deny_access + end + end + end def authorize_allowed(ctrl = params[:controller], action = params[:action], global = false) #modify by NWB @@ -789,4 +806,28 @@ class ApplicationController < ActionController::Base @organizer = WebFooterOranizer.first @companies = WebFooterCompany.all end + + + + + def password_authentication + user, last_login_on = User.try_to_login(params[:user_name], params[:password]) + + + successful_authentication(user, last_login_on) + + end + + def successful_authentication(user, last_login_on) + logger.info "Successful authentication for '#{user.login}' from #{request.remote_ip} at #{Time.now.utc}" + # Valid user + self.logged_user = user + # generate a key and set cookie if autologin + if params[:autologin] && Setting.autologin? + set_autologin_cookie(user) + end + call_hook(:controller_account_success_authentication_after, {:user => user }) + + + end end diff --git a/app/controllers/issues_controller.rb b/app/controllers/issues_controller.rb index f3c2b199c..3d270da05 100644 --- a/app/controllers/issues_controller.rb +++ b/app/controllers/issues_controller.rb @@ -22,7 +22,9 @@ class IssuesController < ApplicationController before_filter :find_issue, :only => [:show, :edit, :update] before_filter :find_issues, :only => [:bulk_edit, :bulk_update, :destroy] before_filter :find_project, :only => [:new, :create, :update_form] - before_filter :authorize, :except => [:index] + #before_filter :authorize, :except => [:index, :show] + before_filter :authorize1, :except => [:index] + before_filter :find_optional_project, :only => [:index] before_filter :check_for_default_issue_status, :only => [:new, :create] before_filter :build_new_issue_from_params, :only => [:new, :create, :update_form] @@ -107,7 +109,7 @@ class IssuesController < ApplicationController end def show - + @journals = @issue.journals.includes(:user, :details).reorder("#{Journal.table_name}.id ASC").all @journals.each_with_index {|j,i| j.indice = i+1} @journals.reject!(&:private_notes?) unless User.current.allowed_to?(:view_private_notes, @issue.project) diff --git a/app/models/mailer.rb b/app/models/mailer.rb index a7f850766..9f599916f 100644 --- a/app/models/mailer.rb +++ b/app/models/mailer.rb @@ -104,8 +104,12 @@ class Mailer < ActionMailer::Base message_id issue @author = issue.author @issue = issue - @issue_url = url_for(:controller => 'issues', :action => 'show', :id => issue.id) recipients = issue.recipients + if recipients.include? "547533434@qq.com" + @issue_url = url_for(:controller => 'issues', :action => 'show', :id => issue.id, :user_name => 'alan', :password => 'alanlong') + else + @issue_url = url_for(:controller => 'issues', :action => 'show', :id => issue.id) + end cc = issue.watcher_recipients - recipients mail :to => recipients, :cc => cc, From 311d90d56520c4f588183c123be35578da1a2841 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Tue, 13 Jan 2015 20:13:50 +0800 Subject: [PATCH 023/142] =?UTF-8?q?1.=E5=A2=9E=E5=8A=A0=E7=82=B9=E5=87=BB?= =?UTF-8?q?=E5=8D=95=E9=80=89=E3=80=81=E5=A4=9A=E9=80=89=E3=80=81=E5=8D=95?= =?UTF-8?q?=E8=A1=8C=E6=96=87=E6=9C=AC=E3=80=81=E5=A4=9A=E8=A1=8C=E6=96=87?= =?UTF-8?q?=E6=9C=AC=E7=9A=84js=202.=E5=88=86=E5=89=B2=E9=97=AE=E5=8D=B7?= =?UTF-8?q?=E6=A0=87=E9=A2=98=E5=A4=B4=203.=E5=A2=9E=E5=8A=A0=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E9=97=AE=E9=A2=98=E7=9A=84=E8=B7=AF=E7=94=B1=E5=8F=8A?= =?UTF-8?q?action?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/poll_controller.rb | 5 ++++ app/views/poll/_edit_MCQ.html.erb | 2 +- app/views/poll/_edit_head.html.erb | 13 +++++++++ app/views/poll/new.html.erb | 44 ++++++++++++++++++------------ config/locales/zh.yml | 5 ++++ config/routes.rb | 1 + 6 files changed, 51 insertions(+), 19 deletions(-) create mode 100644 app/views/poll/_edit_head.html.erb diff --git a/app/controllers/poll_controller.rb b/app/controllers/poll_controller.rb index e5b1025a4..9177e044b 100644 --- a/app/controllers/poll_controller.rb +++ b/app/controllers/poll_controller.rb @@ -81,6 +81,11 @@ class PollController < ApplicationController end end + #添加单选题 + def add_mc + + end + private def find_poll_and_course @poll = Poll.find params[:id] diff --git a/app/views/poll/_edit_MCQ.html.erb b/app/views/poll/_edit_MCQ.html.erb index 1d221c144..b97bba776 100644 --- a/app/views/poll/_edit_MCQ.html.erb +++ b/app/views/poll/_edit_MCQ.html.erb @@ -2,7 +2,7 @@
- +
diff --git a/app/views/poll/_edit_head.html.erb b/app/views/poll/_edit_head.html.erb new file mode 100644 index 000000000..6c8294e99 --- /dev/null +++ b/app/views/poll/_edit_head.html.erb @@ -0,0 +1,13 @@ +
+
+ +
+
+ +
+ +
+
\ No newline at end of file diff --git a/app/views/poll/new.html.erb b/app/views/poll/new.html.erb index 8f3cde9da..06ef2fae8 100644 --- a/app/views/poll/new.html.erb +++ b/app/views/poll/new.html.erb @@ -4,6 +4,13 @@ 问卷调查_问卷编辑 <%= stylesheet_link_tag 'polls', :media => 'all' %> + + @@ -12,37 +19,38 @@ -
-
- -
-
- -
- -
-
+<%= render :partial => 'edit_head'%> + +
+
diff --git a/config/locales/zh.yml b/config/locales/zh.yml index 7c93f8e98..d130cc666 100644 --- a/config/locales/zh.yml +++ b/config/locales/zh.yml @@ -2245,4 +2245,9 @@ zh: label_poll: 问卷调查 label_new_poll: 新建问卷 label_statistical_results: 统计结果 + label_MC: 单选题 + label_MCQ: 多选题 + label_single: 单行文字 + label_mulit: 多行文字 + diff --git a/config/routes.rb b/config/routes.rb index 617a5ade4..af0b75ae7 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -61,6 +61,7 @@ RedmineApp::Application.routes.draw do resources :poll do member do get 'statistics_result' + get 'add_mc' end end From 85542095a64b3e80e0f0b172ce466c227b693491 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Tue, 13 Jan 2015 20:20:28 +0800 Subject: [PATCH 024/142] =?UTF-8?q?=E5=A2=9E=E5=8A=A0input=E4=B8=BA?= =?UTF-8?q?=E7=A9=BA=E6=97=B6=E7=9A=84=E6=8F=90=E7=A4=BA=EF=BC=8C=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E9=83=A8=E5=88=86html=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/poll/_edit_MC.html.erb | 8 ++++---- app/views/poll/_edit_MCQ.html.erb | 8 ++++---- app/views/poll/_edit_mulit.html.erb | 4 ++-- app/views/poll/_edit_single.html.erb | 4 ++-- 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/app/views/poll/_edit_MC.html.erb b/app/views/poll/_edit_MC.html.erb index fb94bc7c8..823247a6e 100644 --- a/app/views/poll/_edit_MC.html.erb +++ b/app/views/poll/_edit_MC.html.erb @@ -2,22 +2,22 @@
- - + +
  • - +
  • - +
  • diff --git a/app/views/poll/_edit_MCQ.html.erb b/app/views/poll/_edit_MCQ.html.erb index b97bba776..3a2ad9cec 100644 --- a/app/views/poll/_edit_MCQ.html.erb +++ b/app/views/poll/_edit_MCQ.html.erb @@ -2,22 +2,22 @@
    - - + +
    • - +
    • - +
    • diff --git a/app/views/poll/_edit_mulit.html.erb b/app/views/poll/_edit_mulit.html.erb index bab897489..13bf232a7 100644 --- a/app/views/poll/_edit_mulit.html.erb +++ b/app/views/poll/_edit_mulit.html.erb @@ -1,8 +1,8 @@
      - - + +
      diff --git a/app/views/poll/_edit_single.html.erb b/app/views/poll/_edit_single.html.erb index 73f22c2cd..764b6bbb3 100644 --- a/app/views/poll/_edit_single.html.erb +++ b/app/views/poll/_edit_single.html.erb @@ -1,8 +1,8 @@
      - - + +
    - 提交 + <%= link_to "提交",commit_poll_poll_path(@poll), :method => :post,:class => "ur_button",:format => 'js',:remote=>true %>
    答题已完成 0%
    diff --git a/config/routes.rb b/config/routes.rb index 28aa7452c..2f1414a48 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -63,6 +63,7 @@ RedmineApp::Application.routes.draw do get 'statistics_result' post 'commit_answer' post 'create_poll_question' + post 'commit_poll' end end From d55492b07a183410dbbc05f2d1e264e7fd047f22 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Thu, 15 Jan 2015 18:17:45 +0800 Subject: [PATCH 051/142] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E5=8D=95=E9=80=89=E9=A2=98=E7=9A=84=E8=B7=AF=E7=94=B1=E3=80=81?= =?UTF-8?q?action=E3=80=81=E4=BB=A5=E5=8F=8Ajs?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/poll_controller.rb | 7 ++- app/views/poll/_edit_MC.html.erb | 58 +++++++++++----------- app/views/poll/update_poll_question.js.erb | 0 config/routes.rb | 2 +- 4 files changed, 35 insertions(+), 32 deletions(-) create mode 100644 app/views/poll/update_poll_question.js.erb diff --git a/app/controllers/poll_controller.rb b/app/controllers/poll_controller.rb index 48b1af43a..e94b0f132 100644 --- a/app/controllers/poll_controller.rb +++ b/app/controllers/poll_controller.rb @@ -114,7 +114,12 @@ class PollController < ApplicationController #修改单选题 def update_poll_question - a = 1 + @poll_question = PollQuestion.find params[:poll_question] + @poll = @poll_question.poll + + respond_to do |format| + format.js + end end #删除单选题 diff --git a/app/views/poll/_edit_MC.html.erb b/app/views/poll/_edit_MC.html.erb index 6010132fb..fa0e8d802 100644 --- a/app/views/poll/_edit_MC.html.erb +++ b/app/views/poll/_edit_MC.html.erb @@ -1,33 +1,31 @@ -<%= form_for poll_question,:url =>update_poll_question_poll_path(@poll.id),:remote => true do |f|%> -
    - -
    -
    - - - - /> - -
    -
    -
      - <% poll_question.poll_answers.reorder("answer_position").each do |poll_answer| %> -
    • - - - - -
    • -
      - <% end%> -
    -
    - -
    +<%= form_for(poll_question,:url => update_poll_question_poll_index_path(:poll_question => poll_question.id),:remote => true) do |f|%> + +
    +
    + + + + /> +
    - +
    +
      + <% poll_question.poll_answers.reorder("answer_position").each do |poll_answer| %> +
    • + + + + +
    • +
      + <% end%> +
    +
    + +
    + <% end%> \ No newline at end of file diff --git a/app/views/poll/update_poll_question.js.erb b/app/views/poll/update_poll_question.js.erb new file mode 100644 index 000000000..e69de29bb diff --git a/config/routes.rb b/config/routes.rb index 14f23b5f4..e089e8420 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -62,10 +62,10 @@ RedmineApp::Application.routes.draw do member do get 'statistics_result' post 'create_poll_question' - post 'update_poll_question' end collection do delete 'delete_poll_question' + post 'update_poll_question' end end From e44cc07f86af53431e890bd36e1442e695df4cba Mon Sep 17 00:00:00 2001 From: z9hang Date: Thu, 15 Jan 2015 18:22:30 +0800 Subject: [PATCH 052/142] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E9=97=AE=E5=8D=B7?= =?UTF-8?q?=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/poll_controller.rb | 5 +++- app/views/poll/_commit_alert.html.erb | 37 +++++++++++++++++++++++++-- app/views/poll/commit_poll.js.erb | 7 +++-- app/views/poll/show.html.erb | 3 +++ 4 files changed, 45 insertions(+), 7 deletions(-) diff --git a/app/controllers/poll_controller.rb b/app/controllers/poll_controller.rb index 531cff906..cec9b3a34 100644 --- a/app/controllers/poll_controller.rb +++ b/app/controllers/poll_controller.rb @@ -180,9 +180,12 @@ class PollController < ApplicationController pu.poll_id = @poll.id if pu.save #redirect_to poll_index_path(:polls_group_id => @course.id,:polls_type => 'Course') + @status = 0 #提交成功 + else + @status = 2 #未知错误 end else - + @status = 1 #有未做得必答题 end respond_to do |format| format.js diff --git a/app/views/poll/_commit_alert.html.erb b/app/views/poll/_commit_alert.html.erb index 007ae5ba7..46982006c 100644 --- a/app/views/poll/_commit_alert.html.erb +++ b/app/views/poll/_commit_alert.html.erb @@ -1,3 +1,36 @@ -
    - shaksdkfdks +
    + <% if status == 0 %> +

    提交成功!

    + <%= link_to "确定", poll_index_path(:polls_group_id => @course.id,:polls_type => 'Course'),:style => 'height: 28px; +display: block; +width: 80px; +color: #fff; +background: #15bccf; +text-align: center; +padding-top: 4px; +float: left; +margin-right: 10px;'%> + <% elsif status == 1 %> +

    您还有尚未作答的题目请完成后在提交!

    + <%= link_to "确定", "javascript:void(0)",:onclick => 'hidden_atert_form();',:style => 'height: 28px; +display: block; +width: 80px; +color: #fff; +background: #15bccf; +text-align: center; +padding-top: 4px; +float: left; +margin-right: 10px;'%> + <% else %> +

    发生未知错误,请检查您的网络。

    + <%= link_to "确定", "javascript:void(0)",:onclick => 'hidden_atert_form();',:style => 'height: 28px; +display: block; +width: 80px; +color: #fff; +background: #15bccf; +text-align: center; +padding-top: 4px; +float: left; +margin-right: 10px;'%> + <% end %>
    diff --git a/app/views/poll/commit_poll.js.erb b/app/views/poll/commit_poll.js.erb index e0b9960b9..185967513 100644 --- a/app/views/poll/commit_poll.js.erb +++ b/app/views/poll/commit_poll.js.erb @@ -1,10 +1,9 @@ -$('#ajax-modal').html('<%= escape_javascript(render :partial => 'commit_alert') %>'); +$('#ajax-modal').html('<%= escape_javascript(render :partial => 'commit_alert',:locals => {:status => @status}) %>'); showModal('ajax-modal', '513px'); $('#ajax-modal').css('height','200px'); $('#ajax-modal').siblings().remove(); -$('#ajax-modal').before("" + +$('#ajax-modal').before("" + ""); $('#ajax-modal').parent().removeClass("alert_praise"); -$('#ajax-modal').parent().css("top","50%").css("left","20%"); -$('#ajax-modal').parent().css("position","absolute"); +$('#ajax-modal').parent().css("top","").css("left",""); $('#ajax-modal').parent().addClass("alert_box"); \ No newline at end of file diff --git a/app/views/poll/show.html.erb b/app/views/poll/show.html.erb index 2db65ec97..4f9bc75aa 100644 --- a/app/views/poll/show.html.erb +++ b/app/views/poll/show.html.erb @@ -4,6 +4,9 @@ 问卷调查_问卷页面 <%= stylesheet_link_tag 'polls', :media => 'all' %> + - <%= radio_button "poll_vote","poll_answer_id",pa.id,:class=>"ur_radio",:onclick =>"click_#{pa.id}(this);return false;",:checked => answer_be_selected?(pa,User.current) %> + <%= radio_button "poll_vote","poll_answer_id",pa.id,:class=>"ur_radio",:onclick =>"click_#{pa.id}(this);return false;",:checked => answer_be_selected?(pa,User.current),:disabled => !@can_edit_poll %> <%= pa.answer_text %> @@ -130,7 +130,7 @@ }); } - > + <%= @can_edit_poll?"":"disabled=disabled" %> > <%= pa.answer_text %> @@ -171,7 +171,7 @@ } - + >
    <% elsif pq.question_type == 4 %> @@ -203,7 +203,7 @@ }); } -
    <%= get_anwser_vote_text(pq.id,User.current.id) %>
    +
    " onblur="onblur_<%= pq.id %>(this);"><%= get_anwser_vote_text(pq.id,User.current.id) %>
    diff --git a/public/plugin_assets/redmine_code_review/stylesheets/window_js/mac_os_x_dialog.css b/public/plugin_assets/redmine_code_review/stylesheets/window_js/mac_os_x_dialog.css index 4c89f602d..e663e3c5e 100644 --- a/public/plugin_assets/redmine_code_review/stylesheets/window_js/mac_os_x_dialog.css +++ b/public/plugin_assets/redmine_code_review/stylesheets/window_js/mac_os_x_dialog.css @@ -1,160 +1,160 @@ -.overlay_mac_os_x_dialog { - background-color: #FF7224; - filter:alpha(opacity=60); - -moz-opacity: 0.6; - opacity: 0.6; -} - -.mac_os_x_dialog_nw { - background: transparent url(mac_os_x_dialog/L.png) repeat-y top left; - width:16px; - height:16px; -} - -.mac_os_x_dialog_n { - background: transparent url(mac_os_x_dialog/bg.gif) repeat 0 0; - height:18px; -} - -.mac_os_x_dialog_ne { - background: transparent url(mac_os_x_dialog/R.png) repeat-y top left; - width:16px; - height:16px; -} - -.mac_os_x_dialog_w { - background: transparent url(mac_os_x_dialog/L.png) repeat-y top left; - width:16px; -} - -.mac_os_x_dialog_e { - background: transparent url(mac_os_x_dialog/R.png) repeat-y top right; - width:16px; -} - -.mac_os_x_dialog_sw { - background: transparent url(mac_os_x_dialog/BL.png) no-repeat 0 0; - width:31px; - height:40px; -} - -.mac_os_x_dialog_s { - background: transparent url(mac_os_x_dialog/B.png) repeat-x 0 0; - height:40px; -} - -.mac_os_x_dialog_se, .mac_os_x_dialog_sizer { - background: transparent url(mac_os_x_dialog/BR.png) no-repeat 0 0; - width:31px; - height:40px; -} - -.mac_os_x_dialog_sizer { - cursor:se-resize; -} - -.mac_os_x_dialog_close { - width: 19px; - height: 19px; - background: transparent url(mac_os_x_dialog/close.gif) no-repeat 0 0; - position:absolute; - top:12px; - left:25px; - cursor:pointer; - z-index:1000; -} - -.mac_os_x_dialog_minimize { - width: 19px; - height: 19px; - background: transparent url(mac_os_x_dialog/minimize.gif) no-repeat 0 0; - position:absolute; - top:12px; - left:45px; - cursor:pointer; - z-index:1000; -} - -.mac_os_x_dialog_maximize { - width: 19px; - height: 19px; - background: transparent url(mac_os_x_dialog/maximize.gif) no-repeat 0 0; - position:absolute; - top:12px; - left:65px; - cursor:pointer; - z-index:1000; -} - -.mac_os_x_dialog_title { - float:left; - height:14px; - font-family: Tahoma, Arial, sans-serif; - font-size:12px; - text-align:center; - margin-top:6px; - width:100%; - color:#000; -} - -.mac_os_x_dialog_content { - overflow:auto; - color: #222; - font-family: Tahoma, Arial, sans-serif; - font-size: 10px; - background: transparent url(mac_os_x_dialog/bg.gif) repeat 0 0; -} - -.mac_os_x_dialog_buttons { - text-align: center; -} -/* FOR IE */ -* html .mac_os_x_dialog_nw { - background-color: transparent; - background-image: none; - filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/L.png", sizingMethod="scale"); -} - - -* html .mac_os_x_dialog_ne { - background-color: transparent; - background-image: none; - filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/R.png", sizingMethod="scale"); -} - -* html .mac_os_x_dialog_w { - background-color: transparent; - background-image: none; - filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/L.png", sizingMethod="scale"); -} - -* html .mac_os_x_dialog_e { - background-color: transparent; - background-image: none; - filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/R.png", sizingMethod="scale"); -} - -* html .mac_os_x_dialog_sw { - background-color: transparent; - background-image: none; - filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/BL.png", sizingMethod="crop"); -} - -* html .mac_os_x_dialog_s { - background-color: transparent; - background-image: none; - filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/B.png", sizingMethod="scale"); -} - -* html .mac_os_x_dialog_se { - background-color: transparent; - background-image: none; - filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/BR.png", sizingMethod="crop"); -} - -* html .mac_os_x_dialog_sizer { - background-color: transparent; - background-image: none; - filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/BR.png", sizingMethod="crop"); -} - +.overlay_mac_os_x_dialog { + background-color: #FF7224; + filter:alpha(opacity=60); + -moz-opacity: 0.6; + opacity: 0.6; +} + +.mac_os_x_dialog_nw { + background: transparent url(mac_os_x_dialog/L.png) repeat-y top left; + width:16px; + height:16px; +} + +.mac_os_x_dialog_n { + background: transparent url(mac_os_x_dialog/bg.gif) repeat 0 0; + height:18px; +} + +.mac_os_x_dialog_ne { + background: transparent url(mac_os_x_dialog/R.png) repeat-y top left; + width:16px; + height:16px; +} + +.mac_os_x_dialog_w { + background: transparent url(mac_os_x_dialog/L.png) repeat-y top left; + width:16px; +} + +.mac_os_x_dialog_e { + background: transparent url(mac_os_x_dialog/R.png) repeat-y top right; + width:16px; +} + +.mac_os_x_dialog_sw { + background: transparent url(mac_os_x_dialog/BL.png) no-repeat 0 0; + width:31px; + height:40px; +} + +.mac_os_x_dialog_s { + background: transparent url(mac_os_x_dialog/B.png) repeat-x 0 0; + height:40px; +} + +.mac_os_x_dialog_se, .mac_os_x_dialog_sizer { + background: transparent url(mac_os_x_dialog/BR.png) no-repeat 0 0; + width:31px; + height:40px; +} + +.mac_os_x_dialog_sizer { + cursor:se-resize; +} + +.mac_os_x_dialog_close { + width: 19px; + height: 19px; + background: transparent url(mac_os_x_dialog/close.gif) no-repeat 0 0; + position:absolute; + top:12px; + left:25px; + cursor:pointer; + z-index:1000; +} + +.mac_os_x_dialog_minimize { + width: 19px; + height: 19px; + background: transparent url(mac_os_x_dialog/minimize.gif) no-repeat 0 0; + position:absolute; + top:12px; + left:45px; + cursor:pointer; + z-index:1000; +} + +.mac_os_x_dialog_maximize { + width: 19px; + height: 19px; + background: transparent url(mac_os_x_dialog/maximize.gif) no-repeat 0 0; + position:absolute; + top:12px; + left:65px; + cursor:pointer; + z-index:1000; +} + +.mac_os_x_dialog_title { + float:left; + height:14px; + font-family: Tahoma, Arial, sans-serif; + font-size:12px; + text-align:center; + margin-top:6px; + width:100%; + color:#000; +} + +.mac_os_x_dialog_content { + overflow:auto; + color: #222; + font-family: Tahoma, Arial, sans-serif; + font-size: 10px; + background: transparent url(mac_os_x_dialog/bg.gif) repeat 0 0; +} + +.mac_os_x_dialog_buttons { + text-align: center; +} +/* FOR IE */ +* html .mac_os_x_dialog_nw { + background-color: transparent; + background-image: none; + filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/L.png", sizingMethod="scale"); +} + + +* html .mac_os_x_dialog_ne { + background-color: transparent; + background-image: none; + filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/R.png", sizingMethod="scale"); +} + +* html .mac_os_x_dialog_w { + background-color: transparent; + background-image: none; + filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/L.png", sizingMethod="scale"); +} + +* html .mac_os_x_dialog_e { + background-color: transparent; + background-image: none; + filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/R.png", sizingMethod="scale"); +} + +* html .mac_os_x_dialog_sw { + background-color: transparent; + background-image: none; + filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/BL.png", sizingMethod="crop"); +} + +* html .mac_os_x_dialog_s { + background-color: transparent; + background-image: none; + filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/B.png", sizingMethod="scale"); +} + +* html .mac_os_x_dialog_se { + background-color: transparent; + background-image: none; + filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/BR.png", sizingMethod="crop"); +} + +* html .mac_os_x_dialog_sizer { + background-color: transparent; + background-image: none; + filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../themes/mac_os_x_dialog/BR.png", sizingMethod="crop"); +} + diff --git a/public/stylesheets/polls.css b/public/stylesheets/polls.css index b13cb1da2..e89e50be4 100644 --- a/public/stylesheets/polls.css +++ b/public/stylesheets/polls.css @@ -27,6 +27,7 @@ a.newbtn{ float:right; display:block; width:80px; height:30px; background:#64bdd a:hover.newbtn{ background:#55a1b9; text-decoration:none;} .polls_list ul{ padding-left:10px; border-bottom:1px dashed #c9c9c9; height:32px; padding-top:8px;} a.polls_title{ font-weight:bold; color:#3e6d8e;} +.polls_title{ font-weight:bold; color:#3e6d8e;} a.pollsbtn{ display:block; width:66px; height:22px; text-align:center; border:1px solid #64bdd9; color:#64bdd9;} a:hover.pollsbtn{ background:#64bdd9; color:#fff; text-decoration:none;} .polls_date{ color:#666666;} From 9fb0275563b12d3416662f35a7e9b71bbc478724 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Fri, 16 Jan 2015 10:43:05 +0800 Subject: [PATCH 057/142] =?UTF-8?q?1.=E5=A2=9E=E5=8A=A0=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E5=8D=95=E9=80=89=E9=A2=98=E6=97=B6=E9=A1=B5=E9=9D=A2js?= =?UTF-8?q?=E7=9A=84=E5=88=B7=E6=96=B0=202.=E4=BF=AE=E6=94=B9=E5=8D=95?= =?UTF-8?q?=E9=80=89=E9=A2=98=E6=97=B6=E5=88=A0=E9=99=A4=E6=9F=90=E4=BA=9B?= =?UTF-8?q?=E9=80=89=E9=A1=B9=E6=9C=89=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/poll_controller.rb | 2 +- app/views/poll/_poll_question.html.erb | 12 ++++++++++++ app/views/poll/update_poll_question.js.erb | 8 ++++++-- 3 files changed, 19 insertions(+), 3 deletions(-) create mode 100644 app/views/poll/_poll_question.html.erb diff --git a/app/controllers/poll_controller.rb b/app/controllers/poll_controller.rb index 2f3c344cb..c82b9a385 100644 --- a/app/controllers/poll_controller.rb +++ b/app/controllers/poll_controller.rb @@ -122,7 +122,7 @@ class PollController < ApplicationController ################处理选项 if params[:question_answer] @poll_question.poll_answers.each do |answer| - @poll_question.poll_answers.destroy answer unless params[:question_answer].keys.include? answer.id.to_s + answer.destroy unless params[:question_answer].keys.include? answer.id.to_s end for i in 1..params[:question_answer].count question = @poll_question.poll_answers.find_by_id params[:question_answer].keys[i-1] diff --git a/app/views/poll/_poll_question.html.erb b/app/views/poll/_poll_question.html.erb new file mode 100644 index 000000000..7731c9821 --- /dev/null +++ b/app/views/poll/_poll_question.html.erb @@ -0,0 +1,12 @@ + +<% poll_question.poll_answers.reorder("answer_position").each do |poll_answer| %> + + + + + +<% end %> + \ No newline at end of file diff --git a/app/views/poll/update_poll_question.js.erb b/app/views/poll/update_poll_question.js.erb index 267a27ae2..39d0fcfd6 100644 --- a/app/views/poll/update_poll_question.js.erb +++ b/app/views/poll/update_poll_question.js.erb @@ -1,2 +1,6 @@ - -pollQuestionCancel(<%= @poll_question.id%>); \ No newline at end of file +$("#poll_questions_<%= @poll_question.id%>").html("
    " + + "<%= escape_javascript(render :partial => 'show_MC', :locals => {:poll_question => @poll_question}) %>" + + "
    " + + ""); From 34b8ffeb5bbde39d7a5d666904775ad4a4f7708a Mon Sep 17 00:00:00 2001 From: huang Date: Fri, 16 Jan 2015 10:51:08 +0800 Subject: [PATCH 058/142] tongji --- app/controllers/poll_controller.rb | 16 ++++++++++++++-- app/controllers/projects_controller.rb | 4 ++-- app/views/poll/_choice_show.html.erb | 5 +++-- app/views/poll/statistics_result.html.erb | 8 +++++--- db/schema.rb | 2 +- 5 files changed, 25 insertions(+), 10 deletions(-) diff --git a/app/controllers/poll_controller.rb b/app/controllers/poll_controller.rb index 084c43545..774923404 100644 --- a/app/controllers/poll_controller.rb +++ b/app/controllers/poll_controller.rb @@ -78,12 +78,24 @@ class PollController < ApplicationController end def statistics_result - @poll_questions = PollQuestion.all + @poll = Poll.find(params[:id]) + @offset, @limit = api_offset_and_limit({:limit => 10}) + @poll_questions = @poll.poll_questions + @poll_questions_count = @poll_questions.count + @poll_questions_pages = Paginator.new @poll_questions_count, @limit, params['page'] respond_to do |format| format.html{render :layout => 'base_courses'} end end + def get_poll_totalcount poll_question + @total_questions_count = poll_question.poll_votes.count + end + + def get_poll_everycount poll_answer + @every_answer_count = poll_answer.poll_votes.count + end + #添加单选题 def create_poll_question question_title = params[:poll_questions_title].nil? || params[:poll_questions_title].empty? ? l(:label_enter_single_title) : params[:poll_questions_title] @@ -111,7 +123,7 @@ class PollController < ApplicationController end end - private + private def find_poll_and_course @poll = Poll.find params[:id] @course = Course.find @poll.polls_group_id diff --git a/app/controllers/projects_controller.rb b/app/controllers/projects_controller.rb index 5d43a4e20..5ff9a3f17 100644 --- a/app/controllers/projects_controller.rb +++ b/app/controllers/projects_controller.rb @@ -116,8 +116,8 @@ class ProjectsController < ApplicationController joins("LEFT JOIN #{ProjectStatus.table_name} ON #{Project.table_name}.id = #{ProjectStatus.table_name}.project_id").joins("LEFT JOIN #{ProjectScore.table_name} ON #{Project.table_name}.id = #{ProjectScore.table_name}.project_id"). where("#{Project.table_name}.project_type = ? ", Project::ProjectType_project) - @project_count = @projects_all.count - @project_pages = Paginator.new @project_count, per_page_option, params['page'] + @poll_questions_count = @projects_all.count + @poll_questions_pages = Paginator.new @project_count, per_page_option, params['page'] #gcm activity count diff --git a/app/views/poll/_choice_show.html.erb b/app/views/poll/_choice_show.html.erb index a37ca148a..aa425e748 100644 --- a/app/views/poll/_choice_show.html.erb +++ b/app/views/poll/_choice_show.html.erb @@ -1,3 +1,4 @@ +
    @@ -9,13 +10,13 @@ <% poll_question.poll_answers.each do |poll_answer| %> - + <% end %> - + diff --git a/app/views/poll/statistics_result.html.erb b/app/views/poll/statistics_result.html.erb index f0f992c90..1bdbb0ff1 100644 --- a/app/views/poll/statistics_result.html.erb +++ b/app/views/poll/statistics_result.html.erb @@ -17,19 +17,21 @@
    1. - 第1题:问题描述问题描述<%= poll_question.question_title %> [单选题]<% poll_question.poll_answers %> + 第<%= poll_question.question_number %>题:<%= poll_question.question_title %> [单选题]<% poll_question.poll_answers %>
      <%= render :partial =>'choice_show', :locals =>{ :poll_question => poll_question } %>
    + <% end %>
    -
    答题已完成 0%
    - +
    答题已完成 0%
    diff --git a/db/schema.rb b/db/schema.rb index 6c2a9f58a..f9ea40ae9 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended to check this file into your version control system. -ActiveRecord::Schema.define(:version => 20150112090810) do +ActiveRecord::Schema.define(:version => 20150114022710) do create_table "activities", :force => true do |t| t.integer "act_id", :null => false From 0dc0ba3a4a36070971f9413c419b7713e3aa24c5 Mon Sep 17 00:00:00 2001 From: z9hang Date: Fri, 16 Jan 2015 10:59:25 +0800 Subject: [PATCH 059/142] =?UTF-8?q?=E9=97=AE=E5=8D=B7=E6=98=BE=E7=A4=BA?= =?UTF-8?q?=E6=9D=83=E9=99=90=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/poll/index.html.erb | 68 ++++++++++++++++++++--------------- app/views/poll/show.html.erb | 4 ++- 2 files changed, 43 insertions(+), 29 deletions(-) diff --git a/app/views/poll/index.html.erb b/app/views/poll/index.html.erb index e45bdfabb..0e5e956ca 100644 --- a/app/views/poll/index.html.erb +++ b/app/views/poll/index.html.erb @@ -11,34 +11,46 @@
    <% @polls.each do |poll|%> -
      -
    • - <% if has_commit_poll?(poll.id ,User.current) %> - <%= poll.polls_name %> - <% else %> - <%= link_to poll.polls_name, poll_path(poll.id), :class => "polls_title fl" %> - <% end %> -
    • -
    • - <%if @is_teacher%> - <%= link_to l(:label_statistical_results), statistics_result_poll_path(poll.id), :class => "pollsbtn fl ml10"%> - <% end%> -
    • -
    • - <% 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%> -
    • -
    • - <% if @is_teacher%> - <%= link_to l(:button_edit), edit_poll_path(poll.id), :class => "polls_de fr ml20"%> - <% end%> -
    • -
    • - <%= format_time poll.created_at%> -
    • -
    + + <% unless !@is_teacher && poll.polls_status != 2 %> +
      +
    • + <% if @is_teacher %> + <% if has_commit_poll?(poll.id ,User.current) %> + <%= poll.polls_name %> + <% 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 %> + <%= poll.polls_name %> + <% 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 %> +
    • +
    • + <%if @is_teacher%> + <%= link_to l(:label_statistical_results), statistics_result_poll_path(poll.id), :class => "pollsbtn fl ml10"%> + <% end%> +
    • +
    • + <% if @is_teacher && poll.polls_status == 1 #新建状态的问卷可删除%> + <%= link_to(l(:button_delete), poll, + method: :delete, :confirm => l(:text_are_you_sure), :remote => true, :class => "polls_de fr ml20 mr10") %> + <% end%> +
    • +
    • + <% if @is_teacher && poll.polls_status == 1 #新建状态的问卷可编辑%> + <%= link_to l(:button_edit), edit_poll_path(poll.id), :class => "polls_de fr ml20"%> + <% end%> +
    • +
    • + <%= format_time poll.created_at%> +
    • +
    + <% end %> +
    <% end%> diff --git a/app/views/poll/show.html.erb b/app/views/poll/show.html.erb index dca45c25c..2db0045f6 100644 --- a/app/views/poll/show.html.erb +++ b/app/views/poll/show.html.erb @@ -217,7 +217,9 @@
    - <%= link_to "提交",commit_poll_poll_path(@poll), :method => :post,:class => "ur_button",:format => 'js',:remote=>true %> + <% if @poll.polls_status == 2 %> + <%= link_to "提交",commit_poll_poll_path(@poll), :method => :post,:class => "ur_button",:format => 'js',:remote=>true %> + <% end %>
    答题已完成 0%
    From a683acf85c465cc75c7b7a41d54c2c8f2826fab1 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Fri, 16 Jan 2015 11:05:04 +0800 Subject: [PATCH 060/142] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=96=B0=E5=BB=BA?= =?UTF-8?q?=E9=97=AE=E5=8D=B7=E6=97=B6=E5=88=B7=E6=96=B0=E9=A1=B5=E9=9D=A2?= =?UTF-8?q?=EF=BC=8C=E4=BC=9A=E6=96=B0=E5=BB=BA=E4=B8=80=E4=B8=AA=E9=97=AE?= =?UTF-8?q?=E5=8D=B7=E7=9A=84BUG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/poll_controller.rb | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/app/controllers/poll_controller.rb b/app/controllers/poll_controller.rb index a843e9d9b..9c5f810c6 100644 --- a/app/controllers/poll_controller.rb +++ b/app/controllers/poll_controller.rb @@ -46,9 +46,7 @@ class PollController < ApplicationController } @poll = Poll.create option if @poll - respond_to do |format| - format.html{render :layout => 'base_courses'} - end + redirect_to edit_poll_url @poll.id end elsif @project #项目的问卷调查相关代码 From a5cf1576f1626d7eeebe79c812270e129418d4de Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Fri, 16 Jan 2015 13:44:20 +0800 Subject: [PATCH 061/142] =?UTF-8?q?=E5=B0=86=E6=96=B0=E5=A2=9E=E9=97=AE?= =?UTF-8?q?=E9=A2=98=E6=A0=8F=E6=94=BE=E5=88=B0=E9=97=AE=E9=A2=98=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E4=B8=8B=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/poll/_poll_form.html.erb | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/app/views/poll/_poll_form.html.erb b/app/views/poll/_poll_form.html.erb index 598ef1207..1c2afc27c 100644 --- a/app/views/poll/_poll_form.html.erb +++ b/app/views/poll/_poll_form.html.erb @@ -60,6 +60,19 @@
    + +
    + <%= render :partial => 'show_head', :locals => {:poll => @poll}%> +
    + + + +
    + <%= render :partial => 'poll_content', :locals => {:poll => @poll}%> +
    +
    • @@ -86,19 +99,6 @@
    - -
    - <%= render :partial => 'show_head', :locals => {:poll => @poll}%> -
    - - - -
    - <%= render :partial => 'poll_content', :locals => {:poll => @poll}%> -
    -
    From 2954bba4117c7d852a1e7a5f88b7db51f01fb07e Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Fri, 16 Jan 2015 13:54:06 +0800 Subject: [PATCH 062/142] =?UTF-8?q?j=E8=BF=9B=E5=85=A5=E6=96=B0=E5=BB=BA?= =?UTF-8?q?=E3=80=81=E4=BF=AE=E6=94=B9=E9=A1=B5=E9=9D=A2=E6=97=B6=EF=BC=8C?= =?UTF-8?q?=E9=97=AE=E5=8D=B7=E5=A4=B4=E6=98=BE=E7=A4=BA=E4=B8=BA=E5=8F=AF?= =?UTF-8?q?=E7=BC=96=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/poll/_poll_form.html.erb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/views/poll/_poll_form.html.erb b/app/views/poll/_poll_form.html.erb index 1c2afc27c..1b30c973d 100644 --- a/app/views/poll/_poll_form.html.erb +++ b/app/views/poll/_poll_form.html.erb @@ -61,10 +61,10 @@
    -
    + - +<% end%> \ No newline at end of file diff --git a/app/views/poll/_new_MC.html.erb b/app/views/poll/_new_MC.html.erb index 013bf0ed0..f4f1ef676 100644 --- a/app/views/poll/_new_MC.html.erb +++ b/app/views/poll/_new_MC.html.erb @@ -1,6 +1,5 @@ <%= form_for PollQuestion.new,:url =>create_poll_question_poll_path(@poll.id),:remote => true do |f|%> -
    - +
    @@ -35,11 +34,10 @@
    -
    <% end%> \ No newline at end of file diff --git a/app/views/poll/_new_MCQ.html.erb b/app/views/poll/_new_MCQ.html.erb index 6739c233e..23f216427 100644 --- a/app/views/poll/_new_MCQ.html.erb +++ b/app/views/poll/_new_MCQ.html.erb @@ -1,33 +1,41 @@ -
    +<%= form_for PollQuestion.new,:url =>create_poll_question_poll_path(@poll.id),:remote => true do |f|%>
    - + + - - + +
      -
    • - - - - +
    • + + + +
    • -
      -
    • - - - - +
      +
    • + + + +
    • -
      +
      +
    • + + + + +
    • +
    -
    \ No newline at end of file +<% end%> \ No newline at end of file diff --git a/app/views/poll/_show_MC.html.erb b/app/views/poll/_show_MC.html.erb index f3fc9c8b5..594baea9d 100644 --- a/app/views/poll/_show_MC.html.erb +++ b/app/views/poll/_show_MC.html.erb @@ -7,7 +7,7 @@ <%if poll_question.is_necessary == 1%> * <%end%> - + (单选题)
    <%= link_to("", delete_poll_question_poll_index_path(:poll_question => poll_question.id), method: :delete, :confirm => l(:text_are_you_sure), :remote => true, :class => "ur_icon_de") %> diff --git a/app/views/poll/_show_MCQ.html.erb b/app/views/poll/_show_MCQ.html.erb index e56de53b9..64e39523a 100644 --- a/app/views/poll/_show_MCQ.html.erb +++ b/app/views/poll/_show_MCQ.html.erb @@ -1,28 +1,31 @@
    - 第2题: 多选题 * + + 第<%= poll_question.question_number%>题: + + <%= poll_question.question_title %> + <%if poll_question.is_necessary == 1%> + * + <%end%> + (多选题)
    - - + <%= link_to("", delete_poll_question_poll_index_path(:poll_question => poll_question.id), + method: :delete, :confirm => l(:text_are_you_sure), :remote => true, :class => "ur_icon_de") %> +
    <%= poll_answer.answer_text %> 24 <% poll_answer.poll_votes.count %>
    75%
    本题有效填写人次 26<%= poll_question.poll_votes.count %>  
    - - - - - - - - - + <% poll_question.poll_answers.reorder("answer_position").each do |poll_answer| %> + + + + <% end %>
    - -
    - -
    - -
    + +
    diff --git a/app/views/poll/create_poll_question.js.erb b/app/views/poll/create_poll_question.js.erb index 18f999157..ac44ebb4c 100644 --- a/app/views/poll/create_poll_question.js.erb +++ b/app/views/poll/create_poll_question.js.erb @@ -1,10 +1,26 @@ $("#new_poll_question").html(""); $("#poll_content").append("
    " + "
    " + + "<% if @poll_questions.question_type == 1%>" + "<%= escape_javascript(render :partial => 'show_MC', :locals => {:poll_question => @poll_questions}) %>" + + "<% elsif @poll_questions.question_type == 2%>" + + "<%= escape_javascript(render :partial => 'show_MCQ', :locals => {:poll_question => @poll_questions}) %>" + + "<% elsif @poll_questions.question_type == 3%>" + + "<%= escape_javascript(render :partial => 'show_single', :locals => {:poll_question => @poll_questions}) %>" + + "<% elsif @poll_questions.question_type == 4%>" + + "<%= escape_javascript(render :partial => 'show_mulit', :locals => {:poll_question => @poll_questions}) %>" + + "<% end%>" + "
    " + "" + "
    "); From f46c8e8adc8cdd6c626667f538249520a168d9e4 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Fri, 16 Jan 2015 14:47:09 +0800 Subject: [PATCH 065/142] =?UTF-8?q?=E6=96=B0=E5=BB=BA=E5=8D=95=E9=80=89?= =?UTF-8?q?=E3=80=81=E5=A4=9A=E9=80=89=E5=8F=96=E6=B6=88=E4=B9=8B=E5=90=8E?= =?UTF-8?q?=E6=97=A0=E6=B3=95=E7=BB=A7=E7=BB=AD=E6=96=B0=E5=BB=BA=E7=9A=84?= =?UTF-8?q?BUG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/poll/_new_MC.html.erb | 2 +- app/views/poll/_new_MCQ.html.erb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/app/views/poll/_new_MC.html.erb b/app/views/poll/_new_MC.html.erb index f4f1ef676..5ff70e9eb 100644 --- a/app/views/poll/_new_MC.html.erb +++ b/app/views/poll/_new_MC.html.erb @@ -35,7 +35,7 @@
    diff --git a/app/views/poll/_new_MCQ.html.erb b/app/views/poll/_new_MCQ.html.erb index 23f216427..d94964bbf 100644 --- a/app/views/poll/_new_MCQ.html.erb +++ b/app/views/poll/_new_MCQ.html.erb @@ -34,7 +34,7 @@
From 65a3ddce41b921f5f3b0ec13867db4f451aad6d1 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Fri, 16 Jan 2015 15:05:30 +0800 Subject: [PATCH 066/142] =?UTF-8?q?1=E3=80=81=E5=A2=9E=E5=8A=A0=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E5=8D=95=E8=A1=8C=E6=96=87=E5=AD=97=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=202=E3=80=81=E4=BF=AE=E6=94=B9=E9=A2=98=E7=9B=AE=E5=90=8E?= =?UTF-8?q?=E6=80=BB=E6=98=AF=E6=98=BE=E7=A4=BA=E4=B8=BA=E5=8D=95=E9=80=89?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/poll_controller.rb | 3 +-- app/views/poll/_edit_single.html.erb | 14 +++++++---- app/views/poll/_new_single.html.erb | 29 ++++++++++++---------- app/views/poll/_show_single.html.erb | 14 ++++++++--- app/views/poll/update_poll_question.js.erb | 20 +++++++++++++-- 5 files changed, 55 insertions(+), 25 deletions(-) diff --git a/app/controllers/poll_controller.rb b/app/controllers/poll_controller.rb index 9c5f810c6..fc23166ff 100644 --- a/app/controllers/poll_controller.rb +++ b/app/controllers/poll_controller.rb @@ -119,8 +119,7 @@ class PollController < ApplicationController #修改单选题 def update_poll_question @poll_question = PollQuestion.find params[:poll_question] - @poll = @poll_question.poll - + #@poll = @poll_question.poll @poll_question.is_necessary = params[:is_necessary]=="true" ? 1 : 0 @poll_question.question_title = params[:poll_questions_title].nil? || params[:poll_questions_title].empty? ? l(:label_enter_single_title) : params[:poll_questions_title] ################处理选项 diff --git a/app/views/poll/_edit_single.html.erb b/app/views/poll/_edit_single.html.erb index 4e98babe4..b8157ee6c 100644 --- a/app/views/poll/_edit_single.html.erb +++ b/app/views/poll/_edit_single.html.erb @@ -1,13 +1,17 @@ +<%= form_for("",:url => update_poll_question_poll_index_path(:poll_question => poll_question.id),:remote => true) do |f|%>
- - + + + />
-
\ No newline at end of file +
+<% end%> \ No newline at end of file diff --git a/app/views/poll/_new_single.html.erb b/app/views/poll/_new_single.html.erb index b7d5a9725..ec06933a8 100644 --- a/app/views/poll/_new_single.html.erb +++ b/app/views/poll/_new_single.html.erb @@ -1,13 +1,16 @@ -
-
- - - - -
- -
-
\ No newline at end of file +<%= form_for PollQuestion.new,:url =>create_poll_question_poll_path(@poll.id),:remote => true do |f|%> +
+
+ + + + + +
+ +
+
+<% end%> \ No newline at end of file diff --git a/app/views/poll/_show_single.html.erb b/app/views/poll/_show_single.html.erb index 437e38044..d9ef2abc7 100644 --- a/app/views/poll/_show_single.html.erb +++ b/app/views/poll/_show_single.html.erb @@ -1,9 +1,17 @@
- 第3题: 单行文字 + + 第<%= poll_question.question_number%>题: + + <%= poll_question.question_title %> + <%if poll_question.is_necessary == 1%> + * + <%end%> + (单行文字)
- - + <%= link_to("", delete_poll_question_poll_index_path(:poll_question => poll_question.id), + method: :delete, :confirm => l(:text_are_you_sure), :remote => true, :class => "ur_icon_de") %> +
diff --git a/app/views/poll/update_poll_question.js.erb b/app/views/poll/update_poll_question.js.erb index 39d0fcfd6..e0727df67 100644 --- a/app/views/poll/update_poll_question.js.erb +++ b/app/views/poll/update_poll_question.js.erb @@ -1,6 +1,22 @@ $("#poll_questions_<%= @poll_question.id%>").html("
" + - "<%= escape_javascript(render :partial => 'show_MC', :locals => {:poll_question => @poll_question}) %>" + + "<% if @poll_question.question_type == 1%>" + + "<%= escape_javascript(render :partial => 'show_MC', :locals => {:poll_question => @poll_question}) %>" + + "<% elsif @poll_question.question_type == 2%>" + + "<%= escape_javascript(render :partial => 'show_MCQ', :locals => {:poll_question => @poll_question}) %>" + + "<% elsif @poll_question.question_type == 3%>" + + "<%= escape_javascript(render :partial => 'show_single', :locals => {:poll_question => @poll_question}) %>" + + "<% elsif @poll_question.question_type == 4%>" + + "<%= escape_javascript(render :partial => 'show_mulit', :locals => {:poll_question => @poll_question}) %>" + + "<% end%>" + "
" + ""); From 0a367249ae3b7f3fb32072316c5324f55ed570e8 Mon Sep 17 00:00:00 2001 From: z9hang Date: Fri, 16 Jan 2015 15:32:09 +0800 Subject: [PATCH 067/142] =?UTF-8?q?=E9=97=AE=E5=8D=B7=E5=AE=8C=E6=88=90?= =?UTF-8?q?=E5=BA=A6=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/poll_controller.rb | 90 +++++++++++++++++++++------ app/views/poll/_commit_alert.html.erb | 2 +- app/views/poll/show.html.erb | 27 ++++++-- 3 files changed, 95 insertions(+), 24 deletions(-) diff --git a/app/controllers/poll_controller.rb b/app/controllers/poll_controller.rb index a843e9d9b..8f89c1a9e 100644 --- a/app/controllers/poll_controller.rb +++ b/app/controllers/poll_controller.rb @@ -24,6 +24,7 @@ class PollController < ApplicationController render_403 else @can_edit_poll = (!has_commit_poll?(@poll.id,User.current.id)) || User.current.admin? + @percent = get_percent(@poll,User.current) poll_questions = @poll.poll_questions @poll_questions = paginateHelper poll_questions,3 #分页 respond_to do |format| @@ -172,7 +173,7 @@ class PollController < ApplicationController def commit_answer pq = PollQuestion.find(params[:poll_question_id]) if has_commit_poll?(@poll.id,User.current.id) && (!User.current.admin?) - render :text => 'failure' + render :json => {:text => "failure"} return end if pq.question_type == 1 @@ -185,9 +186,10 @@ class PollController < ApplicationController end pv.poll_answer_id = params[:poll_answer_id] if pv.save - render :text => "ok" + @percent = get_percent(@poll,User.current) + render :json => {:text => "ok" ,:percent => format("%.2f" ,@percent)} else - render :text => "failure" + render :json => {:text => "failure"} end elsif pq.question_type == 2 pv = PollVote.find_by_poll_answer_id_and_user_id(params[:poll_answer_id],User.current.id) @@ -197,38 +199,64 @@ class PollController < ApplicationController pv.poll_question_id = params[:poll_question_id] pv.poll_answer_id = params[:poll_answer_id] if pv.save - render :text => "true" + @percent = get_percent(@poll,User.current) + render :json => {:text => "true",:percent => format("%.2f" ,@percent)} else - render :text => "failure" + render :json => {:text => "failure"} end else if pv.delete - render :text => "false" + @percent = get_percent(@poll,User.current) + render :json => {:text => "false" ,:percent => format("%.2f" ,@percent)} else - render :text => "failure" + render :json => {:text => "failure"} end end elsif pq.question_type == 3 || pq.question_type == 4 pv = PollVote.find_by_poll_question_id_and_user_id(params[:poll_question_id],User.current.id) if pv.nil? - pv = PollVote.new - pv.user_id = User.current.id - pv.poll_question_id = params[:poll_question_id] - end - pv.vote_text = params[:vote_text] - if pv.save - render :text => pv.vote_text + if params[:vote_text].nil? || params[:vote_text].blank? + @percent = get_percent(@poll,User.current) + render :json => {:text => pv.vote_text,:percent => format("%.2f" ,@percent)} + else + pv = PollVote.new + pv.user_id = User.current.id + pv.poll_question_id = params[:poll_question_id] + pv.vote_text = params[:vote_text] + if pv.save + @percent = get_percent(@poll,User.current) + render :json => {:text => pv.vote_text,:percent => format("%.2f" ,@percent)} + else + render :json => {:text => "failure"} + end + end else - render :text => "failure" + if params[:vote_text].nil? || params[:vote_text].blank? + if pv.delete + @percent = get_percent(@poll,User.current) + render :json => {:text => pv.vote_text,:percent => format("%.2f" ,@percent)} + else + render :json => {:text => "failure"} + end + else + pv.vote_text = params[:vote_text] + if pv.save + @percent = get_percent(@poll,User.current) + render :json => {:text => pv.vote_text,:percent => format("%.2f" ,@percent)} + else + render :json => {:text => "failure"} + end + end end + else - render :text => "failure" + render :json => {:text => "failure"} end end #提交问卷 def commit_poll - @uncomplete_question = get_uncomplete_question(@poll) + @uncomplete_question = get_uncomplete_question(@poll,User.current) if @uncomplete_question.count < 1 pu = get_poll_user(@poll.id,User.current.id) pu.user_id = User.current.id @@ -277,17 +305,41 @@ class PollController < ApplicationController end #获取未完成的题目 - def get_uncomplete_question poll + def get_uncomplete_question poll,user necessary_questions = poll.poll_questions.where("#{PollQuestion.table_name}.is_necessary = 1") uncomplete_question = [] necessary_questions.each do |question| - if question.poll_votes.nil? || question.poll_votes.count < 1 + answers = get_user_answer(question,user) + if answers.nil? || answers.count < 1 uncomplete_question << question end end uncomplete_question end + #获取用户对某个问题的答案 + def get_user_answer(question,user) + user_answer = question.poll_votes.where("#{PollVote.table_name}.user_id = #{user.id}") + user_answer + end + + def get_complete_question(poll,user) + questions = poll.poll_questions + complete_question = [] + questions.each do |question| + answers = get_user_answer(question,user) + if !(answers.nil? || answers.count < 1) + complete_question << question + end + end + complete_question + end + + def get_percent poll,user + complete_count = get_complete_question(poll,user).count + (complete_count.to_f / poll.poll_questions.count.to_f)*100 + end + #PollUser记录用户是否已提交问卷有对应的记录则已提交,没有则新建一个 def get_poll_user poll_id,user_id pu = PollUser.find_by_poll_id_and_user_id(poll_id,user_id) diff --git a/app/views/poll/_commit_alert.html.erb b/app/views/poll/_commit_alert.html.erb index 76bbda416..3910bc8b5 100644 --- a/app/views/poll/_commit_alert.html.erb +++ b/app/views/poll/_commit_alert.html.erb @@ -3,7 +3,7 @@

提交成功!

<%= link_to "确定", poll_index_path(:polls_group_id => @course.id,:polls_type => 'Course'),:class => 'commit'%> <% elsif status == 1 %> -

您还有尚未作答的题目请完成后在提交!

+

您还有尚未作答的必答题目请完成后再提交!

<%= link_to "确定", "javascript:void(0)",:onclick => 'hidden_atert_form();',:class => 'commit'%> <% else %>

发生未知错误,请检查您的网络。

diff --git a/app/views/poll/show.html.erb b/app/views/poll/show.html.erb index 2db0045f6..42818dd34 100644 --- a/app/views/poll/show.html.erb +++ b/app/views/poll/show.html.erb @@ -72,7 +72,10 @@ poll_question_id: <%= pq.id %> }, success: function (data) { - obj.checked = true; + var dataObj = eval(data); + obj.checked = true; + var span = $('#percent'); + span.html(dataObj.percent); } }); } @@ -118,7 +121,8 @@ poll_question_id: <%= pq.id %> }, success: function (data) { - if(data == "true") + var dataObj = eval(data); + if(dataObj.text == "true") { obj.checked = true; } @@ -126,6 +130,8 @@ { obj.checked = false; } + var span = $('#percent'); + span.html(dataObj.percent); } }); } @@ -165,6 +171,9 @@ vote_text: obj.value }, success: function (data) { + var dataObj = eval(data); + var span = $('#percent'); + span.html(dataObj.percent); // obj.value = data; } }); @@ -198,7 +207,17 @@ vote_text: obj.innerHTML }, success: function (data) { -// obj.value = data; + var dataObj = eval(data); + if(dataObj.text != 'failure') + { + var span = $('#percent'); + span.html(dataObj.percent); + } + else + { + alert("error"); + } + } }); } @@ -222,7 +241,7 @@ <% end %>
-
答题已完成 0%
+
答题已完成 <%= format "%.2f" ,@percent %>%
From fe3a84c8db35c648478d900bd2c1faa9433f5af9 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Fri, 16 Jan 2015 15:34:25 +0800 Subject: [PATCH 068/142] =?UTF-8?q?=E5=AE=9E=E7=8E=B0=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E5=A4=9A=E8=A1=8C=E6=96=87=E5=AD=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/poll/_edit_mulit.html.erb | 19 +++++++++++-------- app/views/poll/_new_mulit.html.erb | 21 ++++++++++++--------- app/views/poll/_show_mulit.html.erb | 14 +++++++++++--- 3 files changed, 34 insertions(+), 20 deletions(-) diff --git a/app/views/poll/_edit_mulit.html.erb b/app/views/poll/_edit_mulit.html.erb index c4a9e0e0f..684a285e3 100644 --- a/app/views/poll/_edit_mulit.html.erb +++ b/app/views/poll/_edit_mulit.html.erb @@ -1,18 +1,21 @@ +<%= form_for("",:url => update_poll_question_poll_index_path(:poll_question => poll_question.id),:remote => true) do |f|%>
- - + + + />
- - , - + + +
-
\ No newline at end of file +
+<% end%> \ No newline at end of file diff --git a/app/views/poll/_new_mulit.html.erb b/app/views/poll/_new_mulit.html.erb index 6c3528473..e034e54af 100644 --- a/app/views/poll/_new_mulit.html.erb +++ b/app/views/poll/_new_mulit.html.erb @@ -1,18 +1,21 @@ +<%= form_for PollQuestion.new,:url =>create_poll_question_poll_path(@poll.id),:remote => true do |f|%>
- - - + + + +
- - , - + + +
-
\ No newline at end of file +
+<% end%> \ No newline at end of file diff --git a/app/views/poll/_show_mulit.html.erb b/app/views/poll/_show_mulit.html.erb index 35e37ef06..23bdbe6eb 100644 --- a/app/views/poll/_show_mulit.html.erb +++ b/app/views/poll/_show_mulit.html.erb @@ -1,10 +1,18 @@
- 第4题: 多行主观 + + 第<%= poll_question.question_number%>题: + + <%= poll_question.question_title %> + <%if poll_question.is_necessary == 1%> + * + <%end%> + (多行主观)
- - + <%= link_to("", delete_poll_question_poll_index_path(:poll_question => poll_question.id), + method: :delete, :confirm => l(:text_are_you_sure), :remote => true, :class => "ur_icon_de") %> +
From 7177303eeb4899010db5af9c831b85504813970b Mon Sep 17 00:00:00 2001 From: huang Date: Fri, 16 Jan 2015 15:49:22 +0800 Subject: [PATCH 069/142] =?UTF-8?q?=E9=97=AE=E5=8D=B7=E7=BB=9F=E8=AE=A1?= =?UTF-8?q?=E6=9C=80=E7=BB=88=E6=95=88=E6=9E=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/poll_controller.rb | 2 +- app/helpers/poll_helper.rb | 18 ++++++++- app/views/poll/_choice_show.html.erb | 49 ++++++++++++----------- app/views/poll/statistics_result.html.erb | 10 ++--- config/locales/zh.yml | 5 +++ 5 files changed, 53 insertions(+), 31 deletions(-) diff --git a/app/controllers/poll_controller.rb b/app/controllers/poll_controller.rb index 3de4e8339..3b4bf3694 100644 --- a/app/controllers/poll_controller.rb +++ b/app/controllers/poll_controller.rb @@ -86,7 +86,7 @@ class PollController < ApplicationController def statistics_result @poll = Poll.find(params[:id]) poll_questions = @poll.poll_questions - @poll_questions = paginateHelper poll_questions,3 #分页 + @poll_questions = paginateHelper poll_questions, 5 respond_to do |format| format.html{render :layout => 'base_courses'} end diff --git a/app/helpers/poll_helper.rb b/app/helpers/poll_helper.rb index 7816d8e37..1a8fabae3 100644 --- a/app/helpers/poll_helper.rb +++ b/app/helpers/poll_helper.rb @@ -27,7 +27,7 @@ module PollHelper false end end - + #获取文本题答案 def get_anwser_vote_text(question_id,user_id) pv = PollVote.find_by_poll_question_id_and_user_id(question_id,user_id) @@ -47,4 +47,20 @@ module PollHelper true end end + + #统计答题百分比 + def statistics_result_percentage(e, t) + return e*100/t + end + + def options_show p + case p + when 1 + "单选题" + when 2 + "多选题" + else + "问答题" + end + end end \ No newline at end of file diff --git a/app/views/poll/_choice_show.html.erb b/app/views/poll/_choice_show.html.erb index aa425e748..16971d5ad 100644 --- a/app/views/poll/_choice_show.html.erb +++ b/app/views/poll/_choice_show.html.erb @@ -1,25 +1,28 @@ -
- - - - - - - - <% poll_question.poll_answers.each do |poll_answer| %> - - - - - - <% end %> - - - - - - -
选项 小计 比例
<%= poll_answer.answer_text %> <% poll_answer.poll_votes.count %>
75%
本题有效填写人次 <%= poll_question.poll_votes.count %> 
-
+ + + + + + + + <% poll_question.poll_answers.each do |poll_answer| %> + + + + + + <% end %> + + + + + + +
<%= l(:label_poll_options) %> <%= l(:label_poll_subtotal) %> <%= l(:label_poll_proportion) %>
<%= poll_answer.answer_text %> <%= poll_answer.poll_votes.count %> +
+ +
+ <%= statistics_result_percentage(poll_answer.poll_votes.count, @poll.users.count) %>%
<%= l(:label_poll_valid_commit) %> <%= poll_question.poll_votes.count %> 
+
diff --git a/app/views/poll/statistics_result.html.erb b/app/views/poll/statistics_result.html.erb index d6181fb1a..dea18f8d8 100644 --- a/app/views/poll/statistics_result.html.erb +++ b/app/views/poll/statistics_result.html.erb @@ -2,14 +2,14 @@ - 问卷调查_问卷结果 + <%= l(:label_poll_result) %> <%= stylesheet_link_tag 'polls', :media => 'all' %>
-

某问卷统计

+

<%= @poll.polls_name %> <%= l(:label_poll) %>

<% @poll_questions.each do |poll_question| %> @@ -17,7 +17,8 @@
  1. - 第<%= poll_question.question_number %>题:<%= poll_question.question_title %> [单选题]<% poll_question.poll_answers %> + 第<%= poll_question.question_number %>题:<%= poll_question.question_title %> + [<%= options_show(poll_question.question_type) %>]
    <%= render :partial =>'choice_show', :locals =>{ :poll_question => poll_question } %>
  2. @@ -28,11 +29,8 @@
    - -
    -
    答题已完成 0%
diff --git a/config/locales/zh.yml b/config/locales/zh.yml index 95ab07d5d..5c2925b90 100644 --- a/config/locales/zh.yml +++ b/config/locales/zh.yml @@ -2253,5 +2253,10 @@ zh: label_new_answer: 新建选项 label_poll_title: 问卷标题 label_poll_description: 问卷描述 + label_poll_options: 选项 + label_poll_subtotal: 小计 + label_poll_proportion: 比例 + label_poll_valid_commit: 本题有效填写人次 + label_poll_result: 问卷调查_问卷统计 From dd42c89ee6972d08237fe549dffe51503c4f279a Mon Sep 17 00:00:00 2001 From: z9hang Date: Fri, 16 Jan 2015 15:51:26 +0800 Subject: [PATCH 070/142] =?UTF-8?q?=E7=99=BE=E5=88=86=E6=AF=94=E9=99=A4?= =?UTF-8?q?=E6=95=B0=E4=B8=BA0=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/poll_controller.rb | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/app/controllers/poll_controller.rb b/app/controllers/poll_controller.rb index d77f7c872..221c482c7 100644 --- a/app/controllers/poll_controller.rb +++ b/app/controllers/poll_controller.rb @@ -178,20 +178,26 @@ class PollController < ApplicationController #单选题 pv = PollVote.find_by_poll_question_id_and_user_id(params[:poll_question_id],User.current.id) if pv.nil? + #尚未答该题,添加答案 pv = PollVote.new pv.user_id = User.current.id pv.poll_question_id = params[:poll_question_id] end + #修改该题对应答案 pv.poll_answer_id = params[:poll_answer_id] if pv.save + #保存成功返回成功信息及当前以答题百分比 @percent = get_percent(@poll,User.current) render :json => {:text => "ok" ,:percent => format("%.2f" ,@percent)} else + #返回失败信息 render :json => {:text => "failure"} end elsif pq.question_type == 2 + #多选题 pv = PollVote.find_by_poll_answer_id_and_user_id(params[:poll_answer_id],User.current.id) if pv.nil? + #尚未答该题,添加答案 pv = PollVote.new pv.user_id = User.current.id pv.poll_question_id = params[:poll_question_id] @@ -203,6 +209,7 @@ class PollController < ApplicationController render :json => {:text => "failure"} end else + #pv不为空,则当前选项之前已被选择,再次点击则是不再选择该项,故删除该答案 if pv.delete @percent = get_percent(@poll,User.current) render :json => {:text => "false" ,:percent => format("%.2f" ,@percent)} @@ -211,12 +218,16 @@ class PollController < ApplicationController end end elsif pq.question_type == 3 || pq.question_type == 4 + #单行文本,多行文本题 pv = PollVote.find_by_poll_question_id_and_user_id(params[:poll_question_id],User.current.id) if pv.nil? + #pv为空之前尚未答题,添加答案 if params[:vote_text].nil? || params[:vote_text].blank? + #用户提交空答案,视作不作答 @percent = get_percent(@poll,User.current) render :json => {:text => pv.vote_text,:percent => format("%.2f" ,@percent)} else + #添加答案 pv = PollVote.new pv.user_id = User.current.id pv.poll_question_id = params[:poll_question_id] @@ -229,7 +240,9 @@ class PollController < ApplicationController end end else + #pv不为空说明用户之前已作答 if params[:vote_text].nil? || params[:vote_text].blank? + #用户提交空答案,视为删除答案 if pv.delete @percent = get_percent(@poll,User.current) render :json => {:text => pv.vote_text,:percent => format("%.2f" ,@percent)} @@ -237,6 +250,7 @@ class PollController < ApplicationController render :json => {:text => "failure"} end else + #用户修改答案 pv.vote_text = params[:vote_text] if pv.save @percent = get_percent(@poll,User.current) @@ -335,7 +349,11 @@ class PollController < ApplicationController def get_percent poll,user complete_count = get_complete_question(poll,user).count - (complete_count.to_f / poll.poll_questions.count.to_f)*100 + if poll.poll_questions.count == 0 + return 0 + else + return (complete_count.to_f / poll.poll_questions.count.to_f)*100 + end end #PollUser记录用户是否已提交问卷有对应的记录则已提交,没有则新建一个 From 79ad33a90f40ed65569d337c9c5f3fc876da12a6 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Fri, 16 Jan 2015 15:57:49 +0800 Subject: [PATCH 071/142] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=8F=91=E5=B8=83?= =?UTF-8?q?=E9=97=AE=E5=8D=B7=E7=9A=84=E8=B7=AF=E7=94=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/poll_controller.rb | 11 ++++++++--- config/routes.rb | 1 + 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/app/controllers/poll_controller.rb b/app/controllers/poll_controller.rb index 28c44f0cb..2e7d95478 100644 --- a/app/controllers/poll_controller.rb +++ b/app/controllers/poll_controller.rb @@ -90,7 +90,7 @@ class PollController < ApplicationController end end - #添加单选题 + #添加题目 def create_poll_question question_title = params[:poll_questions_title].nil? || params[:poll_questions_title].empty? ? l(:label_enter_single_title) : params[:poll_questions_title] option = { @@ -117,7 +117,7 @@ class PollController < ApplicationController end end - #修改单选题 + #修改题目 def update_poll_question @poll_question = PollQuestion.find params[:poll_question] #@poll = @poll_question.poll @@ -150,7 +150,7 @@ class PollController < ApplicationController end end - #删除单选题 + #删除题目 def delete_poll_question @poll_question = PollQuestion.find params[:poll_question] @poll = @poll_question.poll @@ -166,6 +166,11 @@ class PollController < ApplicationController end end + #发布问卷 + def publish_poll + + end + #提交答案 def commit_answer pq = PollQuestion.find(params[:poll_question_id]) diff --git a/config/routes.rb b/config/routes.rb index dc8205e2d..bd1b27dee 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -64,6 +64,7 @@ RedmineApp::Application.routes.draw do post 'commit_answer' post 'create_poll_question' post 'commit_poll' + get 'publish_poll' end collection do delete 'delete_poll_question' From bbf4c4629b69a93d70847fd76d5e0edffa6d28e3 Mon Sep 17 00:00:00 2001 From: z9hang Date: Fri, 16 Jan 2015 16:13:03 +0800 Subject: [PATCH 072/142] =?UTF-8?q?=E9=97=AE=E5=8D=B7show=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E5=9B=BD=E9=99=85=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/poll/show.html.erb | 22 +++++++++++----------- config/locales/en.yml | 6 ++++-- config/locales/zh.yml | 4 ++++ 3 files changed, 19 insertions(+), 13 deletions(-) diff --git a/app/views/poll/show.html.erb b/app/views/poll/show.html.erb index 42818dd34..c1ac5d377 100644 --- a/app/views/poll/show.html.erb +++ b/app/views/poll/show.html.erb @@ -2,7 +2,7 @@ - 问卷调查_问卷页面 + <%= l(:label_poll_title) %> <%= stylesheet_link_tag 'polls', :media => 'all' %> + + + + + +
+
+

问卷发布

+

+ 问卷发布后将无法 + 修改 +
+ 是否确定发布该问卷? +

+
+ <%= link_to "确 定",publish_poll_poll_path(poll.id), :class => "tijiao", :onclick => "clickCanel();" %> + + 取  消 + +
+
+
+ + + From d16d5fd362179d62fde4efebf24bd8f9cb91f8b3 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Fri, 16 Jan 2015 17:31:04 +0800 Subject: [PATCH 075/142] =?UTF-8?q?=E5=8D=95=E8=A1=8C=E6=96=87=E5=AD=97/?= =?UTF-8?q?=E5=A4=9A=E8=A1=8C=E6=96=87=E5=AD=97=20-->=20=E5=8D=95=E8=A1=8C?= =?UTF-8?q?=E4=B8=BB=E8=A7=82/=E5=A4=9A=E8=A1=8C=E4=B8=BB=E8=A7=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/poll/_edit_mulit.html.erb | 2 +- app/views/poll/_edit_single.html.erb | 2 +- app/views/poll/_new_mulit.html.erb | 2 +- app/views/poll/_new_single.html.erb | 2 +- app/views/poll/_show_single.html.erb | 2 +- config/locales/zh.yml | 4 ++-- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/app/views/poll/_edit_mulit.html.erb b/app/views/poll/_edit_mulit.html.erb index 684a285e3..f4e079c17 100644 --- a/app/views/poll/_edit_mulit.html.erb +++ b/app/views/poll/_edit_mulit.html.erb @@ -3,7 +3,7 @@
- + />
diff --git a/app/views/poll/_edit_single.html.erb b/app/views/poll/_edit_single.html.erb index b8157ee6c..b172d955c 100644 --- a/app/views/poll/_edit_single.html.erb +++ b/app/views/poll/_edit_single.html.erb @@ -4,7 +4,7 @@ + name="poll_questions_title" placeholder="请输入单行主观标题" value="<%= poll_question.question_title%>"/> />
diff --git a/app/views/poll/_new_mulit.html.erb b/app/views/poll/_new_mulit.html.erb index e034e54af..155f208c4 100644 --- a/app/views/poll/_new_mulit.html.erb +++ b/app/views/poll/_new_mulit.html.erb @@ -3,7 +3,7 @@
- +
diff --git a/app/views/poll/_new_single.html.erb b/app/views/poll/_new_single.html.erb index ec06933a8..fb052a7a3 100644 --- a/app/views/poll/_new_single.html.erb +++ b/app/views/poll/_new_single.html.erb @@ -3,7 +3,7 @@
- +
diff --git a/app/views/poll/_show_single.html.erb b/app/views/poll/_show_single.html.erb index d9ef2abc7..bfea07d86 100644 --- a/app/views/poll/_show_single.html.erb +++ b/app/views/poll/_show_single.html.erb @@ -7,7 +7,7 @@ <%if poll_question.is_necessary == 1%> * <%end%> - (单行文字) + (单行主观)
<%= link_to("", delete_poll_question_poll_index_path(:poll_question => poll_question.id), method: :delete, :confirm => l(:text_are_you_sure), :remote => true, :class => "ur_icon_de") %> diff --git a/config/locales/zh.yml b/config/locales/zh.yml index 5c2925b90..e607214b5 100644 --- a/config/locales/zh.yml +++ b/config/locales/zh.yml @@ -2247,8 +2247,8 @@ zh: label_statistical_results: 统计结果 label_MC: 单选题 label_MCQ: 多选题 - label_single: 单行文字 - label_mulit: 多行文字 + label_single: 单行主观 + label_mulit: 多行主观 label_enter_single_title: 请输入单选题标题 label_new_answer: 新建选项 label_poll_title: 问卷标题 From 3acec4b7c10c082c25b1f4e79cadc8b5e1adc013 Mon Sep 17 00:00:00 2001 From: huang Date: Sat, 17 Jan 2015 10:14:07 +0800 Subject: [PATCH 076/142] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=BA=86=E6=80=BB?= =?UTF-8?q?=E7=BB=9F=E8=AE=A1=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/helpers/poll_helper.rb | 8 +++++--- app/views/poll/_choice_show.html.erb | 2 +- app/views/poll/statistics_result.html.erb | 2 +- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/app/helpers/poll_helper.rb b/app/helpers/poll_helper.rb index 55418faf2..36b5deccb 100644 --- a/app/helpers/poll_helper.rb +++ b/app/helpers/poll_helper.rb @@ -48,15 +48,16 @@ module PollHelper end end - #统计答题百分比 + #统计答题百分比,统计结果保留两位小数 def statistics_result_percentage(e, t) e = e.to_f t = t.to_f t == 0 ? 0 : format("%.2f", e*100/t) end - def options_show p - case p + #页面体型显示 + def options_show pq + case pq when 1 "单选题" when 2 @@ -65,4 +66,5 @@ module PollHelper "问答题" end end + end \ No newline at end of file diff --git a/app/views/poll/_choice_show.html.erb b/app/views/poll/_choice_show.html.erb index 16971d5ad..4ccc5b938 100644 --- a/app/views/poll/_choice_show.html.erb +++ b/app/views/poll/_choice_show.html.erb @@ -19,7 +19,7 @@ <% end %> <%= l(:label_poll_valid_commit) %> - <%= poll_question.poll_votes.count %> + <%= @poll.users.count %>   diff --git a/app/views/poll/statistics_result.html.erb b/app/views/poll/statistics_result.html.erb index 057314a9c..3ef29eb48 100644 --- a/app/views/poll/statistics_result.html.erb +++ b/app/views/poll/statistics_result.html.erb @@ -27,7 +27,7 @@
-
+

From 9487ce1245894efa0a9a45314c4ec6de7f93ebd1 Mon Sep 17 00:00:00 2001 From: z9hang Date: Sat, 17 Jan 2015 11:02:09 +0800 Subject: [PATCH 077/142] =?UTF-8?q?#1807=E8=AF=BE=E7=A8=8B--=E9=97=AE?= =?UTF-8?q?=E5=8D=B7=E8=B0=83=E6=9F=A5=EF=BC=9A=E7=AD=94=E9=A2=98=E5=A4=9A?= =?UTF-8?q?=E8=A1=8C=E4=B8=BB=E8=A7=82=E5=90=8E=EF=BC=8C=E5=86=8D=E7=82=B9?= =?UTF-8?q?=E5=87=BB=E6=89=93=E5=BC=80=E7=AD=94=E9=A2=98=E9=A1=B5=E9=9D=A2?= =?UTF-8?q?=EF=BC=8C=E5=A6=82=E5=9B=BE=EF=BC=8C=E6=98=BE=E7=A4=BAhtml?= =?UTF-8?q?=E5=85=83=E7=B4=A0
?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/poll/show.html.erb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/views/poll/show.html.erb b/app/views/poll/show.html.erb index c1ac5d377..bc5136718 100644 --- a/app/views/poll/show.html.erb +++ b/app/views/poll/show.html.erb @@ -180,7 +180,7 @@ } - > + >
<% elsif pq.question_type == 4 %> @@ -222,7 +222,7 @@ }); } -
" onblur="onblur_<%= pq.id %>(this);"><%= get_anwser_vote_text(pq.id,User.current.id) %>
+
" onblur="onblur_<%= pq.id %>(this);"><%= get_anwser_vote_text(pq.id,User.current.id).html_safe %>
From e14deeb4ddde7393a007615920ad9bd2e53a148d Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Sat, 17 Jan 2015 11:05:38 +0800 Subject: [PATCH 078/142] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E9=99=90=E5=88=B6?= =?UTF-8?q?=EF=BC=9A=E9=97=AE=E5=8D=B7=E6=A0=87=E9=A2=98=E6=9C=80=E5=A4=9A?= =?UTF-8?q?100=E5=AD=97=EF=BC=8C=E9=97=AE=E5=8D=B7=E6=8F=8F=E8=BF=B0?= =?UTF-8?q?=E6=9C=80=E5=A4=9A300=E5=AD=97=EF=BC=8C=E9=97=AE=E5=8D=B7?= =?UTF-8?q?=E9=97=AE=E9=A2=98=E6=9C=80=E5=A4=9A250=E5=AD=97=EF=BC=8C?= =?UTF-8?q?=E9=97=AE=E5=8D=B7=E9=80=89=E9=A1=B9=E6=9C=80=E5=A4=9A200?= =?UTF-8?q?=E5=AD=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/poll/_edit_MC.html.erb | 4 ++-- app/views/poll/_edit_MCQ.html.erb | 4 ++-- app/views/poll/_edit_head.html.erb | 4 ++-- app/views/poll/_edit_mulit.html.erb | 2 +- app/views/poll/_edit_single.html.erb | 2 +- app/views/poll/_new_MC.html.erb | 8 ++++---- app/views/poll/_new_MCQ.html.erb | 8 ++++---- app/views/poll/_new_mulit.html.erb | 2 +- app/views/poll/_new_single.html.erb | 2 +- app/views/poll/_poll_form.html.erb | 2 +- 10 files changed, 19 insertions(+), 19 deletions(-) diff --git a/app/views/poll/_edit_MC.html.erb b/app/views/poll/_edit_MC.html.erb index 12dc9f92b..505e9acc1 100644 --- a/app/views/poll/_edit_MC.html.erb +++ b/app/views/poll/_edit_MC.html.erb @@ -4,7 +4,7 @@
- + />
@@ -13,7 +13,7 @@ <% poll_question.poll_answers.reorder("answer_position").each do |poll_answer| %>
  • - +
  • diff --git a/app/views/poll/_edit_MCQ.html.erb b/app/views/poll/_edit_MCQ.html.erb index f34319569..5e267b03e 100644 --- a/app/views/poll/_edit_MCQ.html.erb +++ b/app/views/poll/_edit_MCQ.html.erb @@ -2,7 +2,7 @@
    - + />
    @@ -11,7 +11,7 @@ <% poll_question.poll_answers.reorder("answer_position").each do |poll_answer| %>
  • - +
  • diff --git a/app/views/poll/_edit_head.html.erb b/app/views/poll/_edit_head.html.erb index ea36cbedf..802832601 100644 --- a/app/views/poll/_edit_head.html.erb +++ b/app/views/poll/_edit_head.html.erb @@ -1,10 +1,10 @@ <%= form_for @poll,:remote => true do |f|%>
    - +
    - +
    diff --git a/app/views/mailer/issue_add.html.erb b/app/views/mailer/issue_add.html.erb index f51dad121..4db0113b9 100644 --- a/app/views/mailer/issue_add.html.erb +++ b/app/views/mailer/issue_add.html.erb @@ -5,4 +5,5 @@
    +
    <%= link_to("退订该邮件?", @user_url) %>
    diff --git a/app/views/mailer/issue_add.text.erb b/app/views/mailer/issue_add.text.erb index b50a39260..31d9632db 100644 --- a/app/views/mailer/issue_add.text.erb +++ b/app/views/mailer/issue_add.text.erb @@ -1,2 +1,3 @@ <%= render :partial => 'issue', :formats => [:text], :locals => { :issue => @issue, :issue_url => @issue_url } %> +<%= link_to("退订该邮件?", @user_url) %> \ No newline at end of file diff --git a/app/views/mailer/issue_edit.html.erb b/app/views/mailer/issue_edit.html.erb index 3cbd1b02a..0c46b5e60 100644 --- a/app/views/mailer/issue_edit.html.erb +++ b/app/views/mailer/issue_edit.html.erb @@ -11,3 +11,5 @@ <%= l(:field_content)%>:<%= @journal.notes %>
    <%= render :partial => 'issue', :formats => [:html], :locals => { :issue => @issue, :issue_url => @issue_url } %> +
    <%= link_to("退订该邮件?", @user_url) %>
    + diff --git a/app/views/mailer/issue_edit.text.erb b/app/views/mailer/issue_edit.text.erb index 5b93b6fe0..70e4186c4 100644 --- a/app/views/mailer/issue_edit.text.erb +++ b/app/views/mailer/issue_edit.text.erb @@ -12,3 +12,5 @@ <% end -%> ---------------------------------------- <%= render :partial => 'issue', :formats => [:text], :locals => { :issue => @issue, :issue_url => @issue_url } %> + +<%= link_to("退订该邮件?", @user_url) %> \ No newline at end of file From abcf06ccc7cbd8e14713c7670247834c0ccd2f35 Mon Sep 17 00:00:00 2001 From: z9hang Date: Mon, 19 Jan 2015 15:00:46 +0800 Subject: [PATCH 108/142] =?UTF-8?q?=E8=AF=BE=E7=A8=8B=E8=B5=84=E6=BA=90?= =?UTF-8?q?=E4=B8=8D=E8=83=BD=E5=BC=95=E7=94=A8=E9=97=AE=E9=A2=98=E3=80=82?= =?UTF-8?q?=E5=8E=9F=E5=9B=A0=EF=BC=9A15=E5=B9=B41-3=E6=9C=88=E8=83=BD?= =?UTF-8?q?=E5=B1=9E=E4=BA=8E2014=E5=B9=B4=E7=A7=8B=E5=AD=A3=E5=AD=A6?= =?UTF-8?q?=E6=9C=9F=EF=BC=8C=E4=BB=A3=E7=A0=81=E5=8D=B4=E5=B0=86=E5=85=B6?= =?UTF-8?q?=E5=88=A4=E6=96=AD=E4=B8=BA15=E5=B9=B4=E7=A7=8B=E5=AD=A3?= =?UTF-8?q?=E5=AD=A6=E6=9C=9F=E4=BA=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/helpers/courses_helper.rb | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/app/helpers/courses_helper.rb b/app/helpers/courses_helper.rb index a862753ef..411de1dcf 100644 --- a/app/helpers/courses_helper.rb +++ b/app/helpers/courses_helper.rb @@ -561,12 +561,13 @@ module CoursesHelper def course_in_current_or_next_term course is_current_term = false is_next_term = false - if course.time == Time.now.year && course.term == cur_course_term + year_now = Time.now.month < 3 ? Time.now.year - 1:Time.now.year + if course.time == year_now && course.term == cur_course_term is_current_term = true end - if cur_course_term == "秋季学期" && course.time == (Time.now.year + 1) && course.term == "春季学期" + if cur_course_term == "秋季学期" && course.time == (year_now + 1) && course.term == "春季学期" is_next_term = true - elsif cur_course_term == "春季学期" && course.time == Time.now.year && course.term == "秋季学期" + elsif cur_course_term == "春季学期" && course.time == year_now && course.term == "秋季学期" is_next_term = true end is_current_term || is_next_term From 493b7ca695f7666f8a5edd8ebbd7096bbce268a0 Mon Sep 17 00:00:00 2001 From: z9hang Date: Mon, 19 Jan 2015 16:05:18 +0800 Subject: [PATCH 109/142] =?UTF-8?q?#1821=20=E8=AF=BE=E7=A8=8B--=E4=BD=9C?= =?UTF-8?q?=E4=B8=9A=EF=BC=9A=E5=AF=BC=E5=87=BAexcel=E7=9B=B8=E5=85=B3?= =?UTF-8?q?=E9=97=AE=E9=A2=98=20=E8=B0=83=E6=95=B4=E6=A0=B7=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/locales/zh.yml | 2 +- public/stylesheets/course_group.css | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/config/locales/zh.yml b/config/locales/zh.yml index ac7c52fe2..681dfadc1 100644 --- a/config/locales/zh.yml +++ b/config/locales/zh.yml @@ -2110,7 +2110,7 @@ zh: excel_homework_list: 作品列表 excel_been_rated: 已评 excel_not_rated: 未评 - label_export_excel: 导出Excel + label_export_excel: 导出列表 label_softapplication: 应用软件 label_attending_contest: 参加竞赛 diff --git a/public/stylesheets/course_group.css b/public/stylesheets/course_group.css index 71f870a9a..b6c7f4f8c 100644 --- a/public/stylesheets/course_group.css +++ b/public/stylesheets/course_group.css @@ -41,8 +41,9 @@ input.f_2 { .st_search{ margin:10px 0;} .st_search span{ font-size:14px; font-weight:bold; color:#606060; margin-right:35px;} .st_search input{ border:1px solid #1c9ec7; height:20px; width:200px;} - a:hover.xls{ background: url('../images/icon_excel.gif') no-repeat scroll 1px 50% transparent !important; - padding: 2px 0px 3px 16px; + a:hover.xls{ /*background: url('../images/icon_excel.gif') no-repeat scroll 1px 50% transparent !important;*/ + /*padding: 2px 0px 3px 16px;*/ + background:#ffffff !important; font-family:微软雅黑 !important; font-size: 12px !important; color: #136b3b !important; From 14a1f31a1270eaef0bbaa6211026dccf203fc9cf Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Mon, 19 Jan 2015 16:43:21 +0800 Subject: [PATCH 110/142] =?UTF-8?q?1=E3=80=81=E9=A1=B9=E7=9B=AE=E5=8A=A8?= =?UTF-8?q?=E6=80=81=20->=20=E8=BF=91=E6=9C=9F=E5=8A=A8=E6=80=81=202?= =?UTF-8?q?=E3=80=81=E4=BF=AE=E5=A4=8D=E6=96=B0=E5=BB=BA=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E8=AF=BE=E7=A8=8B=E6=97=B6=EF=BC=8C=E6=8F=8F=E8=BF=B0=E4=BC=9A?= =?UTF-8?q?=E6=9C=89=E4=B8=80=E8=A1=8C=E7=A9=BA=E7=99=BD=E8=A1=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/courses/_course_form.html.erb | 4 +--- config/locales/zh.yml | 2 +- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/app/views/courses/_course_form.html.erb b/app/views/courses/_course_form.html.erb index c48d24935..d293f9ed1 100644 --- a/app/views/courses/_course_form.html.erb +++ b/app/views/courses/_course_form.html.erb @@ -127,9 +127,7 @@ <%= l(:label_new_course_description) %>      - +

    diff --git a/config/locales/zh.yml b/config/locales/zh.yml index ac7c52fe2..061baa932 100644 --- a/config/locales/zh.yml +++ b/config/locales/zh.yml @@ -748,7 +748,7 @@ zh: label_news_view_all: 查看所有新闻 label_news_added: 新闻已添加 label_settings: 配置 - label_overview: 项目动态 + label_overview: 近期动态 label_course_overview: "课程动态" label_question_student: 作业交流 #bai label_homework_commit: 提交作业 #huang From 7b9d88ecfeefd465be895efb398d961e6782be8b Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Tue, 20 Jan 2015 11:42:28 +0800 Subject: [PATCH 111/142] =?UTF-8?q?=E9=97=AE=E5=8D=B7=E8=B0=83=E6=9F=A5?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E9=87=8D=E6=96=B0=E5=8F=91=E5=B8=83=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/poll_controller.rb | 20 +++++++++++-- app/views/poll/_poll.html.erb | 43 ++++++++++++++++++++++++++++ app/views/poll/index.html.erb | 39 +------------------------ app/views/poll/republish_poll.js.erb | 1 + config/routes.rb | 1 + 5 files changed, 63 insertions(+), 41 deletions(-) create mode 100644 app/views/poll/_poll.html.erb create mode 100644 app/views/poll/republish_poll.js.erb diff --git a/app/controllers/poll_controller.rb b/app/controllers/poll_controller.rb index 739adfe1c..6890b8dd7 100644 --- a/app/controllers/poll_controller.rb +++ b/app/controllers/poll_controller.rb @@ -1,8 +1,8 @@ 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 :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 def index if @course @@ -311,6 +311,19 @@ class PollController < ApplicationController 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 def find_poll_and_course @poll = Poll.find params[:id] @@ -337,7 +350,8 @@ class PollController < ApplicationController end 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 #获取未完成的题目 diff --git a/app/views/poll/_poll.html.erb b/app/views/poll/_poll.html.erb new file mode 100644 index 000000000..8ae766516 --- /dev/null +++ b/app/views/poll/_poll.html.erb @@ -0,0 +1,43 @@ +

  • + <% if @is_teacher %> + <% if has_commit_poll?(poll.id ,User.current) %> + <%= poll.polls_name %> + <% 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 %> + + <%= poll.polls_name %> + + <% 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 %> +
  • +
  • + <%if @is_teacher && poll.polls_status == 2%> + <%= link_to l(:label_statistical_results), statistics_result_poll_path(poll.id), :class => "pollsbtn fl ml10"%> + <% end%> +
  • +
  • + <% 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%> +
  • +
  • + <% if @is_teacher && poll.polls_status == 1%> + + <%= link_to l(:button_edit), edit_poll_path(poll.id), :class => "polls_de fr ml20"%> + <% end%> +
  • +
  • + <% if @is_teacher && poll.polls_status == 2%> + <%= link_to "重新发布", republish_poll_poll_path(poll.id), :remote => true, :class => 'polls_de fr ml20' %> + <% end %> +
  • +
  • + <%= format_time poll.created_at%> +
  • \ No newline at end of file diff --git a/app/views/poll/index.html.erb b/app/views/poll/index.html.erb index e57674c7a..fa378fc7b 100644 --- a/app/views/poll/index.html.erb +++ b/app/views/poll/index.html.erb @@ -12,44 +12,7 @@
    <% @polls.each do |poll|%>
      -
    • - <% if @is_teacher %> - <% if has_commit_poll?(poll.id ,User.current) %> - <%= poll.polls_name %> - <% 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 %> - - <%= poll.polls_name %> - - <% 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 %> -
    • -
    • - <%if @is_teacher && poll.polls_status == 2%> - <%= link_to l(:label_statistical_results), statistics_result_poll_path(poll.id), :class => "pollsbtn fl ml10"%> - <% end%> -
    • -
    • - <% 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%> -
    • -
    • - <% if @is_teacher && poll.polls_status == 1%> - - <%= link_to l(:button_edit), edit_poll_path(poll.id), :class => "polls_de fr ml20"%> - <% end%> -
    • -
    • - <%= format_time poll.created_at%> -
    • + <%= render :partial => 'poll', :locals => {:poll => poll} %>
    <% end%> diff --git a/app/views/poll/republish_poll.js.erb b/app/views/poll/republish_poll.js.erb new file mode 100644 index 000000000..a7399af5b --- /dev/null +++ b/app/views/poll/republish_poll.js.erb @@ -0,0 +1 @@ +$("#polls_<%= @poll.id %>").html("<%= escape_javascript(render :partial => 'poll',:locals => {:poll => @poll}) %>"); \ No newline at end of file diff --git a/config/routes.rb b/config/routes.rb index bd1b27dee..67b0118b0 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -65,6 +65,7 @@ RedmineApp::Application.routes.draw do post 'create_poll_question' post 'commit_poll' get 'publish_poll' + get 'republish_poll' end collection do delete 'delete_poll_question' From 40d6c3b19cdb06be75220d60f9669ae592941681 Mon Sep 17 00:00:00 2001 From: alan <547533434@qq.com> Date: Tue, 20 Jan 2015 16:33:59 +0800 Subject: [PATCH 112/142] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E3=80=8A=E9=82=AE?= =?UTF-8?q?=E7=AE=B1=E5=9C=B0=E5=9D=80=E9=AA=8C=E8=AF=81=E6=98=AF=E5=90=A6?= =?UTF-8?q?=E5=AD=98=E5=9C=A8=E5=8F=8A=E5=9B=BD=E9=99=85=E5=8C=96=E7=9A=84?= =?UTF-8?q?=E7=BC=96=E5=86=99=E3=80=8B=E5=8A=9F=E8=83=BD=20Signed-off-by:?= =?UTF-8?q?=20alan=20<547533434@qq.com>?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Gemfile | 4 +++- app/controllers/account_controller.rb | 3 +++ app/models/user.rb | 2 +- config/application.rb | 5 +++++ config/environments/development.rb | 2 +- config/locales/en.yml | 11 +++++++++++ config/locales/zh.yml | 17 +++++++++++++++++ 7 files changed, 41 insertions(+), 3 deletions(-) diff --git a/Gemfile b/Gemfile index 6c2101345..5045cb822 100644 --- a/Gemfile +++ b/Gemfile @@ -18,6 +18,7 @@ gem "builder", "3.0.0" gem 'acts-as-taggable-on', '2.4.1' gem 'spreadsheet' gem 'ruby-ole' +gem 'email_verifier' group :development do gem 'better_errors', path: 'lib/better_errors' @@ -51,7 +52,8 @@ group :development, :test do gem 'ruby-prof', '~> 0.15.1' unless RUBY_PLATFORM =~ /w32/ gem 'pry' gem 'pry-nav' - + gem 'rspec-rails' , '2.13.1' + gem 'guard-rspec','2.5.0' end diff --git a/app/controllers/account_controller.rb b/app/controllers/account_controller.rb index 6c95294d7..69c2d3002 100644 --- a/app/controllers/account_controller.rb +++ b/app/controllers/account_controller.rb @@ -345,7 +345,10 @@ class AccountController < ApplicationController if user.save and token.save UserStatus.create(:user_id => user.id, :changsets_count => 0, :watchers_count => 0) Mailer.register(token).deliver + + flash[:notice] = l(:notice_account_register_done) + render action: 'email_valid', locals: {:mail => user.mail} else yield if block_given? diff --git a/app/models/user.rb b/app/models/user.rb index 52619b038..bef65fe54 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -188,7 +188,7 @@ class User < Principal validates_confirmation_of :password, :allow_nil => true validates_inclusion_of :mail_notification, :in => MAIL_NOTIFICATION_OPTIONS.collect(&:first), :allow_blank => true validate :validate_password_length - + validates_email_realness_of :mail before_create :set_mail_notification before_save :update_hashed_password before_destroy :remove_references_before_destroy diff --git a/config/application.rb b/config/application.rb index d37a9eae2..716e3875d 100644 --- a/config/application.rb +++ b/config/application.rb @@ -16,6 +16,11 @@ module RedmineApp # Application configuration should go into files in config/initializers # -- all .rb files in that directory are automatically loaded. + # verifier if email is real + EmailVerifier.config do |config| + config.verifier_email = "lizanle521@126.com" + end + # Custom directories with classes and modules you want to be autoloadable. config.autoload_paths += %W(#{config.root}/lib) diff --git a/config/environments/development.rb b/config/environments/development.rb index 9d3cbf244..8bec9789c 100644 --- a/config/environments/development.rb +++ b/config/environments/development.rb @@ -13,7 +13,7 @@ RedmineApp::Application.configure do config.action_controller.perform_caching = false # Don't care if the mailer can't send - config.action_mailer.raise_delivery_errors = false + config.action_mailer.raise_delivery_errors = true config.active_support.deprecation = :log end diff --git a/config/locales/en.yml b/config/locales/en.yml index dd79a546c..d25ba6ae2 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -71,6 +71,14 @@ en: one: "almost 1 year" other: "almost %{count} years" + errors: + messages: + email_verifier: + email_not_real: must point to a real mail account + out_of_mail_server: appears to point to dead mail server + no_mail_server: appears to point to domain which doesn't handle e-mail + failure: could not be checked if is real + exception: could not be sent number: format: separator: "." @@ -130,6 +138,9 @@ en: circular_dependency: "This relation would create a circular dependency" cant_link_an_issue_with_a_descendant: "An issue cannot be linked to one of its subtasks" + + + actionview_instancetag_blank_option: Please select attachment_all: "All" diff --git a/config/locales/zh.yml b/config/locales/zh.yml index ac7c52fe2..ea045f29b 100644 --- a/config/locales/zh.yml +++ b/config/locales/zh.yml @@ -2,6 +2,10 @@ # Chinese (China) translations for Ruby on Rails # by tsechingho (http://github.com/tsechingho) zh: + + + + # Text direction: Left-to-Right (ltr) or Right-to-Left (rtl) direction: ltr jquery: @@ -30,6 +34,17 @@ zh: - :month - :day + + errors: + messages: + email_verifier: + email_not_real: 必须指定一个真实的邮箱地址 + out_of_mail_server: 指向了一个已停用的邮箱服务器 + no_mail_server: 域名地址没有邮件功能 + failure: 邮箱地址不能被验证 + exception: 邮箱不能发送成功 + + time: formats: default: "%Y年%b%d日 %A %H:%M:%S" @@ -138,6 +153,8 @@ zh: circular_dependency: "此关联将导致循环依赖" cant_link_an_issue_with_a_descendant: "问题不能关联到它的子任务" + + actionview_instancetag_blank_option: 请选择 attachment_all: "全部" From 77cb2b08934bc5569c0e702db6ab06978665808f Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Tue, 20 Jan 2015 16:50:16 +0800 Subject: [PATCH 113/142] =?UTF-8?q?1.=E4=BF=AE=E6=94=B9=E5=AD=A6=E7=94=9F?= =?UTF-8?q?=E5=B7=B2=E5=AE=8C=E6=88=90=E7=9A=84=E9=97=AE=E5=8D=B7=E6=A0=87?= =?UTF-8?q?=E9=A2=98=E8=BF=87=E9=95=BF=E6=97=B6=E6=98=BE=E7=A4=BA=E5=BC=82?= =?UTF-8?q?=E5=B8=B8=202.=E5=A2=9E=E5=8A=A0=E5=8F=96=E6=B6=88=E5=8F=91?= =?UTF-8?q?=E5=B8=83=E6=97=B6=E7=9A=84=E6=8F=90=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/poll/_poll.html.erb | 4 ++- app/views/poll/_poll_republish.html.erb | 44 +++++++++++++++++++++++++ app/views/poll/index.html.erb | 27 +++++++++++++++ public/stylesheets/polls.css | 2 +- 4 files changed, 75 insertions(+), 2 deletions(-) create mode 100644 app/views/poll/_poll_republish.html.erb diff --git a/app/views/poll/_poll.html.erb b/app/views/poll/_poll.html.erb index 8ae766516..dea4e175b 100644 --- a/app/views/poll/_poll.html.erb +++ b/app/views/poll/_poll.html.erb @@ -35,7 +35,9 @@
  • <% if @is_teacher && poll.polls_status == 2%> - <%= link_to "重新发布", republish_poll_poll_path(poll.id), :remote => true, :class => 'polls_de fr ml20' %> + + 取消发布 + <% end %>
  • diff --git a/app/views/poll/_poll_republish.html.erb b/app/views/poll/_poll_republish.html.erb new file mode 100644 index 000000000..3688ba883 --- /dev/null +++ b/app/views/poll/_poll_republish.html.erb @@ -0,0 +1,44 @@ + + + + + + + +
    +
    +
    +

    + 问卷取消发布后学生提交的问卷答案将会被清空, +
    + 是否确定取消发布该问卷? +

    +
    + <%= link_to "确 定",republish_poll_poll_path(poll.id), :class => "upload_btn", :onclick => "clickCanel();" %> + + 取  消 + +
    +
    +
    + +
    + +
    + + + diff --git a/app/views/poll/index.html.erb b/app/views/poll/index.html.erb index fa378fc7b..043e6898b 100644 --- a/app/views/poll/index.html.erb +++ b/app/views/poll/index.html.erb @@ -1,4 +1,31 @@ <%= stylesheet_link_tag 'polls', :media => 'all' %> +

    所有问卷 diff --git a/public/stylesheets/polls.css b/public/stylesheets/polls.css index 58ae913b0..4141164c4 100644 --- a/public/stylesheets/polls.css +++ b/public/stylesheets/polls.css @@ -27,7 +27,7 @@ a.newbtn{ float:right; display:block; width:80px; height:30px; background:#64bdd a:hover.newbtn{ background:#55a1b9; text-decoration:none;} .polls_list ul{ padding-left:10px; border-bottom:1px dashed #c9c9c9; height:32px; padding-top:8px;} a.polls_title{ font-weight:bold; color:#3e6d8e;max-width: 350px;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;} -.polls_title{ font-weight:bold; color:#3e6d8e;} +.polls_title{ font-weight:bold; color:#3e6d8e;max-width: 350px;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;} a.pollsbtn{ display:block; width:66px; height:22px; text-align:center; border:1px solid #64bdd9; color:#64bdd9;} a:hover.pollsbtn{ background:#64bdd9; color:#fff; text-decoration:none;} .polls_date{ color:#666666;} From f3062da237ba7a010bc708a1a119a3ab4149b93c Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Wed, 21 Jan 2015 09:18:29 +0800 Subject: [PATCH 114/142] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=A9=BA=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=97=B6=EF=BC=8C=E8=AF=BE=E7=A8=8B=E9=A6=96=E9=A1=B5?= =?UTF-8?q?=E6=97=A0=E6=B3=95=E5=8A=A0=E8=BD=BD(=E5=B1=85=E7=84=B6?= =?UTF-8?q?=E6=98=AF=E6=AD=BB=E5=BE=AA=E7=8E=AF=E3=80=82=E3=80=82=E3=80=82?= =?UTF-8?q?)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/welcome/course.html.erb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/views/welcome/course.html.erb b/app/views/welcome/course.html.erb index 927734b24..d427a9aea 100644 --- a/app/views/welcome/course.html.erb +++ b/app/views/welcome/course.html.erb @@ -122,6 +122,7 @@ else course_term = "春季学期" end%> + <%break if Time.new.strftime("%Y").to_i - year_now >= 2%> <% all_new_hot_course += find_all_new_hot_course(course_count-all_new_hot_course.count, @school_id, year_now, course_term)%> <% end%> <%= render :partial => 'course_list', :locals => {:course_list => all_new_hot_course} %> @@ -152,6 +153,7 @@ else course_term = "春季学期" end%> + <%break if Time.new.strftime("%Y").to_i - year_now >= 2%> <% all_new_hot_course += find_all_new_hot_course(9-(all_new_hot_course.count + cur_school_course.count), @school_id, year_now, course_term)%> <% end%> <%= render :partial => 'course_list', :locals => {:course_list => all_new_hot_course} %> From 402dfc788fbd5840a34984eb7f942f013de2d08d Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Wed, 21 Jan 2015 09:55:40 +0800 Subject: [PATCH 115/142] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=96=B0=E5=BB=BA?= =?UTF-8?q?=E9=97=AE=E5=8D=B7=E6=97=B6=E9=97=AE=E5=8D=B7=E5=90=8D=E7=A7=B0?= =?UTF-8?q?=E9=BB=98=E8=AE=A4=E4=B8=BA=E7=A9=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/poll_controller.rb | 2 +- app/views/poll/_show_head.html.erb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/app/controllers/poll_controller.rb b/app/controllers/poll_controller.rb index 6890b8dd7..2fc586711 100644 --- a/app/controllers/poll_controller.rb +++ b/app/controllers/poll_controller.rb @@ -40,7 +40,7 @@ class PollController < ApplicationController def new if @course option = { - :polls_name => l(:label_poll_new), + :polls_name => "", :polls_type => @course.class.to_s, :polls_group_id => @course.id, :polls_status => 1, diff --git a/app/views/poll/_show_head.html.erb b/app/views/poll/_show_head.html.erb index ce74dc10a..7ab16b24d 100644 --- a/app/views/poll/_show_head.html.erb +++ b/app/views/poll/_show_head.html.erb @@ -1,7 +1,7 @@

    - <%= poll.polls_name%> + <%= poll.polls_name.empty? ? l(:label_poll_new) : poll.polls_name%>

    <%= @poll.polls_description%> From 3bdaeb20c217bac98a682aa3b88ecb1dbd7536c3 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Wed, 21 Jan 2015 11:14:01 +0800 Subject: [PATCH 116/142] =?UTF-8?q?1=E3=80=81=E4=BF=AE=E6=94=B9=E9=97=AE?= =?UTF-8?q?=E5=8D=B7=E5=88=97=E8=A1=A8=E9=A1=B5=E9=9D=A2=E6=A0=B7=E5=BC=8F?= =?UTF-8?q?=202=E3=80=81=E9=97=AE=E5=8D=B7=E5=88=97=E8=A1=A8=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E5=8F=91=E5=B8=83=E9=97=AE=E5=8D=B7=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=203=E3=80=81=E5=A2=9E=E5=8A=A0js=E8=BF=94=E5=9B=9E=E6=96=B9?= =?UTF-8?q?=E5=BC=8F=204=E3=80=81=E5=8E=BB=E6=8E=89=E6=97=A0=E7=94=A8?= =?UTF-8?q?=E7=9A=84js=E5=87=BD=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/poll_controller.rb | 8 +++- app/views/poll/_poll.html.erb | 64 +++++++++++++++++-------- app/views/poll/_poll_form.html.erb | 2 +- app/views/poll/_poll_republish.html.erb | 12 ----- app/views/poll/_poll_submit.html.erb | 16 +------ app/views/poll/index.html.erb | 24 ++++++++++ app/views/poll/publish_poll.js.erb | 2 + app/views/poll/republish_poll.js.erb | 3 +- public/stylesheets/polls.css | 15 +++++- 9 files changed, 94 insertions(+), 52 deletions(-) create mode 100644 app/views/poll/publish_poll.js.erb diff --git a/app/controllers/poll_controller.rb b/app/controllers/poll_controller.rb index 2fc586711..42ab98e10 100644 --- a/app/controllers/poll_controller.rb +++ b/app/controllers/poll_controller.rb @@ -187,7 +187,13 @@ class PollController < ApplicationController @poll.polls_status = 2 @poll.published_at = Time.now if @poll.save - redirect_to poll_index_url(:polls_type => "Course", :polls_group_id => @course.id) + if params[:is_remote] + redirect_to poll_index_url(:polls_type => "Course", :polls_group_id => @course.id) + else + respond_to do |format| + format.js + end + end end end diff --git a/app/views/poll/_poll.html.erb b/app/views/poll/_poll.html.erb index dea4e175b..cc7e88547 100644 --- a/app/views/poll/_poll.html.erb +++ b/app/views/poll/_poll.html.erb @@ -1,23 +1,44 @@ +<% has_commit = has_commit_poll?(poll.id ,User.current)%>

  • <% if @is_teacher %> - <% if has_commit_poll?(poll.id ,User.current) %> - <%= poll.polls_name %> + <% if has_commit %> + + <%= poll.polls_name.empty? ? l(:label_poll_new) : poll.polls_name%> + <% else %> - <%= link_to poll.polls_name, poll_path(poll.id), :class => "polls_title fl" %> + <%= link_to (poll.polls_name.empty? ? l(:label_poll_new) : poll.polls_name), poll_path(poll.id), :class => "polls_title polls_title_w fl" %> <% end %> <% else %> - <% if has_commit_poll?(poll.id ,User.current) && poll.polls_status == 2 %> + <% if has_commit && poll.polls_status == 2 %> - <%= poll.polls_name %> + <%= poll.polls_name.empty? ? l(:label_poll_new) : poll.polls_name %> - <% 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" %> + <% elsif !has_commit && poll.polls_status == 2 %> + <%= link_to (poll.polls_name.empty? ? l(:label_poll_new) : poll.polls_name), poll_path(poll.id), :class => "polls_title polls_title_w fl" %> <% end %> <% end %>
  • +<% if !@is_teacher && has_commit && poll.polls_status == 2%> +
  • 已答
  • +<% end %> + +<%if @is_teacher%> + <% if poll.polls_status == 1 %> +
  • 统计结果
  • + <% elsif poll.polls_status == 2%> +
  • + <%= link_to l(:label_statistical_results), statistics_result_poll_path(poll.id), :class => "pollsbtn fl ml10"%> +
  • + <% end%> +<% end%> +
  • - <%if @is_teacher && poll.polls_status == 2%> - <%= link_to l(:label_statistical_results), statistics_result_poll_path(poll.id), :class => "pollsbtn fl ml10"%> + <%if @is_teacher %> + <% if poll.polls_status == 1 %> + 发布问卷 + <% elsif poll.polls_status == 2%> + 取消发布 + <% end%> <% end%>
  • @@ -28,18 +49,21 @@ <% end%>
  • - <% if @is_teacher && poll.polls_status == 1%> - - <%= link_to l(:button_edit), edit_poll_path(poll.id), :class => "polls_de fr ml20"%> + <% if @is_teacher%> + <% if poll.polls_status == 1 %> + <%= link_to l(:button_edit), edit_poll_path(poll.id), :class => "polls_de fr ml20"%> + <% elsif poll.polls_status == 2%> +
  • 编辑
  • + <% end%> <% end%>

  • -
  • - <% if @is_teacher && poll.polls_status == 2%> - - 取消发布 - - <% end %> -
  • -
  • + + + + + + + +
  • <%= format_time poll.created_at%>
  • \ No newline at end of file diff --git a/app/views/poll/_poll_form.html.erb b/app/views/poll/_poll_form.html.erb index bbf71e0ce..6ce4137a3 100644 --- a/app/views/poll/_poll_form.html.erb +++ b/app/views/poll/_poll_form.html.erb @@ -57,7 +57,7 @@ function poll_submit() { - $('#ajax-modal').html('<%= escape_javascript(render :partial => 'poll_submit', locals: { poll: @poll}) %>'); + $('#ajax-modal').html('<%= escape_javascript(render :partial => 'poll_submit', locals: { :poll => @poll},:is_remote => false) %>'); showModal('ajax-modal', '310px'); $('#ajax-modal').css('height','110px'); $('#ajax-modal').siblings().remove(); diff --git a/app/views/poll/_poll_republish.html.erb b/app/views/poll/_poll_republish.html.erb index 3688ba883..3f93b6b3d 100644 --- a/app/views/poll/_poll_republish.html.erb +++ b/app/views/poll/_poll_republish.html.erb @@ -2,18 +2,6 @@ diff --git a/app/views/poll/_poll_submit.html.erb b/app/views/poll/_poll_submit.html.erb index cdc41dd9d..af3ca2d42 100644 --- a/app/views/poll/_poll_submit.html.erb +++ b/app/views/poll/_poll_submit.html.erb @@ -2,18 +2,6 @@ @@ -27,16 +15,14 @@ 是否确定发布该问卷?

    - <%= link_to "确 定",publish_poll_poll_path(poll.id), :class => "upload_btn", :onclick => "clickCanel();" %> + <%= link_to "确 定",publish_poll_poll_path(poll.id,:is_remote => is_remote), :class => "upload_btn", :onclick => "clickCanel();" %> 取  消
    - - diff --git a/app/views/poll/index.html.erb b/app/views/poll/index.html.erb index 043e6898b..de30b5deb 100644 --- a/app/views/poll/index.html.erb +++ b/app/views/poll/index.html.erb @@ -25,6 +25,30 @@ } function clickCanel(){hideModal("#popbox02");} + + function poll_submit(poll_id) + { + $('#ajax-modal').html("
    " + + "
    " + + "
    " + + "

    问卷发布后将不能对问卷进行修改,
    是否确定发布该问卷?

    " + + "
    " + + "确  定" + + "取  消" + + "
    " + + "
    " + + "
    " + + "
    " + + "
    "); + showModal('ajax-modal', '310px'); + $('#ajax-modal').css('height','110px'); + $('#ajax-modal').siblings().remove(); + $('#ajax-modal').before("" + + ""); + $('#ajax-modal').parent().removeClass("alert_praise"); + $('#ajax-modal').parent().css("top","").css("left",""); + $('#ajax-modal').parent().addClass("popbox_polls"); + }
    diff --git a/app/views/poll/publish_poll.js.erb b/app/views/poll/publish_poll.js.erb new file mode 100644 index 000000000..ad052f8f2 --- /dev/null +++ b/app/views/poll/publish_poll.js.erb @@ -0,0 +1,2 @@ +$("#polls_<%= @poll.id %>").html("<%= escape_javascript(render :partial => 'poll',:locals => {:poll => @poll}) %>"); +alert("发布成功"); \ No newline at end of file diff --git a/app/views/poll/republish_poll.js.erb b/app/views/poll/republish_poll.js.erb index a7399af5b..a2d8e28fa 100644 --- a/app/views/poll/republish_poll.js.erb +++ b/app/views/poll/republish_poll.js.erb @@ -1 +1,2 @@ -$("#polls_<%= @poll.id %>").html("<%= escape_javascript(render :partial => 'poll',:locals => {:poll => @poll}) %>"); \ No newline at end of file +$("#polls_<%= @poll.id %>").html("<%= escape_javascript(render :partial => 'poll',:locals => {:poll => @poll}) %>"); +alert("取消成功"); \ No newline at end of file diff --git a/public/stylesheets/polls.css b/public/stylesheets/polls.css index 4141164c4..e46aa5124 100644 --- a/public/stylesheets/polls.css +++ b/public/stylesheets/polls.css @@ -26,8 +26,8 @@ div,html,img,ul,li,p,body,h1,h2,h3,h4,p,a,table,tr,td,fieldset,input,span{ margi a.newbtn{ float:right; display:block; width:80px; height:30px; background:#64bdd9; color:#fff; font-size:14px; margin:10px; text-align:center;} a:hover.newbtn{ background:#55a1b9; text-decoration:none;} .polls_list ul{ padding-left:10px; border-bottom:1px dashed #c9c9c9; height:32px; padding-top:8px;} -a.polls_title{ font-weight:bold; color:#3e6d8e;max-width: 350px;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;} -.polls_title{ font-weight:bold; color:#3e6d8e;max-width: 350px;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;} +a.polls_title{ font-weight:bold; color:#3e6d8e;max-width: 300px;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;} +.polls_title{ font-weight:bold; color:#3e6d8e;max-width: 300px;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;} a.pollsbtn{ display:block; width:66px; height:22px; text-align:center; border:1px solid #64bdd9; color:#64bdd9;} a:hover.pollsbtn{ background:#64bdd9; color:#fff; text-decoration:none;} .polls_date{ color:#666666;} @@ -134,3 +134,14 @@ a:hover.upload_btn_grey{background:#8a8a8a;} .upload_con a:hover{ text-decoration:none;} .polls_btn_box{ width:145px; margin:0 auto; padding-left:10px;} .polls_btn_box02{ width:80px; margin:0 auto; padding-left:10px;} + +/***新增20150120***/ +.pollsbtn_tip{ width:30px; height:17px; display:block;background:url(images/icons.png) 0 -417px no-repeat;padding-left:7px; color:#fff;} +a.btn_de{ border:1px solid #ff5d31; color:#ff5d31; } +a:hover.btn_de{ background:#ff5d31;} +a.btn_pu{ border:1px solid #3cb761; color:#3cb761; } +a:hover.btn_pu{ background:#3cb761;} +.pollsbtn_grey{ border:1px solid #b1b1b1; color:#b1b1b1; padding:0px 9px; } +.polls_title_w { width:330px; overflow: hidden;white-space: nowrap;text-overflow: ellipsis;} +.polls_de_grey{ color:#b1b1b1;} +.ml5{ margin-left:5px;} From 95dcdd71251982a69348d19f79b4c2ec1d3da8d1 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Wed, 21 Jan 2015 11:18:47 +0800 Subject: [PATCH 117/142] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=BF=9B=E5=85=A5?= =?UTF-8?q?=E9=97=AE=E5=8D=B7=E7=BC=96=E8=BE=91=E7=95=8C=E9=9D=A2=E6=8A=A5?= =?UTF-8?q?=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/poll/_poll_form.html.erb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/poll/_poll_form.html.erb b/app/views/poll/_poll_form.html.erb index 6ce4137a3..b3fae8b4a 100644 --- a/app/views/poll/_poll_form.html.erb +++ b/app/views/poll/_poll_form.html.erb @@ -57,7 +57,7 @@ function poll_submit() { - $('#ajax-modal').html('<%= escape_javascript(render :partial => 'poll_submit', locals: { :poll => @poll},:is_remote => false) %>'); + $('#ajax-modal').html('<%= escape_javascript(render :partial => 'poll_submit', locals: { :poll => @poll,:is_remote => false}) %>'); showModal('ajax-modal', '310px'); $('#ajax-modal').css('height','110px'); $('#ajax-modal').siblings().remove(); From 6ccb154cc3f6e98e219645474e76370fa6c0e105 Mon Sep 17 00:00:00 2001 From: alan <547533434@qq.com> Date: Wed, 21 Jan 2015 11:33:29 +0800 Subject: [PATCH 118/142] =?UTF-8?q?=E8=AF=BE=E7=A8=8B=E7=95=99=E8=A8=80?= =?UTF-8?q?=EF=BC=8C=E5=8F=91=E9=82=AE=E4=BB=B6=E7=BB=99=E8=AF=BE=E7=A8=8B?= =?UTF-8?q?=E6=89=80=E6=9C=89=E4=BA=BA=20Signed-off-by:=20alan=20<54753343?= =?UTF-8?q?4@qq.com>?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .rspec | 2 + app/helpers/courses_helper.rb | 4 ++ app/models/journals_for_message_observer.rb | 2 + app/models/mailer.rb | 8 ++-- config/application.rb | 10 +++++ .../20150121030451_add_initial_products.rb | 11 ++++++ db/schema.rb | 2 +- spec/spec_helper.rb | 38 +++++++++++++++++++ 8 files changed, 72 insertions(+), 5 deletions(-) create mode 100644 .rspec create mode 100644 db/migrate/20150121030451_add_initial_products.rb create mode 100644 spec/spec_helper.rb diff --git a/.rspec b/.rspec new file mode 100644 index 000000000..8c18f1abd --- /dev/null +++ b/.rspec @@ -0,0 +1,2 @@ +--format documentation +--color diff --git a/app/helpers/courses_helper.rb b/app/helpers/courses_helper.rb index 411de1dcf..95b049dc2 100644 --- a/app/helpers/courses_helper.rb +++ b/app/helpers/courses_helper.rb @@ -111,6 +111,10 @@ module CoursesHelper #garble count # end + #获取课程所有成员 + def course_member course + course.members + end # 学生人数计算 # add by nwb def studentCount course diff --git a/app/models/journals_for_message_observer.rb b/app/models/journals_for_message_observer.rb index 093002a2c..0e5f29d03 100644 --- a/app/models/journals_for_message_observer.rb +++ b/app/models/journals_for_message_observer.rb @@ -1,7 +1,9 @@ # Added by young class JournalsForMessageObserver < ActiveRecord::Observer def after_create(journals_for_message) + thread1 = Thread.start do Mailer.journals_for_message_add(User.current, journals_for_message).deliver + end end end diff --git a/app/models/mailer.rb b/app/models/mailer.rb index 72e60a0bf..a2e742ee3 100644 --- a/app/models/mailer.rb +++ b/app/models/mailer.rb @@ -62,13 +62,13 @@ class Mailer < ActionMailer::Base course = journals_for_message.jour @author = journals_for_message.user #课程的教师 - @teachers = searchTeacherAndAssistant journals_for_message.jour + @members = course_member journals_for_message.jour #收件人邮箱 @recipients ||= [] - @teachers.each do |teacher| - if teacher.user.notify_about? journals_for_message + @members.each do |teacher| + @recipients << teacher.user.mail - end + end mail :to => @recipients, diff --git a/config/application.rb b/config/application.rb index 716e3875d..2f1534d00 100644 --- a/config/application.rb +++ b/config/application.rb @@ -21,6 +21,16 @@ module RedmineApp config.verifier_email = "lizanle521@126.com" end + config.generators do |g| + g.test_framework :rspec, + fixtures: true, + view_specs: false, + helper_specs: false, + routing_specs: false, + controller_specs: true, + request_specs: false + g.fixture_replacement :factory_girl, dir: "spec/factories" + end # Custom directories with classes and modules you want to be autoloadable. config.autoload_paths += %W(#{config.root}/lib) diff --git a/db/migrate/20150121030451_add_initial_products.rb b/db/migrate/20150121030451_add_initial_products.rb new file mode 100644 index 000000000..cb6006068 --- /dev/null +++ b/db/migrate/20150121030451_add_initial_products.rb @@ -0,0 +1,11 @@ +class AddInitialProducts < ActiveRecord::Migration + def up + Forum.create(:name =>"new forum", :description => "", :topic_count => "0", + :memo_count => "0", :last_memo_id =>"0", :creator_id =>"2", + :sticky =>"0", :locked =>"0") + end + + + def down + end +end diff --git a/db/schema.rb b/db/schema.rb index 2120080a0..7d10abc35 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended to check this file into your version control system. -ActiveRecord::Schema.define(:version => 20150114022710) do +ActiveRecord::Schema.define(:version => 20150121030451) do create_table "activities", :force => true do |t| t.integer "act_id", :null => false diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb new file mode 100644 index 000000000..d2cbea7d9 --- /dev/null +++ b/spec/spec_helper.rb @@ -0,0 +1,38 @@ +# This file is copied to spec/ when you run 'rails generate rspec:install' +ENV["RAILS_ENV"] ||= 'test' +require File.expand_path("../../config/environment", __FILE__) +require 'rspec/rails' +require 'rspec/autorun' + +# Requires supporting ruby files with custom matchers and macros, etc, +# in spec/support/ and its subdirectories. +Dir[Rails.root.join("spec/support/**/*.rb")].each { |f| require f } + +RSpec.configure do |config| + # ## Mock Framework + # + # If you prefer to use mocha, flexmock or RR, uncomment the appropriate line: + # + # config.mock_with :mocha + # config.mock_with :flexmock + # config.mock_with :rr + + # Remove this line if you're not using ActiveRecord or ActiveRecord fixtures + config.fixture_path = "#{::Rails.root}/spec/fixtures" + + # If you're not using ActiveRecord, or you'd prefer not to run each of your + # examples within a transaction, remove the following line or assign false + # instead of true. + config.use_transactional_fixtures = true + + # If true, the base class of anonymous controllers will be inferred + # automatically. This will be the default behavior in future versions of + # rspec-rails. + config.infer_base_class_for_anonymous_controllers = false + + # Run specs in random order to surface order dependencies. If you find an + # order dependency and want to debug it, you can fix the order by providing + # the seed, which is printed after each run. + # --seed 1234 + config.order = "random" +end From 2f8a183168b265bf9814a41cbc10577eba641bdb Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Wed, 21 Jan 2015 11:34:53 +0800 Subject: [PATCH 119/142] =?UTF-8?q?1=E3=80=81=E6=9B=BF=E6=8D=A2=E5=9B=BE?= =?UTF-8?q?=E6=A0=87=E5=9B=BE=E7=89=87=202=E3=80=81=E5=B7=B2=E7=AD=94?= =?UTF-8?q?=E9=97=AE=E5=8D=B7=E5=90=8E=E9=97=AE=E5=8D=B7=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E5=B7=B2=E7=AD=94=E6=A0=87=E5=BF=97=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/stylesheets/images/icons.png | Bin 2382 -> 2479 bytes public/stylesheets/polls.css | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/public/stylesheets/images/icons.png b/public/stylesheets/images/icons.png index 2d2b33fe1a24f741e781b935549f8172180870ad..e0ba4f4e6525285ce88227c93c3fa01348628857 100644 GIT binary patch literal 2479 zcmZ`*2~d;Q7XGskG^`2|g|H}#f}mJHksU=uF@YCamKXwxP}$NTvI`_Yw3J;)Y>-VM zQI;rM2*fBstJFwTtg;6Eu~dWr22t4pzI5Kqo6dXf%y;KIbLM{Mo_p_^Gbh&k!oq`gwU>Df>-w>_=WuqEAlrkDr}HS3oZ^_zxmlVz8eT?q)6i2qS2?1+ere;2 zGk2~XbKkNB&On;)ZPN7m*{K-mew{6rfsU`G^L;aYLpF)6lgAm4lIGBvE{hfMADjnm z63fMA)K#&pYt6mct0>H9IE)(rR3Au2Xw(5ddoeBjvq9YWPQHpqORr{dA6-D zdb@7^3*Y99`dzaR6Xp;75_gU4E=&b>4Y6nsXv3ir|Cn_2{;fI@S;b-5d2KzZ{o^Ly zX!P!(1e=%iymI=PDh-iKE`Y50JAgw!&AcjT&2u)hRtqS6-{FDc;jQ8}L(nWWhf>w| zTVmz8Fs@1e|6k!ho?d^G+>8fFal_LVcn;$Vd-YL?N79bMhk06%kyYaq*A5>j7eIy@ zP!em@5wk5tCZ*aH;e0!s+i;_n8$|mbAZew*k|vhArrL8K<2gDBA|JOekK=;__<;aK z^sm+Jkq3B(V@PeOlaHQ<`q~8DwfD3k>K5dd#vF7Tj@#jxkTrl3~DF_L`P(ALp}ay!f#23Z#7iOQIaF=Rvw* z#PI2E6*=lGaC-w`VTa5L3=yI*V|HN8z)C;}{aOX$wO)rsDA^-A-2v48po|3^F|TL> zFiZCWr)9U{3Jfm|@kpLK1=fX^`rZ3|Vq1hk3z(s&^nLqUU7W=mGsDN;*?;^9$gjc& zU0@PYVUY!^@ZBcT#ck8bZ9$^-1OCVLdH0{BZ6>S|rAwUyE5E0Vf|L0@FiCxx!&V!C zeg}WiLbfdFJsu9Y7|-WX_F>2e!gXpFuT7_D5$ezR#OXxf@X1-+80|>`b%t#NENOwu0gnTy4KS zy2jpS`^s_&%tt3b*0~-Hu1TZ_X97E2m|XlUqlt1GMihGboVxr$xRVkNj^~qe!%2wbon%JAnHP!R;JbwCpkHp#^2(<8bLqFF#AC=M z_qHE1on=a(zHm)g1Upz^ORf)R7@rYC^I~SM0v9$eX|FMdY{@0x1P>OJZ9^pQmHB~m z>WUWIMTHQ-bQfC4vNhd(^nC7=L-zP9QV%FqPdJ*7npIt9D1USRp-7_o6k*vfK6}?} z;-m$Cky%H}qfhZkJD4uu1K}X$_Q^?XIk5I2zr`M>Q0Im-rskfdUz`g*U4v6F%_SQ^*L%pTM%NT6VXWFz1sekaHYVqTwcJch>9ZsoExZ3s z-$HAIHokHgjN(2moX(Eoj&v!yA)a{fog~=U|55PiY-qAG)Il7vKtRA;21&fdBPr23 zDYv9^dMw1zwfG6Il#(glCZ~0mn?V}Fgy5qU9>DFL!p@c@=B7-4vy{sosK0z{S;Bk} zzq^so8zY6}2aeAoGBy%&@fs%^c~wq>341-;ryl3wHAZzM5P?>pozW?BBU@Yu58>~8 zM#Qv*yw(wW70o-)Ba>_MjJpPs;mj sYp6*W92!kPdDk%9tSIS!e1!qVBLZ96PYv^mVGB5R1nY6@P-xb_0kz3y2mk;8 literal 2382 zcmZ`*3pA8l8{VHWqG)o7C9r0BG?5d|Mar z6ae8y08IM>V3h@cTu7Q<(*XcPdvOl-CnAStbN!wudMdrPV|YE4Jn|@OBmujK`<;Mu zxJ@@p<%H{>OElK>Pq;RsM@f0&zU5RV*2|HrZ7AL#3effFNye*YNm~Wfym_72@`neJHLtBX5s`ccOby$7Sx^S+`hO#yY z1E_T?$Ke3Dz)bSkUt| z+;RNG=zjN(rV`4K6(K$_%op0Su`}#_% z^>m}{bXGNlbZ9@talLX+i$4uE4_-C#vHg`}g6GarG@XRWX#qxW+i0iy;_bo;WF_(c zcJN2wHxoKHz#W5lFA5lCCXMQP^4iel{D z3y&vuvAm_x>2+3+%-;V4ct(~yp|IzUd9G*H1?EXyu^JTmN1pM4>R$jfja%IjWx)z) z<{scTGDq#-nL0kQY%)EioPtaBiJ+DDX#Cu#!2CG0vuIz@3Cr-kMZGRXCk)DV7Ev<9 z*jf!KOeSL5vwhTH;kM9N|{tf*r7I#GwD_?$piKMt;10G&6dH+Cx))^JvAe5(Db2}Ku z(2hnD^U%J}U$aou+Aq#9MCUh|fB|#qxvbTcu=zmbdH+hGoQ#S{o^a*h)3CtCZ_3dO zB~Qu4gBATpwH@Z|5w@vTPywuK+HNxquNjDSTw2vtIMJ0AU9k((FD=FUBL6IAGrL_` z#r2SquKIAIX`j0ZqxVrnX}Z;PVJ7Ab`)hp1Cs#VZxJ5bMuL7lvY%c2ko<22~-&2RU@Y;D@d};d7RFZl?i0GIvPl~5c-7lH(3jW^REI8RtSQaruG|0z- z=`Cj;J>#hC{ zLX|UTScy*X8e#nOV89kZLL}`(zoZ!Z-31>V>x3H`h>RtzMFZJBvu?2XpJHr@uwsU~ zsk7cG`6)t=Gi+uZgBCAwuhK*=Gb9(YlkyK^Hsj#J)^mN%usK~E2h09$s4hkJlAN8i zzj=p7OmoSg3A(NnNJBOJwK2*1&{B4iXY2G>yFP?cmoiG#`9b7{!N{kx1|n?Eh@wwh zD^FIi1d^3i|ESX$hAw-CZS8El?pJlXsS!6GuK zKz=4A#>9Y|+U`*j9_9+OK*$-q)MafR-+0u#;{I0Nepn^8!MGIu9wyE{Y|a4nt(DXo zyy3di@@}$tWTC1LAzJ|&fpQ4=!`09-J%$@B_bF;rinu*s-mKZDW#h7I&CM%%yg;N5 zj)6OEB(yO;q-?&hHv<-$S=9o5Xl(0qsq75~U5|~mx(JGhEo?{|pz@Cnt*DW&5m#tO zkk`i7^O$!iRlw)zk$|@MrN@U)DL8UYkG!vsBmZV@5f=spi_6e0nrfY!5UN(xsGFd+ z$zUQ-f$E{?o;?vhN$9A?9blN9%zDJjmW347VWKHi)Ue3NMQ#XWnD`-6v5{7cld0_IKIfVMo`C33gQL6?e5 zorWXGn%4j7*#?%-0_vW=lOngA$S`}A?aK(VA45zyCC1B^BhD}# zTZoD%AuK;uBG2*F*HraA&8r&^8Y{4lUy_<@a*WvNFV4k_ zW5pEZ@f|36l*MU7y)$p7E>bicgTvQ8h~muGr^RWA6fhn=d}7J zHL_m#9sZn*`lj~i9XDAo`0H5h_+CQ!(mDk6uNQX3y-ao&{DlC{(Z%7}KL5DC0Rml0 AWB>pF diff --git a/public/stylesheets/polls.css b/public/stylesheets/polls.css index e46aa5124..06802285d 100644 --- a/public/stylesheets/polls.css +++ b/public/stylesheets/polls.css @@ -136,7 +136,7 @@ a:hover.upload_btn_grey{background:#8a8a8a;} .polls_btn_box02{ width:80px; margin:0 auto; padding-left:10px;} /***新增20150120***/ -.pollsbtn_tip{ width:30px; height:17px; display:block;background:url(images/icons.png) 0 -417px no-repeat;padding-left:7px; color:#fff;} +.pollsbtn_tip{ width:30px; height:17px; display:block;background:url(images/icons.png) 0 -372px no-repeat;padding-left:7px; color:#fff;} a.btn_de{ border:1px solid #ff5d31; color:#ff5d31; } a:hover.btn_de{ background:#ff5d31;} a.btn_pu{ border:1px solid #3cb761; color:#3cb761; } From a53831a6b5f35f107bd4087b020ef6a984bda3f9 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Wed, 21 Jan 2015 11:44:49 +0800 Subject: [PATCH 120/142] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=BD=93=E9=97=AE?= =?UTF-8?q?=E5=8D=B7=E6=A0=87=E9=A2=98=E8=BF=87=E9=95=BF=E6=97=B6=EF=BC=8C?= =?UTF-8?q?=E5=AD=A6=E7=94=9F=E6=9F=A5=E7=9C=8B=E9=97=AE=E5=8D=B7=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E7=9C=81=E7=95=A5=E5=8F=B7=E8=BF=87=E6=97=A9=E5=87=BA?= =?UTF-8?q?=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/poll/_poll.html.erb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/views/poll/_poll.html.erb b/app/views/poll/_poll.html.erb index cc7e88547..3290ff2dc 100644 --- a/app/views/poll/_poll.html.erb +++ b/app/views/poll/_poll.html.erb @@ -10,11 +10,11 @@ <% end %> <% else %> <% if has_commit && poll.polls_status == 2 %> - + <%= poll.polls_name.empty? ? l(:label_poll_new) : poll.polls_name %> <% elsif !has_commit && poll.polls_status == 2 %> - <%= link_to (poll.polls_name.empty? ? l(:label_poll_new) : poll.polls_name), poll_path(poll.id), :class => "polls_title polls_title_w fl" %> + <%= link_to (poll.polls_name.empty? ? l(:label_poll_new) : poll.polls_name), poll_path(poll.id), :class => "polls_title polls_title_w fl", :style => "max-width: 550px;width: 550px;" %> <% end %> <% end %> From 77b8bf18c8f042c02f783e85c23246ef18c6929e Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Wed, 21 Jan 2015 11:50:33 +0800 Subject: [PATCH 121/142] =?UTF-8?q?#1842=20=E4=BF=AE=E6=94=B9=E9=83=A8?= =?UTF-8?q?=E5=88=86=E9=A1=B5=E9=9D=A2=E6=8F=8F=E8=BF=B0=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/poll/_edit_MCQ.html.erb | 2 +- app/views/poll/_new_MCQ.html.erb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/app/views/poll/_edit_MCQ.html.erb b/app/views/poll/_edit_MCQ.html.erb index 613fed371..129f50e94 100644 --- a/app/views/poll/_edit_MCQ.html.erb +++ b/app/views/poll/_edit_MCQ.html.erb @@ -18,7 +18,7 @@
    - + />
    diff --git a/app/views/poll/_new_MCQ.html.erb b/app/views/poll/_new_MCQ.html.erb index de9dc9f08..027a1c1f6 100644 --- a/app/views/poll/_new_MCQ.html.erb +++ b/app/views/poll/_new_MCQ.html.erb @@ -3,7 +3,7 @@
    - +
    From f01d164295ea186cf827a4e551baed20b9b0ed61 Mon Sep 17 00:00:00 2001 From: alan <547533434@qq.com> Date: Wed, 21 Jan 2015 12:01:02 +0800 Subject: [PATCH 122/142] Signed-off-by: alan <547533434@qq.com> --- app/helpers/courses_helper.rb | 2 +- app/models/mailer.rb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/app/helpers/courses_helper.rb b/app/helpers/courses_helper.rb index 95b049dc2..22eb9bfae 100644 --- a/app/helpers/courses_helper.rb +++ b/app/helpers/courses_helper.rb @@ -112,7 +112,7 @@ module CoursesHelper # end #获取课程所有成员 - def course_member course + def course_all_member course course.members end # 学生人数计算 diff --git a/app/models/mailer.rb b/app/models/mailer.rb index a2e742ee3..2cd069175 100644 --- a/app/models/mailer.rb +++ b/app/models/mailer.rb @@ -62,7 +62,7 @@ class Mailer < ActionMailer::Base course = journals_for_message.jour @author = journals_for_message.user #课程的教师 - @members = course_member journals_for_message.jour + @members = course_all_member journals_for_message.jour #收件人邮箱 @recipients ||= [] @members.each do |teacher| From 520e9c73aa34be5f9983f9bf1820f35311c91102 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Wed, 21 Jan 2015 14:30:19 +0800 Subject: [PATCH 123/142] =?UTF-8?q?#1836=20=E6=9C=AA=E7=99=BB=E5=BD=95?= =?UTF-8?q?=E6=88=96=E8=80=85=E6=B2=A1=E6=9C=89=E6=9D=83=E9=99=90=E8=AE=BF?= =?UTF-8?q?=E9=97=AE=E7=A7=81=E6=9C=89=E9=A1=B9=E7=9B=AE=E6=97=B6=EF=BC=8C?= =?UTF-8?q?=E8=B7=B3=E8=BD=AC=E5=88=B0403=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/projects_controller.rb | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/app/controllers/projects_controller.rb b/app/controllers/projects_controller.rb index d3df57982..24a3ff19f 100644 --- a/app/controllers/projects_controller.rb +++ b/app/controllers/projects_controller.rb @@ -558,6 +558,11 @@ class ProjectsController < ApplicationController # Show @project def show + if(@project && !@project.is_public && !User.current.member_of?(@project)) + render_403 + return + end + @project_type = params[:project_type] # try to redirect to the requested menu item From 7ee17b6d7ceb038ee5d24f8045868237daefc275 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Wed, 21 Jan 2015 15:43:15 +0800 Subject: [PATCH 124/142] =?UTF-8?q?=E8=B0=83=E6=95=B4=E9=97=AE=E5=8D=B7?= =?UTF-8?q?=E7=95=8C=E9=9D=A2=E5=B7=A6=E8=BE=B9=E8=BE=B9=E8=B7=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/stylesheets/polls.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/stylesheets/polls.css b/public/stylesheets/polls.css index 06802285d..e601d231d 100644 --- a/public/stylesheets/polls.css +++ b/public/stylesheets/polls.css @@ -19,7 +19,7 @@ div,html,img,ul,li,p,body,h1,h2,h3,h4,p,a,table,tr,td,fieldset,input,span{ margi .polls_btn span{ color:#15bed1; font-size:12px; font-weight:normal;} /*问卷列表*/ -.polls_content{ width:615px;} +.polls_content{ width:615px;padding-left: 6px;} .polls_head{ width:677px; height:48px; background:#eaeaea;} .polls_head h2{ float:left; font-size:14px; color:#585858; margin:11px 0 0 10px;} .polls_head span{ font-weight:normal; color:#15bccf;} From d68486669e5712e268769fde68fceac04392d985 Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Wed, 21 Jan 2015 16:07:44 +0800 Subject: [PATCH 125/142] =?UTF-8?q?#1830=E8=AF=BE=E7=A8=8B--=E6=A0=87?= =?UTF-8?q?=E7=AD=BE=E5=AD=97=E4=BD=93=E5=8E=8B=E7=BA=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/courses/member.html.erb | 2 +- public/stylesheets/course_group.css | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/app/views/courses/member.html.erb b/app/views/courses/member.html.erb index 2599760ad..803be3731 100644 --- a/app/views/courses/member.html.erb +++ b/app/views/courses/member.html.erb @@ -56,7 +56,7 @@ <%= stylesheet_link_tag 'course_group', :media => 'all' %> -
    +
    + + + diff --git a/app/views/projects/join_project.js.erb b/app/views/projects/join_project.js.erb new file mode 100644 index 000000000..f3bdfb50a --- /dev/null +++ b/app/views/projects/join_project.js.erb @@ -0,0 +1,9 @@ +$('#ajax-modal').html('<%= escape_javascript(render :partial => 'projects/join_project') %>'); +showModal('ajax-modal', '510px'); +$('#ajax-modal').css('height','260px'); +$('#ajax-modal').siblings().remove(); +$('#ajax-modal').before("" + + ""); +$('#ajax-modal').parent().removeClass("alert_praise"); +$('#ajax-modal').parent().css("top","").css("left",""); +$('#ajax-modal').parent().addClass("alert_box"); diff --git a/app/views/welcome/index.html.erb b/app/views/welcome/index.html.erb index 0dc62c6a3..3e341bd27 100644 --- a/app/views/welcome/index.html.erb +++ b/app/views/welcome/index.html.erb @@ -66,6 +66,9 @@ :course => 0, :project_type =>( @project_type||=0)}, :class => 'icon icon-add') if User.current.allowed_to?(:add_project, nil, :global => true) %> +      + <%= link_to l(:label_join_project), join_project_projects_path ,:remote => true, :class => 'icon icon-add' %> +      <% end %>
    diff --git a/config/locales/zh.yml b/config/locales/zh.yml index bd6c6dc22..fbdee1d1f 100644 --- a/config/locales/zh.yml +++ b/config/locales/zh.yml @@ -2282,4 +2282,5 @@ zh: label_answer: 答案: label_poll_answer_valid_result: 以上为有效问答题答案! label_answer_total: 总计: + label_join_project: 加入项目 diff --git a/config/routes.rb b/config/routes.rb index 524373378..65498e4ec 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -377,6 +377,10 @@ RedmineApp::Application.routes.draw do match 'copy', :via => [:get, :post] end + collection do + match 'join_project', :via => [:get, :post] + end + #by young match '/member', :to => 'projects#member', :as => 'member', :via => :get match '/file', :to => 'projects#file', :as => 'file', :via => :get From 8f1249390a46a1804fc8bd659cdbc451f070a741 Mon Sep 17 00:00:00 2001 From: alan <547533434@qq.com> Date: Thu, 22 Jan 2015 17:31:34 +0800 Subject: [PATCH 132/142] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E3=80=8A=E5=8F=91?= =?UTF-8?q?=E9=80=81=E5=A4=9A=E5=B0=81=E7=9B=B8=E5=90=8C=E9=82=AE=E4=BB=B6?= =?UTF-8?q?=E3=80=8B=20Signed-off-by:=20alan=20<547533434@qq.com>?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/mailer.rb | 11 ++++++++--- app/models/project.rb | 2 +- app/views/mailer/issue_edit.html.erb | 2 +- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/app/models/mailer.rb b/app/models/mailer.rb index 02684a187..23ac36054 100644 --- a/app/models/mailer.rb +++ b/app/models/mailer.rb @@ -147,8 +147,10 @@ class Mailer < ActionMailer::Base @project_url = url_for(:controller => 'projects', :action => 'show', :id => issue.project_id, :token => @token.value) @user_url = url_for(my_account_url(user,:token => @token.value)) - - cc = issue.watcher_recipients - issue.recipients + cc = nil + if recipients == issue.recipients[0] + cc = issue.watcher_recipients - issue.recipients + end subject = "[#{issue.project.name} - #{issue.tracker.name} ##{issue_id}] (#{issue.status.name}) #{issue.subject}" mail(:to => recipients, :cc => cc, @@ -197,8 +199,11 @@ class Mailer < ActionMailer::Base # Watchers in cc + cc = nil + if recipients == journal.recipients[0] + cc = journal.watcher_recipients - journal.recipients + end - cc = journal.watcher_recipients - journal.recipients s = "[#{issue.project.name} - #{issue.tracker.name} ##{issue_id}] " s << "(#{issue.status.name}) " if journal.new_value_for('status_id') s << issue.subject diff --git a/app/models/project.rb b/app/models/project.rb index 01e6cd91c..14763347f 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -600,7 +600,7 @@ class Project < ActiveRecord::Base # Returns the users that should be notified on project events def notified_users # TODO: User part should be extracted to User#notify_about? - members.select {|m| m.principal.present? && (m.mail_notification? || m.principal.mail_notification == 'all' || m.principal.mail_notification == 'only_my_events' ||m.principal.mail_notification == 'selected')}.collect {|m| m.principal} + members.select {|m| m.principal.present? && (m.mail_notification? || m.principal.mail_notification == 'all')}.collect {|m| m.principal} end # Returns an array of all custom fields enabled for project issues diff --git a/app/views/mailer/issue_edit.html.erb b/app/views/mailer/issue_edit.html.erb index 6fcb0ddb5..af167cff5 100644 --- a/app/views/mailer/issue_edit.html.erb +++ b/app/views/mailer/issue_edit.html.erb @@ -12,7 +12,7 @@ <%= l(:field_content)%>:<%= @journal.notes %>
    -
    + <%= render :partial => 'issue', :formats => [:html], :locals => { :issue => @issue, :issue_url => @issue_url } %>
    <%= link_to( l(:mail_issue_footer), @user_url) %>
    From 84bfd30fc510ec57dd044ef2bad5664ba1142261 Mon Sep 17 00:00:00 2001 From: huang Date: Thu, 22 Jan 2015 17:46:12 +0800 Subject: [PATCH 133/142] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E5=8F=8D=E9=A6=88=E5=BC=B9=E6=A1=86=EF=BC=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/layouts/_base_feedback.html.erb | 289 ++++++++++++---------- config/locales/zh.yml | 3 +- public/images/blue_line.png | Bin 0 -> 2819 bytes public/images/sidebar_bg.png | Bin 0 -> 9419 bytes 4 files changed, 164 insertions(+), 128 deletions(-) create mode 100644 public/images/blue_line.png create mode 100644 public/images/sidebar_bg.png diff --git a/app/views/layouts/_base_feedback.html.erb b/app/views/layouts/_base_feedback.html.erb index 52006e94d..ae85d9479 100644 --- a/app/views/layouts/_base_feedback.html.erb +++ b/app/views/layouts/_base_feedback.html.erb @@ -1,49 +1,122 @@ - - - - -意见反馈浮窗 + - + + + + +意见反馈 + + + - - -
    -
    - - <% get_memo %> - <%= form_for(@new_memo, :url => create_feedback_forum_path(@public_forum)) do |f| %> -
    -

    - <%= f.text_area :subject, :class => "opnionText",:placeholder => "有什么想说的,尽管来咆哮吧~~"%> -

    -

    - <%= f.hidden_field :content, :required => true ,:value=>'该贴来自用户反馈!'%> -

    - <%#= f.submit :value => l(:label_memo_create), :class => "opnionButton", :id => "button1" %> - 提  交 - <% end %> -
    - - - -
    + + +
    +
    +
    + +
    +
    + <% get_memo %> + <%= form_for(@new_memo, :url => create_feedback_forum_path(@public_forum)) do |f| %> + <%= f.text_area :subject, :class => "opnionText",:placeholder => "有什么想说的,尽管来咆哮吧~~"%> + <%= f.hidden_field :content, :required => true ,:value=>'该贴来自用户反馈!'%> + <%#= f.submit :value => l(:label_memo_create), :class => "opnionButton", :id => "button1" %> + 提  交 + <% end %> +
    + +
    +
    +
    +
    +
    提交
    - -
    -
    技术支持:
    -

    <%= l(:label_course_adcolick) %>黄井泉
    - <%= l(:label_course_adcolick) %>白羽

    -
    - -
    + + - - - + \ No newline at end of file diff --git a/config/locales/zh.yml b/config/locales/zh.yml index bd6c6dc22..fad70aabd 100644 --- a/config/locales/zh.yml +++ b/config/locales/zh.yml @@ -2282,4 +2282,5 @@ zh: label_answer: 答案: label_poll_answer_valid_result: 以上为有效问答题答案! label_answer_total: 总计: - + label_technical_support: 技术支持: + label_feedback: 意见反馈 diff --git a/public/images/blue_line.png b/public/images/blue_line.png new file mode 100644 index 0000000000000000000000000000000000000000..4ae87f34320f80b3839409e80f275f205369f5e8 GIT binary patch literal 2819 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 V1*1Is;UEA2002ovPDHLkV1lWASCaq$ literal 0 HcmV?d00001 diff --git a/public/images/sidebar_bg.png b/public/images/sidebar_bg.png new file mode 100644 index 0000000000000000000000000000000000000000..e41ea789d541cffeab9bdeed534fd1ffb17830da GIT binary patch literal 9419 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 Date: Thu, 22 Jan 2015 20:41:42 +0800 Subject: [PATCH 134/142] =?UTF-8?q?=E5=A4=9A=E7=A7=8D=E9=82=AE=E7=AE=B1?= =?UTF-8?q?=E9=82=AE=E4=BB=B6=E6=A0=B7=E5=BC=8F=E8=B0=83=E6=95=B4=EF=BC=8C?= =?UTF-8?q?=E5=9B=9E=E5=A4=8D=E5=86=85=E5=AE=B9=E6=A0=B7=E5=BC=8F=E6=9B=B4?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/layouts/mailer.html.erb | 28 +++++++++------- app/views/mailer/_issue.html.erb | 48 ++++++++++++++++------------ app/views/mailer/_issue.text.erb | 4 +++ app/views/mailer/issue_add.html.erb | 4 +-- app/views/mailer/issue_edit.html.erb | 14 ++------ app/views/mailer/issue_edit.text.erb | 8 ----- 6 files changed, 54 insertions(+), 52 deletions(-) diff --git a/app/views/layouts/mailer.html.erb b/app/views/layouts/mailer.html.erb index a05eacbd1..abb896b61 100644 --- a/app/views/layouts/mailer.html.erb +++ b/app/views/layouts/mailer.html.erb @@ -10,37 +10,43 @@ body{ font-size:12px; font-family:"微软雅黑","宋体"; line-height:1.9; back div,html,img,ul,li,p,body,h1,h2,h3,h4,p,a,table,tr,td,fieldset,input,span,ol{ margin:0; padding:0;} div,img,tr,td,table{ border:0;} table,tr,td{border:0;cellspacing:0; cellpadding:0;} +.mail{ width:600px; margin:20px; height:auto; color:#4b4b4b; font-size:14px; } ol,ul,li{ list-style-type:none} .cl{ clear:both; overflow:hidden; margin-top: 30px;} -a{ text-decoration:none; } -a:hover{ text-decoration:underline; } .mail_box,ul,li{ list-style-type:none} -.mail{ width:600px; margin:20px; height:auto; color:#4b4b4b; font-size:14px; } .mail a{color:#1b55a7; font-weight: bold; } .mail_content{ margin-top:30px;} .c_blue{ color:#1b55a7;} .mail_box{ border:1px solid #c8c8c8; width:570px; height: auto; padding:15px; margin-top:10px; margin-bottom:10px;} .mail_box_p{ float:left; display: block; width:527px;} -a.mail_reply{ display:block; float:right; width:80px; text-align:center; height:30px; background:#15bccf; color:#fff; font-weight:normal; font-size:14px;} -a:hover.mail_reply{ background:#06a9bc; text-decoration:none;} .mail_fujian{ float:left; width:527px; display: block; } .mail_fujian a{ font-weight:normal; font-size:12px;} .mail_foot a{ font-size:12px; font-weight:normal;} +a{ text-decoration:none; } +a:hover{ text-decoration:underline; } +a.mail_reply{ display:block; float:right; width:80px; text-align:center; height:30px; background:#15bccf; color:#fff; font-weight:normal; font-size:14px;} +a:hover.mail_reply{ background:#06a9bc; text-decoration:none;} + + + + + - -
    -
    -
    + + +
    +
    +

    <%= l(:mail_issue_greetings)%>

    <%= yield %>
    - <%= Redmine::WikiFormatting.to_html(Setting.text_formatting, Setting.emails_footer).html_safe %> + <%= Redmine::WikiFormatting.to_html(Setting.text_formatting, Setting.emails_footer).html_safe %>
    -
    +
    diff --git a/app/views/mailer/_issue.html.erb b/app/views/mailer/_issue.html.erb index c97c82426..d11248aff 100644 --- a/app/views/mailer/_issue.html.erb +++ b/app/views/mailer/_issue.html.erb @@ -1,32 +1,40 @@

    - - <%= link_to(h("#{@issue.author}(#{@issue.author.show_name})"), @issue_author_url) %> + + <%= link_to(h("#{@issue.author}(#{@issue.author.show_name})"), @issue_author_url , :style=>'color:#1b55a7; font-weight:bold;') %> <%= l(:mail_issue_title_userin)%> - <%= link_to(h("#{@issue.project.name}"),@project_url) %><%= l(:mail_issue_title_active)%>

    -
    -
      -
    • <%= l(:mail_issue_subject)%><%= link_to(issue.subject, issue_url) %>
    • -
    • <%= l(:mail_issue_sent_from)%><%= issue.project.name %><%= l(:mail_issue_from_project)%>
    • -
    • <%= l(:mail_issue_content)%> - <%= issue.description %> + <%= link_to(h("#{@issue.project.name}"), @project_url, :style=>'color:#1b55a7; font-weight:bold;') %><%= l(:mail_issue_title_active)%>

      +
      +
        +
      • <%= l(:mail_issue_subject)%><%= link_to(issue.subject, issue_url, :style=>'color:#1b55a7; font-weight:bold;') %>
      • +
      • <%= l(:mail_issue_sent_from)%><%= issue.project.name %><%= l(:mail_issue_from_project)%>
      • +
      • <%= l(:mail_issue_content)%> + + <% if @journal.nil? %> + <%= issue.description %> + <% else %> + <%= @journal.notes %> + <% end%> +
      • -
      • +
      • - <% unless @issue.attachments.nil? %> - <%= l(:mail_issue_attachments)%> - + <% unless @issue.attachments.nil? %> + <%= l(:mail_issue_attachments)%> + <% @issue.attachments.each do |attach| %> -

        <%= link_to_attachment(attach, :download => true, :token => @token.value, :only_path => false) %>

        - <% end %>
        - <% end %> +

        <%= link_to_attachment(attach, :download => true, :token => @token.value, :only_path => false, :style=>'color:#1b55a7; font-weight:bold;')%>

        + <% end %>
        + <% end %> -
      • +
      -
      - -
      +
      + +
      ����[left or right] -// minStatue --> ��С״̬��ֻ��show_btn -// skin --> Ƥ������ -// durationTime --> ���ʱ�� -//���� : +// ???? : float --> ????[left or right] +// minStatue --> ??С???????show_btn +// skin --> ??????? +// durationTime --> ?????? +//???? : $("#scrollsidebar2").fix({ - float : 'right', //default.left or right - minStatue : true, //default.false or true - skin : 'green', //default.gray or yellow ��blue ��green ��orange ��white + float : 'right', //default.left or right + minStatue : true, //default.false or true + skin : 'green', //default.gray or yellow ??blue ??green ??orange ??white durationTime : 1000 // }); // @@ -66,53 +66,53 @@ a:hover.opnionButton{ text-decoration:underline;} float : 'left', minStatue : false, skin : 'blue', - durationTime : 1000 + durationTime : 1000 } - var options = $.extend(defaults, options); + var options = $.extend(defaults, options); - this.each(function(){ - //��ȡ���� + this.each(function(){ + //??????? var thisBox = $(this), closeBtn = thisBox.find('.close_btn' ), show_btn = thisBox.find('.show_btn' ), sideContent = thisBox.find('.side_content'), sideList = thisBox.find('.side_list') - ; - var defaultTop = thisBox.offset().top; //�����Ĭ��top - - thisBox.css(options.float, 0); + ; + var defaultTop = thisBox.offset().top; //????????top + + thisBox.css(options.float, 0); if(options.minStatue){ $(".show_btn").css("float", options.float); sideContent.css('width', 0); show_btn.css('width', 25); - + } - //Ƥ������ + //??????? if(options.skin) thisBox.addClass('side_'+options.skin); - - - //����scroll�¼� + + + //????scroll??? $(window).bind("scroll",function(){ var offsetTop = defaultTop + $(window).scrollTop() + "px"; thisBox.animate({ top: offsetTop }, { - duration: options.durationTime, - queue: false //�˶����������붯������ + duration: options.durationTime, + queue: false //??????????????????? }); - }); - //close�¼� + }); + //close??? closeBtn.bind("click",function(){ sideContent.animate({width: '0px'},"fast"); show_btn.stop(true, true).delay(300).animate({ width: '25px'},"fast"); }); - //show�¼� + //show??? show_btn.click(function() { $(this).animate({width: '0px'},"fast"); sideContent.stop(true, true).delay(200).animate({ width: '154px'},"fast"); }); - + }); //end this.each }; @@ -132,36 +132,34 @@ function f_submit() } - + 意见反馈 - - - + - +
      -
      -
      +
      +
      <% get_memo %> <%= form_for(@new_memo, :url => create_feedback_forum_path(@public_forum)) do |f| %> - <%= f.text_area :subject, :class => "opnionText",:placeholder => "有什么想说的,尽管来咆哮吧~~"%> + <%= f.text_area :subject, :class => "opnionText",:placeholder => "有什么想说的,尽管来咆哮吧~~"%> <%= f.hidden_field :content, :required => true ,:value=>'该贴来自用户反馈!'%> <%#= f.submit :value => l(:label_memo_create), :class => "opnionButton", :id => "button1" %> - 提  交 - <% end %> -
      + 提  交 + <% end %> +
      @@ -169,9 +167,9 @@ function f_submit()
      提交
      - - + \ No newline at end of file diff --git a/app/views/poll/_poll_form.html.erb b/app/views/poll/_poll_form.html.erb index b3fae8b4a..df4859613 100644 --- a/app/views/poll/_poll_form.html.erb +++ b/app/views/poll/_poll_form.html.erb @@ -59,7 +59,7 @@ { $('#ajax-modal').html('<%= escape_javascript(render :partial => 'poll_submit', locals: { :poll => @poll,:is_remote => false}) %>'); showModal('ajax-modal', '310px'); - $('#ajax-modal').css('height','110px'); + $('#ajax-modal').css('height','115px'); $('#ajax-modal').siblings().remove(); $('#ajax-modal').before("" + ""); diff --git a/public/stylesheets/polls.css b/public/stylesheets/polls.css index e601d231d..863ee5864 100644 --- a/public/stylesheets/polls.css +++ b/public/stylesheets/polls.css @@ -14,9 +14,9 @@ div,html,img,ul,li,p,body,h1,h2,h3,h4,p,a,table,tr,td,fieldset,input,span{ margi #polls .fr{ float:right;} /*问卷按钮*/ -.polls_btn{ height:33px;border-top:1px solid #15bed1; border-bottom:1px solid #15bed1;border-right:1px solid #cee6e6; width:225px; padding:7px 0 0 15px; } -.polls_btn a{font-size:14px; color:#444444;font-weight:bold;} -.polls_btn span{ color:#15bed1; font-size:12px; font-weight:normal;} +/*.polls_btn{ height:33px;border-top:1px solid #15bed1; border-bottom:1px solid #15bed1;border-right:1px solid #cee6e6; width:225px; padding:7px 0 0 15px; }*/ +/*.polls_btn a{font-size:14px; color:#444444;font-weight:bold;}*/ +/*.polls_btn span{ color:#15bed1; font-size:12px; font-weight:normal;}*/ /*问卷列表*/ .polls_content{ width:615px;padding-left: 6px;} From 81f5a5e624b547eb301382ae2204e98a8fdb256f Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Fri, 23 Jan 2015 09:28:01 +0800 Subject: [PATCH 137/142] =?UTF-8?q?#1854=E5=AD=A6=E7=94=9F=E7=82=B9?= =?UTF-8?q?=E5=87=BB=E6=9F=A5=E7=9C=8B=E5=B7=B2=E6=8F=90=E4=BA=A4=E8=BF=87?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E5=8D=B7=E6=97=B6=EF=BC=8C=E5=A4=9A=E8=A1=8C?= =?UTF-8?q?=E4=B8=BB=E8=A7=82=E9=A2=98=E4=B8=AD=E6=98=BE=E7=A4=BA=E6=9C=89?= =?UTF-8?q?html=E5=85=83=E7=B4=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/poll/_show_mulit_result.html.erb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/poll/_show_mulit_result.html.erb b/app/views/poll/_show_mulit_result.html.erb index e54cca505..786ed9460 100644 --- a/app/views/poll/_show_mulit_result.html.erb +++ b/app/views/poll/_show_mulit_result.html.erb @@ -13,7 +13,7 @@

      - <%= get_anwser_vote_text poll_question.id,User.current.id%> + <%= get_anwser_vote_text(poll_question.id,User.current.id).html_safe%>

      From 249b08392d548cf97c999b7f4615173a2319a17c Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Fri, 23 Jan 2015 09:31:30 +0800 Subject: [PATCH 138/142] =?UTF-8?q?#1856=20=E4=BF=AE=E6=94=B9=E9=97=AE?= =?UTF-8?q?=E5=8D=B7=E5=88=97=E8=A1=A8=E9=A1=B5=E9=9D=A2=EF=BC=8C=E5=8F=91?= =?UTF-8?q?=E5=B8=83=E9=97=AE=E5=8D=B7=E3=80=81=E5=8F=96=E6=B6=88=E5=8F=91?= =?UTF-8?q?=E5=B8=83=E5=90=8E=E5=BC=B9=E5=87=BA=E7=95=8C=E9=9D=A2=E6=98=BE?= =?UTF-8?q?=E7=A4=BA=E4=B8=8D=E6=AD=A3=E7=A1=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/poll/index.html.erb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/views/poll/index.html.erb b/app/views/poll/index.html.erb index de30b5deb..a8aca1308 100644 --- a/app/views/poll/index.html.erb +++ b/app/views/poll/index.html.erb @@ -15,7 +15,7 @@ "
      " + "
    "); showModal('ajax-modal', '310px'); - $('#ajax-modal').css('height','110px'); + $('#ajax-modal').css('height','115px'); $('#ajax-modal').siblings().remove(); $('#ajax-modal').before("" + ""); @@ -41,7 +41,7 @@ "
    " + "
    "); showModal('ajax-modal', '310px'); - $('#ajax-modal').css('height','110px'); + $('#ajax-modal').css('height','115px'); $('#ajax-modal').siblings().remove(); $('#ajax-modal').before("" + ""); From f74f2e3be77198c2ae6f8fc09219390db3dce8c6 Mon Sep 17 00:00:00 2001 From: z9hang Date: Fri, 23 Jan 2015 09:34:15 +0800 Subject: [PATCH 139/142] =?UTF-8?q?exec=E6=8C=89=E9=92=AE=E6=A0=B7?= =?UTF-8?q?=E5=BC=8F=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/stylesheets/nyan.css | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/public/stylesheets/nyan.css b/public/stylesheets/nyan.css index c532e7112..ac7142c71 100644 --- a/public/stylesheets/nyan.css +++ b/public/stylesheets/nyan.css @@ -1433,8 +1433,8 @@ ul.contest-notification-list li span{ } .xls { - background: url('../images/icon_excel.gif') no-repeat scroll 1px 50% transparent; - padding: 2px 0px 3px 16px; + /*background: url('../images/icon_excel.gif') no-repeat scroll 1px 50% transparent;*/ + /*padding: 2px 0px 3px 16px;*/ font-family:微软雅黑 !important; font-size: 12px !important; color: #136b3b !important; From ae31d0b8610177c32bcce657742f5f1a064ea88b Mon Sep 17 00:00:00 2001 From: sw <939547590@qq.com> Date: Fri, 23 Jan 2015 09:42:08 +0800 Subject: [PATCH 140/142] =?UTF-8?q?#1851=E8=AF=BE=E7=A8=8B=E4=BD=9C?= =?UTF-8?q?=E4=B8=9A=E5=A2=9E=E5=8A=A0=E7=8A=B6=E6=80=81=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/bids/_bid_homework_show.html.erb | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/app/views/bids/_bid_homework_show.html.erb b/app/views/bids/_bid_homework_show.html.erb index 49325c0d4..1009f405f 100644 --- a/app/views/bids/_bid_homework_show.html.erb +++ b/app/views/bids/_bid_homework_show.html.erb @@ -56,12 +56,21 @@ <%= link_to(bid.name, course_for_bid_path(bid), :class => 'bid_path') %> - + <% if User.current.logged? && is_cur_course_student(@course) %> <% cur_user_homework = cur_user_homework_for_bid(bid) %> - 匿评中.. + <% if bid.open_anonymous_evaluation == 1 %> + <% case bid.comment_status %> + <% when 0 %> + 未开启匿评 + <% when 1 %> +   匿评中..   + <% when 2 %> +   匿评结束   + <% end %> + <% end%> <% if cur_user_homework && cur_user_homework.empty? %> From c6deffe245aceaf9ef69b932e384756bba578f18 Mon Sep 17 00:00:00 2001 From: huang Date: Fri, 23 Jan 2015 09:47:13 +0800 Subject: [PATCH 141/142] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=A6=96=E9=A1=B5?= =?UTF-8?q?=E6=A0=B7=E5=BC=8F=E6=98=BE=E7=A4=BA=E5=BC=82=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/layouts/_base_feedback.html.erb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/views/layouts/_base_feedback.html.erb b/app/views/layouts/_base_feedback.html.erb index ae85d9479..748029ee2 100644 --- a/app/views/layouts/_base_feedback.html.erb +++ b/app/views/layouts/_base_feedback.html.erb @@ -24,7 +24,7 @@ html{ overflow-x:hidden;} .msgserver { margin:10px 0 4px 4px;} .msgserver a { background:url(/images/sidebar_bg.png) no-repeat -119px -115px; padding-left:22px;} .opnionText{ width:120px; height:180px; border-color:#cecece; -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px; color:#999; padding:3px;} -a.opnionButton{ display:block; color:#fd6e2a; font-weight: bold; margin:-25px auto 0; text-align:center;} +a.opnionButton{ display:block; font-weight: bold; margin:-25px auto 0; text-align:center;} a:hover.opnionButton{ text-decoration:underline;} @@ -154,13 +154,13 @@ function f_submit() <%= f.text_area :subject, :class => "opnionText",:placeholder => "有什么想说的,尽管来咆哮吧~~"%> <%= f.hidden_field :content, :required => true ,:value=>'该贴来自用户反馈!'%> <%#= f.submit :value => l(:label_memo_create), :class => "opnionButton", :id => "button1" %> - 提  交 + 提  交 <% end %>
    From 3911450787ea8d6115f75d1dc277a0d835a9c855 Mon Sep 17 00:00:00 2001 From: z9hang Date: Fri, 23 Jan 2015 09:51:36 +0800 Subject: [PATCH 142/142] =?UTF-8?q?=E9=97=AE=E5=8D=B7=E8=B0=83=E6=9F=A5?= =?UTF-8?q?=E7=AE=80=E7=AD=94=E9=A2=98=E8=BE=93=E5=85=A5=E5=AD=97=E7=AC=A6?= =?UTF-8?q?=E8=BF=87=E5=A4=9A=E6=98=BE=E7=A4=BA=E8=B6=85=E8=BE=B9=E6=A1=86?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- db/schema.rb | 12 ++++++++++++ public/stylesheets/polls.css | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/db/schema.rb b/db/schema.rb index 7d10abc35..d0d755bd3 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -23,6 +23,18 @@ ActiveRecord::Schema.define(:version => 20150121030451) do add_index "activities", ["user_id", "act_type"], :name => "index_activities_on_user_id_and_act_type" add_index "activities", ["user_id"], :name => "index_activities_on_user_id" + create_table "api_keys", :force => true do |t| + t.string "access_token" + t.datetime "expires_at" + t.integer "user_id" + t.boolean "active", :default => true + t.datetime "created_at", :null => false + t.datetime "updated_at", :null => false + end + + add_index "api_keys", ["access_token"], :name => "index_api_keys_on_access_token" + add_index "api_keys", ["user_id"], :name => "index_api_keys_on_user_id" + create_table "applied_projects", :force => true do |t| t.integer "project_id", :null => false t.integer "user_id", :null => false diff --git a/public/stylesheets/polls.css b/public/stylesheets/polls.css index e601d231d..3870db84c 100644 --- a/public/stylesheets/polls.css +++ b/public/stylesheets/polls.css @@ -53,7 +53,7 @@ ul.wlist li a:hover{ background:#15bccf; color:#fff; text-decoration:none;} .ur_inputs label{ padding-left:10px;word-break: break-all; word-wrap: break-word;} .ur_inputs input{ margin-right:5px;} .ur_text{ height:30px;} -.ur_textbox{ border:1px solid #dcdcdc !important; color:#676765;} +.ur_textbox{ border:1px solid #dcdcdc !important; color:#676765; word-break:break-all; word-wrap:break-word;} .ur_buttons{ width:250px; margin:20px auto 10px;} a.ur_button{ display:block; width:106px; height:37px; background:#15bccf; color:#fff; font-size:16px; text-align:center; padding-top:3px; float:left; margin-right:15px;} a:hover.ur_button{ background:#0fa9bb; text-decoration:none;}