新版课程大纲

This commit is contained in:
cxt 2016-07-22 10:20:28 +08:00
parent 71b5fe1273
commit 1e28ff880d
30 changed files with 1117 additions and 272 deletions

View File

@ -13,7 +13,6 @@ class SyllabusesController < ApplicationController
end
def show
#@courses = @syllabus.courses
respond_to do |format|
format.js
format.html{render :layout => 'base_syllabus'}
@ -109,11 +108,7 @@ class SyllabusesController < ApplicationController
sort_name = "updated_on"
sort_type = @c_sort == 1 ? "asc" : "desc"
if User.current == @syllabus.user || User.current.admin?
@courses = @syllabus.courses.where("is_delete = 0").select("courses.*,(SELECT MAX(updated_at) FROM `course_activities` WHERE course_activities.course_id = courses.id) AS #{sort_name}").order("#{sort_name} #{sort_type}")
else
@courses = User.current.courses.visible.where("is_delete =? and syllabus_id =?", 0, @syllabus.id).select("courses.*,(SELECT MAX(updated_at) FROM `course_activities` WHERE course_activities.course_id = courses.id) AS #{sort_name}").order("#{sort_name} #{sort_type}")
end
@courses = @syllabus.courses.where("is_delete = ?", 0).select("courses.*,(SELECT MAX(updated_at) FROM `course_activities` WHERE course_activities.course_id = courses.id) AS #{sort_name}").order("#{sort_name} #{sort_type}")
#根据 作业+资源数排序
if @order.to_i == 2

View File

@ -8,11 +8,11 @@
<label><span class="c_red">*</span>&nbsp;<%= l(:label_tags_syllabus_name)%>&nbsp;&nbsp;</label>
<% if @syllabus.nil? %>
<%= select_tag :syllabus_id,options_for_select(course_syllabus_option,@course.syllabus_id), {:id=>"new_syllabus_id", :class=>"syllabus_input"} %>
<span class="c_red" id="new_syllabus_notice">如果列表中没有对应的课程,请您先<%=link_to '创建课程', new_syllabus_path(),:target => '_blank', :class => 'ml5 green_btn_share c_white'%></span>
<% else %>
<span><%=@syllabus.title %></span>
<input style="display: none;" name="syllabus_id" value="<%=@syllabus.id %>" />
<% end %>
<span class="c_red" id="new_syllabus_notice">如果列表中没有对应的课程,请您先<%=link_to '创建课程', new_syllabus_path(),:target => '_blank', :class => 'ml5 green_btn_share c_white'%></span>
</li>
<div class="cl"></div>
<li class="ml45">

View File

@ -0,0 +1,151 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
<title><%= h html_title %></title>
<meta name="description" content="<%= Redmine::Info.app_name %>" />
<meta name="keywords" content="issue,bug,tracker" />
<%= csrf_meta_tag %>
<%= favicon %>
<%= stylesheet_link_tag 'jquery/jquery-ui-1.9.2', 'syllabus','css/common','css/public','css/structure','css/courses','css/popup','prettify',:media => 'all' %>
<%= stylesheet_link_tag 'rtl', :media => 'all' if l(:direction) == 'rtl' %>
<%= javascript_heads %>
<%= javascript_include_tag "bootstrap","avatars","course",'attachments','prettify','syllabus'%>
<%= heads_for_theme %>
<%= call_hook :view_layouts_base_html_head %>
<%= yield :header_tags -%>
<!-- MathJax的配置 -->
<script type="text/javascript"
src="/javascripts/MathJax/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
</script>
<!-- 配置 在生成的公式图片上去掉Math定义的右键菜单$$ $$ \( \) \[ \] 中的公式给予显示-->
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
showMathMenu: false,
showMathMenuMSIE: false,
tex2jax: {inlineMath: [['$','$'], ['\\(','\\)']]}
});
</script>
</head>
<body onload="prettyPrint();">
<% is_current_user = User.current.logged?%>
<div class="navContainer">
<% if User.current.logged? %>
<%= render :partial => 'layouts/logined_header' %>
<% else%>
<%= render :partial => 'layouts/unlogin_header' %>
<% end%>
</div>
<div class="cl"></div>
<div class="homepageContentContainer">
<div class="homepageContent">
<div class="homepageLeft">
<div class="homepagePortraitContainer mt15" onmouseover="$('#syllabus_edit_title_png').show();$('#syllabus_edit_ng_name_png').show();" onmouseout="$('#syllabus_edit_title_png').hide();$('#syllabus_edit_ng_name_png').hide();">
<%=render :partial => 'layouts/syllabus_info' %>
</div>
<% update_visiti_count @syllabus %>
<div class="homepageLeftMenuContainer" id="syllabus_base_info" onmouseover="$('#syllabus_attr_edit').show();" onmouseout="$('#syllabus_attr_edit').hide();">
<%= render :partial => 'layouts/syllabus_base_info', :locals => {:syllabus => @syllabus} %>
</div>
<div class="homepageLeftMenuContainer">
<div class="homepageLeftMenuBlock">
<%=link_to '班级', {:controller => "syllabuses", :action => "syllabus_courselist", :id => @syllabus.id}, :class => 'homepageMenuText' %>
<% if is_current_user%>
<% if User.current == @syllabus.user && User.current.user_extensions && User.current.user_extensions.identity == 0 && User.current.allowed_to?(:add_course, nil, :global => true)%>
<div class="courseMenu" id="courseMenu">
<ul>
<li class="courseMenuIcon fr" style="margin-right:10px;" id="courseMenuIcon">
<ul class="topnav_course_menu" id="topnav_course_menu">
<li>
<%= link_to "新建班级", new_course_path(:host=> Setting.host_course, :syllabus_id => @syllabus.id), :class => "menuGrey", :target => '_blank'%>
</li>
<li>
<%= link_to "加入班级",join_private_courses_courses_path,:remote => true,:class => "menuGrey",:method => "post"%>
</li>
</ul>
</li>
</ul>
</div>
<% else%>
<%=link_to "", join_private_courses_courses_path, :class => "homepageMenuSetting fr",:style => "margin-right:10px;", :remote => true, :title => "加入班级"%>
<% end%>
<% end%>
</div>
<% if User.current == @syllabus.user || User.current.admin?
all_courses = @syllabus.courses.where("is_delete = 0").select("courses.*,(SELECT MAX(updated_at) FROM `course_activities` WHERE course_activities.course_id = courses.id) AS a").order("a desc")
else
all_courses = User.current.courses.visible.where("is_delete =? and syllabus_id =?", 0, @syllabus.id).select("courses.*,(SELECT MAX(updated_at) FROM `course_activities` WHERE course_activities.course_id = courses.id) AS a").order("a desc")
end %>
<% courses = all_courses.limit(5) %>
<% all_count = all_courses.count%>
<div class="homepageLeftMenuCourses <%= courses.empty? ? 'none' : ''%>">
<div class = "leftCoursesList" id="homepageLeftMenuCourses">
<ul>
<%= render :partial => 'layouts/user_courses', :locals => {:courses => courses,:user => User.current,:all_count => all_count,:type =>'Syllabus',:page => 0} %>
</ul>
</div>
<% if !courses.empty? %>
<div class="homepageLeftMenuMore" id="user_hide_course">
<a href="javascript:void(0);" class="homepageLeftMenuHideIcon" id="hide_show_courseicon" onclick="leftCourseslistChange();"></a>
</div>
<% end %>
</div>
</div>
<div class="project_Label">
<h4 class="mb5" >标签:</h4>
<div class="tag_h">
<%= render :partial => 'tags/syllabus_tag', :locals => {:obj => @syllabus,:object_flag => "11"}%>
</div>
<div class="cl"></div>
</div>
<div class="fontGrey2 mt10 ml20">访问计数 <%=@syllabus.visits %> 自2016年7月</div>
</div><!--left end -->
<div class="homepageRight">
<%= yield %>
</div>
</div>
<%= render :partial => 'layouts/new_feedback' %>
</div>
<div class="cl"></div>
<%= render :partial => 'layouts/footer' %>
<div class="cl"></div>
<div id="ajax-modal" style="display:none;"></div>
<div id="ajax-indicator" style="display:none;">
<span><%= l(:label_loading) %></span>
</div>
<script type="text/javascript">
$(function() {
$('#user_hide_course').hide();
$("#syllabus_title_edit").live("blur", function () {
edit_syllabus_title('<%= edit_syllabus_title_syllabus_path(@syllabus.id)%>');
});
$("#syllabus_eng_name_edit").live("blur", function () {
edit_syllabus_eng_name('<%= edit_syllabus_eng_name_syllabus_path(@syllabus.id)%>');
});
$("#courseMenu").mouseenter(function () {
$("#topnav_course_menu").show();
});
$("#courseMenu").mouseleave(function () {
$("#topnav_course_menu").hide();
});
});
function leftCourseslistChange(){
$('#homepageLeftMenuCourses').slideToggle();
$('#hide_show_courseicon').toggleClass("homepageLeftMenuHideIcon");
$('#hide_show_courseicon').toggleClass("homepageLeftMenuMoreIcon");
}
function show_edit_base_info() {
$("#syllabus_base_info").html("<%=escape_javascript(render :partial => 'layouts/syllabus_edit_info', :locals => {:syllabus => @syllabus}) %>");
}
</script>
</body>
</html>

View File

@ -1,55 +1,59 @@
<ul class="syllabus_leftinfo" id="all_syllabus_attr">
<li class="fl"><label >创建教师:</label><span><%=syllabus.user.show_name %></span></li>
<h3 class="sy_right_title">课程信息
<% if User.current.logged? && (User.current == syllabus.user || User.current.admin?) %>
<%= link_to image_tag("../images/signature_edit.png",width:"12px", height: "12px"), "javascript:void(0);", :id => 'syllabus_attr_edit', :class => 'undis fr', :onclick => "show_edit_base_info();"%>
<%= link_to "完善信息", "javascript:void(0);", :id => 'syllabus_attr_edit', :class => 'sy_cmore fr mr10', :onclick => "show_edit_base_info();"%>
<% end %>
<div class="cl"></div>
</h3>
<ul class="sy_info mt15" id="all_syllabus_attr">
<li><label >创建教师</label><span class="fl ml10 sy_cgrey"><%=syllabus.user.show_name %></span></li>
<% unless syllabus.syllabus_type.nil? || syllabus.syllabus_type == 0 || syllabus.syllabus_type == '' %>
<li><label>课程性质:</label><%=syllabus.syllabus_type_str %></li>
<li><label>课程性质</label><span class="fl ml10 sy_cgrey"><%=syllabus.syllabus_type_str %></span></li>
<% end %>
<% unless syllabus.credit.nil? || syllabus.credit == '' %>
<li><label>学分</label><%=syllabus.credit %></li>
<li><label>学分</label><span class="fl ml10 sy_cgrey"><%=syllabus.credit %>学分</span></li>
<% end %>
<% unless syllabus.hours.nil? || syllabus.hours == '' %>
<li><label>总学时</label><%=syllabus.hours %></li>
<li><label>总学时</label><span class="fl ml10 sy_cgrey"><%=syllabus.hours %>学时</span></li>
<% end %>
<% unless syllabus.theory_hours.nil? || syllabus.theory_hours == '' %>
<li><label>理论学时</label><%=syllabus.theory_hours %></li>
<li><label>理论学时</label><span class="fl ml10 sy_cgrey"><%=syllabus.theory_hours %>学时</span></li>
<% end %>
<% unless syllabus.practice_hours.nil? || syllabus.practice_hours == '' %>
<li><label>实践学时</label><%=syllabus.practice_hours %></li>
<li><label>实践学时</label><span class="fl ml10 sy_cgrey"><%=syllabus.practice_hours %>学时</span></li>
<% end %>
<% unless syllabus.applicable_major.nil? || syllabus.applicable_major == '' %>
<li><label>适用专业</label><%=syllabus.applicable_major %></li>
<li><label>适用专业</label><span class="fl ml10 sy_cgrey"><%=syllabus.applicable_major %></span></li>
<% end %>
<% unless syllabus.pre_course.nil? || syllabus.pre_course == '' %>
<li><label>先修课程</label><%=syllabus.pre_course %></li>
<li><label>先修课程</label><span class="fl ml10 sy_cgrey"><%=syllabus.pre_course %></span></li>
<% end %>
<% if syllabus.syllabus_type.nil? || syllabus.syllabus_type == 0 || syllabus.syllabus_type == '' %>
<li class="none none_attr"><label>课程性质</label><span class="fontGrey3">空</span></li>
<li class="none none_attr"><label>课程性质</label><span class="fl ml10 sy_cgrey">空</span></li>
<% end %>
<% if syllabus.credit.nil? || syllabus.credit == '' %>
<li class="none none_attr"><label>学分</label><span class="fontGrey3">空</span></li>
<li class="none none_attr"><label>学分</label><span class="fl ml10 sy_cgrey">空</span></li>
<% end %>
<% if syllabus.hours.nil? || syllabus.hours == '' %>
<li class="none none_attr"><label>总学时</label><span class="fontGrey3">空</span></li>
<li class="none none_attr"><label>总学时</label><span class="fl ml10 sy_cgrey">空</span></li>
<% end %>
<% if syllabus.theory_hours.nil? || syllabus.theory_hours == '' %>
<li class="none none_attr"><label>理论学时</label><span class="fontGrey3">空</span></li>
<li class="none none_attr"><label>理论学时</label><span class="fl ml10 sy_cgrey">空</span></li>
<% end %>
<% if syllabus.practice_hours.nil? || syllabus.practice_hours == '' %>
<li class="none none_attr"><label>实践学时</label><span class="fontGrey3">空</span></li>
<li class="none none_attr"><label>实践学时</label><span class="fl ml10 sy_cgrey">空</span></li>
<% end %>
<% if syllabus.applicable_major.nil? || syllabus.applicable_major == '' %>
<li class="none none_attr"><label>适用专业</label><span class="fontGrey3">空</span></li>
<li class="none none_attr"><label>适用专业</label><span class="fl ml10 sy_cgrey">空</span></li>
<% end %>
<% if syllabus.pre_course.nil? || syllabus.pre_course == '' %>
<li class="none none_attr"><label>先修课程</label><span class="fontGrey3">空</span></li>
<li class="none none_attr"><label>先修课程</label><span class="fl ml10 sy_cgrey">空</span></li>
<% end %>
<div class="cl"></div>
</ul>
<% if User.current.logged? && (User.current == syllabus.user || User.current.admin?)&&(syllabus.syllabus_type.nil? || syllabus.syllabus_type == 0 || syllabus.syllabus_type == ''||syllabus.credit.nil? || syllabus.credit == ''||syllabus.hours.nil? || syllabus.hours == ''||syllabus.theory_hours.nil? || syllabus.theory_hours == ''||syllabus.practice_hours.nil? || syllabus.practice_hours == ''||syllabus.applicable_major.nil? || syllabus.applicable_major == ''||syllabus.pre_course.nil? || syllabus.pre_course == '')%>
<span class="homepageLeftMenuMore"><a href="javascript:void(0);" data-init="0" onclick="toggle_all_syllabus_attr();" class="homepageLeftMenuMoreIcon" id="show_all_syllabus_attr"></a></span>
<span class="homepageLeftMenuMore"><a href="javascript:void(0);" data-init="0" onclick="toggle_all_syllabus_attr();" class="homepageLeftMenuMoreIcon2" id="show_all_syllabus_attr"></a></span>
<% end %>
<script>
function show_edit_base_info() {

View File

@ -1,27 +1,40 @@
<ul class="syllabus_leftinfo" id="all_syllabus_attr">
<%= form_for('syllabus',:url => update_base_info_syllabus_path(syllabus.id),:remote => true) do |f|%>
<li class="fl"><label >创建教师:</label><span><%=syllabus.user.show_name %></span></li>
<a href="javascript:void(0);" onclick="update_syllabus_info();" id="submit_edit_info" class="fr">保存</a>
<!--<a href="javascript:void(0);" onclick="reset_syllabus_info();" id="submit_reset_info" class="fr mr10">取消</a>-->
<%= form_for('syllabus',:url => update_base_info_syllabus_path(syllabus.id),:remote => true) do |f|%>
<h3 class="sy_right_title">课程信息
<a href="javascript:void(0);" onclick="update_syllabus_info();" id="submit_edit_info" class="sy_cmore fr mr10">保存</a>
<div class="cl"></div>
<li><label>课程性质:</label>
<%= select_tag :syllabus_type,options_for_select(syllabus_type,syllabus.syllabus_type), {:id=>"syllabus_type_input", :class=>"syllabus_select"} %>
</h3>
<ul class="sy_info mt15" id="all_syllabus_attr">
<li><label >创建教师</label><span class="fl ml10 sy_cgrey"><%=syllabus.user.show_name %></span></li>
<li><label>课程性质</label>
<%= select_tag :syllabus_type,options_for_select(syllabus_type,syllabus.syllabus_type), {:id=>"syllabus_type_input", :class=>"sy_info_select fl"} %>
</li>
<div class="cl"></div>
<li><label >学分</label>
<input id="syllabus_credit_input" style="width: 30px;" class="fl" name="credit" placeholder="5" value="<%=syllabus.credit %>">&nbsp;学分
<span class="none c_red ml5" id="syllabus_credit_notice">正整数</span>
</li>
<li><label >学分:</label>
<input id="syllabus_credit_input" class="syllabus_input_min fl" name="credit" placeholder="5" value="<%=syllabus.credit %>"> 学分
<span class="none c_red ml5" id="syllabus_credit_notice">请输入正整数</span><div class="cl"></div>
<div class="cl"></div>
<li><label>总学时</label>
<input id="syllabus_hours_input" style="width: 30px;" class="fl" name="hours" placeholder="50" value="<%=syllabus.hours %>">&nbsp;学时
<span class="none c_red ml5" id="syllabus_hours_notice">正整数</span>
</li>
<li><label>总学时:</label><input id="syllabus_hours_input" class="syllabus_input_min fl" name="hours" placeholder="50" value="<%=syllabus.hours %>"> 学时
<span class="none c_red ml5" id="syllabus_hours_notice">请输入正整数</span><div class="cl"></div>
<div class="cl"></div>
<li><label>理论学时</label>
<input id="syllabus_theory_hours_input" style="width: 30px;" class="fl" name="theory_hours" placeholder="10" value="<%=syllabus.theory_hours %>">&nbsp;学时
<span class="none c_red ml5" id="syllabus_theory_hours_notice">正整数</span>
</li>
<li><label>理论学时:</label><input id="syllabus_theory_hours_input" class="syllabus_input_min fl" name="theory_hours" placeholder="10" value="<%=syllabus.theory_hours %>"> 学时
<span class="none c_red ml5" id="syllabus_theory_hours_notice">请输入正整数</span><div class="cl"></div>
<div class="cl"></div>
<li><label>实践学时</label>
<input id="syllabus_practice_hours_input" style="width: 30px;" class="fl" name="practice_hours" placeholder="5" value="<%=syllabus.practice_hours %>">&nbsp;学时
<span class="none c_red ml5" id="syllabus_practice_hours_notice">正整数</span>
</li>
<li><label>实践学时:</label><input id="syllabus_practice_hours_input" class="syllabus_input_min fl" name="practice_hours" placeholder="5" value="<%=syllabus.practice_hours %>"> 学时
<span class="none c_red ml5" id="syllabus_practice_hours_notice">请输入正整数</span><div class="cl"></div>
<div class="cl"></div>
<li><label>适用专业</label>
<input id="syllabus_applicable_major_input" class="fl" name="applicable_major" placeholder="UI设计" value="<%=syllabus.applicable_major %>">
</li>
<li><label>适用专业:</label><input id="syllabus_applicable_major_input" class="syllabus_input fl" name="applicable_major" placeholder="UI设计" value="<%=syllabus.applicable_major %>"><div class="cl"></div></li>
<li><label>选修课程:</label><input id="syllabus_pre_course_input" class="syllabus_input fl" name="pre_course" placeholder="工业设计史" value="<%=syllabus.pre_course %>"><div class="cl"></div></li>
<% end %>
</ul>
<li><label>选修课程</label>
<input id="syllabus_pre_course_input" class="fl" name="pre_course" placeholder="工业设计史" value="<%=syllabus.pre_course %>">
</li>
<div class="cl"></div>
</ul>
<% end %>

View File

@ -1,8 +1,9 @@
<% if syllabus.eng_name && !syllabus.eng_name.empty? %>
<span><%= syllabus.eng_name %></span>
<p><% if syllabus.eng_name && !syllabus.eng_name.empty? %>
<span><%=syllabus.eng_name %></span>
<% else%>
<span class="fontGrey">课程英文名称</span>
<!--<span style="color: #888">课程英文名称</span> -->
<% end %>
<% if User.current == syllabus.user || User.current.admin? %>
<%= link_to image_tag("../images/signature_edit.png",width:"12px", height: "12px"), "javascript:void(0);",:id => "syllabus_edit_ng_name_png", :class => "none", :onclick => "show_edit_eng_name();"%>
<% end %>
<% end %>
</p>

View File

@ -1,25 +1,9 @@
<%# teachers_num = teacher_count @syllabus%>
<%# students_num = student_count @syllabus%>
<%# files_num = file_count @syllabus%>
<div class="pr_info_logo fl mb5 mr10">
<%= image_tag("../images/syllabus.jpg",width:"60px", height: "60px") %>
</div>
<div class="fl">
<div id="syllabus_title_show" class="homepageSyllabusName mb5">
<%= render :partial => 'layouts/syllabus_title', :locals => {:syllabus => @syllabus}%>
</div>
<textarea class="syllabusTitleTextarea none" placeholder="请编辑课程名称" id="syllabus_title_edit"></textarea>
<div id="syllabus_title_show">
<%= render :partial => 'layouts/syllabus_title', :locals => {:syllabus => @syllabus}%>
</div>
<input type="text" class="none" style="width:300px;" placeholder="请编辑课程名称" id="syllabus_title_edit"/>
<div class="cl"></div>
<div>
<div class="mb5" id="syllabus_eng_name_show" style="word-break:normal;word-wrap:normal;">
<%= render :partial => 'layouts/syllabus_eng_name', :locals => {:syllabus => @syllabus}%>
</div>
<textarea class="homepageSignatureTextarea none" placeholder="请编辑英文名称" id="syllabus_eng_name_edit"></textarea>
<div id="syllabus_eng_name_show">
<%= render :partial => 'layouts/syllabus_eng_name', :locals => {:syllabus => @syllabus}%>
</div>
<!--
<div class="pr_info_foot ">
教师(<a class="info_foot_num c_blue" href="javascript:void(0);" target="_blank" style="cursor: default" title="课程下全部班级的教师数"><%#=teachers_num %></a><span>|</span>
学生(<a class="info_foot_num c_blue" href="javascript:void(0);" target="_blank" style="cursor: default" title="课程下全部班级的学生数"><%#=students_num %></a><span>|</span>
资源(<a class="info_foot_num c_blue" href="javascript:void(0);" target="_blank" style="cursor: default" title="课程下全部班级的资源数"><%#=files_num %></a></div>
<div class="cl"></div>-->
<input type="text" class="none" style="width:300px;" placeholder="请编辑英文名称" id="syllabus_eng_name_edit"/>

View File

@ -0,0 +1,21 @@
<h3 class="sy_right_title">教师团队
<a href="javascript:void(0);" class="sy_cmore fr mr10 none" >增加教师</a>
<div class="cl"></div>
</h3>
<ul class="sy_teachers_list">
<% teacher = syllabus.user %>
<%# teachers.each do |teacher| %>
<li >
<%= link_to image_tag(url_to_avatar(teacher), :width => "60", :height => "60", :class => "sy_teachers_img fl mr15"), user_path(teacher), :target => "_blank", :alt => "用户头像" %>
<div class="sy_teachers_txt fl">
<%= link_to teacher.show_name, user_path(teacher), :class => "sy_teachers_name", :target => "_blank" %>
<span class="sy_teachers_span">
<% if teacher.user_extensions && teacher.user_extensions.identity %>
<%= get_user_roll teacher %>
<% end%>
</span>
</div>
<div class="cl"></div>
</li>
<%# end %>
</ul>

View File

@ -1,5 +1,6 @@
<span style="word-break: normal; word-wrap: break-word;"><%=@syllabus.title %></span>
<h2 >课程名称:<%=syllabus.title %>
<% if User.current == syllabus.user || User.current.admin? %>
<%= link_to image_tag("../images/signature_edit.png",width:"12px", height: "12px"), "javascript:void(0);",:id => "syllabus_edit_title_png", :class => "none", :onclick => "show_edit_title('#{@syllabus.title}');"%>
<% end %>
<%= link_to image_tag("../images/signature_edit.png",width:"12px", height: "12px"), "javascript:void(0);",:id => "syllabus_edit_title_png", :class => "none", :onclick => "show_edit_title('#{syllabus.title}');"%>
<% end %>
</h2>

View File

@ -18,7 +18,7 @@
<%= heads_for_theme %>
<%= call_hook :view_layouts_base_html_head %>
<%= stylesheet_link_tag 'jquery/jquery-ui-1.9.2','css/common','css/public', 'css/structure','prettify', 'css/courses','css/popup'%>
<%= javascript_include_tag "course","header","attachments",'prettify' %>
<%= javascript_include_tag "course","sy_public", "syllabus","header","attachments",'prettify' %>
<!-- page specific tags -->
<%= yield :header_tags -%>
<!-- MathJax的配置 -->

View File

@ -7,7 +7,7 @@
<meta name="keywords" content="issue,bug,tracker" />
<%= csrf_meta_tag %>
<%= favicon %>
<%= stylesheet_link_tag 'jquery/jquery-ui-1.9.2', 'syllabus','css/common','css/public','css/structure','css/courses','css/popup','prettify',:media => 'all' %>
<%= stylesheet_link_tag 'jquery/jquery-ui-1.9.2','css/common','css/public','css/structure','css/courses','css/popup','prettify','syllabus','sy_public',:media => 'all' %>
<%= stylesheet_link_tag 'rtl', :media => 'all' if l(:direction) == 'rtl' %>
<%= javascript_heads %>
<%= javascript_include_tag "bootstrap","avatars","course",'attachments','prettify','syllabus'%>
@ -39,78 +39,29 @@
<% end%>
</div>
<div class="cl"></div>
<div class="homepageContentContainer">
<div class="homepageContent">
<div class="homepageLeft">
<div class="homepagePortraitContainer mt15" onmouseover="$('#syllabus_edit_title_png').show();$('#syllabus_edit_ng_name_png').show();" onmouseout="$('#syllabus_edit_title_png').hide();$('#syllabus_edit_ng_name_png').hide();">
<%=render :partial => 'layouts/syllabus_info' %>
</div>
<% update_visiti_count @syllabus %>
<div class="homepageLeftMenuContainer" id="syllabus_base_info" onmouseover="$('#syllabus_attr_edit').show();" onmouseout="$('#syllabus_attr_edit').hide();">
<%= render :partial => 'layouts/syllabus_base_info', :locals => {:syllabus => @syllabus} %>
</div>
<div class="homepageLeftMenuContainer">
<div class="homepageLeftMenuBlock">
<%=link_to '班级', {:controller => "syllabuses", :action => "syllabus_courselist", :id => @syllabus.id}, :class => 'homepageMenuText' %>
<% if is_current_user%>
<% if User.current == @syllabus.user && User.current.user_extensions && User.current.user_extensions.identity == 0 && User.current.allowed_to?(:add_course, nil, :global => true)%>
<div class="courseMenu" id="courseMenu">
<ul>
<li class="courseMenuIcon fr" style="margin-right:10px;" id="courseMenuIcon">
<ul class="topnav_course_menu" id="topnav_course_menu">
<li>
<%= link_to "新建班级", new_course_path(:host=> Setting.host_course, :syllabus_id => @syllabus.id), :class => "menuGrey", :target => '_blank'%>
</li>
<li>
<%= link_to "加入班级",join_private_courses_courses_path,:remote => true,:class => "menuGrey",:method => "post"%>
</li>
</ul>
</li>
</ul>
</div>
<% else%>
<%=link_to "", join_private_courses_courses_path, :class => "homepageMenuSetting fr",:style => "margin-right:10px;", :remote => true, :title => "加入班级"%>
<% end%>
<% end%>
</div>
<% if User.current == @syllabus.user || User.current.admin?
all_courses = @syllabus.courses.where("is_delete = 0").select("courses.*,(SELECT MAX(updated_at) FROM `course_activities` WHERE course_activities.course_id = courses.id) AS a").order("a desc")
else
all_courses = User.current.courses.visible.where("is_delete =? and syllabus_id =?", 0, @syllabus.id).select("courses.*,(SELECT MAX(updated_at) FROM `course_activities` WHERE course_activities.course_id = courses.id) AS a").order("a desc")
end %>
<% courses = all_courses.limit(5) %>
<% all_count = all_courses.count%>
<div class="homepageLeftMenuCourses <%= courses.empty? ? 'none' : ''%>">
<div class = "leftCoursesList" id="homepageLeftMenuCourses">
<ul>
<%= render :partial => 'layouts/user_courses', :locals => {:courses => courses,:user => User.current,:all_count => all_count,:type =>'Syllabus',:page => 0} %>
</ul>
</div>
<% if !courses.empty? %>
<div class="homepageLeftMenuMore" id="user_hide_course">
<a href="javascript:void(0);" class="homepageLeftMenuHideIcon" id="hide_show_courseicon" onclick="leftCourseslistChange();"></a>
</div>
<% end %>
</div>
</div>
<div class="project_Label">
<h4 class="mb5" >标签:</h4>
<div class="tag_h">
<%= render :partial => 'tags/syllabus_tag', :locals => {:obj => @syllabus,:object_flag => "11"}%>
</div>
<div class="cl"></div>
</div>
<div class="fontGrey2 mt10 ml20">访问计数 <%=@syllabus.visits %> 自2016年7月</div>
</div><!--left end -->
<div class="homepageRight">
<%= yield %>
<div class="sy_contanier">
<div class="sy_top">
<div class="sy_top_con"> <!-- onmouseover="$('#syllabus_edit_title_png').show();$('#syllabus_edit_ng_name_png').show();" onmouseout="$('#syllabus_edit_title_png').hide();$('#syllabus_edit_ng_name_png').hide();" -->
<%=render :partial => 'layouts/syllabus_info' %>
</div>
</div>
<%= render :partial => 'layouts/new_feedback' %>
<div class="sy_content ">
<div class="sy_con_l fl mb15">
<%= yield %>
</div><!--sy_con_l end-->
<div class="sy_con_r fr ">
<div class="sy_right_box" id="syllabus_base_info">
<%= render :partial => 'layouts/syllabus_base_info', :locals => {:syllabus => @syllabus} %>
</div>
<div class="sy_right_box">
<%= render :partial => 'layouts/syllabus_teacher_list', :locals => {:syllabus => @syllabus} %>
</div>
</div><!--sy_con_r end-->
<div class="cl"></div>
</div><!--sy_content end-->
</div>
<div class="cl"></div>
<%= render :partial => 'layouts/footer' %>
@ -136,6 +87,22 @@
$("#courseMenu").mouseleave(function () {
$("#topnav_course_menu").hide();
});
// Store variables
var accordion_head = $('.accordion > li > a'),
accordion_body = $('.accordion li > .sub-menu');
// Click function
accordion_head.on('click', function(event) {
// Disable header links
event.preventDefault();
// Show and hide the tabs on click
if ($(this).attr('class') != 'active'){
accordion_body.slideUp('normal');
$(this).next().stop(true,true).slideToggle('normal');
accordion_head.removeClass('active');
$(this).addClass('active');
}
});
});
function leftCourseslistChange(){
$('#homepageLeftMenuCourses').slideToggle();
@ -146,6 +113,20 @@
function show_edit_base_info() {
$("#syllabus_base_info").html("<%=escape_javascript(render :partial => 'layouts/syllabus_edit_info', :locals => {:syllabus => @syllabus}) %>");
}
function g(o){return document.getElementById(o);}
function HoverLi(n){
for(var i=1;i<=2;i++){
//g('sy_tab_nav_'+i).className='sy_tab_nomal';
//g('sy_tab_con_'+i).className='undis';
}
//g('sy_tab_con_'+n).className='dis';
//g('sy_tab_nav_'+n).className='sy_tab_hover';
if(n == 1) {
window.location.href = '<%=syllabus_path(@syllabus) %>';
} else {
window.location.href = '<%=syllabus_courselist_syllabus_path(@syllabus) %>';
}
}
</script>
</body>
</html>

View File

@ -1,62 +1,81 @@
<div class="listbox" id="course-list">
<h2 class="list-h2">班级列表</h2>
<div class="list_title">
<div class="category2 fl">
<span class="grayTxt ">排序:</span>
<%= link_to "时间", {:controller => 'syllabuses', :action => 'syllabus_courselist', :id =>@syllabus, :type => @type, :sort => @c_sort, :order => 1 }, :class => "sortTxt", :remote => true %>
<% if @courses.any? %>
<div class="sy_category">
<span class="sy_cgrey ">排序:</span>
<%= link_to "时间", {:controller => 'syllabuses', :action => 'syllabus_courselist', :id =>@syllabus, :type => @type, :sort => @c_sort, :order => 1 }, :class => "sy_cgrey fl", :remote => true %>
<% if @type.to_i == 1 %>
<%= link_to "", {:controller => 'syllabuses', :action => 'syllabus_courselist', :id =>@syllabus, :type => @type, :sort => @c_sort, :order => 1 }, :class => "#{@c_sort.to_i == 1 ? 'sortupbtn' : 'sortdownbtn'} ", :remote => true %>
<%= link_to "", {:controller => 'syllabuses', :action => 'syllabus_courselist', :id =>@syllabus, :type => @type, :sort => @c_sort, :order => 1 }, :class => "#{@c_sort.to_i == 1 ? 'sortupbtn' : 'sortdownbtn'} mt15 fl", :remote => true %>
<% end %>
<%= link_to "人气", {:controller => 'syllabuses', :action => 'syllabus_courselist', :id =>@syllabus, :type => @type, :sort => @c_sort, :order => 2 }, :class => "sortTxt", :remote => true %>
<%= link_to "人气", {:controller => 'syllabuses', :action => 'syllabus_courselist', :id =>@syllabus, :type => @type, :sort => @c_sort, :order => 2 }, :class => "sy_cgrey fl #{@type == 1 ? '' : 'ml10'}", :remote => true %>
<% if @type.to_i == 2 %>
<%= link_to "", {:controller => 'syllabuses', :action => 'syllabus_courselist', :id =>@syllabus, :type => @type, :sort => @c_sort, :order => 2 }, :class => "#{@c_sort.to_i == 1 ? 'sortupbtn' : 'sortdownbtn'} ", :remote => true %>
<%= link_to "", {:controller => 'syllabuses', :action => 'syllabus_courselist', :id =>@syllabus, :type => @type, :sort => @c_sort, :order => 2 }, :class => "#{@c_sort.to_i == 1 ? 'sortupbtn' : 'sortdownbtn'} mt15 fl", :remote => true %>
<% end %>
<% if @syllabus.user == User.current %>
<%= link_to "新建班级", new_course_path(:host=> Setting.host_course, :syllabus_id => @syllabus.id), :class => "sy_btn_green fr mt10 mr10", :target => '_blank'%>
<% end %>
<div class="cl"></div>
</div>
<!-- <p class="fr grayTxt">创建老师:<%#=@syllabus.user.show_name %><span class="mr10 "></span> 创建时间:<%#=format_date @syllabus.created_at %></p> -->
<div class="cl"></div>
</div>
<div class="bloglistbox">
<% if @courses.any? %>
<% @courses.each do |course|%>
<ul class="list-file">
<li>
<span class="item_list fl"></span>
<%= link_to course.name+"("+current_time_and_term_short(course)+")", course_path(course.id,:host=>Setting.host_course), :class => "list-title fl #{course_endTime_timeout?(course) ? 'c_dark_grey' : ''}",
:style => 'color:#000',:id => "show_course_#{course.id}", :target => '_blank', :title => (course.is_public? ? "公开班级:":"私有班级:")+course.name+""+current_time_and_term(course)+""%>
<% teacher = User.where("id=?",course.tea_id).first%>
<span class="fr grayTxt">
<%='主讲老师:'+(teacher.try(:realname) != " " ? teacher.lastname + teacher.firstname : teacher.try(:login)) %>
</span>
</li>
<div class="sy_classbox">
<% @courses.each do |course| %>
<ul class="sy_classlist">
<div class="fl">
<% if !course.is_public && !User.current.member_of_course?(course) %>
<h3 class="sy_classlist_title fl"><%=course.name %><%=current_time_and_term_short(course) %></h3>
<% else %>
<%= link_to course.name+"("+current_time_and_term_short(course)+")", course_path(course.id,:host=>Setting.host_course), :class => "sy_classlist_title fl",
:style => 'color:#000',:id => "show_course_#{course.id}", :target => '_blank', :title => (course.is_public? ? "公开班级:":"私有班级:")+course.name+""+current_time_and_term(course)+""%>
<% end %>
<span class="icon_si fl mr20"><%=course.is_public? ? '公开' : '私有' %></span>
<div class="cl"></div>
<li class="ml15">
<!--<span class="grayTxt">创建:<%#= format_time(course.created_at) %></span>-->
<span class="grayTxt">更新:<%= format_time(course.updated_on) %></span>
<span class="grayTxt">
学期:&nbsp;&nbsp;<span><%= current_time_and_term course %></span>
</span>
<% if User.current.admin? || User.current.allowed_to?(:as_teacher,@course) %>
<p class="sy_cgrey">
<span class=" mr15">主讲老师:<%=link_to course.teacher.show_name, user_path(course.teacher), :class => 'sy_cblue' %></span>
<% if User.current.admin? || User.current.allowed_to?(:as_teacher,course) %>
<% homework_num = course.homework_commons.count %>
<% else %>
<% homework_num = course.homework_commons.where("publish_time <= '#{Date.today}'").count %>
<% end %>
<p class="list-info fr grayTxt"><span><%= homework_num %></span><span>作业</span><span>|</span><span> <%= visable_attachemnts_incourse(course).count %></span><span>资源</span></p>
</li>
<div class="cl"></div>
</ul>
<% end %>
<div>
<ul class="wlist" id="pages" >
<%= pagination_links_full @atta_pages, @atta_count, :per_page_links => false, :remote => @is_remote, :flag => true %>
<span class=" mr15">作业:
<% if course.is_public == 0 && !User.current.member_of_course?(course) %>
<%=homework_num %>
<% else %>
<%= link_to homework_num, homework_common_index_path(:course => course.id), :class => "sy_cblue",:target => '_blank'%>
<% end %>
</span>
<span class=" mr15">资源:
<% if course.is_public == 0 && !User.current.member_of_course?(course) %>
<%=visable_attachemnts_incourse(course).count %>
<% else %>
<%= link_to visable_attachemnts_incourse(course).count, course_files_path(course), :class => "sy_cblue",:target => '_blank'%>
<% end %>
</span>
<span class=" mr15">学期:<%= current_time_and_term course %></span>
<span class=" mr15">更新时间:<%= format_date(course.updated_on) %></span>
</p>
</div>
<% if User.current.member_of_course?(course) %>
<%=link_to '进入班级', course_path(course), :class => 'btn_orange_big fr mt5', :target => '_blank' %>
<% else %>
<%= link_to "加入班级",join_private_courses_courses_path,:remote => true,:class => "btn_green_big fr mt5",:method => "post"%>
<% end %>
<div class="cl"></div>
</ul>
<div class="cl"></div>
</div>
<% end %>
<div>
<ul class="wlist" id="pages" >
<%= pagination_links_full @atta_pages, @atta_count, :per_page_links => false, :remote => @is_remote, :flag => true %>
</ul>
<div class="cl"></div>
</div>
</div>
<% else %>
<div class="icons_tishi"><img src="../images/sy/icons_tan.png" width="110" height="110" alt="" ></div>
<% if User.current == @syllabus.user %>
<p class="sy_tab_con_p">您建立的课程还未创建班级,请
<%= link_to "新建班级", new_course_path(:host=> Setting.host_course, :syllabus_id => @syllabus.id), :class => "sy_corange", :target => '_blank'%>
,谢谢啦!</p>
<% else %>
<p class="nodata"><%= l(:label_no_data) %></p>
<p class="sy_tab_con_p">该课程还未创建班级,敬请期待!</p>
<% end %>
</div>
</div>
<% end %>
<script type="text/javascript">
//如果右边的列表比左边的高度低则将右边的高度设为与左边对齐

View File

@ -1,12 +1,9 @@
<%= content_for(:header_tags) do %>
<%= import_ke(enable_at: false, prettify: false) %>
<% end %>
<div class="RightBanner" >
<p >课程信息</p>
</div>
<div class="HomeWork">
<p class="f16 mb10"><%=@syllabus.title %>课程大纲</p>
<div class="HomeWorkCon">
<div class="sy_tab_con mb20">
<p class="f16 mb10" style="font-size:16px;">课程信息</p>
<%= labelled_form_for @syllabus, :url =>syllabus_path(@syllabus),
:html => {:nhname=>'form',:multipart => true, :id => 'syllabus-form'} do |f| %>
<div>
@ -42,6 +39,4 @@
</div>
<div class="cl"></div>
<% end %>
</div>
</div><!--HomeWork end-->

View File

@ -1,4 +1,4 @@
$("#syllabus_title_show").html("<%= escape_javascript render :partial => 'layouts/syllabus_title', :locals => {:syllabus => @syllabus} %>");
$("#syllabus_title_edit").text("");
$("#syllabus_title_edit").val("");
$("#syllabus_title_show").show();
$("#syllabus_title_edit").hide();

View File

@ -6,54 +6,48 @@
sd_create_editor_from_data(<%= @syllabus.id %>, null, "100%", "<%= @syllabus.class.to_s %>");
});
</script>
<div class="RightBanner" >
<p >课程信息</p>
</div>
<% if @syllabus.des_status == 1 && @syllabus.courses.where("is_delete = 0").empty? %>
<div class="syllabusbox_tishi">
<% if User.current == @syllabus.user %>
<p >您建立的课程还未创建班级,请
<%= link_to "新建班级", new_course_path(:host=> Setting.host_course, :syllabus_id => @syllabus.id), :class => "syllabusbox_a_blue", :target => '_blank'%>
</p>
<% else %>
<p >本课程下还未创建班级,敬请期待。
</p>
<% end %>
</div>
<% end %>
<div class="<%=@syllabus.des_status == 0 ? 'HomeWork' : 'syllabusbox'%>">
<% if @syllabus.des_status == 0%>
<% if User.current == @syllabus.user %>
<p class="syllabus_info_tishi">您建立的课程尚未填写课程大纲,请完善您的<%=link_to '课程大纲', edit_syllabus_path(@syllabus), :class => 'syllabusbox_a_blue' %></p>
<% else %>
<p class="syllabus_info_tishi"><%=@syllabus.user.show_name %>老师尚未完成课程大纲的编写,敬请期待。</p>
<% end %>
<ul id="sy_tab_nav">
<li id="sy_tab_nav_1" class="sy_tab_hover" onclick="HoverLi(1);">
<a href="javascript:void(0);" class="sy_tab_type" >课程大纲</a>
</li>
<li id="sy_tab_nav_2" onclick="HoverLi(2);">
<a href="javascript:void(0);" class="sy_tab_type" >班级列表</a>
</li>
</ul>
<div id="sy_tab_con_1">
<% if @syllabus.des_status == 0 && User.current == @syllabus.user %>
<div class="icons_tishi"><img src="../images/sy/icons_tan.png" width="110" height="110" alt="" ></div>
<p class="sy_tab_con_p">您建立的课程尚未填写课程大纲,请完善您的 <%=link_to '课程大纲', edit_syllabus_path(@syllabus), :class => 'sy_corange' %>,谢谢啦!</p>
<% elsif @syllabus.des_status == 0 %>
<div class="icons_tishi"><img src="../images/sy/icons_tan.png" width="110" height="110" alt="" ></div>
<p class="sy_tab_con_p">该课程尚未填写课程大纲,敬请期待!</p>
<% else %>
<div class="syllabuscon">
<%=@syllabus.description.html_safe %>
<div class="mt10" style="font-weight:normal;">
<%= render :partial=>"attachments/activity_attach", :locals=>{:activity => @syllabus} %>
</div>
</div>
<% if User.current.logged? && User.current == @syllabus.user%>
<div class="homepagePostSetting" style="margin:10px;">
<ul>
<li class="homepagePostSettingIcon">
<ul class="homepagePostSettiongText">
<li><%=link_to '编辑', edit_syllabus_path(@syllabus), :class => 'postOptionLink'%></li>
<li><%=link_to '删除', delete_des_syllabus_path(@syllabus), :class => 'postOptionLink', :confirm => l(:text_are_you_sure)%></li>
</ul>
</li>
</ul>
<div class="sy_tab_con">
<div class="syllabuscon">
<%=@syllabus.description.html_safe %>
<div class="mt10" style="font-weight:normal;">
<%= render :partial=>"attachments/activity_attach", :locals=>{:activity => @syllabus} %>
</div>
<div class="cl"></div>
<% end %>
<div class="fr fontGrey2">更新时间:<%=format_time @syllabus.updated_at %><div></div></div>
<div class="cl"></div>
<% end %>
</div>
<% if User.current.logged? && User.current == @syllabus.user%>
<div class="homepagePostSetting" style="margin:10px;">
<ul>
<li class="homepagePostSettingIcon">
<ul class="homepagePostSettiongText">
<li><%=link_to '编辑', edit_syllabus_path(@syllabus), :class => 'postOptionLink'%></li>
<li><%=link_to '删除', delete_des_syllabus_path(@syllabus), :class => 'postOptionLink', :confirm => l(:text_are_you_sure)%></li>
</ul>
</li>
</ul>
</div>
<div class="cl"></div>
<% end %>
<div class="fr fontGrey2">更新时间:<%=format_time @syllabus.updated_at %><div></div></div>
<div class="cl"></div>
</div><!--HomeWork end-->
<% end %>
<% count=@syllabus.journals_for_messages.count %>
<div class="homepagePostReply">
<div class="homepagePostReply" style="margin-bottom: 20px;">
<%= render :partial => 'users/reply_banner', :locals => {:count => count, :activity => @syllabus, :user_activity_id => @syllabus.id} %>
<% comments = @syllabus.journals_for_messages.reorder("created_on desc").limit(3) %>
@ -62,26 +56,28 @@
<%= render :partial => 'users/all_replies', :locals => {:comments => comments}%>
</div>
<% end %>
<div class="homepagePostReplyContainer borderBottomNone minHeight48">
<div class="homepagePostReplyPortrait mr15 imageFuzzy" id="reply_image_<%= @syllabus.id%>"><%= link_to image_tag(url_to_avatar(User.current), :width => "33", :height => "33"), user_path(User.current), :alt => "用户头像" %></div>
<div class="homepagePostReplyInputContainer mb10">
<% if User.current.logged? %>
<div nhname='new_message_<%= @syllabus.id%>' style="display:none;">
<%= form_for('new_form',:url => {:controller => 'words', :action => 'leave_syllabus_message', :id => @syllabus.id},:method => "post") do |f|%>
<div nhname='toolbar_container_<%= @syllabus.id%>'></div>
<textarea placeholder="有问题或有建议,请直接给我留言吧!" style="display: none" nhname='new_message_textarea_<%= @syllabus.id%>' name="comment"></textarea>
<a id="new_message_submit_btn_<%= @syllabus.id%>" href="javascript:void(0)" onclick="this.style.display='none'" class="blue_n_btn fr" style="display:none;margin-top:6px;">发送</a>
<div class="cl"></div>
<p nhname='contentmsg_<%= @syllabus.id%>'></p>
<% end%>
</div>
<% else %>
<%= render :partial => "users/show_unlogged" %>
<% end %>
<div class="homepagePostReplyContainer borderBottomNone minHeight48">
<div class="homepagePostReplyPortrait mr15 imageFuzzy" id="reply_image_<%= @syllabus.id%>"><%= link_to image_tag(url_to_avatar(User.current), :width => "33", :height => "33"), user_path(User.current), :alt => "用户头像" %></div>
<div class="homepagePostReplyInputContainer mb10">
<% if User.current.logged? %>
<div nhname='new_message_<%= @syllabus.id%>' style="display:none;">
<%= form_for('new_form',:url => {:controller => 'words', :action => 'leave_syllabus_message', :id => @syllabus.id},:method => "post") do |f|%>
<div nhname='toolbar_container_<%= @syllabus.id%>'></div>
<textarea placeholder="有问题或有建议,请直接给我留言吧!" style="display: none" nhname='new_message_textarea_<%= @syllabus.id%>' name="comment"></textarea>
<a id="new_message_submit_btn_<%= @syllabus.id%>" href="javascript:void(0)" onclick="this.style.display='none'" class="blue_n_btn fr" style="display:none;margin-top:6px;">发送</a>
<div class="cl"></div>
<p nhname='contentmsg_<%= @syllabus.id%>'></p>
<% end%>
</div>
<% else %>
<%= render :partial => "users/show_unlogged" %>
<% end %>
<div class="cl"></div>
</div>
<div class="cl"></div>
</div>
<div class="cl"></div>
</div>
<div class="cl"></div>
</div><!--回复框 用正式版样式-->
</div><!--HomeWork end-->
</div><!--回复框 用正式版样式-->
</div><!--课程大纲 end-->

View File

@ -1 +1,12 @@
<%= render :partial => 'syllabus_course_list'%>
<ul id="sy_tab_nav">
<li id="sy_tab_nav_1" onclick="HoverLi(1);">
<a href="javascript:void(0);" class="sy_tab_type" >课程大纲</a>
</li>
<li id="sy_tab_nav_2" class="sy_tab_hover" onclick="HoverLi(2);">
<a href="javascript:void(0);" class="sy_tab_type" >班级列表</a>
</li>
</ul>
<div id="sy_tab_con_2">
<%=render :partial => 'syllabuses/syllabus_course_list' %>
</div><!--班级列表 end-->

View File

@ -1 +1 @@
$("#course-list").replaceWith('<%= escape_javascript( render :partial => 'syllabus_course_list') %>');
$("#sy_tab_con_2").html('<%= escape_javascript( render :partial => 'syllabus_course_list') %>');

BIN
public/images/sy/bg_sy.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

BIN
public/images/sy/male.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

View File

@ -57,7 +57,7 @@ function show_edit_title(str) {
IsEdit = true;
$("#syllabus_title_show").hide();
$("#syllabus_title_edit").show();
$("#syllabus_title_edit").text(str);
$("#syllabus_title_edit").val(str);
$("#syllabus_title_edit").focus();
}
@ -82,13 +82,13 @@ function toggle_all_syllabus_attr(){
var none = $("#all_syllabus_attr li.none_attr");
if(btn.data('init')=='0'){
btn.data('init',1);
btn.removeClass('homepageLeftMenuMoreIcon');
btn.addClass('homepageLeftMenuHideIcon');
btn.removeClass('homepageLeftMenuMoreIcon2');
btn.addClass('homepageLeftMenuHideIcon2');
target.show();
}else{
btn.data('init',0);
btn.addClass('homepageLeftMenuMoreIcon');
btn.removeClass('homepageLeftMenuHideIcon');
btn.addClass('homepageLeftMenuMoreIcon2');
btn.removeClass('homepageLeftMenuHideIcon2');
none.hide();
}
}

View File

@ -330,6 +330,8 @@ a.projectsLineGrey:hover {color:#ffffff;}
.homepageLeftMenuMore:hover {background-color:#269ac9;}
.homepageLeftMenuMoreIcon {background:url(/images/homepage_icon.png) -74px -240px no-repeat; display:block; height:18px;}
.homepageLeftMenuHideIcon {background:url(/images/homepage_icon.png) 100px -624px no-repeat;display:block; height:18px;}
.homepageLeftMenuMoreIcon2 {background:url(/images/homepage_icon.png) -90px -240px no-repeat; display:block; height:18px;}
.homepageLeftMenuHideIcon2 {background:url(/images/homepage_icon.png) 85px -624px no-repeat;display:block; height:18px;}
.homepageMenuSetting {display:inline-block; background:url(/images/homepage_icon2.png) -190px -365px no-repeat; width:15px; height:15px; margin-top: 16px; margin-right: 15px;}
.homepageMenuSetting:hover {background:url(/images/homepage_icon2.png) -190px -407px no-repeat;}
a.homepageMenuText {color:#484848; font-size:16px; margin-left:20px;}

View File

@ -0,0 +1,206 @@
/* 字体颜色 */
.sy_cblack{ color: #333;}
.sy_cgrey{ color: #888;}
.sy_corange{ color: #ee4a1f;}
.sy_f14{ font-size: 14px;}
.sy_f16{ font-size: 16px;}
a.sy_cgrey{ color: #888;}
a:hover.sy_cgrey{ color:#ee4a1f;}
a.sy_corange{ color: #ee4a1f; }
a:hover.sy_corange{ text-decoration:underline;}
a.sy_cblue{ color: #3b94d6;}
a.sy_cblack{ color: #333;}
a.sy_cgrey{ color: #888;}
a.sy_cmore{ font-size:12px; color:#888; font-weight:normal;}
a:hover.sy_cmore{color: #ee4a1f;}
/* 按钮*/
a.btn_orange_big{
border: 1px solid #ee4a1f;
color: #ee4a1f;
text-align: center;
font-size: 14px;
padding:0 10px;
height: 30px;
line-height: 30px;
-webkit-border-radius:3px;
-moz-border-radius:3px;
-o-border-radius:3px;
border-radius:3px;
}
a:hover.btn_orange_big{
background: #ee4a1f;
color: #fff;
}
a.btn_green_big{
border: 1px solid #60b25e;
color: #60b25e;
text-align: center;
font-size: 14px;
padding:0 10px;
height: 30px;
line-height: 30px;
-webkit-border-radius:3px;
-moz-border-radius:3px;
-o-border-radius:3px;
border-radius:3px;
}
a:hover.btn_green_big{
background: #60b25e;
color: #fff;
}
a.sy_btn_green{
color: #fff;
background: #60b25e;
text-align: center;
font-size: 12px;
padding:0 15px;
height: 30px;
line-height: 30px;
-webkit-border-radius:3px;
-moz-border-radius:3px;
-o-border-radius:3px;
border-radius:3px;
}
a:hover.sy_btn_green{ background: #51a74f;}
a.sy_btn_grey{
color: #333;
background: #e1e1e1;
text-align: center;
font-size: 12px;
padding:0 15px;
height: 30px;
line-height: 30px;
-webkit-border-radius:3px;
-moz-border-radius:3px;
-o-border-radius:3px;
border-radius:3px;
}
a:hover.sy_btn_grey{ background: #c3c3c3;}
a.sy_btn_blue{
color: #fff;
background: #3b94d6;
text-align: center;
font-size: 12px;
padding:0 15px;
height: 30px;
line-height: 30px;
-webkit-border-radius:3px;
-moz-border-radius:3px;
-o-border-radius:3px;
border-radius:3px;
}
a:hover.sy_btn_blue{ background: #2788d0;}
/* 排序 */
.sy_category{
height: 50px;
line-height: 50px;
padding-left: 15px;
border-bottom:1px solid #ddd;
}
.sy_category span{ float: left;}
a.sortupbtn{
background: url(../images/sy/liststyle.png) 0 3px no-repeat;
width:12px;
height:17px;
display:block;
margin-right:10px;
cursor:pointer;
}
a.sortdownbtn{
background: url(../images/sy/liststyle.png) 0 -12px no-repeat;
width:12px;
height:17px;
display:block;
cursor:pointer;
}
/* 翻页 */
.pages a{
display:block;
border:1px solid #d1d1d1;
color:#888;
float:left;
width:30px;
text-align:center;
padding:3px 0;
line-height:1.9;
margin-right:5px;
}
.pages a:hover{
background-color:#3b94d6;
border:1px solid #3b94d6;
color:#fff;
}
a.pages-big{
width:50px;
}
.pages .active{
background-color:#3b94d6;
border:1px solid #3b94d6;
color:#fff;
}
.pages{
width:330px;
margin:20px auto 10px;
}
/* 输入框 */
.sy_contanier input,.sy_contanier select{
border:1px solid #ccc;
padding:5px;
background:#fff;
}
/* 加入班级弹窗 */
#sy_popup_box{
width:460px;
background:#fff;
padding-bottom:30px;
-webkit-border-radius:5px;
-moz-border-radius:5px;
-o-border-radius:5px;
border-radius:5px;
box-shadow: 0px 2px 8px rgba(146, 153, 169, 0.5);
}
.sy_popup_top{
background:#3b94d6;
height:40px;
-webkit-border-radius: 5px 5px 0px 0px;
-moz-border-radius: 5px 5px 0px 0px;
-o-border-radius: 5px 5px 0px 0px;
border-radius: 5px 5px 0px 0px;
}
.sy_popup_top h3{
font-size:18px;
color:#fff;
font-weight:normal;
line-height:40px;
padding-left:10px;
}
a.sy_icons_close{
width:20px;
height:20px;
display:block;
background: url(../images/sy/sy_icons_close.png) 0 0px no-repeat;
margin:8px 10px 0 0;
}
.sy_popup_con{
margin:30px auto 0;
font-size:14px;
width:330px;
}
.sy_popup_add label{
display:block;
float:left;
width:85px;
text-align:right;
line-height:40px;
}
.sy_popup_add li{
line-height:40px;
}
.sy_input_txt{
border:1px solid #dedede;
height:36px;
background:#fff;
padding:0 5px;
width:220px;
}

View File

@ -56,6 +56,9 @@ input.syllabus_input_min{
background: #fff;
border: 1px solid #dddddd;
}
.sy_tab_con{
width:740px; padding:20px 20px 0 20px; position:relative;
}
.syllabuscon_title{
color:#000; text-align:center;
}
@ -146,3 +149,465 @@ a:hover.course-title{ color:#269ac9;}
.homepageSyllabusName {font-size:16px; color:#484848; float:left; max-width:120px;}
.syllabusTitleTextarea {resize:none; width:120px; margin-left: 10px; height:80px; max-width:120px; max-height:80px; border:1px solid #d9d9d9; outline:none; margin:0px 0px 12px 0px;}
/* */
/* 课程大纲头部 */
.sy_top{
background:#f5f5f5;
width: 100%;
height: 138px;
}
.sy_top_con{
background: url(../images/sy/bg_sy.jpg) no-repeat;
width: 1280px;
margin: 0 auto;
height: 108px;
text-align:center;
padding-top: 30px;
}
.sy_top_con h2{
font-size: 30px;
color: #cc3433;
font-weight:normal;
}
.sy_top_con p{
font-size: 18px;
color: #333;
}
/* 课程大纲tab */
.sy_content{
width: 1000px;
margin: 0 auto;
margin-top:12px;
}
.sy_con_l{
width: 785px;
border: 1px solid #e7e7e7;
background: #fff;
}
#sy_tab_nav {
border-bottom:1px solid #e7e7e7;
height:50px;
background: #f8f8f8;
}
#sy_tab_nav li {
float:left;
padding:0px 50px;
text-align:center;
height: 47px;
line-height: 47px;
}
#sy_tab_nav li a{
font-size:16px;
color: #333;
}
.sy_tab_hover {
border-top:3px solid #ee4a1f;
border-bottom:1px solid #fff;
background: #fff;
}
.sy_tab_nomal {
border-bottom:none;
}
.undis {
display:none;
}
.dis {
display:block;
}
/* 课程大纲 */
.icons_tishi{
width: 110px;
height: 110px;
margin: 135px auto 20px;
}
.sy_tab_con_p{
font-size: 16px;
text-align: center;
margin-bottom:100px;
color:#888;
}
.sy_classlist{
padding: 15px 15px;
border-bottom: 1px dashed #e6e6e6;
}
.sy_classlist_title{
font-size: 16px;
font-weight: normal;
margin-bottom: 5px;
max-width:600px;
overflow:hidden;
white-space: nowrap;
text-overflow:ellipsis;
}
.sy_con_r{
width:205px;
}
.sy_right_box{
border:1px solid #e7e7e7;
border-bottom:none;
background:#fff;
width:205px;
padding-bottom:15px;
}
.sy_right_title{
border-left:5px solid #ee4a1f;
height:30px;
line-height:30px;
font-size:16px;
padding-left:10px;
margin-top:5px;
}
.sy_info label{
width:70px;
text-align:right;
display:block;
float:left;
margin-right:5px;
}
.sy_info input,.sy_info select{
width:105px;
border:1px solid #e7e7e7;
margin-bottom:5px;
}
.sy_info select{
width:115px;
}
.sy_info li{
height:30px;
line-height:30px;
}
input.sy_info_input_min{
width:30px;
}
.sy_teachers_list{
margin:10px;
}
.sy_teachers_list li{
padding:10px 0;
}
.sy_teachers_img{
width:60px;
height:60px;
border:3px solid #e6e6e6;
-webkit-border-radius:50px;
-moz-border-radius:50px;
-o-border-radius:50px;
border-radius:50px;
}
a.sy_teachers_name{
color: #000;
display:block;
width:95px;
font-size:16px;
margin:5px 0 10px;
}
a:hover.sy_teachers_name{
color: #ee4a1f;
}
.sy_teachers_span{
font-size:12px;
color:#fff;
width:150px;
padding:2px 5px;
background:#ffb400;
-webkit-border-radius:50px;
-moz-border-radius:50px;
-o-border-radius:50px;
border-radius:50px;
}
/* 班级主页 */
.sy_class_infobox{
padding:15px;
background:#fff;
margin:12px auto 0;
width:968px;
border:1px solid #e5e5e5;
position: relative;
}
.homepagePostSetting {
position:absolute;
width:20px;
height:20px;
right:10px;
top:10px;
}
.homepagePostSetting ul li:hover ul {
display:block;
}
.homepagePostSettingIcon {
background:url(../images/sy/icons_sy.png) 1px -408px no-repeat;
width:20px;
height:20px;
}
.homepagePostSettiongText {
width:75px;
text-align: center;
line-height:2;
font-size:12px;
color:#616060;
background-color:#ffffff;
border:1px solid #eaeaea;
border-radius:3px;
position:absolute;
left:-60px;
top:20px;
padding:5px 0px;
display:none;
box-shadow: 0px 2px 8px rgba(146, 153, 169, 0.5);
}
.homepagePostSettingIcon:hover {
background:url(../images/sy/icons_sy.png) -28px -408px no-repeat;
}
a.postOptionLink {
color:#616060;
display:block;
width:55px;
padding:0px 10px;
}
a.postOptionLink:hover {
color:#fff;
background-color:#3b94d6;
}
.sy_class_logo{
width:110px;
height:110px;
}
.sy_class_id{
width:110px;
height:80px;
background:#f1f1f1;
text-align:center;
padding-top:30px;
}
.sy_class_id p{
font-size:16px;
color:#333;
}
.sy_class_title{
font-size: 18px;
font-weight: normal;
margin-bottom: 5px;
max-width:440px;
overflow:hidden;
white-space: nowrap;
text-overflow:ellipsis;
}
.icon_si{
display:block;
width:30px;
height:22px;
background:url(../images/sy/icons_sy.png) 0 -452px no-repeat;
color:#fff;
font-size:12px;
padding-left:10px;
line-height: 22px;
}
.sy_class_titbox{margin-bottom:5px; padding-top:10px; }
a.sy_btn_orange{
display:block;
border:1px solid #ee4a1f;
background:#fff url(../images/sy/icons_sy.png) 8px -548px no-repeat;
color:#ee4a1f;
text-align:center;
height:26px;
line-height:26px;
width:60px;
-webkit-border-radius:3px;
-moz-border-radius:3px;
-o-border-radius:3px;
border-radius:3px;
padding-left:20px;
}
a:hover.sy_btn_orange{
border:1px solid #fff;
background:#ee4a1f url(../images/sy/icons_sy.png) 8px -516px no-repeat;
color:#fff;
}
/* 班级主页左侧导航 */
.sy_class_leftnav{ width:240px;}
.accordion li > a {
display: block;
padding: 0 10px 0 40px;
height:49px;
line-height:49px;
color: #333;
font-size:16px;
background: #f8f8f8;
border:1px solid #e5e5e5;
border-bottom:none;
}
.accordion > li:hover > a{
color: #ee4a1f;
background: #fff;
}
.accordion > li:target > a,
.accordion > li > a.active {
color: #ee4a1f;
background: #fff;
border:1px solid #e5e5e5;
border-left:3px solid #ee4a1f;
border-bottom:none;
}
.accordion li{ position:relative;}
.accordion li > a span {
margin-top:15px;
font-size:12px;
padding: 0 10px;
background: #dbdbdb;
-webkit-border-radius: 15px;
-moz-border-radius: 15px;
border-radius: 15px;
margin-left:10px;
color: #333;
}
.accordion > li:hover > a span,
.accordion > li:target > a span,
.accordion > li > a.active span {
margin-left:10px;
color: #333;
background: #dbdbdb;
}
/* Images */
.accordion > li > a:before {
position: absolute;
top: 0;
left: 0;
content: '';
width: 24px;
height: 50px;
margin: 4px 8px;
background-repeat: no-repeat;
background-image: url(../images/sy/icons_sy.png);
background-position: 5px 13px;
}
.accordion li.sy_icons_index > a:before { background-position: 5px 13px; }
.accordion li.sy_icons_index:hover > a:before,
.accordion li.sy_icons_index:target > a:before,
.accordion li.sy_icons_indexs > a.active:before { background-position: -23px 13px; }
.accordion li.sy_icons_boards > a:before { background-position: 5px -23px; }
.accordion li.sy_icons_boards:hover > a:before,
.accordion li.sy_icons_boards:target > a:before,
.accordion li.sy_icons_boards > a.active:before { background-position: -23px -23px; }
.accordion li.sy_icons_more > a:before { background-position: 5px -60px; }
.accordion li.sy_icons_more:hover > a:before,
.accordion li.sy_icons_more:target > a:before,
.accordion li.sy_icons_more > a.active:before { background-position: -23px -60px; }
.accordion li.sy_icons_hwork > a:before { background-position: 5px -100px; }
.accordion li.sy_icons_hwork:hover > a:before,
.accordion li.sy_icons_hwork:target > a:before,
.accordion li.sy_icons_hwork > a.active:before { background-position: -23px -100px; }
.accordion li.sy_icons_news > a:before { background-position: 5px -134px; }
.accordion li.sy_icons_news:hover > a:before,
.accordion li.sy_icons_news:target > a:before,
.accordion li.sy_icons_news > a.active:before { background-position: -23px -134px; }
.accordion li.sy_icons_files > a:before { background-position: 5px -172px; }
.accordion li.sy_icons_files:hover > a:before,
.accordion li.sy_icons_files:target > a:before,
.accordion li.sy_icons_files > a.active:before { background-position: -23px -172px; }
.accordion li.sy_icons_feedback > a:before { background-position: 5px -214px; }
.accordion li.sy_icons_feedback:hover > a:before,
.accordion li.sy_icons_feedback:target > a:before,
.accordion li.sy_icons_feedback > a.active:before { background-position: -23px -214px;}
.accordion li.sy_icons_poll > a:before { background-position: 5px -251px; }
.accordion li.sy_icons_poll:hover > a:before,
.accordion li.sy_icons_poll:target > a:before,
.accordion li.sy_icons_poll > a.active:before { background-position: -23px -251px; }
.accordion li.sy_icons_exercise > a:before { background-position: 5px -290px; }
.accordion li.sy_icons_exercise:hover > a:before,
.accordion li.sy_icons_exercise:target > a:before,
.accordion li.ssy_icons_exercise > a.active:before { background-position: -23px -290px; }
.accordion li.sy_icons_st > a:before { background-position: 5px -330px; }
.accordion li.sy_icons_st:hover > a:before,
.accordion li.sy_icons_st:target > a:before,
.accordion li.sy_icons_st > a.active:before { background-position: -23px -330px; }
/* Sub Menu */
.sub-menu li a {
color: #797979;
background: #f8f8f8;
height:39px;
line-height:39px;
font-size:14px;
}
.sub-menu li:last-child a { border-bottom:1px solid #e5e5e5; }
.accordion li > .sub-menu {
display: none;
}
.accordion li:target > .sub-menu {
display: block;
}
.accordion > li > a.sy_class_add:before{background-image:none;}
.accordion > li > a.sy_class_add {
padding:0;
border:none;
display:block;
position: absolute;
top:15px;
right:10px;
width:20px;
height:20px;
background: url(../images/sy/icons_sy.png) 0px -487px no-repeat;
}
.sub-menu > li > a.sy_class_add {
padding:0;
border:none;
display:block;
position: absolute;
top:15px;
right:10px;
width:20px;
height:20px;
background: url(../images/sy/icons_sy.png) 0px -487px no-repeat;
}
.accordion li .sy_class_add:hover {
background: url(../images/sy/icons_sy.png) -32px -487px no-repeat;
padding:0;
border:none;
}
.sy_class_leftbox{ width:208px; background: #fff; border: 1px solid #e5e5e5; border-bottom: none; padding:10px 15px;}
.sy_class_users{ width:50px; margin:0 15px 10px 4px; }
.sy_class_users span{ display:block; height:20px;width:50px; overflow:hidden;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.sy_class_users img{
width:40px;
height:40px;
margin:5px 0;
border: 3px solid #fff;
-webkit-border-radius:50px;
-moz-border-radius:50px;
-o-border-radius:50px;
border-radius:50px;
}
.sy_class_users img:hover{border: 3px solid #e6e6e6;}
.sy_class_leftbox h3{
height:30px;
line-height:30px;
font-size:14px;
font-weight:normal;
}
.sy_sq_orange{ display: block;width: 15px; height: 15px; background:#f79981; color: #fff; text-align:center; line-height: 15px;}
a.sy_class_ltitle{display: block; font-size: 14px; width: 185px; color:#888; }
a:hover.sy_class_ltitle{ color:#333;}
.sy_cir_grey{
font-size:12px;
padding: 0 10px;
background: #dbdbdb;
-webkit-border-radius: 15px;
-moz-border-radius: 15px;
border-radius: 15px;
color: #888;
}
.sy_class_lclass li{ padding:10px 0; border-bottom: 1px dashed #ebebeb;}
.sy_class_lclass li:last-child { border-bottom:none;}
.sy_class_r{ width: 748px; background: #fff; border: 1px solid #e5e5e5;}