diff --git a/app/helpers/courses_helper.rb b/app/helpers/courses_helper.rb index 1a9b3922c..071ad2d2b 100644 --- a/app/helpers/courses_helper.rb +++ b/app/helpers/courses_helper.rb @@ -665,4 +665,30 @@ module CoursesHelper count = get_course_activity([course],course_activity_count)[course.id] count.nil? ? 0 : count end + + #重启、关闭课程按钮 + def set_course_time course + id = "finish_course_#{course.id}" + linkPath = course_endTime_timeout?(course) ? restartcourse_course_path(course) : finishcourse_course_path(course, format: :js) + desc = course_endTime_timeout?(course) ? l(:label_course_reload) : l(:label_course_closed) + link_to "#{desc}".html_safe, linkPath, :remote => true, :method => :post, :id => id, :confirm => l(:label_course_closed_tips, :desc => desc), :class => "pr_join_a" + end + + def join_in_course_header(course, user, options=[]) + if user.logged? + joined = user.member_of_course? course + text = joined ? ("".html_safe + l(:label_course_exit_student)) : ("".html_safe + l(:label_course_join_student)) + url = joined ? join_path(:object_id => course.id) : try_join_path(:object_id => course.id) + method = joined ? 'delete' : 'post' + if joined + link = "#{l(:label_course_join_student)}" + link_to(text, url, :remote => true, :method => method, :class => "pr_join_a", :id => "#{course.id}", :confirm => l(:text_are_you_sure_out)) + else + link = link_to(text, url, :remote => true, :method => method, :id => "#{course.id}", :class => "pr_join_a") + "#{l(:label_course_exit_student)}".html_safe + end + else + link = "#{l(:label_course_join_student)}" + + "#{l(:label_course_exit_student)}" + end + link.html_safe + end end diff --git a/app/views/layouts/base_courses.html.erb b/app/views/layouts/base_courses.html.erb index 642fb6852..d0fbe6ccd 100644 --- a/app/views/layouts/base_courses.html.erb +++ b/app/views/layouts/base_courses.html.erb @@ -72,9 +72,13 @@ ID:<%= @course.id%>
- 配置 - 关闭 - 复制 + <% if is_teacher%> + <%= link_to "#{l(:button_configure)}".html_safe, {:controller => 'courses', :action => 'settings', :id => @course}, :class => "pr_join_a" %> + <%= set_course_time @course%> + <%= link_to "#{l(:button_copy)}".html_safe, copy_course_course_path(@course.id), :class => "pr_join_a" %> + <% else%> + <%= join_in_course_header(@course, User.current) %> + <% end%>
@@ -101,8 +105,10 @@ diff --git a/config/locales/courses/zh.yml b/config/locales/courses/zh.yml index 3e9e1e9f6..81abf7266 100644 --- a/config/locales/courses/zh.yml +++ b/config/locales/courses/zh.yml @@ -11,6 +11,7 @@ zh: # 课程公共标签 # label_course_join_student: 加入课程 + label_course_exit_student: 退出课程 label_course_new: 新建课程 label_homework: 课程作业