ITEC -> ITWS

This commit is contained in:
powe97 2023-07-27 17:17:30 -04:00
parent 58c7f1beeb
commit 098c89a31c

View file

@ -163,6 +163,8 @@ std::string fix_course_ids(std::string course) {
course[4] = '-'; course[4] = '-';
if(course.substr(0,3) == "STS") { if(course.substr(0,3) == "STS") {
course[3] = 'O'; course[3] = 'O';
} else if(course.substr(0,4) == "ITEC") {
course.replace(0,4,"ITWS");
} }
return course; return course;
} }
@ -185,9 +187,8 @@ bool create_dir_if_not_exist(const fs::path& path) {
Json::Value get_data(const Json::Value& data, Json::Value get_data(const Json::Value& data,
std::string course_id) { std::string course_id) {
course_id[4] = '-'; course_id[4] = '-';
if(course_id.substr(0,3) != "STS") { if(course_id.substr(0,4) == "STSO") {
return data[course_id]; std::cerr<<"course id: "<<course_id<<std::endl;
}
const auto& stso = data[course_id]; const auto& stso = data[course_id];
course_id[3] = 'S'; course_id[3] = 'S';
const auto& stss = data[course_id]; const auto& stss = data[course_id];
@ -198,21 +199,36 @@ Json::Value get_data(const Json::Value& data,
for(const auto& key : stsh.getMemberNames()) { for(const auto& key : stsh.getMemberNames()) {
out[key] = stsh[key]; out[key] = stsh[key];
if(out[key].isObject()) if(out[key].isObject()) out[key]["prefix"] = "STSH";
out[key]["prefix"] = "STSH";
} }
for(const auto& key : stss.getMemberNames()) { for(const auto& key : stss.getMemberNames()) {
out[key] = stss[key]; out[key] = stss[key];
if(out[key].isObject()) if(out[key].isObject()) out[key]["prefix"] = "STSS";
out[key]["prefix"] = "STSS";
} }
for(const auto& key : stso.getMemberNames()) { for(const auto& key : stso.getMemberNames()) {
out[key] = stso[key]; out[key] = stso[key];
if(out[key].isObject()) if(out[key].isObject()) out[key]["prefix"] = "STSO";
out[key]["prefix"] = "STSO";
} }
return out; return out;
} else if(course_id.substr(0,4) == "ITWS") {
const auto& itws = data[course_id];
course_id.replace(0,4,"ITEC");
const auto& itec = data[course_id];
Json::Value out;
for(const auto& key : itec.getMemberNames()) {
out[key] = itec[key];
if(out[key].isObject()) out[key]["prefix"] = "ITEC";
}
for(const auto& key : itws.getMemberNames()) {
out[key] = itws[key];
if(out[key].isObject()) out[key]["prefix"] = "ITWS";
}
return out;
} else {
return data[course_id];
}
} }
void generate_course_page(const std::string& course_id, void generate_course_page(const std::string& course_id,