Senior9324 (토론 | 기여) (새 문서: var maps = {}; maps.mainMap = { "own": "직접 만든 저작물입니다.", "other": "타인이 만든 저작물입니다." }; maps.ownMap = { "cc-by-sa-3.0": "CC BY-SA 3.0으로...) |
Senior9324 (토론 | 기여) 편집 요약 없음 |
||
87번째 줄: | 87번째 줄: | ||
} | } | ||
licenseElem.val("cc-" + condition + "-" + versionDropdown.val()); | licenseElem.val("cc-" + condition + "-" + versionDropdown.val()); | ||
} else { | } else { | ||
103번째 줄: | 102번째 줄: | ||
} | } | ||
licenseElem.val("cc-" + condition + "-" + versionDropdown.val()); | licenseElem.val("cc-" + condition + "-" + versionDropdown.val()); | ||
} | } |
2015년 7월 26일 (일) 21:06 판
var maps = {};
maps.mainMap = {
"own": "직접 만든 저작물입니다.",
"other": "타인이 만든 저작물입니다."
};
maps.ownMap = {
"cc-by-sa-3.0": "CC BY-SA 3.0으로 배포합니다",
"cc-0": "CC0 1.0 퍼블릭 도메인으로 배포합니다.",
"PD-self": "저작권을 포기하여 퍼블릭 도메인으로 배포합니다."
};
maps.otherMap = {
"conditions": {
"border1": "---비자유 저작물---",
"퍼옴": "독점적 저작권이 있는 비자유 저작물을 가져왔습니다.",
"border2": "---크리에이티브 커먼즈 라이선스---",
"by": "저작자표시",
"by-sa": "저작자표시-동일조건변경허락",
"by-nd": "저작자표시-변경금지",
"by-nc": "저작자표시-비자유",
"by-nc-sa": "저작자표시-비자유-동일조건변경허락",
"by-nc-nd": "저작자표시-비자유-변경금지",
"border3": "---퍼블릭 도메인---",
"cc-0": "CC0 1.0 퍼블릭 도메인",
"PD-author": "타인에 의해 퍼블릭 도메인으로 배포됨",
"PD-ineligible": "보호받는 저작물이 아닙니다."
},
"versions": {
"2.0": "2.0 일반",
"2.0-kr": "2.0 대한민국",
"2.5": "2.5 일반",
"3.0": "3.0 Unported",
"4.0": "4.0 국제"
}
};
function makeDropdown(map) {
var dropdown = $("<select>");
dropdown.append('<option value="">기본값</option>');
for (var i in map) {
if (map.hasOwnProperty(i)) {
if (i.indexOf("border") > -1) {
dropdown.append($("<option>").prop("disabled", true).attr("value", "").css("color", "gray").text(map[i]));
} else {
dropdown.append($("<option>").attr("value", i).text(map[i]));
}
}
}
return dropdown;
}
function LicenseDropdown() {
var licenseElem = $("<input>").attr("id", "wpLicense").attr("type", "hidden").attr("name", "wpLicense");
$("#wpLicense").replaceWith(licenseElem);
var firstLevelDropdown = makeDropdown(maps.mainMap);
var licenseDropdown, versionDropdown, authorText;
firstLevelDropdown.change(function() {
switch (firstLevelDropdown.val()) {
case "own":
if (licenseDropdown) {
licenseDropdown.remove();
if (versionDropdown) {
versionDropdown.remove();
}
}
licenseDropdown = makeDropdown(maps.ownMap);
licenseDropdown.change(function() {
licenseElem.val($(this).val());
});
licenseDropdown.insertAfter(firstLevelDropdown);
break;
case "other":
if (licenseDropdown) {
licenseDropdown.remove();
if (versionDropdown) {
versionDropdown.remove();
}
}
licenseDropdown = makeDropdown(maps.otherMap.conditions).css("width", "70%");
versionDropdown = makeDropdown(maps.otherMap.versions).css("width", "30%");
licenseDropdown.change(function() {
var condition = licenseDropdown.val();
if (condition.indexOf("by") == 0) {
versionDropdown.prop("disabled", false);
if (!versionDropdown.val()) {
licenseElem.val("");
return;
}
licenseElem.val("cc-" + condition + "-" + versionDropdown.val());
} else {
versionDropdown.prop("disabled", true);
licenseElem.val(condition);
}
});
versionDropdown.change(function() {
var condition = licenseDropdown.val();
if (condition.indexOf("by") == 0) {
versionDropdown.prop("disabled", false);
if (!versionDropdown.val()) {
licenseElem.val("");
return;
}
licenseElem.val("cc-" + condition + "-" + versionDropdown.val());
}
});
licenseDropdown.insertAfter(firstLevelDropdown);
versionDropdown.insertAfter(licenseDropdown);
break;
default:
}
});
firstLevelDropdown.insertAfter(licenseElem);
$("#mw-upload-form").submit(function(e) {
if (licenseElem.val() == "") {
e.preventDefault();
alert("올바른 라이선스가 아닙니다.");
}
});
}
$(function() {
if (document.location.href.indexOf("&wpForReUpload=1") > -1) return;
LicenseDropdown();
});