통합검색 작업중.
parent
313076572a
commit
4432270e4f
|
|
@ -56,7 +56,7 @@ public class BoardController {
|
||||||
}
|
}
|
||||||
|
|
||||||
@PostMapping("/updateContent")
|
@PostMapping("/updateContent")
|
||||||
public Integer updateContent(Board content, @RequestParam(value = "fileSeq") List<Integer> deleteFileSeq, MultipartHttpServletRequest request, @AuthenticationPrincipal UserInfo loginUser){
|
public Integer updateContent(Board content, @RequestParam(value = "fileSeq", required = false) List<Integer> deleteFileSeq, MultipartHttpServletRequest request, @AuthenticationPrincipal UserInfo loginUser){
|
||||||
content.setFileList(request.getMultiFileMap().get("uploadFiles"));
|
content.setFileList(request.getMultiFileMap().get("uploadFiles"));
|
||||||
return boardService.updateContent(content, deleteFileSeq, loginUser);
|
return boardService.updateContent(content, deleteFileSeq, loginUser);
|
||||||
}
|
}
|
||||||
|
|
@ -97,7 +97,6 @@ public class BoardController {
|
||||||
@GetMapping("/contentSearch")
|
@GetMapping("/contentSearch")
|
||||||
public ModelAndView contentSearch(Board content){
|
public ModelAndView contentSearch(Board content){
|
||||||
ModelAndView mav = new ModelAndView("board/contentSearch");
|
ModelAndView mav = new ModelAndView("board/contentSearch");
|
||||||
mav.addObject("searchParams", content);
|
|
||||||
return mav;
|
return mav;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -48,7 +48,9 @@ public class BoardService {
|
||||||
saveBoardLog(contentSeq, LogStatus.MODIFY, null, userInfo.getUserId());
|
saveBoardLog(contentSeq, LogStatus.MODIFY, null, userInfo.getUserId());
|
||||||
deleteHashTagLink(contentSeq);
|
deleteHashTagLink(contentSeq);
|
||||||
saveHashTagLink(contentSeq, updateContent.getHashTagStr());
|
saveHashTagLink(contentSeq, updateContent.getHashTagStr());
|
||||||
|
if(fileSeqList!=null){
|
||||||
deleteFileInfo(contentSeq, fileSeqList, userInfo.getUserId());
|
deleteFileInfo(contentSeq, fileSeqList, userInfo.getUserId());
|
||||||
|
}
|
||||||
saveUploadFiles(updateContent, userInfo.getUserId());
|
saveUploadFiles(updateContent, userInfo.getUserId());
|
||||||
return contentSeq;
|
return contentSeq;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,9 @@ $(document).on('click', '.categoryTr', function (){
|
||||||
const target = $(this).find(".trCheckBox");
|
const target = $(this).find(".trCheckBox");
|
||||||
const depth = Number(target.val());
|
const depth = Number(target.val());
|
||||||
const parentSeq = checkBoxAction(target);
|
const parentSeq = checkBoxAction(target);
|
||||||
|
if(depth !== 4){
|
||||||
getCategoryTable(parentSeq, depth+1);
|
getCategoryTable(parentSeq, depth+1);
|
||||||
|
}
|
||||||
})
|
})
|
||||||
$(document).on('click', '.insertTr', function (){
|
$(document).on('click', '.insertTr', function (){
|
||||||
const target = $(this).find(".trCheckBox");
|
const target = $(this).find(".trCheckBox");
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,117 @@
|
||||||
|
$(function (){
|
||||||
|
$("#dateSelectorDiv").datepicker({
|
||||||
|
format: "yyyy-mm-dd",
|
||||||
|
language: "ko"
|
||||||
|
});
|
||||||
|
})
|
||||||
|
|
||||||
|
$(document).on('click', '.contentTr', function (){
|
||||||
|
$(".contentCheckBox").prop('checked', false);
|
||||||
|
const target = $(this).find(".contentCheckBox")[0];
|
||||||
|
target.checked = true;
|
||||||
|
const selectedTab = $(".nav-tabs").find(".active")[0].id;
|
||||||
|
if(selectedTab === "contentTab"){
|
||||||
|
getBoardContent(target.value);
|
||||||
|
}else if(selectedTab === "logTab"){
|
||||||
|
getBoardLog(target.value);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
$(document).on('change', '#fileCheckAll', function (){
|
||||||
|
$(".fileCheckBox").prop("checked", this.checked);
|
||||||
|
})
|
||||||
|
|
||||||
|
$(document).on('click', '#contentTab', function (){
|
||||||
|
getBoardContent(getContentSeq())
|
||||||
|
})
|
||||||
|
$(document).on('click', '#logTab', function (){
|
||||||
|
getBoardLog(getContentSeq())
|
||||||
|
})
|
||||||
|
|
||||||
|
$(document).on('click', '.fileDownLink', function (){
|
||||||
|
let url = "/board/fileDownload?"
|
||||||
|
url += "contentSeq="+Number($("#detailViewContentSeq").val());
|
||||||
|
url += "&fileSeq="+$(this).attr("data-fileseq");
|
||||||
|
window.open(encodeURI(url));
|
||||||
|
})
|
||||||
|
|
||||||
|
$(document).on('click', '#zipDownBtn', function (){
|
||||||
|
const checkFiles = $(".fileCheckBox:checked");
|
||||||
|
if(checkFiles.length>0){
|
||||||
|
let url = "/board/fileDownloadToZip?"
|
||||||
|
url += "contentSeq="+Number($("#detailViewContentSeq").val());
|
||||||
|
checkFiles.each(function (idx, el){
|
||||||
|
url += "&fileSeq="+Number($(el).attr("data-fileseq"))
|
||||||
|
});
|
||||||
|
window.open(encodeURI(url));
|
||||||
|
}else{
|
||||||
|
alert("선택된 파일이 없습니다.")
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
$(document).on('click', '#deleteBtn', function (){
|
||||||
|
if(confirm("이 게시물을 삭제하시겠습니까?\n되돌릴 수 없습니다.")){
|
||||||
|
$.ajax({
|
||||||
|
type : 'DELETE',
|
||||||
|
url : "/board/deleteContent",
|
||||||
|
data : {contentSeq: Number($(this).attr("data-contentseq"))},
|
||||||
|
beforeSend: function (xhr){
|
||||||
|
xhr.setRequestHeader($("[name='_csrf_header']").val(), $("[name='_csrf']").val());
|
||||||
|
},
|
||||||
|
success : function(data) {
|
||||||
|
alert("저장되었습니다.");
|
||||||
|
location.reload();
|
||||||
|
},
|
||||||
|
error : function(xhr, status) {
|
||||||
|
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
$(document).on('click', '#modifyBtn', function (){
|
||||||
|
location.href = "/board/contentWrite?contentSeq="+Number($(this).attr("data-contentseq"));
|
||||||
|
})
|
||||||
|
|
||||||
|
function getContentSeq(){
|
||||||
|
return $(".contentCheckBox:checked").val();
|
||||||
|
}
|
||||||
|
|
||||||
|
function getBoardContent(contentSeq){
|
||||||
|
if(contentSeq !== undefined){
|
||||||
|
const viewContentSeq = $("#detailViewContentSeq").val();
|
||||||
|
if(contentSeq !== viewContentSeq){
|
||||||
|
$.ajax({
|
||||||
|
url: '/board/selectBoardContent',
|
||||||
|
data: {contentSeq: contentSeq},
|
||||||
|
type: 'GET',
|
||||||
|
dataType:"html",
|
||||||
|
success: function(html){
|
||||||
|
$("#contentDiv").empty().append(html)
|
||||||
|
if($("#contentStatus").val() !== "D"){
|
||||||
|
const viewCntTd = $(".contentCheckBox:checked").parents("tr").find(".viewCntTd");
|
||||||
|
viewCntTd.text(Number(viewCntTd.text())+1);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
error:function(){
|
||||||
|
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function getBoardLog(contentSeq){
|
||||||
|
if(contentSeq !== undefined){
|
||||||
|
$.ajax({
|
||||||
|
url: '/board/selectBoardLog',
|
||||||
|
data: {contentSeq: contentSeq},
|
||||||
|
type: 'GET',
|
||||||
|
dataType:"html",
|
||||||
|
success: function(html){
|
||||||
|
$("#logDiv").empty().append(html)
|
||||||
|
},
|
||||||
|
error:function(){
|
||||||
|
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -1,116 +1,3 @@
|
||||||
$(function(){
|
$(function(){
|
||||||
setSearchCondition();
|
setSearchCondition();
|
||||||
|
|
||||||
$("#dateSelectorDiv").datepicker({
|
|
||||||
format: "yyyy-mm-dd",
|
|
||||||
language: "ko"
|
|
||||||
});
|
|
||||||
})
|
})
|
||||||
|
|
||||||
$(document).on('click', '.contentTr', function (){
|
|
||||||
$(".contentCheckBox").prop('checked', false);
|
|
||||||
const target = $(this).find(".contentCheckBox")[0];
|
|
||||||
target.checked = true;
|
|
||||||
const selectedTab = $(".nav-tabs").find(".active")[0].id;
|
|
||||||
if(selectedTab === "contentTab"){
|
|
||||||
getBoardContent(target.value);
|
|
||||||
}else if(selectedTab === "logTab"){
|
|
||||||
getBoardLog(target.value);
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
$(document).on('change', '#fileCheckAll', function (){
|
|
||||||
$(".fileCheckBox").prop("checked", this.checked);
|
|
||||||
})
|
|
||||||
|
|
||||||
$(document).on('click', '#contentTab', function (){
|
|
||||||
getBoardContent(getContentSeq())
|
|
||||||
})
|
|
||||||
$(document).on('click', '#logTab', function (){
|
|
||||||
getBoardLog(getContentSeq())
|
|
||||||
})
|
|
||||||
|
|
||||||
$(document).on('click', '.fileDownLink', function (){
|
|
||||||
let url = "/board/fileDownload?"
|
|
||||||
url += "contentSeq="+Number($("#detailViewContentSeq").val());
|
|
||||||
url += "&fileSeq="+$(this).attr("data-fileseq");
|
|
||||||
window.open(encodeURI(url));
|
|
||||||
})
|
|
||||||
$(document).on('click', '#zipDownBtn', function (){
|
|
||||||
const checkFiles = $(".fileCheckBox:checked");
|
|
||||||
if(checkFiles.length>0){
|
|
||||||
let url = "/board/fileDownloadToZip?"
|
|
||||||
url += "contentSeq="+Number($("#detailViewContentSeq").val());
|
|
||||||
checkFiles.each(function (idx, el){
|
|
||||||
url += "&fileSeq="+Number($(el).attr("data-fileseq"))
|
|
||||||
});
|
|
||||||
window.open(encodeURI(url));
|
|
||||||
}else{
|
|
||||||
alert("선택된 파일이 없습니다.")
|
|
||||||
}
|
|
||||||
})
|
|
||||||
$(document).on('click', '#deleteBtn', function (){
|
|
||||||
if(confirm("이 게시물을 삭제하시겠습니까?\n되돌릴 수 없습니다.")){
|
|
||||||
$.ajax({
|
|
||||||
type : 'DELETE',
|
|
||||||
url : "/board/deleteContent",
|
|
||||||
data : {contentSeq: Number($(this).attr("data-contentseq"))},
|
|
||||||
beforeSend: function (xhr){
|
|
||||||
xhr.setRequestHeader($("[name='_csrf_header']").val(), $("[name='_csrf']").val());
|
|
||||||
},
|
|
||||||
success : function(data) {
|
|
||||||
alert("저장되었습니다.");
|
|
||||||
location.reload();
|
|
||||||
},
|
|
||||||
error : function(xhr, status) {
|
|
||||||
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
})
|
|
||||||
$(document).on('click', '#modifyBtn', function (){
|
|
||||||
location.href = "/board/contentWrite?contentSeq="+Number($(this).attr("data-contentseq"));
|
|
||||||
})
|
|
||||||
function getContentSeq(){
|
|
||||||
return $(".contentCheckBox:checked").val();
|
|
||||||
}
|
|
||||||
|
|
||||||
function getBoardContent(contentSeq){
|
|
||||||
if(contentSeq !== undefined){
|
|
||||||
const viewContentSeq = $("#detailViewContentSeq").val();
|
|
||||||
if(contentSeq !== viewContentSeq){
|
|
||||||
$.ajax({
|
|
||||||
url: '/board/selectBoardContent',
|
|
||||||
data: {contentSeq: contentSeq},
|
|
||||||
type: 'GET',
|
|
||||||
dataType:"html",
|
|
||||||
success: function(html){
|
|
||||||
$("#contentDiv").empty().append(html)
|
|
||||||
if($("#contentStatus").val() !== "D"){
|
|
||||||
const viewCntTd = $(".contentCheckBox:checked").parents("tr").find(".viewCntTd");
|
|
||||||
viewCntTd.text(Number(viewCntTd.text())+1);
|
|
||||||
}
|
|
||||||
},
|
|
||||||
error:function(){
|
|
||||||
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
function getBoardLog(contentSeq){
|
|
||||||
if(contentSeq !== undefined){
|
|
||||||
$.ajax({
|
|
||||||
url: '/board/selectBoardLog',
|
|
||||||
data: {contentSeq: contentSeq},
|
|
||||||
type: 'GET',
|
|
||||||
dataType:"html",
|
|
||||||
success: function(html){
|
|
||||||
$("#logDiv").empty().append(html)
|
|
||||||
},
|
|
||||||
error:function(){
|
|
||||||
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -0,0 +1,129 @@
|
||||||
|
$(function (){
|
||||||
|
$("#selectedCategoryDiv").sortable();
|
||||||
|
})
|
||||||
|
$(document).on('click', '#categoryName', function (){
|
||||||
|
$("#categorySelectModalBtn").click();
|
||||||
|
})
|
||||||
|
|
||||||
|
$(document).on('click', '.categoryTr', function (){
|
||||||
|
const checkBox = $(this).find(".categoryCheckBox");
|
||||||
|
const depth = Number(checkBox.attr("data-depth"));
|
||||||
|
const categorySeq = checkBox.attr("data-categoryseq");
|
||||||
|
$(".depth"+depth+"Tr").find(".categoryCheckBox").prop("checked", false);
|
||||||
|
checkBox[0].checked = true;
|
||||||
|
setCategoryTable(depth+1, categorySeq);
|
||||||
|
})
|
||||||
|
|
||||||
|
$(document).on('click', '#categoryDownBtn', function (){
|
||||||
|
const selectedCategory = getSelectedCategory();
|
||||||
|
const categorySeq = selectedCategory.attr("data-categoryseq");
|
||||||
|
if(parentCheck(categorySeq)){
|
||||||
|
childCheck(categorySeq);
|
||||||
|
const categoryName = selectedCategory.attr("data-categoryname");
|
||||||
|
let categoryHtml = "<li class='nav-item mx-3 btn btn-secondary btn-sm selectedCategory'" +
|
||||||
|
" id='selectedCategory"+categorySeq+"' data-categoryseq='"+categorySeq+"' data-categoryname='"+categoryName+"'>" +
|
||||||
|
"<input type='radio' class='categoryRadio' id='categoryRadio"+categorySeq+"' name='categoryRadio'>"+
|
||||||
|
"<label for='categoryRadio"+categorySeq+"'> "+categoryName+"</label></li>";
|
||||||
|
$("#selectedCategoryDiv").append(categoryHtml);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
$(document).on('click', '#categoryUpBtn', function (){
|
||||||
|
$(".categoryRadio:checked").parent().remove();
|
||||||
|
})
|
||||||
|
|
||||||
|
$(document).on('click', '#categorySelectBtn', function (){
|
||||||
|
const selectedCategory = $(".selectedCategory");
|
||||||
|
let categorySeqs = "";
|
||||||
|
let categoryNames = "";
|
||||||
|
selectedCategory.each(function (idx, el){
|
||||||
|
categorySeqs += $(el).attr("data-categoryseq")+",";
|
||||||
|
categoryNames += $(el).attr("data-categoryName")+", ";
|
||||||
|
})
|
||||||
|
$("#categorySeq").val(categorySeqs.slice(0, -1));
|
||||||
|
$("#categoryName").val(categoryNames.slice(0, -2));
|
||||||
|
$("#categorySelectModal").find(".btn-close").click();
|
||||||
|
})
|
||||||
|
|
||||||
|
$(document).on('click', '#searchBtn', function (){
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
url: '/board/boardContentSearch',
|
||||||
|
data: {contentSeq: contentSeq},
|
||||||
|
type: 'GET',
|
||||||
|
dataType:"html",
|
||||||
|
success: function(html){
|
||||||
|
$("#contentDiv").empty().append(html)
|
||||||
|
if($("#contentStatus").val() !== "D"){
|
||||||
|
const viewCntTd = $(".contentCheckBox:checked").parents("tr").find(".viewCntTd");
|
||||||
|
viewCntTd.text(Number(viewCntTd.text())+1);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
error:function(){
|
||||||
|
|
||||||
|
}
|
||||||
|
});
|
||||||
|
})
|
||||||
|
|
||||||
|
function parentCheck(categorySeq){
|
||||||
|
const radio = $("#categoryRadio"+categorySeq);
|
||||||
|
if(radio.length>0){
|
||||||
|
alert("상위 분류 "+radio.parent().attr("data-categoryname")+"이(가) 선택되어 있습니다.")
|
||||||
|
return false;
|
||||||
|
}else{
|
||||||
|
const parentseq = $("[data-categoryseq='"+categorySeq+"']").parents("tr").attr("data-parentseq");
|
||||||
|
if(!parentseq){
|
||||||
|
return true;
|
||||||
|
}else{
|
||||||
|
return parentCheck(parentseq);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function childCheck(parentSeq){
|
||||||
|
const childCategorys = $("[data-parentseq='"+parentSeq+"']");
|
||||||
|
childCategorys.each(function (idx, el){
|
||||||
|
const categorySeq = $(el).find(".categoryCheckBox").attr("data-categoryseq");
|
||||||
|
const radio = $("#categoryRadio"+categorySeq)
|
||||||
|
if(radio.length>0){
|
||||||
|
alert("하위분류 "+radio.parent().attr("data-categoryname")+"가 삭제되었습니다.");
|
||||||
|
radio.parent().remove();
|
||||||
|
}
|
||||||
|
childCheck(categorySeq);
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
function setCategoryTable(depth, parentSeq){
|
||||||
|
setTableDefault(depth);
|
||||||
|
let childCategoryIsNull = true;
|
||||||
|
const nextTr = $(".depth"+depth+"Tr");
|
||||||
|
nextTr.each(function (idx, el){
|
||||||
|
const tr = $(el)
|
||||||
|
if(tr.attr("data-parentseq")===parentSeq){
|
||||||
|
tr.show();
|
||||||
|
childCategoryIsNull = false;
|
||||||
|
}else{
|
||||||
|
tr.hide();
|
||||||
|
}
|
||||||
|
})
|
||||||
|
if(childCategoryIsNull){
|
||||||
|
$(nextTr[0]).show();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function setTableDefault(depth){
|
||||||
|
for(let i=depth; i<=4; i++){
|
||||||
|
const nextDepthTr = $(".depth"+i+"Tr");
|
||||||
|
nextDepthTr.hide();
|
||||||
|
nextDepthTr.find(".categoryCheckBox").prop("checked", false);
|
||||||
|
$(nextDepthTr[0]).show();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function getSelectedCategory(){
|
||||||
|
for(let i=4; i>0; i--){
|
||||||
|
const checkBox = $(".depth"+i+"Tr").find(".categoryCheckBox:checked")
|
||||||
|
if(checkBox.length>0){
|
||||||
|
return checkBox;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,447 @@
|
||||||
|
/*! jQuery UI - v1.13.0 - 2021-12-20
|
||||||
|
* http://jqueryui.com
|
||||||
|
* Includes: draggable.css, sortable.css, theme.css
|
||||||
|
* To view and modify this theme, visit http://jqueryui.com/themeroller/?scope=&folderName=base&cornerRadiusShadow=8px&offsetLeftShadow=0px&offsetTopShadow=0px&thicknessShadow=5px&opacityShadow=30&bgImgOpacityShadow=0&bgTextureShadow=flat&bgColorShadow=666666&opacityOverlay=30&bgImgOpacityOverlay=0&bgTextureOverlay=flat&bgColorOverlay=aaaaaa&iconColorError=cc0000&fcError=5f3f3f&borderColorError=f1a899&bgTextureError=flat&bgColorError=fddfdf&iconColorHighlight=777620&fcHighlight=777620&borderColorHighlight=dad55e&bgTextureHighlight=flat&bgColorHighlight=fffa90&iconColorActive=ffffff&fcActive=ffffff&borderColorActive=003eff&bgTextureActive=flat&bgColorActive=007fff&iconColorHover=555555&fcHover=2b2b2b&borderColorHover=cccccc&bgTextureHover=flat&bgColorHover=ededed&iconColorDefault=777777&fcDefault=454545&borderColorDefault=c5c5c5&bgTextureDefault=flat&bgColorDefault=f6f6f6&iconColorContent=444444&fcContent=333333&borderColorContent=dddddd&bgTextureContent=flat&bgColorContent=ffffff&iconColorHeader=444444&fcHeader=333333&borderColorHeader=dddddd&bgTextureHeader=flat&bgColorHeader=e9e9e9&cornerRadius=3px&fwDefault=normal&fsDefault=1em&ffDefault=Arial%2CHelvetica%2Csans-serif
|
||||||
|
* Copyright jQuery Foundation and other contributors; Licensed MIT */
|
||||||
|
|
||||||
|
.ui-draggable-handle {
|
||||||
|
-ms-touch-action: none;
|
||||||
|
touch-action: none;
|
||||||
|
}
|
||||||
|
.ui-sortable-handle {
|
||||||
|
-ms-touch-action: none;
|
||||||
|
touch-action: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Component containers
|
||||||
|
----------------------------------*/
|
||||||
|
.ui-widget {
|
||||||
|
font-family: Arial,Helvetica,sans-serif;
|
||||||
|
font-size: 1em;
|
||||||
|
}
|
||||||
|
.ui-widget .ui-widget {
|
||||||
|
font-size: 1em;
|
||||||
|
}
|
||||||
|
.ui-widget input,
|
||||||
|
.ui-widget select,
|
||||||
|
.ui-widget textarea,
|
||||||
|
.ui-widget button {
|
||||||
|
font-family: Arial,Helvetica,sans-serif;
|
||||||
|
font-size: 1em;
|
||||||
|
}
|
||||||
|
.ui-widget.ui-widget-content {
|
||||||
|
border: 1px solid #c5c5c5;
|
||||||
|
}
|
||||||
|
.ui-widget-content {
|
||||||
|
border: 1px solid #dddddd;
|
||||||
|
background: #ffffff;
|
||||||
|
color: #333333;
|
||||||
|
}
|
||||||
|
.ui-widget-content a {
|
||||||
|
color: #333333;
|
||||||
|
}
|
||||||
|
.ui-widget-header {
|
||||||
|
border: 1px solid #dddddd;
|
||||||
|
background: #e9e9e9;
|
||||||
|
color: #333333;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
.ui-widget-header a {
|
||||||
|
color: #333333;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Interaction states
|
||||||
|
----------------------------------*/
|
||||||
|
.ui-state-default,
|
||||||
|
.ui-widget-content .ui-state-default,
|
||||||
|
.ui-widget-header .ui-state-default,
|
||||||
|
.ui-button,
|
||||||
|
|
||||||
|
/* We use html here because we need a greater specificity to make sure disabled
|
||||||
|
works properly when clicked or hovered */
|
||||||
|
html .ui-button.ui-state-disabled:hover,
|
||||||
|
html .ui-button.ui-state-disabled:active {
|
||||||
|
border: 1px solid #c5c5c5;
|
||||||
|
background: #f6f6f6;
|
||||||
|
font-weight: normal;
|
||||||
|
color: #454545;
|
||||||
|
}
|
||||||
|
.ui-state-default a,
|
||||||
|
.ui-state-default a:link,
|
||||||
|
.ui-state-default a:visited,
|
||||||
|
a.ui-button,
|
||||||
|
a:link.ui-button,
|
||||||
|
a:visited.ui-button,
|
||||||
|
.ui-button {
|
||||||
|
color: #454545;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
.ui-state-hover,
|
||||||
|
.ui-widget-content .ui-state-hover,
|
||||||
|
.ui-widget-header .ui-state-hover,
|
||||||
|
.ui-state-focus,
|
||||||
|
.ui-widget-content .ui-state-focus,
|
||||||
|
.ui-widget-header .ui-state-focus,
|
||||||
|
.ui-button:hover,
|
||||||
|
.ui-button:focus {
|
||||||
|
border: 1px solid #cccccc;
|
||||||
|
background: #ededed;
|
||||||
|
font-weight: normal;
|
||||||
|
color: #2b2b2b;
|
||||||
|
}
|
||||||
|
.ui-state-hover a,
|
||||||
|
.ui-state-hover a:hover,
|
||||||
|
.ui-state-hover a:link,
|
||||||
|
.ui-state-hover a:visited,
|
||||||
|
.ui-state-focus a,
|
||||||
|
.ui-state-focus a:hover,
|
||||||
|
.ui-state-focus a:link,
|
||||||
|
.ui-state-focus a:visited,
|
||||||
|
a.ui-button:hover,
|
||||||
|
a.ui-button:focus {
|
||||||
|
color: #2b2b2b;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-visual-focus {
|
||||||
|
box-shadow: 0 0 3px 1px rgb(94, 158, 214);
|
||||||
|
}
|
||||||
|
.ui-state-active,
|
||||||
|
.ui-widget-content .ui-state-active,
|
||||||
|
.ui-widget-header .ui-state-active,
|
||||||
|
a.ui-button:active,
|
||||||
|
.ui-button:active,
|
||||||
|
.ui-button.ui-state-active:hover {
|
||||||
|
border: 1px solid #003eff;
|
||||||
|
background: #007fff;
|
||||||
|
font-weight: normal;
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
.ui-icon-background,
|
||||||
|
.ui-state-active .ui-icon-background {
|
||||||
|
border: #003eff;
|
||||||
|
background-color: #ffffff;
|
||||||
|
}
|
||||||
|
.ui-state-active a,
|
||||||
|
.ui-state-active a:link,
|
||||||
|
.ui-state-active a:visited {
|
||||||
|
color: #ffffff;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Interaction Cues
|
||||||
|
----------------------------------*/
|
||||||
|
.ui-state-highlight,
|
||||||
|
.ui-widget-content .ui-state-highlight,
|
||||||
|
.ui-widget-header .ui-state-highlight {
|
||||||
|
border: 1px solid #dad55e;
|
||||||
|
background: #fffa90;
|
||||||
|
color: #777620;
|
||||||
|
}
|
||||||
|
.ui-state-checked {
|
||||||
|
border: 1px solid #dad55e;
|
||||||
|
background: #fffa90;
|
||||||
|
}
|
||||||
|
.ui-state-highlight a,
|
||||||
|
.ui-widget-content .ui-state-highlight a,
|
||||||
|
.ui-widget-header .ui-state-highlight a {
|
||||||
|
color: #777620;
|
||||||
|
}
|
||||||
|
.ui-state-error,
|
||||||
|
.ui-widget-content .ui-state-error,
|
||||||
|
.ui-widget-header .ui-state-error {
|
||||||
|
border: 1px solid #f1a899;
|
||||||
|
background: #fddfdf;
|
||||||
|
color: #5f3f3f;
|
||||||
|
}
|
||||||
|
.ui-state-error a,
|
||||||
|
.ui-widget-content .ui-state-error a,
|
||||||
|
.ui-widget-header .ui-state-error a {
|
||||||
|
color: #5f3f3f;
|
||||||
|
}
|
||||||
|
.ui-state-error-text,
|
||||||
|
.ui-widget-content .ui-state-error-text,
|
||||||
|
.ui-widget-header .ui-state-error-text {
|
||||||
|
color: #5f3f3f;
|
||||||
|
}
|
||||||
|
.ui-priority-primary,
|
||||||
|
.ui-widget-content .ui-priority-primary,
|
||||||
|
.ui-widget-header .ui-priority-primary {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
.ui-priority-secondary,
|
||||||
|
.ui-widget-content .ui-priority-secondary,
|
||||||
|
.ui-widget-header .ui-priority-secondary {
|
||||||
|
opacity: .7;
|
||||||
|
-ms-filter: "alpha(opacity=70)"; /* support: IE8 */
|
||||||
|
font-weight: normal;
|
||||||
|
}
|
||||||
|
.ui-state-disabled,
|
||||||
|
.ui-widget-content .ui-state-disabled,
|
||||||
|
.ui-widget-header .ui-state-disabled {
|
||||||
|
opacity: .35;
|
||||||
|
-ms-filter: "alpha(opacity=35)"; /* support: IE8 */
|
||||||
|
background-image: none;
|
||||||
|
}
|
||||||
|
.ui-state-disabled .ui-icon {
|
||||||
|
-ms-filter: "alpha(opacity=35)"; /* support: IE8 - See #6059 */
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Icons
|
||||||
|
----------------------------------*/
|
||||||
|
|
||||||
|
/* states and images */
|
||||||
|
.ui-icon {
|
||||||
|
width: 16px;
|
||||||
|
height: 16px;
|
||||||
|
}
|
||||||
|
.ui-icon,
|
||||||
|
.ui-widget-content .ui-icon {
|
||||||
|
background-image: url("images/ui-icons_444444_256x240.png");
|
||||||
|
}
|
||||||
|
.ui-widget-header .ui-icon {
|
||||||
|
background-image: url("images/ui-icons_444444_256x240.png");
|
||||||
|
}
|
||||||
|
.ui-state-hover .ui-icon,
|
||||||
|
.ui-state-focus .ui-icon,
|
||||||
|
.ui-button:hover .ui-icon,
|
||||||
|
.ui-button:focus .ui-icon {
|
||||||
|
background-image: url("images/ui-icons_555555_256x240.png");
|
||||||
|
}
|
||||||
|
.ui-state-active .ui-icon,
|
||||||
|
.ui-button:active .ui-icon {
|
||||||
|
background-image: url("images/ui-icons_ffffff_256x240.png");
|
||||||
|
}
|
||||||
|
.ui-state-highlight .ui-icon,
|
||||||
|
.ui-button .ui-state-highlight.ui-icon {
|
||||||
|
background-image: url("images/ui-icons_777620_256x240.png");
|
||||||
|
}
|
||||||
|
.ui-state-error .ui-icon,
|
||||||
|
.ui-state-error-text .ui-icon {
|
||||||
|
background-image: url("images/ui-icons_cc0000_256x240.png");
|
||||||
|
}
|
||||||
|
.ui-button .ui-icon {
|
||||||
|
background-image: url("images/ui-icons_777777_256x240.png");
|
||||||
|
}
|
||||||
|
|
||||||
|
/* positioning */
|
||||||
|
/* Three classes needed to override `.ui-button:hover .ui-icon` */
|
||||||
|
.ui-icon-blank.ui-icon-blank.ui-icon-blank {
|
||||||
|
background-image: none;
|
||||||
|
}
|
||||||
|
.ui-icon-caret-1-n { background-position: 0 0; }
|
||||||
|
.ui-icon-caret-1-ne { background-position: -16px 0; }
|
||||||
|
.ui-icon-caret-1-e { background-position: -32px 0; }
|
||||||
|
.ui-icon-caret-1-se { background-position: -48px 0; }
|
||||||
|
.ui-icon-caret-1-s { background-position: -65px 0; }
|
||||||
|
.ui-icon-caret-1-sw { background-position: -80px 0; }
|
||||||
|
.ui-icon-caret-1-w { background-position: -96px 0; }
|
||||||
|
.ui-icon-caret-1-nw { background-position: -112px 0; }
|
||||||
|
.ui-icon-caret-2-n-s { background-position: -128px 0; }
|
||||||
|
.ui-icon-caret-2-e-w { background-position: -144px 0; }
|
||||||
|
.ui-icon-triangle-1-n { background-position: 0 -16px; }
|
||||||
|
.ui-icon-triangle-1-ne { background-position: -16px -16px; }
|
||||||
|
.ui-icon-triangle-1-e { background-position: -32px -16px; }
|
||||||
|
.ui-icon-triangle-1-se { background-position: -48px -16px; }
|
||||||
|
.ui-icon-triangle-1-s { background-position: -65px -16px; }
|
||||||
|
.ui-icon-triangle-1-sw { background-position: -80px -16px; }
|
||||||
|
.ui-icon-triangle-1-w { background-position: -96px -16px; }
|
||||||
|
.ui-icon-triangle-1-nw { background-position: -112px -16px; }
|
||||||
|
.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
|
||||||
|
.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
|
||||||
|
.ui-icon-arrow-1-n { background-position: 0 -32px; }
|
||||||
|
.ui-icon-arrow-1-ne { background-position: -16px -32px; }
|
||||||
|
.ui-icon-arrow-1-e { background-position: -32px -32px; }
|
||||||
|
.ui-icon-arrow-1-se { background-position: -48px -32px; }
|
||||||
|
.ui-icon-arrow-1-s { background-position: -65px -32px; }
|
||||||
|
.ui-icon-arrow-1-sw { background-position: -80px -32px; }
|
||||||
|
.ui-icon-arrow-1-w { background-position: -96px -32px; }
|
||||||
|
.ui-icon-arrow-1-nw { background-position: -112px -32px; }
|
||||||
|
.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
|
||||||
|
.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
|
||||||
|
.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
|
||||||
|
.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
|
||||||
|
.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
|
||||||
|
.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
|
||||||
|
.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
|
||||||
|
.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
|
||||||
|
.ui-icon-arrowthick-1-n { background-position: 1px -48px; }
|
||||||
|
.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
|
||||||
|
.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
|
||||||
|
.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
|
||||||
|
.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
|
||||||
|
.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
|
||||||
|
.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
|
||||||
|
.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
|
||||||
|
.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
|
||||||
|
.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
|
||||||
|
.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
|
||||||
|
.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
|
||||||
|
.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
|
||||||
|
.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
|
||||||
|
.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
|
||||||
|
.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
|
||||||
|
.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
|
||||||
|
.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
|
||||||
|
.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
|
||||||
|
.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
|
||||||
|
.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
|
||||||
|
.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
|
||||||
|
.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
|
||||||
|
.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
|
||||||
|
.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
|
||||||
|
.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
|
||||||
|
.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
|
||||||
|
.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
|
||||||
|
.ui-icon-arrow-4 { background-position: 0 -80px; }
|
||||||
|
.ui-icon-arrow-4-diag { background-position: -16px -80px; }
|
||||||
|
.ui-icon-extlink { background-position: -32px -80px; }
|
||||||
|
.ui-icon-newwin { background-position: -48px -80px; }
|
||||||
|
.ui-icon-refresh { background-position: -64px -80px; }
|
||||||
|
.ui-icon-shuffle { background-position: -80px -80px; }
|
||||||
|
.ui-icon-transfer-e-w { background-position: -96px -80px; }
|
||||||
|
.ui-icon-transferthick-e-w { background-position: -112px -80px; }
|
||||||
|
.ui-icon-folder-collapsed { background-position: 0 -96px; }
|
||||||
|
.ui-icon-folder-open { background-position: -16px -96px; }
|
||||||
|
.ui-icon-document { background-position: -32px -96px; }
|
||||||
|
.ui-icon-document-b { background-position: -48px -96px; }
|
||||||
|
.ui-icon-note { background-position: -64px -96px; }
|
||||||
|
.ui-icon-mail-closed { background-position: -80px -96px; }
|
||||||
|
.ui-icon-mail-open { background-position: -96px -96px; }
|
||||||
|
.ui-icon-suitcase { background-position: -112px -96px; }
|
||||||
|
.ui-icon-comment { background-position: -128px -96px; }
|
||||||
|
.ui-icon-person { background-position: -144px -96px; }
|
||||||
|
.ui-icon-print { background-position: -160px -96px; }
|
||||||
|
.ui-icon-trash { background-position: -176px -96px; }
|
||||||
|
.ui-icon-locked { background-position: -192px -96px; }
|
||||||
|
.ui-icon-unlocked { background-position: -208px -96px; }
|
||||||
|
.ui-icon-bookmark { background-position: -224px -96px; }
|
||||||
|
.ui-icon-tag { background-position: -240px -96px; }
|
||||||
|
.ui-icon-home { background-position: 0 -112px; }
|
||||||
|
.ui-icon-flag { background-position: -16px -112px; }
|
||||||
|
.ui-icon-calendar { background-position: -32px -112px; }
|
||||||
|
.ui-icon-cart { background-position: -48px -112px; }
|
||||||
|
.ui-icon-pencil { background-position: -64px -112px; }
|
||||||
|
.ui-icon-clock { background-position: -80px -112px; }
|
||||||
|
.ui-icon-disk { background-position: -96px -112px; }
|
||||||
|
.ui-icon-calculator { background-position: -112px -112px; }
|
||||||
|
.ui-icon-zoomin { background-position: -128px -112px; }
|
||||||
|
.ui-icon-zoomout { background-position: -144px -112px; }
|
||||||
|
.ui-icon-search { background-position: -160px -112px; }
|
||||||
|
.ui-icon-wrench { background-position: -176px -112px; }
|
||||||
|
.ui-icon-gear { background-position: -192px -112px; }
|
||||||
|
.ui-icon-heart { background-position: -208px -112px; }
|
||||||
|
.ui-icon-star { background-position: -224px -112px; }
|
||||||
|
.ui-icon-link { background-position: -240px -112px; }
|
||||||
|
.ui-icon-cancel { background-position: 0 -128px; }
|
||||||
|
.ui-icon-plus { background-position: -16px -128px; }
|
||||||
|
.ui-icon-plusthick { background-position: -32px -128px; }
|
||||||
|
.ui-icon-minus { background-position: -48px -128px; }
|
||||||
|
.ui-icon-minusthick { background-position: -64px -128px; }
|
||||||
|
.ui-icon-close { background-position: -80px -128px; }
|
||||||
|
.ui-icon-closethick { background-position: -96px -128px; }
|
||||||
|
.ui-icon-key { background-position: -112px -128px; }
|
||||||
|
.ui-icon-lightbulb { background-position: -128px -128px; }
|
||||||
|
.ui-icon-scissors { background-position: -144px -128px; }
|
||||||
|
.ui-icon-clipboard { background-position: -160px -128px; }
|
||||||
|
.ui-icon-copy { background-position: -176px -128px; }
|
||||||
|
.ui-icon-contact { background-position: -192px -128px; }
|
||||||
|
.ui-icon-image { background-position: -208px -128px; }
|
||||||
|
.ui-icon-video { background-position: -224px -128px; }
|
||||||
|
.ui-icon-script { background-position: -240px -128px; }
|
||||||
|
.ui-icon-alert { background-position: 0 -144px; }
|
||||||
|
.ui-icon-info { background-position: -16px -144px; }
|
||||||
|
.ui-icon-notice { background-position: -32px -144px; }
|
||||||
|
.ui-icon-help { background-position: -48px -144px; }
|
||||||
|
.ui-icon-check { background-position: -64px -144px; }
|
||||||
|
.ui-icon-bullet { background-position: -80px -144px; }
|
||||||
|
.ui-icon-radio-on { background-position: -96px -144px; }
|
||||||
|
.ui-icon-radio-off { background-position: -112px -144px; }
|
||||||
|
.ui-icon-pin-w { background-position: -128px -144px; }
|
||||||
|
.ui-icon-pin-s { background-position: -144px -144px; }
|
||||||
|
.ui-icon-play { background-position: 0 -160px; }
|
||||||
|
.ui-icon-pause { background-position: -16px -160px; }
|
||||||
|
.ui-icon-seek-next { background-position: -32px -160px; }
|
||||||
|
.ui-icon-seek-prev { background-position: -48px -160px; }
|
||||||
|
.ui-icon-seek-end { background-position: -64px -160px; }
|
||||||
|
.ui-icon-seek-start { background-position: -80px -160px; }
|
||||||
|
/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
|
||||||
|
.ui-icon-seek-first { background-position: -80px -160px; }
|
||||||
|
.ui-icon-stop { background-position: -96px -160px; }
|
||||||
|
.ui-icon-eject { background-position: -112px -160px; }
|
||||||
|
.ui-icon-volume-off { background-position: -128px -160px; }
|
||||||
|
.ui-icon-volume-on { background-position: -144px -160px; }
|
||||||
|
.ui-icon-power { background-position: 0 -176px; }
|
||||||
|
.ui-icon-signal-diag { background-position: -16px -176px; }
|
||||||
|
.ui-icon-signal { background-position: -32px -176px; }
|
||||||
|
.ui-icon-battery-0 { background-position: -48px -176px; }
|
||||||
|
.ui-icon-battery-1 { background-position: -64px -176px; }
|
||||||
|
.ui-icon-battery-2 { background-position: -80px -176px; }
|
||||||
|
.ui-icon-battery-3 { background-position: -96px -176px; }
|
||||||
|
.ui-icon-circle-plus { background-position: 0 -192px; }
|
||||||
|
.ui-icon-circle-minus { background-position: -16px -192px; }
|
||||||
|
.ui-icon-circle-close { background-position: -32px -192px; }
|
||||||
|
.ui-icon-circle-triangle-e { background-position: -48px -192px; }
|
||||||
|
.ui-icon-circle-triangle-s { background-position: -64px -192px; }
|
||||||
|
.ui-icon-circle-triangle-w { background-position: -80px -192px; }
|
||||||
|
.ui-icon-circle-triangle-n { background-position: -96px -192px; }
|
||||||
|
.ui-icon-circle-arrow-e { background-position: -112px -192px; }
|
||||||
|
.ui-icon-circle-arrow-s { background-position: -128px -192px; }
|
||||||
|
.ui-icon-circle-arrow-w { background-position: -144px -192px; }
|
||||||
|
.ui-icon-circle-arrow-n { background-position: -160px -192px; }
|
||||||
|
.ui-icon-circle-zoomin { background-position: -176px -192px; }
|
||||||
|
.ui-icon-circle-zoomout { background-position: -192px -192px; }
|
||||||
|
.ui-icon-circle-check { background-position: -208px -192px; }
|
||||||
|
.ui-icon-circlesmall-plus { background-position: 0 -208px; }
|
||||||
|
.ui-icon-circlesmall-minus { background-position: -16px -208px; }
|
||||||
|
.ui-icon-circlesmall-close { background-position: -32px -208px; }
|
||||||
|
.ui-icon-squaresmall-plus { background-position: -48px -208px; }
|
||||||
|
.ui-icon-squaresmall-minus { background-position: -64px -208px; }
|
||||||
|
.ui-icon-squaresmall-close { background-position: -80px -208px; }
|
||||||
|
.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
|
||||||
|
.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
|
||||||
|
.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
|
||||||
|
.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
|
||||||
|
.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
|
||||||
|
.ui-icon-grip-diagonal-se { background-position: -80px -224px; }
|
||||||
|
|
||||||
|
|
||||||
|
/* Misc visuals
|
||||||
|
----------------------------------*/
|
||||||
|
|
||||||
|
/* Corner radius */
|
||||||
|
.ui-corner-all,
|
||||||
|
.ui-corner-top,
|
||||||
|
.ui-corner-left,
|
||||||
|
.ui-corner-tl {
|
||||||
|
border-top-left-radius: 3px;
|
||||||
|
}
|
||||||
|
.ui-corner-all,
|
||||||
|
.ui-corner-top,
|
||||||
|
.ui-corner-right,
|
||||||
|
.ui-corner-tr {
|
||||||
|
border-top-right-radius: 3px;
|
||||||
|
}
|
||||||
|
.ui-corner-all,
|
||||||
|
.ui-corner-bottom,
|
||||||
|
.ui-corner-left,
|
||||||
|
.ui-corner-bl {
|
||||||
|
border-bottom-left-radius: 3px;
|
||||||
|
}
|
||||||
|
.ui-corner-all,
|
||||||
|
.ui-corner-bottom,
|
||||||
|
.ui-corner-right,
|
||||||
|
.ui-corner-br {
|
||||||
|
border-bottom-right-radius: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Overlays */
|
||||||
|
.ui-widget-overlay {
|
||||||
|
background: #aaaaaa;
|
||||||
|
opacity: .3;
|
||||||
|
-ms-filter: Alpha(Opacity=30); /* support: IE8 */
|
||||||
|
}
|
||||||
|
.ui-widget-shadow {
|
||||||
|
-webkit-box-shadow: 0px 0px 5px #666666;
|
||||||
|
box-shadow: 0px 0px 5px #666666;
|
||||||
|
}
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
18
src/main/resources/static/vendor/jquery-ui-1.13.0.dragSort/jquery-ui.structure.css
vendored
Normal file
18
src/main/resources/static/vendor/jquery-ui-1.13.0.dragSort/jquery-ui.structure.css
vendored
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
/*!
|
||||||
|
* jQuery UI CSS Framework 1.13.0
|
||||||
|
* http://jqueryui.com
|
||||||
|
*
|
||||||
|
* Copyright jQuery Foundation and other contributors
|
||||||
|
* Released under the MIT license.
|
||||||
|
* http://jquery.org/license
|
||||||
|
*
|
||||||
|
* http://api.jqueryui.com/category/theming/
|
||||||
|
*/
|
||||||
|
.ui-draggable-handle {
|
||||||
|
-ms-touch-action: none;
|
||||||
|
touch-action: none;
|
||||||
|
}
|
||||||
|
.ui-sortable-handle {
|
||||||
|
-ms-touch-action: none;
|
||||||
|
touch-action: none;
|
||||||
|
}
|
||||||
5
src/main/resources/static/vendor/jquery-ui-1.13.0.dragSort/jquery-ui.structure.min.css
vendored
Normal file
5
src/main/resources/static/vendor/jquery-ui-1.13.0.dragSort/jquery-ui.structure.min.css
vendored
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
/*! jQuery UI - v1.13.0 - 2021-12-20
|
||||||
|
* http://jqueryui.com
|
||||||
|
* Copyright jQuery Foundation and other contributors; Licensed MIT */
|
||||||
|
|
||||||
|
.ui-draggable-handle{-ms-touch-action:none;touch-action:none}.ui-sortable-handle{-ms-touch-action:none;touch-action:none}
|
||||||
446
src/main/resources/static/vendor/jquery-ui-1.13.0.dragSort/jquery-ui.theme.css
vendored
Normal file
446
src/main/resources/static/vendor/jquery-ui-1.13.0.dragSort/jquery-ui.theme.css
vendored
Normal file
|
|
@ -0,0 +1,446 @@
|
||||||
|
/*!
|
||||||
|
* jQuery UI CSS Framework 1.13.0
|
||||||
|
* http://jqueryui.com
|
||||||
|
*
|
||||||
|
* Copyright jQuery Foundation and other contributors
|
||||||
|
* Released under the MIT license.
|
||||||
|
* http://jquery.org/license
|
||||||
|
*
|
||||||
|
* http://api.jqueryui.com/category/theming/
|
||||||
|
*
|
||||||
|
* To view and modify this theme, visit http://jqueryui.com/themeroller/?scope=&folderName=base&cornerRadiusShadow=8px&offsetLeftShadow=0px&offsetTopShadow=0px&thicknessShadow=5px&opacityShadow=30&bgImgOpacityShadow=0&bgTextureShadow=flat&bgColorShadow=666666&opacityOverlay=30&bgImgOpacityOverlay=0&bgTextureOverlay=flat&bgColorOverlay=aaaaaa&iconColorError=cc0000&fcError=5f3f3f&borderColorError=f1a899&bgTextureError=flat&bgColorError=fddfdf&iconColorHighlight=777620&fcHighlight=777620&borderColorHighlight=dad55e&bgTextureHighlight=flat&bgColorHighlight=fffa90&iconColorActive=ffffff&fcActive=ffffff&borderColorActive=003eff&bgTextureActive=flat&bgColorActive=007fff&iconColorHover=555555&fcHover=2b2b2b&borderColorHover=cccccc&bgTextureHover=flat&bgColorHover=ededed&iconColorDefault=777777&fcDefault=454545&borderColorDefault=c5c5c5&bgTextureDefault=flat&bgColorDefault=f6f6f6&iconColorContent=444444&fcContent=333333&borderColorContent=dddddd&bgTextureContent=flat&bgColorContent=ffffff&iconColorHeader=444444&fcHeader=333333&borderColorHeader=dddddd&bgTextureHeader=flat&bgColorHeader=e9e9e9&cornerRadius=3px&fwDefault=normal&fsDefault=1em&ffDefault=Arial%2CHelvetica%2Csans-serif
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
/* Component containers
|
||||||
|
----------------------------------*/
|
||||||
|
.ui-widget {
|
||||||
|
font-family: Arial,Helvetica,sans-serif;
|
||||||
|
font-size: 1em;
|
||||||
|
}
|
||||||
|
.ui-widget .ui-widget {
|
||||||
|
font-size: 1em;
|
||||||
|
}
|
||||||
|
.ui-widget input,
|
||||||
|
.ui-widget select,
|
||||||
|
.ui-widget textarea,
|
||||||
|
.ui-widget button {
|
||||||
|
font-family: Arial,Helvetica,sans-serif;
|
||||||
|
font-size: 1em;
|
||||||
|
}
|
||||||
|
.ui-widget.ui-widget-content {
|
||||||
|
border: 1px solid #c5c5c5;
|
||||||
|
}
|
||||||
|
.ui-widget-content {
|
||||||
|
border: 1px solid #dddddd;
|
||||||
|
background: #ffffff;
|
||||||
|
color: #333333;
|
||||||
|
}
|
||||||
|
.ui-widget-content a {
|
||||||
|
color: #333333;
|
||||||
|
}
|
||||||
|
.ui-widget-header {
|
||||||
|
border: 1px solid #dddddd;
|
||||||
|
background: #e9e9e9;
|
||||||
|
color: #333333;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
.ui-widget-header a {
|
||||||
|
color: #333333;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Interaction states
|
||||||
|
----------------------------------*/
|
||||||
|
.ui-state-default,
|
||||||
|
.ui-widget-content .ui-state-default,
|
||||||
|
.ui-widget-header .ui-state-default,
|
||||||
|
.ui-button,
|
||||||
|
|
||||||
|
/* We use html here because we need a greater specificity to make sure disabled
|
||||||
|
works properly when clicked or hovered */
|
||||||
|
html .ui-button.ui-state-disabled:hover,
|
||||||
|
html .ui-button.ui-state-disabled:active {
|
||||||
|
border: 1px solid #c5c5c5;
|
||||||
|
background: #f6f6f6;
|
||||||
|
font-weight: normal;
|
||||||
|
color: #454545;
|
||||||
|
}
|
||||||
|
.ui-state-default a,
|
||||||
|
.ui-state-default a:link,
|
||||||
|
.ui-state-default a:visited,
|
||||||
|
a.ui-button,
|
||||||
|
a:link.ui-button,
|
||||||
|
a:visited.ui-button,
|
||||||
|
.ui-button {
|
||||||
|
color: #454545;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
.ui-state-hover,
|
||||||
|
.ui-widget-content .ui-state-hover,
|
||||||
|
.ui-widget-header .ui-state-hover,
|
||||||
|
.ui-state-focus,
|
||||||
|
.ui-widget-content .ui-state-focus,
|
||||||
|
.ui-widget-header .ui-state-focus,
|
||||||
|
.ui-button:hover,
|
||||||
|
.ui-button:focus {
|
||||||
|
border: 1px solid #cccccc;
|
||||||
|
background: #ededed;
|
||||||
|
font-weight: normal;
|
||||||
|
color: #2b2b2b;
|
||||||
|
}
|
||||||
|
.ui-state-hover a,
|
||||||
|
.ui-state-hover a:hover,
|
||||||
|
.ui-state-hover a:link,
|
||||||
|
.ui-state-hover a:visited,
|
||||||
|
.ui-state-focus a,
|
||||||
|
.ui-state-focus a:hover,
|
||||||
|
.ui-state-focus a:link,
|
||||||
|
.ui-state-focus a:visited,
|
||||||
|
a.ui-button:hover,
|
||||||
|
a.ui-button:focus {
|
||||||
|
color: #2b2b2b;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ui-visual-focus {
|
||||||
|
box-shadow: 0 0 3px 1px rgb(94, 158, 214);
|
||||||
|
}
|
||||||
|
.ui-state-active,
|
||||||
|
.ui-widget-content .ui-state-active,
|
||||||
|
.ui-widget-header .ui-state-active,
|
||||||
|
a.ui-button:active,
|
||||||
|
.ui-button:active,
|
||||||
|
.ui-button.ui-state-active:hover {
|
||||||
|
border: 1px solid #003eff;
|
||||||
|
background: #007fff;
|
||||||
|
font-weight: normal;
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
.ui-icon-background,
|
||||||
|
.ui-state-active .ui-icon-background {
|
||||||
|
border: #003eff;
|
||||||
|
background-color: #ffffff;
|
||||||
|
}
|
||||||
|
.ui-state-active a,
|
||||||
|
.ui-state-active a:link,
|
||||||
|
.ui-state-active a:visited {
|
||||||
|
color: #ffffff;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Interaction Cues
|
||||||
|
----------------------------------*/
|
||||||
|
.ui-state-highlight,
|
||||||
|
.ui-widget-content .ui-state-highlight,
|
||||||
|
.ui-widget-header .ui-state-highlight {
|
||||||
|
border: 1px solid #dad55e;
|
||||||
|
background: #fffa90;
|
||||||
|
color: #777620;
|
||||||
|
}
|
||||||
|
.ui-state-checked {
|
||||||
|
border: 1px solid #dad55e;
|
||||||
|
background: #fffa90;
|
||||||
|
}
|
||||||
|
.ui-state-highlight a,
|
||||||
|
.ui-widget-content .ui-state-highlight a,
|
||||||
|
.ui-widget-header .ui-state-highlight a {
|
||||||
|
color: #777620;
|
||||||
|
}
|
||||||
|
.ui-state-error,
|
||||||
|
.ui-widget-content .ui-state-error,
|
||||||
|
.ui-widget-header .ui-state-error {
|
||||||
|
border: 1px solid #f1a899;
|
||||||
|
background: #fddfdf;
|
||||||
|
color: #5f3f3f;
|
||||||
|
}
|
||||||
|
.ui-state-error a,
|
||||||
|
.ui-widget-content .ui-state-error a,
|
||||||
|
.ui-widget-header .ui-state-error a {
|
||||||
|
color: #5f3f3f;
|
||||||
|
}
|
||||||
|
.ui-state-error-text,
|
||||||
|
.ui-widget-content .ui-state-error-text,
|
||||||
|
.ui-widget-header .ui-state-error-text {
|
||||||
|
color: #5f3f3f;
|
||||||
|
}
|
||||||
|
.ui-priority-primary,
|
||||||
|
.ui-widget-content .ui-priority-primary,
|
||||||
|
.ui-widget-header .ui-priority-primary {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
.ui-priority-secondary,
|
||||||
|
.ui-widget-content .ui-priority-secondary,
|
||||||
|
.ui-widget-header .ui-priority-secondary {
|
||||||
|
opacity: .7;
|
||||||
|
-ms-filter: "alpha(opacity=70)"; /* support: IE8 */
|
||||||
|
font-weight: normal;
|
||||||
|
}
|
||||||
|
.ui-state-disabled,
|
||||||
|
.ui-widget-content .ui-state-disabled,
|
||||||
|
.ui-widget-header .ui-state-disabled {
|
||||||
|
opacity: .35;
|
||||||
|
-ms-filter: "alpha(opacity=35)"; /* support: IE8 */
|
||||||
|
background-image: none;
|
||||||
|
}
|
||||||
|
.ui-state-disabled .ui-icon {
|
||||||
|
-ms-filter: "alpha(opacity=35)"; /* support: IE8 - See #6059 */
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Icons
|
||||||
|
----------------------------------*/
|
||||||
|
|
||||||
|
/* states and images */
|
||||||
|
.ui-icon {
|
||||||
|
width: 16px;
|
||||||
|
height: 16px;
|
||||||
|
}
|
||||||
|
.ui-icon,
|
||||||
|
.ui-widget-content .ui-icon {
|
||||||
|
background-image: url("images/ui-icons_444444_256x240.png");
|
||||||
|
}
|
||||||
|
.ui-widget-header .ui-icon {
|
||||||
|
background-image: url("images/ui-icons_444444_256x240.png");
|
||||||
|
}
|
||||||
|
.ui-state-hover .ui-icon,
|
||||||
|
.ui-state-focus .ui-icon,
|
||||||
|
.ui-button:hover .ui-icon,
|
||||||
|
.ui-button:focus .ui-icon {
|
||||||
|
background-image: url("images/ui-icons_555555_256x240.png");
|
||||||
|
}
|
||||||
|
.ui-state-active .ui-icon,
|
||||||
|
.ui-button:active .ui-icon {
|
||||||
|
background-image: url("images/ui-icons_ffffff_256x240.png");
|
||||||
|
}
|
||||||
|
.ui-state-highlight .ui-icon,
|
||||||
|
.ui-button .ui-state-highlight.ui-icon {
|
||||||
|
background-image: url("images/ui-icons_777620_256x240.png");
|
||||||
|
}
|
||||||
|
.ui-state-error .ui-icon,
|
||||||
|
.ui-state-error-text .ui-icon {
|
||||||
|
background-image: url("images/ui-icons_cc0000_256x240.png");
|
||||||
|
}
|
||||||
|
.ui-button .ui-icon {
|
||||||
|
background-image: url("images/ui-icons_777777_256x240.png");
|
||||||
|
}
|
||||||
|
|
||||||
|
/* positioning */
|
||||||
|
/* Three classes needed to override `.ui-button:hover .ui-icon` */
|
||||||
|
.ui-icon-blank.ui-icon-blank.ui-icon-blank {
|
||||||
|
background-image: none;
|
||||||
|
}
|
||||||
|
.ui-icon-caret-1-n { background-position: 0 0; }
|
||||||
|
.ui-icon-caret-1-ne { background-position: -16px 0; }
|
||||||
|
.ui-icon-caret-1-e { background-position: -32px 0; }
|
||||||
|
.ui-icon-caret-1-se { background-position: -48px 0; }
|
||||||
|
.ui-icon-caret-1-s { background-position: -65px 0; }
|
||||||
|
.ui-icon-caret-1-sw { background-position: -80px 0; }
|
||||||
|
.ui-icon-caret-1-w { background-position: -96px 0; }
|
||||||
|
.ui-icon-caret-1-nw { background-position: -112px 0; }
|
||||||
|
.ui-icon-caret-2-n-s { background-position: -128px 0; }
|
||||||
|
.ui-icon-caret-2-e-w { background-position: -144px 0; }
|
||||||
|
.ui-icon-triangle-1-n { background-position: 0 -16px; }
|
||||||
|
.ui-icon-triangle-1-ne { background-position: -16px -16px; }
|
||||||
|
.ui-icon-triangle-1-e { background-position: -32px -16px; }
|
||||||
|
.ui-icon-triangle-1-se { background-position: -48px -16px; }
|
||||||
|
.ui-icon-triangle-1-s { background-position: -65px -16px; }
|
||||||
|
.ui-icon-triangle-1-sw { background-position: -80px -16px; }
|
||||||
|
.ui-icon-triangle-1-w { background-position: -96px -16px; }
|
||||||
|
.ui-icon-triangle-1-nw { background-position: -112px -16px; }
|
||||||
|
.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
|
||||||
|
.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
|
||||||
|
.ui-icon-arrow-1-n { background-position: 0 -32px; }
|
||||||
|
.ui-icon-arrow-1-ne { background-position: -16px -32px; }
|
||||||
|
.ui-icon-arrow-1-e { background-position: -32px -32px; }
|
||||||
|
.ui-icon-arrow-1-se { background-position: -48px -32px; }
|
||||||
|
.ui-icon-arrow-1-s { background-position: -65px -32px; }
|
||||||
|
.ui-icon-arrow-1-sw { background-position: -80px -32px; }
|
||||||
|
.ui-icon-arrow-1-w { background-position: -96px -32px; }
|
||||||
|
.ui-icon-arrow-1-nw { background-position: -112px -32px; }
|
||||||
|
.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
|
||||||
|
.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
|
||||||
|
.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
|
||||||
|
.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
|
||||||
|
.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
|
||||||
|
.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
|
||||||
|
.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
|
||||||
|
.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
|
||||||
|
.ui-icon-arrowthick-1-n { background-position: 1px -48px; }
|
||||||
|
.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
|
||||||
|
.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
|
||||||
|
.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
|
||||||
|
.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
|
||||||
|
.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
|
||||||
|
.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
|
||||||
|
.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
|
||||||
|
.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
|
||||||
|
.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
|
||||||
|
.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
|
||||||
|
.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
|
||||||
|
.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
|
||||||
|
.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
|
||||||
|
.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
|
||||||
|
.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
|
||||||
|
.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
|
||||||
|
.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
|
||||||
|
.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
|
||||||
|
.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
|
||||||
|
.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
|
||||||
|
.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
|
||||||
|
.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
|
||||||
|
.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
|
||||||
|
.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
|
||||||
|
.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
|
||||||
|
.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
|
||||||
|
.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
|
||||||
|
.ui-icon-arrow-4 { background-position: 0 -80px; }
|
||||||
|
.ui-icon-arrow-4-diag { background-position: -16px -80px; }
|
||||||
|
.ui-icon-extlink { background-position: -32px -80px; }
|
||||||
|
.ui-icon-newwin { background-position: -48px -80px; }
|
||||||
|
.ui-icon-refresh { background-position: -64px -80px; }
|
||||||
|
.ui-icon-shuffle { background-position: -80px -80px; }
|
||||||
|
.ui-icon-transfer-e-w { background-position: -96px -80px; }
|
||||||
|
.ui-icon-transferthick-e-w { background-position: -112px -80px; }
|
||||||
|
.ui-icon-folder-collapsed { background-position: 0 -96px; }
|
||||||
|
.ui-icon-folder-open { background-position: -16px -96px; }
|
||||||
|
.ui-icon-document { background-position: -32px -96px; }
|
||||||
|
.ui-icon-document-b { background-position: -48px -96px; }
|
||||||
|
.ui-icon-note { background-position: -64px -96px; }
|
||||||
|
.ui-icon-mail-closed { background-position: -80px -96px; }
|
||||||
|
.ui-icon-mail-open { background-position: -96px -96px; }
|
||||||
|
.ui-icon-suitcase { background-position: -112px -96px; }
|
||||||
|
.ui-icon-comment { background-position: -128px -96px; }
|
||||||
|
.ui-icon-person { background-position: -144px -96px; }
|
||||||
|
.ui-icon-print { background-position: -160px -96px; }
|
||||||
|
.ui-icon-trash { background-position: -176px -96px; }
|
||||||
|
.ui-icon-locked { background-position: -192px -96px; }
|
||||||
|
.ui-icon-unlocked { background-position: -208px -96px; }
|
||||||
|
.ui-icon-bookmark { background-position: -224px -96px; }
|
||||||
|
.ui-icon-tag { background-position: -240px -96px; }
|
||||||
|
.ui-icon-home { background-position: 0 -112px; }
|
||||||
|
.ui-icon-flag { background-position: -16px -112px; }
|
||||||
|
.ui-icon-calendar { background-position: -32px -112px; }
|
||||||
|
.ui-icon-cart { background-position: -48px -112px; }
|
||||||
|
.ui-icon-pencil { background-position: -64px -112px; }
|
||||||
|
.ui-icon-clock { background-position: -80px -112px; }
|
||||||
|
.ui-icon-disk { background-position: -96px -112px; }
|
||||||
|
.ui-icon-calculator { background-position: -112px -112px; }
|
||||||
|
.ui-icon-zoomin { background-position: -128px -112px; }
|
||||||
|
.ui-icon-zoomout { background-position: -144px -112px; }
|
||||||
|
.ui-icon-search { background-position: -160px -112px; }
|
||||||
|
.ui-icon-wrench { background-position: -176px -112px; }
|
||||||
|
.ui-icon-gear { background-position: -192px -112px; }
|
||||||
|
.ui-icon-heart { background-position: -208px -112px; }
|
||||||
|
.ui-icon-star { background-position: -224px -112px; }
|
||||||
|
.ui-icon-link { background-position: -240px -112px; }
|
||||||
|
.ui-icon-cancel { background-position: 0 -128px; }
|
||||||
|
.ui-icon-plus { background-position: -16px -128px; }
|
||||||
|
.ui-icon-plusthick { background-position: -32px -128px; }
|
||||||
|
.ui-icon-minus { background-position: -48px -128px; }
|
||||||
|
.ui-icon-minusthick { background-position: -64px -128px; }
|
||||||
|
.ui-icon-close { background-position: -80px -128px; }
|
||||||
|
.ui-icon-closethick { background-position: -96px -128px; }
|
||||||
|
.ui-icon-key { background-position: -112px -128px; }
|
||||||
|
.ui-icon-lightbulb { background-position: -128px -128px; }
|
||||||
|
.ui-icon-scissors { background-position: -144px -128px; }
|
||||||
|
.ui-icon-clipboard { background-position: -160px -128px; }
|
||||||
|
.ui-icon-copy { background-position: -176px -128px; }
|
||||||
|
.ui-icon-contact { background-position: -192px -128px; }
|
||||||
|
.ui-icon-image { background-position: -208px -128px; }
|
||||||
|
.ui-icon-video { background-position: -224px -128px; }
|
||||||
|
.ui-icon-script { background-position: -240px -128px; }
|
||||||
|
.ui-icon-alert { background-position: 0 -144px; }
|
||||||
|
.ui-icon-info { background-position: -16px -144px; }
|
||||||
|
.ui-icon-notice { background-position: -32px -144px; }
|
||||||
|
.ui-icon-help { background-position: -48px -144px; }
|
||||||
|
.ui-icon-check { background-position: -64px -144px; }
|
||||||
|
.ui-icon-bullet { background-position: -80px -144px; }
|
||||||
|
.ui-icon-radio-on { background-position: -96px -144px; }
|
||||||
|
.ui-icon-radio-off { background-position: -112px -144px; }
|
||||||
|
.ui-icon-pin-w { background-position: -128px -144px; }
|
||||||
|
.ui-icon-pin-s { background-position: -144px -144px; }
|
||||||
|
.ui-icon-play { background-position: 0 -160px; }
|
||||||
|
.ui-icon-pause { background-position: -16px -160px; }
|
||||||
|
.ui-icon-seek-next { background-position: -32px -160px; }
|
||||||
|
.ui-icon-seek-prev { background-position: -48px -160px; }
|
||||||
|
.ui-icon-seek-end { background-position: -64px -160px; }
|
||||||
|
.ui-icon-seek-start { background-position: -80px -160px; }
|
||||||
|
/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
|
||||||
|
.ui-icon-seek-first { background-position: -80px -160px; }
|
||||||
|
.ui-icon-stop { background-position: -96px -160px; }
|
||||||
|
.ui-icon-eject { background-position: -112px -160px; }
|
||||||
|
.ui-icon-volume-off { background-position: -128px -160px; }
|
||||||
|
.ui-icon-volume-on { background-position: -144px -160px; }
|
||||||
|
.ui-icon-power { background-position: 0 -176px; }
|
||||||
|
.ui-icon-signal-diag { background-position: -16px -176px; }
|
||||||
|
.ui-icon-signal { background-position: -32px -176px; }
|
||||||
|
.ui-icon-battery-0 { background-position: -48px -176px; }
|
||||||
|
.ui-icon-battery-1 { background-position: -64px -176px; }
|
||||||
|
.ui-icon-battery-2 { background-position: -80px -176px; }
|
||||||
|
.ui-icon-battery-3 { background-position: -96px -176px; }
|
||||||
|
.ui-icon-circle-plus { background-position: 0 -192px; }
|
||||||
|
.ui-icon-circle-minus { background-position: -16px -192px; }
|
||||||
|
.ui-icon-circle-close { background-position: -32px -192px; }
|
||||||
|
.ui-icon-circle-triangle-e { background-position: -48px -192px; }
|
||||||
|
.ui-icon-circle-triangle-s { background-position: -64px -192px; }
|
||||||
|
.ui-icon-circle-triangle-w { background-position: -80px -192px; }
|
||||||
|
.ui-icon-circle-triangle-n { background-position: -96px -192px; }
|
||||||
|
.ui-icon-circle-arrow-e { background-position: -112px -192px; }
|
||||||
|
.ui-icon-circle-arrow-s { background-position: -128px -192px; }
|
||||||
|
.ui-icon-circle-arrow-w { background-position: -144px -192px; }
|
||||||
|
.ui-icon-circle-arrow-n { background-position: -160px -192px; }
|
||||||
|
.ui-icon-circle-zoomin { background-position: -176px -192px; }
|
||||||
|
.ui-icon-circle-zoomout { background-position: -192px -192px; }
|
||||||
|
.ui-icon-circle-check { background-position: -208px -192px; }
|
||||||
|
.ui-icon-circlesmall-plus { background-position: 0 -208px; }
|
||||||
|
.ui-icon-circlesmall-minus { background-position: -16px -208px; }
|
||||||
|
.ui-icon-circlesmall-close { background-position: -32px -208px; }
|
||||||
|
.ui-icon-squaresmall-plus { background-position: -48px -208px; }
|
||||||
|
.ui-icon-squaresmall-minus { background-position: -64px -208px; }
|
||||||
|
.ui-icon-squaresmall-close { background-position: -80px -208px; }
|
||||||
|
.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
|
||||||
|
.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
|
||||||
|
.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
|
||||||
|
.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
|
||||||
|
.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
|
||||||
|
.ui-icon-grip-diagonal-se { background-position: -80px -224px; }
|
||||||
|
|
||||||
|
|
||||||
|
/* Misc visuals
|
||||||
|
----------------------------------*/
|
||||||
|
|
||||||
|
/* Corner radius */
|
||||||
|
.ui-corner-all,
|
||||||
|
.ui-corner-top,
|
||||||
|
.ui-corner-left,
|
||||||
|
.ui-corner-tl {
|
||||||
|
border-top-left-radius: 3px;
|
||||||
|
}
|
||||||
|
.ui-corner-all,
|
||||||
|
.ui-corner-top,
|
||||||
|
.ui-corner-right,
|
||||||
|
.ui-corner-tr {
|
||||||
|
border-top-right-radius: 3px;
|
||||||
|
}
|
||||||
|
.ui-corner-all,
|
||||||
|
.ui-corner-bottom,
|
||||||
|
.ui-corner-left,
|
||||||
|
.ui-corner-bl {
|
||||||
|
border-bottom-left-radius: 3px;
|
||||||
|
}
|
||||||
|
.ui-corner-all,
|
||||||
|
.ui-corner-bottom,
|
||||||
|
.ui-corner-right,
|
||||||
|
.ui-corner-br {
|
||||||
|
border-bottom-right-radius: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Overlays */
|
||||||
|
.ui-widget-overlay {
|
||||||
|
background: #aaaaaa;
|
||||||
|
opacity: .3;
|
||||||
|
-ms-filter: Alpha(Opacity=30); /* support: IE8 */
|
||||||
|
}
|
||||||
|
.ui-widget-shadow {
|
||||||
|
-webkit-box-shadow: 0px 0px 5px #666666;
|
||||||
|
box-shadow: 0px 0px 5px #666666;
|
||||||
|
}
|
||||||
5
src/main/resources/static/vendor/jquery-ui-1.13.0.dragSort/jquery-ui.theme.min.css
vendored
Normal file
5
src/main/resources/static/vendor/jquery-ui-1.13.0.dragSort/jquery-ui.theme.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
|
|
@ -11,6 +11,7 @@
|
||||||
<div class="col-auto" th:text="${#temporals.format(content.createDate, 'yyyy-MM-dd HH:mm:ss')}"></div>
|
<div class="col-auto" th:text="${#temporals.format(content.createDate, 'yyyy-MM-dd HH:mm:ss')}"></div>
|
||||||
<div class="col-auto" th:text="${content.createId}"></div>
|
<div class="col-auto" th:text="${content.createId}"></div>
|
||||||
</div>
|
</div>
|
||||||
|
<th:block th:if="${content.status!='D'}">
|
||||||
<div class="row border-bottom py-3">
|
<div class="row border-bottom py-3">
|
||||||
<div th:class="|col-${content.childFileList.size()>1?8:12}|">
|
<div th:class="|col-${content.childFileList.size()>1?8:12}|">
|
||||||
<table class="table">
|
<table class="table">
|
||||||
|
|
@ -54,4 +55,5 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</th:block>
|
</th:block>
|
||||||
|
</th:block>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -5,6 +5,7 @@
|
||||||
xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
|
xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
|
||||||
layout:decorate="~{layout/layout}">
|
layout:decorate="~{layout/layout}">
|
||||||
<th:block layout:fragment="script">
|
<th:block layout:fragment="script">
|
||||||
|
<script type="text/javascript" th:src="@{/js/board/boardCommon.js}"></script>
|
||||||
<script type="text/javascript" th:src="@{/js/board/contentList.js}"></script>
|
<script type="text/javascript" th:src="@{/js/board/contentList.js}"></script>
|
||||||
</th:block>
|
</th:block>
|
||||||
<div layout:fragment="content">
|
<div layout:fragment="content">
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,9 @@
|
||||||
xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
|
xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
|
||||||
layout:decorate="~{layout/layout}">
|
layout:decorate="~{layout/layout}">
|
||||||
<th:block layout:fragment="script">
|
<th:block layout:fragment="script">
|
||||||
<!--<script type="text/javascript" th:src="@{/static/js/board/contentList.js}"></script>-->
|
<script type="text/javascript" th:src="@{/vendor/jquery-ui-1.13.0.dragSort/jquery-ui.min.js}"></script>
|
||||||
|
<script type="text/javascript" th:src="@{/js/board/boardCommon.js}"></script>
|
||||||
|
<script type="text/javascript" th:src="@{/js/board/contentSearch.js}"></script>
|
||||||
</th:block>
|
</th:block>
|
||||||
<div layout:fragment="content">
|
<div layout:fragment="content">
|
||||||
<main class="pt-3">
|
<main class="pt-3">
|
||||||
|
|
@ -15,131 +17,77 @@
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="row justify-content-start">
|
<div class="row justify-content-start">
|
||||||
<div class="col-7">
|
<div class="col-7">
|
||||||
<!--검색 form-->
|
<div class="card">
|
||||||
<form method="get" th:action="@{/board/contentList}">
|
<div class="card-body row">
|
||||||
<input type="hidden" name="pageIndex" id="pageIndex" th:value="${searchParams.pageIndex}">
|
<div class="col-10">
|
||||||
<div class="row justify-content-between">
|
<div class="row mb-1">
|
||||||
<div class="col-auto row">
|
<label for="categorySeq" class="col-sm-2 col-form-label">분류</label>
|
||||||
<div class="col-auto">
|
<div class="col-sm-8 pe-0">
|
||||||
<label for="rowCnt" class="col-form-label">데이터 수</label>
|
<input type="hidden" id="categorySeq">
|
||||||
|
<input type="text" class="form-control form-control-sm" id="categoryName" placeholder="오른쪽 분류 선택 버튼으로 등록" readonly>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-auto">
|
<div class="col-sm-2 px-0">
|
||||||
<select class="form-select" name="rowCnt" id="rowCnt">
|
<input type="button" class="btn btn-info btn-sm" id="categorySelectModalBtn" data-bs-toggle="modal" data-bs-target="#categorySelectModal" value="분류 선택">
|
||||||
<th:block th:each="num : ${#numbers.sequence(1,5)}">
|
|
||||||
<option th:value="${num*10}" th:text="${num*10}" th:selected="${searchParams.rowCnt==num*10}"></option>
|
|
||||||
</th:block>
|
|
||||||
</select>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-auto">
|
<div class="row mb-1">
|
||||||
<div class="row justify-content-end">
|
<label for="title" class="col-sm-2 col-form-label">제목</label>
|
||||||
<div class="col-auto">
|
<div class="col-sm-4">
|
||||||
<select class="form-select" id="searchConditionSelector">
|
<input type="text" class="form-control form-control-sm" id="title">
|
||||||
<option>검색조건</option>
|
|
||||||
</select>
|
|
||||||
<!--<select class="form-select" id="searchConditionSelector">
|
|
||||||
<option value="userId" th:selected="${searchParams.userId!=null and searchParams.userId!=''}">아이디</option>
|
|
||||||
<option value="name" th:selected="${searchParams.name!=null and searchParams.name!=''}">이름</option>
|
|
||||||
<option value="positionName" th:selected="${searchParams.positionName!=null and searchParams.positionName!=''}">부서</option>
|
|
||||||
<option value="departmentName" th:selected="${searchParams.departmentName!=null and searchParams.departmentName!=''}">직급</option>
|
|
||||||
<option value="createDate" th:selected="${searchParams.startDate!=null and searchParams.startDate!=''} or ${searchParams.endDate!=null and searchParams.endDate!=''}">생성일</option>
|
|
||||||
</select>-->
|
|
||||||
</div>
|
</div>
|
||||||
<div class="col-auto" id="searchTextDiv">
|
<label for="createName" class="col-sm-2 col-form-label">작성자</label>
|
||||||
<input type="text" class="form-control" id="textSearch">
|
<div class="col-sm-4">
|
||||||
<!--<input type="text" class="form-control" id="textSearch" th:value="${
|
<input type="text" class="form-control form-control-sm" id="createName">
|
||||||
(searchParams.userId!=null and searchParams.userId!='')?searchParams.userId:(
|
|
||||||
(searchParams.name!=null and searchParams.name!='')?searchParams.name:(
|
|
||||||
(searchParams.positionName!=null and searchParams.positionName!='')?searchParams.positionName:(
|
|
||||||
(searchParams.departmentName!=null and searchParams.departmentName!='')?searchParams.departmentName:''
|
|
||||||
)
|
|
||||||
)
|
|
||||||
)
|
|
||||||
}">-->
|
|
||||||
</div>
|
</div>
|
||||||
<div class="col-auto input-group w-auto input-daterange" id="dateSelectorDiv" style="display: none">
|
|
||||||
<input type="text" class="form-control" id="startDate" name="startDate" placeholder="시작일" autocomplete="off" disabled th:value="${searchParams.startDate}">
|
|
||||||
<input type="text" class="form-control" id="endDate" name="endDate" placeholder="종료일" autocomplete="off" disabled th:value="${searchParams.endDate}">
|
|
||||||
</div>
|
</div>
|
||||||
<div class="col-auto">
|
<div class="row mb-1">
|
||||||
<input type="submit" class="btn btn-primary" id="searchBtn" value="검색">
|
<label for="title" class="col-sm-2 col-form-label">해시태그</label>
|
||||||
|
<div class="col-sm-4">
|
||||||
|
<input type="text" class="form-control form-control-sm" id="tagName" placeholder="# 없이 태그 입력">
|
||||||
|
</div>
|
||||||
|
<label for="startDate" class="col-sm-2 col-form-label">작성일</label>
|
||||||
|
<div class="col-sm-4">
|
||||||
|
<div class="col-auto input-group w-auto input-daterange" id="dateSelectorDiv">
|
||||||
|
<input type="text" class="form-control form-control-sm" id="startDate" name="startDate" placeholder="시작일" autocomplete="off">
|
||||||
|
<input type="text" class="form-control form-control-sm" id="endDate" name="endDate" placeholder="종료일" autocomplete="off">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<label for="title" class="col-sm-2 col-form-label">첨부파일</label>
|
||||||
|
<div class="col-sm-4">
|
||||||
|
<input type="text" class="form-control form-control-sm" id="originalName">
|
||||||
</div>
|
</div>
|
||||||
</form>
|
|
||||||
<div class="row-cols-6">
|
|
||||||
<table class="table table-striped">
|
|
||||||
<thead>
|
|
||||||
<tr>
|
|
||||||
<th></th>
|
|
||||||
<th>아이디</th>
|
|
||||||
<th>이름</th>
|
|
||||||
<th>부서</th>
|
|
||||||
<th>직급</th>
|
|
||||||
<th>생성일</th>
|
|
||||||
<th>상태</th>
|
|
||||||
</tr>
|
|
||||||
</thead>
|
|
||||||
<tbody>
|
|
||||||
<!--<tr class="userInfoTr" th:each="userInfo:${userInfoList}">
|
|
||||||
<td>
|
|
||||||
<input type="checkbox" class="userInfoCheckBox" th:value="${userInfo.userSeq}">
|
|
||||||
</td>
|
|
||||||
<td th:text="${userInfo.userId}"></td>
|
|
||||||
<td th:text="|${userInfo.name}${#strings.contains(userInfo.userRole,'ADMIN')?'(관리자)':''}|"></td>
|
|
||||||
<td th:text="${userInfo.positionName}"></td>
|
|
||||||
<td th:text="${userInfo.departmentName}"></td>
|
|
||||||
<td th:text="${#temporals.format(userInfo.createDate, 'yyyy-MM-dd')}"></td>
|
|
||||||
<td th:text="${#strings.contains(userInfo.userStatus,'T')?'활성화':'비활성화'}"></td>
|
|
||||||
</tr>-->
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="row justify-content-between">
|
|
||||||
<div class="col-auto"></div>
|
|
||||||
<div class="col-auto">
|
|
||||||
<nav aria-label="Page navigation">
|
|
||||||
<ul class="pagination">
|
|
||||||
<!--<th:block th:if="${searchParams.pageIndex>3}">
|
|
||||||
<li class="page-item" th:data-pageindex="${(searchParams.pageIndex)-3}">
|
|
||||||
<a class="page-link" href="#" aria-label="Previous">
|
|
||||||
<span aria-hidden="true">«</span>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
</th:block>
|
|
||||||
<th:block th:each="num : ${#numbers.sequence(searchParams.startNum, searchParams.endNum)}">
|
|
||||||
<li class="page-item" th:data-pageindex="${num}" th:classappend="${searchParams.pageIndex==num?'active':''}">
|
|
||||||
<a class="page-link" href="#" th:text="${num}"></a>
|
|
||||||
</li>
|
|
||||||
</th:block>
|
|
||||||
<th:block th:if="${searchParams.maxNum>searchParams.endNum+2}">
|
|
||||||
<li class="page-item" th:data-pageindex="${(searchParams.pageIndex)+3}">
|
|
||||||
<a class="page-link" href="#" aria-label="Next">
|
|
||||||
<span aria-hidden="true">»</span>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
</th:block>-->
|
|
||||||
</ul>
|
|
||||||
</nav>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="col-auto">
|
<div class="col-2 m-auto">
|
||||||
<input type="button" class="btn btn-success" value="사용자 생성" data-bs-toggle="modal" data-bs-target="#userInfoModal">
|
<button class="btn btn-primary px-5 py-3" id="searchBtn" style="white-space: nowrap;"><i class="bi bi-search"></i><br>검색</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="row-cols-6" id="searchResultDiv">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<div class="col-5">
|
<div class="col-5">
|
||||||
<ul class="nav nav-tabs" id="userTab" role="tablist">
|
<ul class="nav nav-tabs" id="boardTab" role="tablist">
|
||||||
<li class="nav-item" role="presentation">
|
<li class="nav-item" role="presentation">
|
||||||
<button class="nav-link active" id="infoTab" data-bs-toggle="tab" type="button" role="tab">개인정보</button>
|
<button class="nav-link active" id="contentTab" data-bs-toggle="tab" data-bs-target="#contentDiv" type="button" role="tab">내용</button>
|
||||||
</li>
|
</li>
|
||||||
<li class="nav-item" role="presentation">
|
<li class="nav-item" role="presentation">
|
||||||
<button class="nav-link" id="categoryTab" data-bs-toggle="tab" type="button" role="tab">권한</button>
|
<button class="nav-link" id="logTab" data-bs-toggle="tab" data-bs-target="#logDiv" type="button" role="tab">이력</button>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<div class="tab-content border border-top-0" id="userContent">
|
<div class="tab-content border border-top-0" id="boardDiv">
|
||||||
<div class="py-5">
|
<div class="tab-pane fade show active" id="contentDiv" role="tabpanel" aria-labelledby="contentTab">
|
||||||
<h3>왼쪽 목록에서 선택해주세요.</h3>
|
<div class="py-5 text-center">
|
||||||
|
<h3>검색 후 목록에서 선택해주세요.</h3>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tab-pane fade" id="logDiv" role="tabpanel" aria-labelledby="logTab">
|
||||||
|
<div class="py-5 text-center">
|
||||||
|
<h3>검색 후 목록에서 선택해주세요.</h3>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -148,5 +96,129 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</main>
|
</main>
|
||||||
|
<div class="modal fade" id="categorySelectModal" data-bs-backdrop="static" data-bs-keyboard="false" tabindex="-1" aria-labelledby="categorySelectModalLabel" aria-hidden="true">
|
||||||
|
<div class="modal-dialog modal-lg">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="modal-header">
|
||||||
|
<h5 class="modal-title" id="categorySelectModalLabel">분류 선택</h5>
|
||||||
|
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
<div class="row mb-3">
|
||||||
|
<div class="col-sm">
|
||||||
|
<table class="table table-striped">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th></th>
|
||||||
|
<th>대분류</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<th:block th:each="depth1:${session.categoryList}">
|
||||||
|
<tr class="categoryTr depth1Tr">
|
||||||
|
<td><input type="checkbox" class="categoryCheckBox" data-depth="1"
|
||||||
|
th:data-categoryseq="${depth1.categorySeq}" th:data-categoryname="${depth1.categoryName}"></td>
|
||||||
|
<td th:text="${depth1.categoryName}"></td>
|
||||||
|
</tr>
|
||||||
|
</th:block>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div class="col-sm">
|
||||||
|
<table class="table table-striped">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th></th>
|
||||||
|
<th>연도</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr class="text-center depth2Tr">
|
||||||
|
<td colspan="2">상위 분류를<br>선택해주세요</td>
|
||||||
|
</tr>
|
||||||
|
<th:block th:each="depth1:${session.categoryList}">
|
||||||
|
<th:block th:each="depth2:${depth1.childCategoryList}">
|
||||||
|
<tr class="categoryTr depth2Tr" th:data-parentseq="${depth2.parentSeq}" style="display: none;">
|
||||||
|
<td><input type="checkbox" class="categoryCheckBox" data-depth="2"
|
||||||
|
th:data-categoryseq="${depth2.categorySeq}" th:data-categoryname="${depth2.categoryName}"></td>
|
||||||
|
<td th:text="${depth2.categoryName}"></td>
|
||||||
|
</tr>
|
||||||
|
</th:block>
|
||||||
|
</th:block>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div class="col-sm">
|
||||||
|
<table class="table table-striped">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th></th>
|
||||||
|
<th>중분류</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr class="text-center depth3Tr">
|
||||||
|
<td colspan="2">상위 분류를<br>선택해주세요</td>
|
||||||
|
</tr>
|
||||||
|
<th:block th:each="depth1:${session.categoryList}">
|
||||||
|
<th:block th:each="depth2:${depth1.childCategoryList}">
|
||||||
|
<th:block th:each="depth3:${depth2.childCategoryList}">
|
||||||
|
<tr class="categoryTr depth3Tr" th:data-parentseq="${depth3.parentSeq}" style="display: none;">
|
||||||
|
<td><input type="checkbox" class="categoryCheckBox" data-depth="3"
|
||||||
|
th:data-categoryseq="${depth3.categorySeq}" th:data-categoryname="${depth3.categoryName}"></td>
|
||||||
|
<td th:text="${depth3.categoryName}"></td>
|
||||||
|
</tr>
|
||||||
|
</th:block>
|
||||||
|
</th:block>
|
||||||
|
</th:block>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div class="col-sm">
|
||||||
|
<table class="table table-striped">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th></th>
|
||||||
|
<th>소분류</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr class="text-center depth4Tr">
|
||||||
|
<td colspan="2">상위 분류를<br>선택해주세요</td>
|
||||||
|
</tr>
|
||||||
|
<th:block th:each="depth1:${session.categoryList}">
|
||||||
|
<th:block th:each="depth2:${depth1.childCategoryList}">
|
||||||
|
<th:block th:each="depth3:${depth2.childCategoryList}">
|
||||||
|
<th:block th:each="depth4:${depth3.childCategoryList}">
|
||||||
|
<tr class="categoryTr depth4Tr" th:data-parentseq="${depth4.parentSeq}" style="display: none;">
|
||||||
|
<td><input type="checkbox" class="categoryCheckBox" data-depth="4"
|
||||||
|
th:data-categoryseq="${depth4.categorySeq}" th:data-categoryname="${depth4.categoryName}"></td>
|
||||||
|
<td th:text="${depth4.categoryName}"></td>
|
||||||
|
</tr>
|
||||||
|
</th:block>
|
||||||
|
</th:block>
|
||||||
|
</th:block>
|
||||||
|
</th:block>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row mb-3 justify-content-center">
|
||||||
|
<div class="col-auto"><button class="btn btn-warning" id="categoryUpBtn"><i class="bi bi-caret-up"></i></button> </div>
|
||||||
|
<div class="col-auto"><button class="btn btn-success" id="categoryDownBtn"><i class="bi bi-caret-down"></i></button> </div>
|
||||||
|
</div>
|
||||||
|
<div class="card p-2">
|
||||||
|
<ul class="nav" id="selectedCategoryDiv">
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="modal-footer">
|
||||||
|
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">닫기</button>
|
||||||
|
<button type="button" class="btn btn-primary" id="categorySelectBtn">선택</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</html>
|
</html>
|
||||||
Loading…
Reference in New Issue