From 607c31c8c5ed2c12863dbc3897bfbf3b6eb22f41 Mon Sep 17 00:00:00 2001
From: sw <939547590@qq.com>
Date: Fri, 18 Sep 2015 16:08:59 +0800
Subject: [PATCH 01/10] =?UTF-8?q?=E7=BC=96=E8=BE=91=E5=9B=BE=E7=89=87?=
=?UTF-8?q?=E6=8C=89=E9=92=AE=E5=9B=BE=E7=89=87=E4=B8=8D=E6=AD=A3=E7=A1=AE?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
public/stylesheets/new_user.css | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/public/stylesheets/new_user.css b/public/stylesheets/new_user.css
index c15fbbccd..c8d075f93 100644
--- a/public/stylesheets/new_user.css
+++ b/public/stylesheets/new_user.css
@@ -473,7 +473,7 @@ a.homepageSearchIcon:hover {background:url(../images/nav_icon.png) -49px 3px no-
.homepageFollow {background:url(../images/homepage_icon.png) -10px -8px no-repeat; width:20px; height:20px; position:absolute; right:9px; top:9px;}
.homepageFollowCancel {background:url(../images/homepage_icon.png) -178px -8px no-repeat; width:20px; height:20px; position:absolute; right:9px; top:9px;}
.homepageEditProfile {width:16px; height:16px; border-radius:2px; background-color:#888888; position:absolute; right:5px; bottom:5px; font-size:12px; filter:alpha(opacity=50); -moz-opacity:0.5; opacity: 0.5;}
-.homepageEditProfileIcon {background:url(../images/homepage_icon.png) -14px -37px no-repeat; width:20px; height:20px; display:block;}
+.homepageEditProfileIcon {background:url(../images/homepage_icon2.png) -14px -37px no-repeat; width:20px; height:20px; display:block;}
.homepageImageName {font-size:16px; color:#484848; height:25px; float:left; font-weight: bold; max-width:90px;overflow: hidden; white-space:nowrap; text-overflow:ellipsis;}
.homepageImageSexMan {top:116px; left:5px; width:20px; height:20px; background:url(../images/homepage_icon.png) -10px -112px no-repeat; float:left;}
.homepageImageSexWomen {width: 20px;height: 20px;background: url(../images/homepage_icon.png) -10px -149px no-repeat;float: left;}
From 1d39df5469b5ae641477add3c215bc89acc3c7ca Mon Sep 17 00:00:00 2001
From: sw <939547590@qq.com>
Date: Fri, 18 Sep 2015 16:15:05 +0800
Subject: [PATCH 02/10] =?UTF-8?q?C=E6=94=B9=E4=B8=BA=E5=A4=A7=E5=86=99?=
=?UTF-8?q?=E3=80=81=E7=BC=96=E7=A8=8B=E5=B1=9E=E6=80=A7=E8=AE=BE=E7=BD=AE?=
=?UTF-8?q?=E7=9A=84=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/models/homework_detail_programing.rb | 2 +-
app/views/users/_user_programing_attr.html.erb | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/app/models/homework_detail_programing.rb b/app/models/homework_detail_programing.rb
index e5938d091..f6286a45e 100644
--- a/app/models/homework_detail_programing.rb
+++ b/app/models/homework_detail_programing.rb
@@ -4,6 +4,6 @@ class HomeworkDetailPrograming < ActiveRecord::Base
belongs_to :homework_common
def language_name
- %W(c c++).at(self.language.to_i - 1)
+ %W(C C++).at(self.language.to_i - 1)
end
end
diff --git a/app/views/users/_user_programing_attr.html.erb b/app/views/users/_user_programing_attr.html.erb
index 0bfbd379f..498005010 100644
--- a/app/views/users/_user_programing_attr.html.erb
+++ b/app/views/users/_user_programing_attr.html.erb
@@ -29,7 +29,7 @@
<% end %>
-
温馨提示:您可以在发布作业后,在作业“模拟答题”中进行标准代码的检测和提交。
+
温馨提示:您可以在发布作业后,在作业“模拟答题”中进行标准代码的检测。
确 定
From 20b4c056a8e8ae978812643ce309b3a5407dc107 Mon Sep 17 00:00:00 2001
From: sw <939547590@qq.com>
Date: Fri, 18 Sep 2015 16:19:30 +0800
Subject: [PATCH 03/10] =?UTF-8?q?=E5=8E=86=E5=8F=B2=E6=95=B0=E6=8D=AE?=
=?UTF-8?q?=EF=BC=9A=E6=99=AE=E9=80=9A=E4=BD=9C=E4=B8=9A=E6=94=B9=E4=B8=BA?=
=?UTF-8?q?=E5=8C=BF=E8=AF=84=E4=BD=9C=E4=B8=9A?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../20150918063404_normal_homework_type.rb | 8 +++
db/schema.rb | 52 +++++++++++--------
2 files changed, 39 insertions(+), 21 deletions(-)
create mode 100644 db/migrate/20150918063404_normal_homework_type.rb
diff --git a/db/migrate/20150918063404_normal_homework_type.rb b/db/migrate/20150918063404_normal_homework_type.rb
new file mode 100644
index 000000000..def3b0024
--- /dev/null
+++ b/db/migrate/20150918063404_normal_homework_type.rb
@@ -0,0 +1,8 @@
+class NormalHomeworkType < ActiveRecord::Migration
+ def up
+ HomeworkCommon.where("homework_type = 0").update_all(:homework_type => 1)
+ end
+
+ def down
+ end
+end
diff --git a/db/schema.rb b/db/schema.rb
index a3c8277bb..9749410a0 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 => 20150917071652) do
+ActiveRecord::Schema.define(:version => 20150918063404) do
create_table "activities", :force => true do |t|
t.integer "act_id", :null => false
@@ -476,6 +476,13 @@ ActiveRecord::Schema.define(:version => 20150917071652) do
add_index "delayed_jobs", ["priority", "run_at"], :name => "delayed_jobs_priority"
+ create_table "discuss_demos", :force => true do |t|
+ t.string "title"
+ t.text "body"
+ t.datetime "created_at", :null => false
+ t.datetime "updated_at", :null => false
+ end
+
create_table "documents", :force => true do |t|
t.integer "project_id", :default => 0, :null => false
t.integer "category_id", :default => 0, :null => false
@@ -490,23 +497,26 @@ ActiveRecord::Schema.define(:version => 20150917071652) do
add_index "documents", ["created_on"], :name => "index_documents_on_created_on"
add_index "documents", ["project_id"], :name => "documents_project_id"
- create_table "dts", :force => true do |t|
- t.string "IPLineCode"
- t.string "Description"
- t.string "Num"
- t.string "Variable"
- t.string "TraceInfo"
- t.string "Method"
+ create_table "dts", :primary_key => "Num", :force => true do |t|
+ t.string "Defect", :limit => 50
+ t.string "Category", :limit => 50
t.string "File"
- t.string "IPLine"
- t.string "Review"
- t.string "Category"
- t.string "Defect"
- t.string "PreConditions"
- t.string "StartLine"
+ t.string "Method"
+ t.string "Module", :limit => 20
+ t.string "Variable", :limit => 50
+ t.integer "StartLine"
+ t.integer "IPLine"
+ t.string "IPLineCode", :limit => 200
+ t.string "Judge", :limit => 15
+ t.integer "Review", :limit => 1
+ t.string "Description"
+ t.text "PreConditions", :limit => 2147483647
+ t.text "TraceInfo", :limit => 2147483647
+ t.text "Code", :limit => 2147483647
t.integer "project_id"
- t.datetime "created_at", :null => false
- t.datetime "updated_at", :null => false
+ t.datetime "created_at"
+ t.datetime "updated_at"
+ t.integer "id", :null => false
end
create_table "enabled_modules", :force => true do |t|
@@ -609,11 +619,12 @@ ActiveRecord::Schema.define(:version => 20150917071652) do
t.text "description"
t.date "publish_time"
t.date "end_time"
- t.integer "homework_type", :default => 1
+ t.integer "homework_type", :default => 1
t.string "late_penalty"
t.integer "course_id"
- t.datetime "created_at", :null => false
- t.datetime "updated_at", :null => false
+ t.datetime "created_at", :null => false
+ t.datetime "updated_at", :null => false
+ t.integer "teacher_priority", :default => 1
end
create_table "homework_detail_manuals", :force => true do |t|
@@ -906,7 +917,6 @@ ActiveRecord::Schema.define(:version => 20150917071652) do
t.datetime "created_on"
t.integer "comments_count", :default => 0, :null => false
t.integer "course_id"
- t.datetime "updated_on"
end
add_index "news", ["author_id"], :name => "index_news_on_author_id"
@@ -1318,7 +1328,7 @@ ActiveRecord::Schema.define(:version => 20150917071652) do
t.datetime "updated_at", :null => false
t.integer "late_penalty", :default => 0
t.integer "absence_penalty", :default => 0
- t.integer "system_score"
+ t.float "system_score", :default => 0.0
t.boolean "is_test", :default => false
end
From ec4c7f531da0c38235482a5bde9572e231e3cb1b Mon Sep 17 00:00:00 2001
From: sw <939547590@qq.com>
Date: Fri, 18 Sep 2015 17:16:31 +0800
Subject: [PATCH 04/10] =?UTF-8?q?=E5=8C=BF=E8=AF=84=E4=BD=9C=E4=B8=9A?=
=?UTF-8?q?=E6=88=90=E7=BB=A9=E8=AE=A1=E7=AE=97=E9=94=99=E8=AF=AF?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/models/student_work.rb | 3 +--
app/views/student_work/_evaluation_un_work.html.erb | 2 +-
2 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/app/models/student_work.rb b/app/models/student_work.rb
index a6d641c0c..cd4d81a32 100644
--- a/app/models/student_work.rb
+++ b/app/models/student_work.rb
@@ -31,9 +31,8 @@ class StudentWork < ActiveRecord::Base
else
self.system_score = last_test.test_score
end
- set_final_score self.homework_common,self
end
-
+ set_final_score self.homework_common,self
end
def set_src
self.description = last_test.src if last_test
diff --git a/app/views/student_work/_evaluation_un_work.html.erb b/app/views/student_work/_evaluation_un_work.html.erb
index caaaa2775..d3bac240d 100644
--- a/app/views/student_work/_evaluation_un_work.html.erb
+++ b/app/views/student_work/_evaluation_un_work.html.erb
@@ -57,7 +57,7 @@
- <% score = student_work.respond_to?("score") ? student_work.score : student_work.final_score - student_work.absence_penalty - student_work.late_penalty%>
+ <% score = student_work.respond_to?("score") ? student_work.score : (student_work.final_score || 0) - student_work.absence_penalty - student_work.late_penalty%>
<%= score.nil? ? "--" : format("%.1f",score)%>
<% unless score.nil?%>
From bb197897b7708de29e6b055db5c13ffd4efbe459 Mon Sep 17 00:00:00 2001
From: sw <939547590@qq.com>
Date: Fri, 18 Sep 2015 17:27:10 +0800
Subject: [PATCH 05/10] =?UTF-8?q?=E4=BD=9C=E5=93=81=E5=88=97=E8=A1=A8enter?=
=?UTF-8?q?=E9=94=AE=E6=90=9C=E7=B4=A2=EF=BC=8C=E4=BB=A5=E5=8F=8A=E6=8F=90?=
=?UTF-8?q?=E7=A4=BA=E4=BF=A1=E6=81=AF=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/views/student_work/index.html.erb | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/app/views/student_work/index.html.erb b/app/views/student_work/index.html.erb
index db704a7de..5398b7084 100644
--- a/app/views/student_work/index.html.erb
+++ b/app/views/student_work/index.html.erb
@@ -87,13 +87,13 @@
- <%= link_to "所有作品[共#{@homework.student_works.count}份]".html_safe,student_work_index_path(:homework => @homework.id),:class => "fl f14"%>
+ <%= link_to "所有作品[共#{@stundet_works.count}份]".html_safe,student_work_index_path(:homework => @homework.id),:class => "fl f14"%>
<%if @is_teacher || @homework.homework_detail_manual.comment_status == 3%>
-
From 4061aa8a143c1720601d0cc92ae9dec1bab10a29 Mon Sep 17 00:00:00 2001
From: sw <939547590@qq.com>
Date: Fri, 18 Sep 2015 17:34:44 +0800
Subject: [PATCH 06/10] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E4=BD=9C=E5=93=81?=
=?UTF-8?q?=E5=85=B3=E8=81=94=E9=A1=B9=E7=9B=AE=E6=8F=90=E7=A4=BA=E4=BF=A1?=
=?UTF-8?q?=E6=81=AF?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/helpers/student_work_helper.rb | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/app/helpers/student_work_helper.rb b/app/helpers/student_work_helper.rb
index 834b8dd61..e1cf3464e 100644
--- a/app/helpers/student_work_helper.rb
+++ b/app/helpers/student_work_helper.rb
@@ -6,7 +6,7 @@ module StudentWorkHelper
def user_projects_option
projects = User.current.projects.visible
not_have_project = []
- not_have_project << "没有可选项目,请直接为本作品创建一个项目"
+ not_have_project << "请选择关联项目"
not_have_project << 0
type = []
type << not_have_project
From ff2e3e168dca0ab7a1be40e58a518e6ae673eb8c Mon Sep 17 00:00:00 2001
From: huang
Date: Fri, 18 Sep 2015 17:49:19 +0800
Subject: [PATCH 07/10] =?UTF-8?q?=E5=BC=80=E5=90=AF/=E5=85=B3=E9=97=AD?=
=?UTF-8?q?=E5=8C=BF=E8=AF=84=E6=B6=88=E6=81=AF=E9=80=9A=E7=9F=A5?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/controllers/homework_common_controller.rb | 21 ++++++++++---------
1 file changed, 11 insertions(+), 10 deletions(-)
diff --git a/app/controllers/homework_common_controller.rb b/app/controllers/homework_common_controller.rb
index 4ce7980ce..35d6f2b85 100644
--- a/app/controllers/homework_common_controller.rb
+++ b/app/controllers/homework_common_controller.rb
@@ -206,8 +206,7 @@ class HomeworkCommonController < ApplicationController
end
@homework_detail_manual.update_column('comment_status', 2)
@statue = 1
-
-
+ # send_message_homework(@homework)
else
@statue = 2
end
@@ -219,13 +218,6 @@ class HomeworkCommonController < ApplicationController
#关闭匿评
def stop_anonymous_comment
@homework_detail_manual.update_column('comment_status', 3)
- # 关闭匿评消息提示
- # status 标记匿评状态 1为关闭 0为开启
- course = @homework.course
- course.student.each do |st|
- @homework.course_messages << CourseMessage.new(:user_id => st.user_id, :course_id => course.id, :viewed => false, :status => false)
- end
- # end
#计算缺评扣分
work_ids = "(" + @homework.student_works.map(&:id).join(",") + ")"
@homework.student_works.each do |student_work|
@@ -233,12 +225,21 @@ class HomeworkCommonController < ApplicationController
student_work.absence_penalty = absence_penalty_count > 0 ? absence_penalty_count * @homework_detail_manual.absence_penalty : 0
student_work.save
end
-
+ # send_message_homework(@homework)
respond_to do |format|
format.js
end
end
+ # 开启/关闭匿评消息通知
+ # def send_message_homework(homework)
+ # # status 标记匿评状态 1为关闭 0为开启
+ # course = @homework.course
+ # course.student.each do |st|
+ # @homework.course_messages << CourseMessage.new(:user_id => st.user_id, :course_id => course.id, :viewed => false, :status => false)
+ # end
+ # end
+
#提示
def alert_anonymous_comment
@cur_size = 0
From fb76bc8f9ae67fec35e09f6c6491b51ce0015a5a Mon Sep 17 00:00:00 2001
From: huang
Date: Fri, 18 Sep 2015 23:18:15 +0800
Subject: [PATCH 08/10] =?UTF-8?q?=E5=AE=8C=E6=88=90=E9=A1=B9=E7=9B=AE?=
=?UTF-8?q?=E9=82=80=E8=AF=B7=E6=B6=88=E6=81=AF=E9=80=9A=E7=9F=A5=E5=8F=8A?=
=?UTF-8?q?=E5=AF=B9=E5=BA=94=E9=A1=B5=E9=9D=A2=20=E8=A7=A3=E5=86=B3?=
=?UTF-8?q?=E9=98=B2=E6=B3=A8=E5=85=A5=E9=97=AE=E9=A2=98=EF=BC=88=E9=80=9A?=
=?UTF-8?q?=E8=BF=87=E9=9A=8F=E6=9C=BA6=E4=B8=BA=E5=AF=86=E7=A0=81?=
=?UTF-8?q?=EF=BC=89?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/controllers/projects_controller.rb | 12 +++++++
app/helpers/projects_helper.rb | 2 +-
app/models/forge_message.rb | 2 +-
app/models/mailer.rb | 3 +-
app/views/users/user_messages.html.erb | 33 ++++++++++++++++++-
...8134804_add_secret_key_to_forge_message.rb | 5 +++
db/schema.rb | 6 ++--
7 files changed, 57 insertions(+), 6 deletions(-)
create mode 100644 db/migrate/20150918134804_add_secret_key_to_forge_message.rb
diff --git a/app/controllers/projects_controller.rb b/app/controllers/projects_controller.rb
index 6da45c10b..71b852e01 100644
--- a/app/controllers/projects_controller.rb
+++ b/app/controllers/projects_controller.rb
@@ -464,6 +464,10 @@ class ProjectsController < ApplicationController
# by young
# include CoursesHelper
def member
+ # 消息"同意加入项目"
+ if params[:message_id]
+ message_invite(params[:message_id], params[:key])
+ end
# params[:login]为邮箱邀请用户加入,主要功能:
# 1、自动注册
# 2、加入项目、创建角色
@@ -519,6 +523,14 @@ class ProjectsController < ApplicationController
@members = paginateHelper @members
end
+ def message_invite(message_id, key)
+ forge_message = ForgeMessage.find(message_id)
+ if key == forge_message.secret_key
+ Member.create(:role_ids => [4], :user_id => forge_message.user_id, :project_id => forge_message.project_id)
+ UserGrade.create(:user_id => forge_message.user_id, :project_id => forge_message.project_id)
+ end
+ end
+
#判断指定用户是否为课程教师
def isCourseTeacher(id)
result = false
diff --git a/app/helpers/projects_helper.rb b/app/helpers/projects_helper.rb
index 7b4b9d2e4..6a865b203 100644
--- a/app/helpers/projects_helper.rb
+++ b/app/helpers/projects_helper.rb
@@ -83,7 +83,7 @@ module ProjectsHelper
elsif ivite_list.user.active?
value = "邀请已发送,等待用户加入!"
else
- value = "账号尚未激活,等待用户应答!"
+ value = "邀请已发送,等待用户激活账号!"
end
end
diff --git a/app/models/forge_message.rb b/app/models/forge_message.rb
index 0c8b3384f..0dce57598 100644
--- a/app/models/forge_message.rb
+++ b/app/models/forge_message.rb
@@ -8,7 +8,7 @@ class ForgeMessage < ActiveRecord::Base
TYPE_OF_WIKI_ACT = "Wiki"
TYPE_OF_NEWS_ACT = "News"
- attr_accessible :forge_message_id, :forge_message_type, :project_id, :user_id, :viewed
+ attr_accessible :forge_message_id, :forge_message_type, :project_id, :user_id, :viewed, :secret_key
belongs_to :forge_message ,:polymorphic => true
belongs_to :project
diff --git a/app/models/mailer.rb b/app/models/mailer.rb
index c9ab6e58e..e5ca8130e 100644
--- a/app/models/mailer.rb
+++ b/app/models/mailer.rb
@@ -89,7 +89,8 @@ class Mailer < ActionMailer::Base
# 邀请信息消息 注:forge_message_id 为邀请人ID(特殊情况)
def send_message(user, project)
- ForgeMessage.create(:user_id => user.id, :project_id => project.id, :forge_message_type => "Project_Invite",:forge_message_id => User.current.id, :viewed => false)
+ key = newpass(6).to_s
+ ForgeMessage.create(:user_id => user.id, :project_id => project.id, :forge_message_type => "ProjectInvite",:forge_message_id => User.current.id, :viewed => false, :secret_key =>key)
end
# author: alan
diff --git a/app/views/users/user_messages.html.erb b/app/views/users/user_messages.html.erb
index 5ac9f7e8e..9d1532282 100644
--- a/app/views/users/user_messages.html.erb
+++ b/app/views/users/user_messages.html.erb
@@ -74,9 +74,10 @@
<% end %>
<% end %>
- <%# 课程消息 %>
+
<% unless @message_alls.nil? %>
<% @message_alls.each do |ma| %>
+ <%# 课程消息 %>
<% if ma.class == CourseMessage %>
<% if ma.course_message_type == "News" %>
@@ -250,6 +251,7 @@
<% end %>
<% if ma.class == ForgeMessage %>
+
<% if ma.forge_message_type == "AppliedProject" %>
-
@@ -270,6 +272,35 @@
- <%= time_tag(ma.created_at).html_safe %>
<% end %>
+
+ <% if ma.forge_message_type == "ProjectInvite" %>
+ <% inviter = User.find(ma.forge_message_id) %>
+
+ -
+ <%=link_to image_tag(url_to_avatar(inviter), :width => "30", :height => "30"), user_path(inviter) %>
+
+ -
+ <%=link_to inviter, user_path(inviter), :class => "newsBlue homepageNewsPublisher" %>
+ ">邀请你加入项目:
+
+ -
+ <%= link_to ma.project, project_path(ma.project),
+ :class => "#{ma.viewed == 0 ? "newsBlack" : "newsGrey"}",
+ :onmouseover => "message_titile_show($(this),event)",
+ :onmouseout => "message_titile_hide($(this))" %>
+
+
+ <%= ma.project %>
+
+ -
+ <%=link_to "同意加入", {:controller => 'projects', :action => 'member', :id => ma.project_id, :message_id =>ma.id, :key => ma.secret_key},
+ :value => ma.secret_key,
+ :class => "green_btn_cir ml10",
+ :style => "color:#fff" %>
+
+ - <%= time_tag(ma.created_at).html_safe %>
+
+ <% end %>
<% if ma.forge_message_type == "Issue" %>
-
diff --git a/db/migrate/20150918134804_add_secret_key_to_forge_message.rb b/db/migrate/20150918134804_add_secret_key_to_forge_message.rb
new file mode 100644
index 000000000..1de5a8ae9
--- /dev/null
+++ b/db/migrate/20150918134804_add_secret_key_to_forge_message.rb
@@ -0,0 +1,5 @@
+class AddSecretKeyToForgeMessage < ActiveRecord::Migration
+ def change
+ add_column :forge_messages, :secret_key, :string
+ end
+end
diff --git a/db/schema.rb b/db/schema.rb
index d0c60e724..3ab82977a 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 => 20150917081214) do
+ActiveRecord::Schema.define(:version => 20150918135051) do
create_table "activities", :force => true do |t|
t.integer "act_id", :null => false
@@ -575,6 +575,8 @@ ActiveRecord::Schema.define(:version => 20150917081214) do
t.integer "viewed"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
+ t.string "secret_key"
+ t.string "code"
end
create_table "forums", :force => true do |t|
@@ -1329,7 +1331,7 @@ ActiveRecord::Schema.define(:version => 20150917081214) do
t.datetime "updated_at", :null => false
t.integer "late_penalty", :default => 0
t.integer "absence_penalty", :default => 0
- t.integer "system_score"
+ t.float "system_score", :default => 0.0
t.boolean "is_test", :default => false
end
From 810c0d8fe544788fefe3120010d879e743640d80 Mon Sep 17 00:00:00 2001
From: huang
Date: Sat, 19 Sep 2015 00:03:45 +0800
Subject: [PATCH 09/10] =?UTF-8?q?=E4=BD=9C=E4=B8=9A=E5=BC=80=E5=90=AF/?=
=?UTF-8?q?=E5=85=B3=E9=97=AD=E5=8C=BF=E8=AF=84=E9=82=AE=E4=BB=B6=E9=80=9A?=
=?UTF-8?q?=E7=9F=A5?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/controllers/homework_common_controller.rb | 21 +++++-----
app/models/mailer.rb | 38 ++++++++++++++++++-
...send_mail_anonymous_comment_close.html.erb | 10 +++++
...send_mail_anonymous_comment_close.text.erb | 0
.../send_mail_anonymous_comment_open.html.erb | 10 +++++
.../send_mail_anonymous_comment_open.text.erb | 0
config/locales/mailers/zh.yml | 4 +-
7 files changed, 70 insertions(+), 13 deletions(-)
create mode 100644 app/views/mailer/send_mail_anonymous_comment_close.html.erb
create mode 100644 app/views/mailer/send_mail_anonymous_comment_close.text.erb
create mode 100644 app/views/mailer/send_mail_anonymous_comment_open.html.erb
create mode 100644 app/views/mailer/send_mail_anonymous_comment_open.text.erb
diff --git a/app/controllers/homework_common_controller.rb b/app/controllers/homework_common_controller.rb
index 35d6f2b85..01a8a9010 100644
--- a/app/controllers/homework_common_controller.rb
+++ b/app/controllers/homework_common_controller.rb
@@ -206,7 +206,8 @@ class HomeworkCommonController < ApplicationController
end
@homework_detail_manual.update_column('comment_status', 2)
@statue = 1
- # send_message_homework(@homework)
+ send_message_anonymous_comment(@homework, open=true)
+ Mailer.send_mail_anonymous_comment_open(@homework).deliver
else
@statue = 2
end
@@ -225,21 +226,21 @@ class HomeworkCommonController < ApplicationController
student_work.absence_penalty = absence_penalty_count > 0 ? absence_penalty_count * @homework_detail_manual.absence_penalty : 0
student_work.save
end
- # send_message_homework(@homework)
+ send_message_anonymous_comment(@homework, open = false)
+ Mailer.send_mail_anonymous_comment_close(@homework).deliver
respond_to do |format|
format.js
end
end
# 开启/关闭匿评消息通知
- # def send_message_homework(homework)
- # # status 标记匿评状态 1为关闭 0为开启
- # course = @homework.course
- # course.student.each do |st|
- # @homework.course_messages << CourseMessage.new(:user_id => st.user_id, :course_id => course.id, :viewed => false, :status => false)
- # end
- # end
-
+ def send_message_anonymous_comment(homework, open)
+ # status 标记匿评状态 1为关闭 0为开启
+ course = @homework.course
+ course.student.each do |st|
+ @homework.course_messages << CourseMessage.new(:user_id => st.user_id, :course_id => course.id, :viewed => false, :status => open ? true : false)
+ end
+ end
#提示
def alert_anonymous_comment
@cur_size = 0
diff --git a/app/models/mailer.rb b/app/models/mailer.rb
index e5ca8130e..fd57b7031 100644
--- a/app/models/mailer.rb
+++ b/app/models/mailer.rb
@@ -47,6 +47,40 @@ class Mailer < ActionMailer::Base
MailerProxy.new(self)
end
+ # 作业匿评开启
+ def send_mail_anonymous_comment_open(homework_common)
+ course = homework_common.course
+ course.student.each do |student|
+ user = student.user
+ @subject = "#{l(:mail_homework)}#{homework_common.name} #{l(:mail_anonymous_comment_open)}"
+ @token = Token.get_token_from_user(user, 'autologin')
+ @anonymous_comment_close_url = url_for(student_work_index_url(:homework => homework_common.id, :token => @token.value))
+ @anonymous_comment_close_name = homework_common.name
+ @author = homework_common.user
+ #收件人邮箱
+ recipient = user.mail
+ mail :to => recipient,
+ :subject => @subject
+ end
+ end
+
+ # 作业匿评关闭
+ def send_mail_anonymous_comment_close(homework_common)
+ course = homework_common.course
+ course.student.each do |student|
+ user = student.user
+ @subject = "#{l(:mail_homework)}#{homework_common.name} #{l(:mail_anonymous_comment_open)}"
+ @token = Token.get_token_from_user(user, 'autologin')
+ @anonymous_comment_close_url = url_for(student_work_index_url(:homework => homework_common.id, :token => @token.value))
+ @anonymous_comment_close_name = homework_common.name
+ @author = homework_common.user
+ #收件人邮箱
+ recipient = user.mail
+ mail :to => recipient,
+ :subject => @subject
+ end
+ end
+
# author: alan
# 邀请未注册用户加入项目
# 功能: 在加入项目的同时自动注册用户
@@ -82,13 +116,13 @@ class Mailer < ActionMailer::Base
@token = Token.get_token_from_user(user, 'autologin')
@project_url = url_for(:controller => 'projects', :action => 'member', :id => project.id, :user_id => user.id, :mail => true, :token => @token.value)
# 发送消息邀请
- send_message(user,project)
+ send_message_request_member(user,project)
# end
mail :to => email, :subject => @subject
end
# 邀请信息消息 注:forge_message_id 为邀请人ID(特殊情况)
- def send_message(user, project)
+ def send_message_request_member(user, project)
key = newpass(6).to_s
ForgeMessage.create(:user_id => user.id, :project_id => project.id, :forge_message_type => "ProjectInvite",:forge_message_id => User.current.id, :viewed => false, :secret_key =>key)
end
diff --git a/app/views/mailer/send_mail_anonymous_comment_close.html.erb b/app/views/mailer/send_mail_anonymous_comment_close.html.erb
new file mode 100644
index 000000000..07bde8ebd
--- /dev/null
+++ b/app/views/mailer/send_mail_anonymous_comment_close.html.erb
@@ -0,0 +1,10 @@
+
+
+ - <%= l(:mail_issue_content)%>
+
+
<%=link_to @author, user_url(@author) %> 发布的作业:<%=link_to @homework_endtime_name, @homework_endtime_url%> 已经关闭了匿评!
+
+
+
+
+
\ No newline at end of file
diff --git a/app/views/mailer/send_mail_anonymous_comment_close.text.erb b/app/views/mailer/send_mail_anonymous_comment_close.text.erb
new file mode 100644
index 000000000..e69de29bb
diff --git a/app/views/mailer/send_mail_anonymous_comment_open.html.erb b/app/views/mailer/send_mail_anonymous_comment_open.html.erb
new file mode 100644
index 000000000..e791c86f9
--- /dev/null
+++ b/app/views/mailer/send_mail_anonymous_comment_open.html.erb
@@ -0,0 +1,10 @@
+
+
+ - <%= l(:mail_issue_content)%>
+
+
<%=link_to @author, user_url(@author) %> 发布的作业:<%=link_to @homework_endtime_name, @homework_endtime_url%> 已经开启匿评了!
+
+
+
+
+
\ No newline at end of file
diff --git a/app/views/mailer/send_mail_anonymous_comment_open.text.erb b/app/views/mailer/send_mail_anonymous_comment_open.text.erb
new file mode 100644
index 000000000..e69de29bb
diff --git a/config/locales/mailers/zh.yml b/config/locales/mailers/zh.yml
index fea392421..c2dd5c7e0 100644
--- a/config/locales/mailers/zh.yml
+++ b/config/locales/mailers/zh.yml
@@ -25,4 +25,6 @@ zh:
mail_course_homework_active: "中发布了作业"
mail_attention: "请您关注!"
mail_homework_endtime: "作业截止时间快到了!"
- mail_homework: "作业:"
\ No newline at end of file
+ mail_homework: "作业:"
+ mail_anonymous_comment_close: "作业匿评已经关闭!"
+ mail_anonymous_comment_open: "作业匿评已经开启!"
\ No newline at end of file
From 32f90ea591508dd11cba688f3d3504d85f04d81f Mon Sep 17 00:00:00 2001
From: huang
Date: Sat, 19 Sep 2015 09:19:35 +0800
Subject: [PATCH 10/10] =?UTF-8?q?"=E5=90=8C=E6=84=8F=E5=8A=A0=E5=85=A5"?=
=?UTF-8?q?=E5=8F=AA=E6=9C=89=E8=87=AA=E5=B7=B1=E6=89=8D=E8=83=BD=E7=9C=8B?=
=?UTF-8?q?=E5=88=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/views/users/user_messages.html.erb | 2 ++
1 file changed, 2 insertions(+)
diff --git a/app/views/users/user_messages.html.erb b/app/views/users/user_messages.html.erb
index 9d1532282..ab030f6c9 100644
--- a/app/views/users/user_messages.html.erb
+++ b/app/views/users/user_messages.html.erb
@@ -292,12 +292,14 @@
<%= ma.project %>
+ <% if User.current == @user %>
-
<%=link_to "同意加入", {:controller => 'projects', :action => 'member', :id => ma.project_id, :message_id =>ma.id, :key => ma.secret_key},
:value => ma.secret_key,
:class => "green_btn_cir ml10",
:style => "color:#fff" %>
+ <% end %>
- <%= time_tag(ma.created_at).html_safe %>
<% end %>