Add: subject list

This commit is contained in:
2019-03-28 15:06:02 +09:00
parent 3e1eb38747
commit aba236536b
+141 -10
View File
@@ -10,6 +10,13 @@ $(document).ready(function() {
});
*/
initDatePicker();
loadAppList();
});
function initDatePicker() {
$('#start_datepicker').datepicker({
format: 'yyyy-mm-dd',
autoclose: true,
@@ -29,17 +36,12 @@ var dd = String(today.getDate()).padStart(2, '0');
$('#start_datepicker').datepicker('update', yyyy + "-" + mm + "-" + dd);
$('#end_datepicker').datepicker('update', yyyy + "-" + mm + "-" + dd);
}
});
function copyToClipboard() {
console.log("copyToClipboard();");
var data = $("#dataTable")
};
function selectElementContents(el) {
el = document.getElementById('dataTable');
var body = document.body, range, sel;
if (document.createRange && window.getSelection) {
range = document.createRange();
@@ -62,6 +64,123 @@ function selectElementContents(el) {
function loadAppList() {
var self = this;
sendRequestServer( //url, sendParams, onSuccess, onFail, isDebugMode);
"./../server/app/typing_app_list.php",
"maestro_id=" + maestroID,
(function(jsonData) {
// console.log(jsonData);
makeTypingPracticeSubjectList(jsonData["appList"]);
makeTypingTestSubjectList(jsonData["appList"]);
makeTypingAppSubjectList(jsonData["appList"]);
}),
(function(errorMessage, errorCode) {
showErrorMessage(errorMessage, "error");
})
);
sendRequestServer( //url, sendParams, onSuccess, onFail, isDebugMode);
"./../server/app/mouse_app_list.php",
"maestro_id=" + maestroID,
(function(jsonData) {
// console.log(jsonData);
makeMouseAppSubjectList(jsonData["appList"]);
}),
(function(errorMessage, errorCode) {
showErrorMessage(errorMessage, "error");
})
);
}
function makeTypingPracticeSubjectList(appList) {
$("#typing_practice_subject_list").empty();
addSubjectBundleItem("#typing_practice_subject_list", 1000, "한글 타자 연습 묶음");
addSubjectBundleItem("#typing_practice_subject_list", 1001, "영문 타자 연습 묶음");
for(var i = 0; i < appList.length; i++) {
var appData = appList[i];
if(appData.appID > 20)
continue;
else if(appData.koreanName == "")
continue;
addSubjectListItem("#typing_practice_subject_list", appData.appID, appData.koreanName);
}
}
function makeTypingTestSubjectList(appList) {
$("#typing_test_subject_list").empty();
addSubjectBundleItem("#typing_test_subject_list", 1002, "한글 타자 시험 묶음");
addSubjectBundleItem("#typing_test_subject_list", 1003, "영문 타자 시험 묶음");
for(var i = 0; i < appList.length; i++) {
var appData = appList[i];
if(appData.appID < 21 || appData.appID > 49)
continue;
else if(appData.koreanName == "")
continue;
addSubjectListItem("#typing_test_subject_list", appData.appID, appData.koreanName);
}
}
function makeTypingAppSubjectList(appList) {
$("#typing_app_subject_list").empty();
for(var i = 0; i < appList.length; i++) {
var appData = appList[i];
if(appData.appID < 50)
continue;
else if(appData.koreanName == "")
continue;
addSubjectListItem("#typing_app_subject_list", appData.appID, appData.koreanName);
}
}
function makeMouseAppSubjectList(appList) {
$("#mouse_app_subject_list").empty();
for(var i = 0; i < appList.length; i++) {
var appData = appList[i];
if(appData.koreanName == "")
continue;
addSubjectListItem("#mouse_app_subject_list", appData.appID, appData.koreanName);
}
}
function addSubjectListItem(subjectListID, appID, appName) {
$(subjectListID).append('\
<div class="form-check form-check-inline">\
<input class="form-check-input" type="radio" name="inlineRadioOptions" id="'
+ appID + '" \value="option1">\
<label class="form-check-label" for="inlineRadio1">' + appName + '</label>\
</div>\
');
}
function addSubjectBundleItem(subjectListID, appID, appName) {
$(subjectListID).append('\
<div class="form-check form-check-inline">\
<input class="form-check-input" type="radio" name="inlineRadioOptions" id="'
+ appID + '" \value="option1">\
<label class="form-check-label text-success" for="inlineRadio1">' + appName + '</label>\
</div>\
');
}
</script>
@@ -137,7 +256,7 @@ function selectElementContents(el) {
<div class="col-sm-10">
<div class="row">
<label for="time" class="col-sm-2 col-form-label py-0">타자 연습</label>
<div class="col-sm-10">
<div id="typing_practice_subject_list" class="col-sm-10">
<div class="form-check form-check-inline">
<input class="form-check-input" type="radio" name="inlineRadioOptions" id="inlineRadio1" value="option1">
<label class="form-check-label" for="inlineRadio1">한글 타자 연습 묶음</label>
@@ -155,7 +274,7 @@ function selectElementContents(el) {
<div class="row">
<label for="time" class="col-sm-2 col-form-label py-0">타자 시험</label>
<div class="col-sm-10">
<div id="typing_test_subject_list" class="col-sm-10">
<div class="form-check form-check-inline">
<input class="form-check-input" type="radio" name="inlineRadioOptions" id="inlineRadio1" value="option1">
<label class="form-check-label" for="inlineRadio1">한글 타자 시험 묶음</label>
@@ -170,6 +289,18 @@ function selectElementContents(el) {
</div>
</div>
</div>
<div class="row">
<label for="time" class="col-sm-2 col-form-label py-0">타자 앱</label>
<div id="typing_app_subject_list" class="col-sm-10">
</div>
</div>
<div class="row">
<label for="time" class="col-sm-2 col-form-label py-0">마우스 앱</label>
<div id="mouse_app_subject_list" class="col-sm-10">
</div>
</div>
<br/>
<button type="submit" class="btn btn-primary">검색 (50개까지 보기)</button>
@@ -185,7 +316,7 @@ function selectElementContents(el) {
<div class="row justify-content-between mb-2">
<div class="col-auto">
<button type="button" class="btn btn-primary" onClick="selectElementContents( document.getElementById('dataTable') );">표 내용을 클립보드에 복사</button>
<button type="button" class="btn btn-primary" onClick="copyToClipboard();">표 내용을 클립보드에 복사</button>
<span class="badge badge-pill badge-info" onClick='showModal("recordPopupModal", "recordPopupContent", "search_record_copy_result_to_clipboard");' style="cursor: pointer;">?</span>
</div>
<div class="col-auto">