// 怀化职业技术学院教务系统(jwgl.hhvtc.com.cn)拾光课表导入适配脚本
// 青果教务:课表表格单元格 .have-content 只有空内容,课程详情在隐藏 div [id^="weekly0"] 内
// 每个详情 div 含 ul>li:课程名称 / 任课教师 / 上课时间([周次]星期[节次])/ 上课地点 / 合班信息
// 作息分夏秋(5.1起)与冬春(10.1起)两套,导入时通过选择器让用户选择
// 夏秋作息(5.1 起)
const HHVT_TIME_SLOTS_SUMMER = [
{ number: 1, startTime: "08:10", endTime: "08:55" },
{ number: 2, startTime: "09:05", endTime: "09:50" },
{ number: 3, startTime: "10:10", endTime: "10:55" },
{ number: 4, startTime: "11:05", endTime: "11:50" },
{ number: 5, startTime: "14:30", endTime: "15:15" },
{ number: 6, startTime: "15:25", endTime: "16:10" },
{ number: 7, startTime: "16:20", endTime: "17:05" },
{ number: 8, startTime: "17:15", endTime: "18:00" }
];
// 冬春作息(10.1 起)
const HHVT_TIME_SLOTS_WINTER = [
{ number: 1, startTime: "08:20", endTime: "09:05" },
{ number: 2, startTime: "09:15", endTime: "10:00" },
{ number: 3, startTime: "10:20", endTime: "11:05" },
{ number: 4, startTime: "11:15", endTime: "12:00" },
{ number: 5, startTime: "14:00", endTime: "14:45" },
{ number: 6, startTime: "14:55", endTime: "15:40" },
{ number: 7, startTime: "15:50", endTime: "16:35" },
{ number: 8, startTime: "16:45", endTime: "17:30" }
];
function getErrorMessage(error) {
if (error && typeof error.message === "string" && error.message.trim()) return error.message;
if (typeof error === "string" && error.trim()) return error;
try {
const serialized = JSON.stringify(error);
if (serialized && serialized !== "{}") return serialized;
} catch (_) {
// Ignore serialization failures.
}
return "未知错误";
}
// 收集可访问的 document(frameset 用 ,普通页面用