diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb
index 2f1076971..a56b75ac8 100644
--- a/app/controllers/users_controller.rb
+++ b/app/controllers/users_controller.rb
@@ -396,6 +396,19 @@ class UsersController < ApplicationController
end
# end
+ #引用作业请求弹框
+ def apply_homework
+ if User.current.logged?
+ @homework = HomeworkCommon.find params[:homework_id]
+ @state = 2
+ else
+ @state = 1
+ end
+ respond_to do |format|
+ format.js
+ end
+ end
+
#申请引用非公开作业
def apply_for_homework
if User.current.logged?
@@ -405,7 +418,7 @@ class UsersController < ApplicationController
if ah.empty?
ApplyHomework.create(:user_id => params[:id].to_i, :homework_common_id => params[:homework_id].to_i, :status => 1)
Mailer.run.apply_for_homework_request(homework, User.current)
- CourseMessage.create(:user_id => homework.user_id, :course_id => homework.course.id, :viewed => false,:course_message_id=>params[:homework_id].to_i,:course_message_type=>'HomeworkCommon',:status=>5,:apply_user_id=>params[:id].to_i)
+ CourseMessage.create(:user_id => homework.user_id, :course_id => homework.course.id, :viewed => false,:course_message_id=>params[:homework_id].to_i,:course_message_type=>'HomeworkCommon',:status=>5,:apply_user_id=>params[:id].to_i,:content=>params[:content])
@state = 2
@ah = ApplyHomework.where("user_id = ? and homework_common_id = ?", params[:id].to_i, params[:homework_id].to_i).first
@homework = homework
diff --git a/app/views/users/_apply_for_homework.html.erb b/app/views/users/_apply_for_homework.html.erb
new file mode 100644
index 000000000..250cc5810
--- /dev/null
+++ b/app/views/users/_apply_for_homework.html.erb
@@ -0,0 +1,16 @@
+
+
+
+ <% if state == 2 %>
+ 请求已发送至<%=homework.user.show_name %>老师,希望他同意与你分享:)
+ <% elsif state == 3 %>
+ 您已发送过分享请求,请勿重复发送。
+ <% end %>
+
+
+
+
\ No newline at end of file
diff --git a/app/views/users/_apply_homework.html.erb b/app/views/users/_apply_homework.html.erb
new file mode 100644
index 000000000..9f909b7a4
--- /dev/null
+++ b/app/views/users/_apply_homework.html.erb
@@ -0,0 +1,27 @@
+
+
+
请求分享
+
+ 请求说明(可选):
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/views/users/_homework_repository.html.erb b/app/views/users/_homework_repository.html.erb
index 93ee59138..738de678c 100644
--- a/app/views/users/_homework_repository.html.erb
+++ b/app/views/users/_homework_repository.html.erb
@@ -8,7 +8,7 @@
function (data) {
}
);
- }
+ };
@@ -41,7 +41,7 @@
<% ah = ApplyHomework.where("user_id = ? and homework_common_id = ?", User.current.id, homework.id).first %>
<% if ah.nil? %>
- <%= link_to("请求分享", apply_for_homework_user_path(User.current.id,:homework_id => homework.id), :class => 'green_btn_share c_white', :remote => true) %>
+ <%= link_to("请求分享", apply_homework_user_path(User.current.id,:homework_id => homework.id), :class => 'green_btn_share c_white', :remote => true) %>
<% elsif ah.status == 1 %>
待审核
<% elsif ah.status == 2 %>
diff --git a/app/views/users/_send_notice.html.erb b/app/views/users/_send_notice.html.erb
new file mode 100644
index 000000000..aede2a33b
--- /dev/null
+++ b/app/views/users/_send_notice.html.erb
@@ -0,0 +1,18 @@
+
+
+
+ <% if status == 1 %>
+ 您的分享请求暂未通过审核,暂时不可发送至课程。
+ <% elsif status == 2 %>
+ 您选中的作业目前为私有作业,请点击“请求分享”按钮向题目的作者发送分享请求吧!祝您成功:)
+ <% elsif status == 3 %>
+ 您的分享请求已被老师拒绝,不可发送至课程。
+ <% end %>
+
+
+
+
\ No newline at end of file
diff --git a/app/views/users/_user_message_course.html.erb b/app/views/users/_user_message_course.html.erb
index c0d7020b7..f3942d95e 100644
--- a/app/views/users/_user_message_course.html.erb
+++ b/app/views/users/_user_message_course.html.erb
@@ -237,7 +237,8 @@
">您有了新的引用作业申请:
- <%=User.find(ma.apply_user_id).show_name+"申请引用作业\""+"#{HomeworkCommon.find(ma.course_message_id).name}"+"\"" %>
+ <% content = ma.content.nil? ? '' : ':'+ ma.content.to_s %>
+ <%=User.find(ma.apply_user_id).show_name+"申请引用作业\""+"#{HomeworkCommon.find(ma.course_message_id).name}"+"\"#{content}" %>
diff --git a/app/views/users/apply_for_homework.js.erb b/app/views/users/apply_for_homework.js.erb
index 69ad56cf3..ad3c6ed76 100644
--- a/app/views/users/apply_for_homework.js.erb
+++ b/app/views/users/apply_for_homework.js.erb
@@ -1,8 +1,12 @@
<% if @state == 1 %>
-alert("您还未登录");
-<% elsif @state == 2 %>
-alert("申请成功,请等待审核");
-$("#homework_apply_status_<%=@homework.id %>").html("待审核");
-<% elsif @state == 3 %>
-alert("您已经发送过申请了,请耐心等待");
+ hideModal();
+ alert("您还未登录");
+<% elsif @state == 2 || @state == 3 %>
+ $("#ajax-modal").html('<%= escape_javascript( render :partial => 'users/apply_for_homework', :locals => {:homework => @homework, :state => @state}) %>');
+ showModal('ajax-modal', '500px');
+ $('#ajax-modal').siblings().remove();
+ $('#ajax-modal').before("" +
+ "
");
+ $('#ajax-modal').parent().css("top","30%").css("left","30%").css("position","fixed").css("border","3px solid #269ac9");
+ $("#homework_apply_status_<%=@homework.id %>").html("待审核");
<% end %>
\ No newline at end of file
diff --git a/app/views/users/apply_homework.js.erb b/app/views/users/apply_homework.js.erb
new file mode 100644
index 000000000..9e9da1c7e
--- /dev/null
+++ b/app/views/users/apply_homework.js.erb
@@ -0,0 +1,10 @@
+<% if @state == 1 %>
+ alert("您还未登录");
+<% elsif @state == 2 %>
+ $("#ajax-modal").html('<%= escape_javascript( render :partial => 'users/apply_homework', :locals => {:homework => @homework}) %>');
+ showModal('ajax-modal', '500px');
+ $('#ajax-modal').siblings().remove();
+ $('#ajax-modal').before("" +
+ "
");
+ $('#ajax-modal').parent().css("top","30%").css("left","30%").css("position","fixed").css("border","3px solid #269ac9");
+<% end %>
\ No newline at end of file
diff --git a/app/views/users/choose_user_course.js.erb b/app/views/users/choose_user_course.js.erb
index 51af05782..15926af5c 100644
--- a/app/views/users/choose_user_course.js.erb
+++ b/app/views/users/choose_user_course.js.erb
@@ -1,9 +1,10 @@
-<% if @status == 1 %>
- alert("您的申请尚未通过审核,暂时不可发送至课程");
-<% elsif @status == 2 %>
- alert("该作业是私有的,请先提交申请并通过审核后再发送");
-<% elsif @status == 3 %>
- alert("您的申请已被拒绝,不可发送至课程");
+<% if @status == 1 || @status == 2 || @status == 3 %>
+ $("#ajax-modal").html('<%= escape_javascript( render :partial => 'users/send_notice', :locals => {:status => @status}) %>');
+ showModal('ajax-modal', '500px');
+ $('#ajax-modal').siblings().remove();
+ $('#ajax-modal').before("" +
+ "
");
+ $('#ajax-modal').parent().css("top","30%").css("left","30%").css("position","fixed").css("border","3px solid #269ac9");
<% else %>
<% if params[:is_observe].nil? %>
$("#ajax-modal").html('<%= escape_javascript( render :partial => 'users/send_homework_to_course', :locals => {:courses => @course, :user => @user, :send_id => @send_id}) %>');
diff --git a/config/routes.rb b/config/routes.rb
index edfc5b1cc..0e67a806e 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -515,6 +515,7 @@ RedmineApp::Application.routes.draw do
match 'user_feedback4show', :to => 'users#user_feedback4show', :via => :get
match 'user_visitorlist', :to => 'users#user_visitorlist', :via => :get
match 'apply_for_homework', :to => 'users#apply_for_homework', :via => :get
+ match 'apply_homework', :to => 'users#apply_homework', :via => :get
match 'user_homeworks', :to => 'users#user_homeworks', :via => :get
match 'student_homeworks', :to => 'users#student_homeworks', :via => :get
get 'user_import_homeworks'
diff --git a/public/stylesheets/new_user.css b/public/stylesheets/new_user.css
index 4ec17159a..c452d014f 100644
--- a/public/stylesheets/new_user.css
+++ b/public/stylesheets/new_user.css
@@ -1492,4 +1492,5 @@ a.st_down{ display: block; width:8px; float:left; height:13px; background:url(..
a.st_img { display:block;width:32px; height:32px; border:1px solid #CCC; padding:1px;}
.green_btn_share{ background:#28be6c; padding:2px 5px; -moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px; color:#fff; font-weight:normal;font-size:12px;}
+.apply_content{ border:1px solid #ddd;line-height: 16px; height:80px;width:420px; background:#fff; margin-left:5px; padding:5px; margin-bottom:10px;}