';
return str;
}
function m_row_start_top(padding='10') {
return m_row_start(padding, 'top');
}
function m_row_start_color(padding='10', align='center', color='') {
var str = '
';
return str;
}
function m_row_start_color2(padding='10', align='center') {
var str = '
';
return str;
}
function m_row_end() {
var str = '
';
return str;
}
//border
function m_col(w, h, align='left') {
var str = '
';
str += h
str += '
';
return str
}
function m_col2(w, h, align='left') {
var str = '
';
str += h
str += '
';
return str
}
function m_button_group(h) {
var str = '
';
str += h
str += '
';
return str;
}
function m_button(id, text, data) {
var str = '
';
return str;
}
function m_button2(id, text, data, outline_color) {
var str = '
';
return str;
}
function m_hr(margin='5') {
var str = '
';
return str;
}
function m_hr_black() {
var str = '
';
return str;
}
// 체크박스는 자바로 하면 on/off 스크립트가 안먹힘.
function m_tab_head(name, active) {
if (active) {
var str = '
'+name+'';
} else {
var str = '
'+name+'';
}
return str;
}
function m_tab_content(name, content, active) {
if (active) {
var str = '
';
} else {
var str = '
';
}
str += content;
str += '
'
return str;
}
function m_progress(id, width, label) {
var str = '';
str += '
'
str += '
';
str += '
'+label+'
';
str += '
'
return str;
}
function m_progress2(id, width, label) {
var str = '';
str += '
'
str += '
';
str += '
'+label+'
';
str += '
'
return str;
}
function make_page_html(data) {
str = ' \
\
\
'
document.getElementById("page1").innerHTML = str;
document.getElementById("page2").innerHTML = str;
}
function make_log(key, value, left=2, right=10) {
row = m_col(left, key, aligh='right');
row += m_col(right, value, aligh='left');
return row;
}
///////////////////////////////////////
// UI - 확장설정 - dropdown
///////////////////////////////////////
document.addEventListener("DOMContentLoaded", function(){
/////// Prevent closing from click inside dropdown
document.querySelectorAll('.dropdown-menu').forEach(function(element){
element.addEventListener('click', function (e) {
e.stopPropagation();
});
})
// make it as accordion for smaller screens
if (window.innerWidth < 992) {
// close all inner dropdowns when parent is closed
document.querySelectorAll('.navbar .dropdown').forEach(function(everydropdown){
everydropdown.addEventListener('hidden.bs.dropdown', function () {
// after dropdown is hidden, then find all submenus
this.querySelectorAll('.submenu').forEach(function(everysubmenu){
// hide every submenu as well
everysubmenu.style.display = 'none';
});
})
});
document.querySelectorAll('.dropdown-menu a').forEach(function(element){
element.addEventListener('click', function (e) {
let nextEl = this.nextElementSibling;
if(nextEl && nextEl.classList.contains('submenu')) {
// prevent opening link if link needs to open dropdown
e.preventDefault();
console.log(nextEl);
if(nextEl.style.display == 'block'){
nextEl.style.display = 'none';
} else {
nextEl.style.display = 'block';
}
}
});
})
}
// end if innerWidth
});
// DOMContentLoaded end
///////////////////////////////////////