593 lines
17 KiB
JavaScript
593 lines
17 KiB
JavaScript
$(function(){
|
|
//右侧最小高度 = 左侧高度 - 15px 保证两边高度基本一样,页面美观
|
|
$("#RSide").css("min-height",$("#LSide").height()-35);
|
|
$("#users_setting").css("min-height",$("#LSide").height()-100);
|
|
|
|
//头像相关
|
|
$("#homepage_portrait_image").on("mouseover",function(){
|
|
$("#edit_user_file_btn").show();
|
|
$("#watch_user_btn").show();
|
|
}).on("mouseout",function(){
|
|
$("#edit_user_file_btn").hide();
|
|
$("#watch_user_btn").hide();
|
|
});
|
|
|
|
//日历选择样式
|
|
//$(".ui-datepicker-trigger").replaceWith("<div class='fl DateBorder mr10'><img class='ui-datepicker-trigger'></div>")
|
|
});
|
|
|
|
//编辑个人简介
|
|
function show_edit_user_introduction() {
|
|
$("#user_brief_introduction_show").hide();
|
|
$("#user_brief_introduction_edit").show();
|
|
$("#user_brief_introduction_edit").focus();
|
|
}
|
|
|
|
//编辑个人简介完成之后提交
|
|
function edit_user_introduction(url){
|
|
$.get(
|
|
url,
|
|
{ brief_introduction: $("#user_brief_introduction_edit").val() },
|
|
function (data) {
|
|
|
|
}
|
|
);
|
|
}
|
|
|
|
//显示更多的课程
|
|
function show_more_course(url){
|
|
$.get(
|
|
url,
|
|
{ page: $("#course_page_num").val() },
|
|
function (data) {
|
|
}
|
|
);
|
|
}
|
|
|
|
//显示更多的项目
|
|
function show_more_project(url){
|
|
$.get(
|
|
url,
|
|
{ page: $("#project_page_num").val() },
|
|
function (data) {
|
|
|
|
}
|
|
);
|
|
}
|
|
|
|
//老师提交 新建/修改 作业
|
|
function submit_homework(id){
|
|
if(!regex_homework_name()){
|
|
$("#homework_name").focus();
|
|
}
|
|
else if(!regex_homework_end_time()){
|
|
$("#homework_end_time").focus();
|
|
}
|
|
else if(!regex_homework_end_publish_time()){
|
|
$("#homework_end_time").focus();
|
|
}
|
|
else if(!regex_course_id()){
|
|
$("#course_id").focus();
|
|
}
|
|
else{
|
|
homework_description_editor.sync();
|
|
$("#"+id).submit();
|
|
}
|
|
}
|
|
|
|
//验证新建作业的名字
|
|
function regex_homework_name()
|
|
{
|
|
var name = $.trim($("#homework_name").val());
|
|
|
|
if(name=="")
|
|
{
|
|
$("#homework_name_span").text("名称不能为空");
|
|
return false;
|
|
}
|
|
else
|
|
{
|
|
$("#homework_name_span").text("");
|
|
return true;
|
|
}
|
|
}
|
|
//验证发布时间不能大于截止时间
|
|
function regex_homework_end_publish_time()
|
|
{
|
|
var myDate = new Date();
|
|
if($.trim($("#homework_publish_time").val()) == "")
|
|
{
|
|
$("#homework_publish_time").val(formate_date(myDate));
|
|
}
|
|
var end_time = Date.parse($("#homework_end_time").val());
|
|
var publish_time = Date.parse($("#homework_publish_time").val());
|
|
if(end_time < publish_time)
|
|
{
|
|
$("#homework_end_time_span").text("截止日期不能小于发布日期");
|
|
return false;
|
|
}
|
|
else
|
|
{
|
|
$("#homework_end_time_span").text("");
|
|
return true;
|
|
}
|
|
}
|
|
|
|
//验证截止时间
|
|
function regex_homework_end_time()
|
|
{
|
|
var name = $.trim($("#homework_end_time").val());
|
|
if(name=="")
|
|
{
|
|
$("#homework_end_time_span").text("截止时间不能为空");
|
|
return false;
|
|
}
|
|
else
|
|
{
|
|
$("#homework_end_time_span").text("");
|
|
return true;
|
|
}
|
|
}
|
|
|
|
function formate_date(date){
|
|
var str = "";
|
|
var year = date.getFullYear();
|
|
var month = date.getMonth() + 1;
|
|
var day = date.getDate();
|
|
if(month < 10) {
|
|
month = '0' + month;
|
|
}
|
|
if(day < 10) {
|
|
day = '0' + day;
|
|
}
|
|
str = year + '-' + month + '-' + day;
|
|
return str;
|
|
}
|
|
|
|
//验证发送到课程
|
|
function regex_course_id(){
|
|
var course_id = $("#course_id").val();
|
|
if(course_id == -1)
|
|
{
|
|
$("#homework_course_id_span").text("发布课程不能为空");
|
|
return false;
|
|
}
|
|
else
|
|
{
|
|
$("#homework_course_id_span").text("");
|
|
return true;
|
|
}
|
|
}
|
|
|
|
//老师导入作业时查询作业
|
|
function search_homework_by_name(url){
|
|
$.get(
|
|
url,
|
|
{ name: $("#search_homework_name").val() },
|
|
function (data) {
|
|
}
|
|
);
|
|
}
|
|
|
|
//提交匿评参数设置
|
|
function submit_set_evaluation_attr(end_time){
|
|
if(!regex_evaluation_start(end_time)){
|
|
$("#evaluation_start_time").focus();
|
|
}
|
|
else if(!regex_evaluation_end()){
|
|
$("#evaluation_end_time").focus();
|
|
}
|
|
else if(!regex_evaluation_num()){
|
|
$("#evaluation_num").focus();
|
|
}
|
|
else{
|
|
$('#popbox02 form').submit();
|
|
}
|
|
}
|
|
|
|
//验证匿评开启时间:大于截止时间,或者为空
|
|
function regex_evaluation_start(end_time){
|
|
var evaluation_start = $.trim($("#evaluation_start_time").val());
|
|
if(evaluation_start == ""){
|
|
$("#homework_evaluation_start_time").text("开启匿评日期不能为空");
|
|
return false;
|
|
}
|
|
var end_time = new Date(end_time);
|
|
var evaluation_start_time = new Date(evaluation_start);
|
|
if(evaluation_start_time > end_time){
|
|
$("#homework_evaluation_start_time").text("");
|
|
return true;
|
|
}else{
|
|
$("#homework_evaluation_start_time").text("开启匿评日期必须大于截止日期");
|
|
return false;
|
|
}
|
|
}
|
|
|
|
//验证匿评结束时间:大于匿评开启时间,或者为空。当匿评开启时间为空时,匿评结束时间必须为空
|
|
function regex_evaluation_end(){
|
|
var evaluation_start = $.trim($("#evaluation_start_time").val());
|
|
var evaluation_end = $.trim($("#evaluation_end_time").val());
|
|
if(evaluation_end == ""){
|
|
$("#homework_evaluation_end_time").text("关闭匿评日期不能为空");
|
|
return true;
|
|
}
|
|
var evaluation_start_time = new Date(evaluation_start);
|
|
var evaluation_end_time = new Date(evaluation_end);
|
|
if(evaluation_end_time >= evaluation_start_time){
|
|
$("#homework_evaluation_end_time").text("");
|
|
return true;
|
|
}else{
|
|
$("#homework_evaluation_end_time").text("关闭匿评日期不能小于开启匿评日期");
|
|
return false;
|
|
}
|
|
}
|
|
|
|
//验证匿评数量
|
|
function regex_evaluation_num(){
|
|
var evaluation_num = $.trim($("#evaluation_num").val());
|
|
var regex = /^\d+$/;
|
|
if(evaluation_num==""){
|
|
$("#evaluation_num_notice").text("匿评人数不能为空");
|
|
return false;
|
|
}
|
|
else if(regex.test(evaluation_num)){
|
|
if(evaluation_num > 0){
|
|
$("#evaluation_num_notice").html("");
|
|
return true;
|
|
}
|
|
else{
|
|
$("#evaluation_num_notice").text("匿评人数必须为大于0");
|
|
return false;
|
|
}
|
|
}
|
|
else{
|
|
$("#evaluation_num_notice").text("匿评人数只能为数字");
|
|
return false;
|
|
}
|
|
}
|
|
|
|
//提交新建作品
|
|
function new_student_work()
|
|
{
|
|
if(regexStudentWorkName()&®exStudentWorkDescription())
|
|
{
|
|
if($("#group_member_ids").length > 0) {
|
|
if(regexStudentWorkMember(parseInt($.trim($("#min_num_member").html())),parseInt($.trim($("#max_num_member").html())))) {
|
|
$("#new_student_work").submit();
|
|
$("#ajax-indicator").hide();
|
|
}
|
|
} else {
|
|
$("#new_student_work").submit();
|
|
$("#ajax-indicator").hide();
|
|
}
|
|
}
|
|
}
|
|
|
|
function edit_student_work(id)
|
|
{
|
|
if(regexStudentWorkName()&®exStudentWorkDescription())
|
|
{
|
|
if($("#group_member_ids").length > 0) {
|
|
if(regexStudentWorkMember(parseInt($.trim($("#min_num_member").html())),parseInt($.trim($("#max_num_member").html())))) {
|
|
$("#edit_student_work_" + id).submit();
|
|
$("#ajax-indicator").hide();
|
|
}
|
|
} else {
|
|
$("#edit_student_work_" + id).submit();
|
|
$("#ajax-indicator").hide();
|
|
}
|
|
}
|
|
}
|
|
|
|
//验证作品名称
|
|
function regexStudentWorkName()
|
|
{
|
|
var name = $.trim($("#student_work_name").val());
|
|
|
|
if(name=="")
|
|
{
|
|
$("#student_work_name_span").text("作品名称不能为空");
|
|
return false;
|
|
}
|
|
else
|
|
{
|
|
$("#student_work_name_span").text("");
|
|
return true;
|
|
}
|
|
}
|
|
|
|
function regexStudentWorkDescription()
|
|
{
|
|
var name = $.trim($("#student_work_description").val());
|
|
|
|
if(name=="")
|
|
{
|
|
$("#student_work_description_textarea").text("作品描述不能为空");
|
|
return false;
|
|
}
|
|
else
|
|
{
|
|
$("#student_work_description_textarea").text("");
|
|
return true;
|
|
}
|
|
}
|
|
|
|
function regexStudentWorkMember(min, max) {
|
|
var members = $.trim($("#group_member_ids").val()).split(',');
|
|
if ( min <= members.length && members.length <= max ){
|
|
$("#student_work_group_textarea").text("");
|
|
return true;
|
|
} else {
|
|
$("#student_work_group_textarea").text("合作成员人数应为:"+min+"-"+max+"人");
|
|
return false;
|
|
}
|
|
}
|
|
|
|
//学生作品
|
|
function show_project()
|
|
{
|
|
$("#about_project").slideToggle();
|
|
}
|
|
|
|
//添加分组成员
|
|
function show_group_member(){
|
|
$("#chooseGroupMember").dialog("open");
|
|
$(".ui-dialog-titlebar").hide();
|
|
$("a.popClose").on('click', function(){
|
|
$("#chooseGroupMember" ).dialog("close");
|
|
});
|
|
$("#cancel_add").on('click', function(){
|
|
$("#chooseGroupMember" ).dialog("close");
|
|
});
|
|
//$('#min_num').focus();
|
|
}
|
|
|
|
//textarea自适应高度 纯js写的 有浏览器判断
|
|
/**
|
|
* 文本框根据输入内容自适应高度
|
|
* @param {HTMLElement} 输入框元素
|
|
* @param {Number} 设置光标与输入框保持的距离(默认0)
|
|
* @param {Number} 设置最大高度(可选)
|
|
*/
|
|
var autoTextarea = function (elem, extra, maxHeight) {
|
|
extra = extra || 0;
|
|
var isFirefox = !!document.getBoxObjectFor || 'mozInnerScreenX' in window,
|
|
isOpera = !!window.opera && !!window.opera.toString().indexOf('Opera'),
|
|
addEvent = function (type, callback) {
|
|
elem.addEventListener ?
|
|
elem.addEventListener(type, callback, false) :
|
|
elem.attachEvent('on' + type, callback);
|
|
},
|
|
getStyle = elem.currentStyle ? function (name) {
|
|
var val = elem.currentStyle[name];
|
|
|
|
if (name === 'height' && val.search(/px/i) !== 1) {
|
|
var rect = elem.getBoundingClientRect();
|
|
return rect.bottom - rect.top -
|
|
parseFloat(getStyle('paddingTop')) -
|
|
parseFloat(getStyle('paddingBottom')) + 'px';
|
|
};
|
|
|
|
return val;
|
|
} : function (name) {
|
|
return getComputedStyle(elem, null)[name];
|
|
},
|
|
minHeight = parseFloat(getStyle('height'));
|
|
|
|
|
|
elem.style.resize = 'none';
|
|
|
|
var change = function () {
|
|
var scrollTop, height,
|
|
padding = 0,
|
|
style = elem.style;
|
|
|
|
if (elem._length === elem.value.length) return;
|
|
elem._length = elem.value.length;
|
|
|
|
if (!isFirefox && !isOpera) {
|
|
padding = parseInt(getStyle('paddingTop')) + parseInt(getStyle('paddingBottom'));
|
|
};
|
|
scrollTop = document.body.scrollTop || document.documentElement.scrollTop;
|
|
|
|
elem.style.height = minHeight + 'px';
|
|
if (elem.scrollHeight > minHeight) {
|
|
if (maxHeight && elem.scrollHeight > maxHeight) {
|
|
height = maxHeight - padding;
|
|
style.overflowY = 'auto';
|
|
} else {
|
|
height = elem.scrollHeight - padding;
|
|
style.overflowY = 'hidden';
|
|
};
|
|
style.height = height + extra + 'px';
|
|
scrollTop += parseInt(style.height) - elem.currHeight;
|
|
document.body.scrollTop = scrollTop;
|
|
document.documentElement.scrollTop = scrollTop;
|
|
elem.currHeight = parseInt(style.height);
|
|
};
|
|
};
|
|
|
|
addEvent('propertychange', change);
|
|
addEvent('input', change);
|
|
addEvent('focus', change);
|
|
change();
|
|
};
|
|
|
|
function limitStrsize(id,length){
|
|
$('#'+id).keypress(function(e)
|
|
{
|
|
var n = 0;
|
|
var str = this.value;
|
|
for (i = 0; i < str.length; i++) {
|
|
var leg = str.charCodeAt(i);//ASCII码
|
|
if (leg > 255) {//大于255的都是中文
|
|
n += 2;//如果是中文就是2个字节
|
|
} else {
|
|
n += 1;//英文,不多说了
|
|
}
|
|
}
|
|
|
|
if(n >= length && e.keyCode !== 8)
|
|
if(document.all)
|
|
{
|
|
e.returnValue = false;
|
|
}
|
|
else
|
|
{
|
|
e.preventDefault();
|
|
}
|
|
})
|
|
}
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////创建项目
|
|
//验证项目名称是不是为空
|
|
function regex_project_name(){
|
|
var name = $.trim($("#project_name").val());
|
|
if(name=="")
|
|
{
|
|
$("#project_name_error_msg").text("项目名称不能为空");
|
|
return false;
|
|
}
|
|
else
|
|
{
|
|
$("#project_name_error_msg").text("");
|
|
return true;
|
|
}
|
|
}
|
|
|
|
//验证项目名称是否重复---项目名称可以重复。。。。
|
|
function regex_project_name_same(){
|
|
var name = $.trim($("#project_name").val());
|
|
return true;
|
|
}
|
|
|
|
//验证项目描述
|
|
function regex_project_desc(){
|
|
var desc = $.trim($("#project_description").val());
|
|
if(desc == "")
|
|
{
|
|
$("#project_desc_error_msg").text("项目名称不能为空");
|
|
return false;
|
|
}
|
|
else
|
|
{
|
|
$("#project_desc_error_msg").text("");
|
|
return true;
|
|
}
|
|
}
|
|
//提交
|
|
function submit_project(){
|
|
if(regex_project_name()&®ex_project_desc()){
|
|
$("#new_project").submit();
|
|
}
|
|
}
|
|
/////////////////////////////////////////////////////////////////////////////////////创建项目 end
|
|
//匿评弹框取消按钮
|
|
function clickCanel(){hideModal("#popbox02");}
|
|
//匿评弹框确定按钮
|
|
function clickOK(path)
|
|
{
|
|
clickCanel();
|
|
$.ajax({
|
|
type: "GET",
|
|
url: path,
|
|
data: 'text',
|
|
success: function (data) {
|
|
}
|
|
});
|
|
}
|
|
//关闭引入资源弹框
|
|
function hideResource(){
|
|
$('#ajax-modal').parent().removeClass("popbox").removeClass("referenceResourcesPopup");
|
|
hideModal();
|
|
}
|
|
/////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
var autoTextarea2 = function (elem,elem2, extra, maxHeight) {
|
|
extra = extra || 0;
|
|
var isFirefox = !!document.getBoxObjectFor || 'mozInnerScreenX' in window,
|
|
isOpera = !!window.opera && !!window.opera.toString().indexOf('Opera'),
|
|
addEvent = function (element, type, callback) {
|
|
element.addEventListener ?
|
|
element.addEventListener(type, callback, false) :
|
|
element.attachEvent('on' + type, callback);
|
|
},
|
|
getFirstStyle = elem.currentStyle ? function (name) {
|
|
var val = elem.currentStyle[name];
|
|
|
|
if (name === 'height' && val.search(/px/i) !== 1) {
|
|
var rect = elem.getBoundingClientRect();
|
|
return rect.bottom - rect.top -
|
|
parseFloat(getFirstStyle('paddingTop')) -
|
|
parseFloat(getFirstStyle('paddingBottom')) + 'px';
|
|
};
|
|
|
|
return val;
|
|
} : function (name) {
|
|
return getComputedStyle(elem, null)[name];
|
|
},
|
|
minHeight = parseFloat(getFirstStyle('height'))
|
|
|
|
elem.style.resize = 'none';
|
|
elem2.style.resize = 'none';
|
|
var change = function () {
|
|
var scrollTop, height,
|
|
padding = 0,
|
|
style = elem.style,
|
|
style2 = elem2.style;
|
|
|
|
|
|
if (elem._length === elem.value.length) return;
|
|
elem._length = elem.value.length;
|
|
elem2._length = elem._length;
|
|
if (!isFirefox && !isOpera) {
|
|
padding = parseInt(getFirstStyle('paddingTop')) + parseInt(getFirstStyle('paddingBottom'));
|
|
};
|
|
scrollTop = document.body.scrollTop || document.documentElement.scrollTop;
|
|
|
|
elem.style.height = minHeight + 'px';
|
|
elem2.style.height = minHeight + 'px';
|
|
if (elem.scrollHeight > minHeight) {
|
|
if (maxHeight && elem.scrollHeight > maxHeight) {
|
|
height = maxHeight - padding;
|
|
style.overflowY = 'auto';
|
|
style2.overflowY = 'auto';
|
|
} else {
|
|
height = elem.scrollHeight - padding;
|
|
style.overflowY = 'hidden';
|
|
style2.overflowY = 'hidden';
|
|
};
|
|
style.height = height + extra + 'px';
|
|
style2.height = height + extra + 'px';
|
|
scrollTop += parseInt(style.height) - elem.currHeight;
|
|
document.body.scrollTop = scrollTop;
|
|
document.documentElement.scrollTop = scrollTop;
|
|
elem.currHeight = parseInt(style.height);
|
|
};
|
|
if (elem2.scrollHeight > minHeight) {
|
|
if (maxHeight && elem2.scrollHeight > maxHeight) {
|
|
height = maxHeight - padding;
|
|
style.overflowY = 'auto';
|
|
style2.overflowY = 'auto';
|
|
} else {
|
|
height = elem2.scrollHeight - padding;
|
|
style.overflowY = 'hidden';
|
|
style2.overflowY = 'hidden';
|
|
};
|
|
style.height = height + extra + 'px';
|
|
style2.height = height + extra + 'px';
|
|
scrollTop += parseInt(style2.height) - elem2.currHeight;
|
|
document.body.scrollTop = scrollTop;
|
|
document.documentElement.scrollTop = scrollTop;
|
|
elem2.currHeight = parseInt(style2.height);
|
|
};
|
|
};
|
|
|
|
addEvent(elem, 'propertychange', change);
|
|
addEvent(elem, 'input', change);
|
|
addEvent(elem, 'focus', change);
|
|
addEvent(elem2, 'propertychange', change);
|
|
addEvent(elem2, 'input', change);
|
|
addEvent(elem2, 'focus', change);
|
|
change();
|
|
}; |