음악파일 퍼블리싱 적용중-1

dev_bert
snut97 3 years ago
parent 915f89851d
commit c92b459750

@ -103,7 +103,8 @@
,REPLACE(append_src_img_file.mt_file_nm, '/cdn001/', '') AS append_src_img_file_nm
,REPLACE(append_300_img_file.mt_file_local_url, '/cdn001/', '') AS append_300_img_file_url
,REPLACE(append_300_img_file.mt_file_nm, '/cdn001/', '') AS append_300_img_file_nm
,DATE_FORMAT(d_day, '%Y') as d_day_year
,DATE_FORMAT(d_day, '%m') as d_day_month
,ifnull(datediff(d_day, now()), -1) as diff_d_day
FROM
(

@ -7,13 +7,13 @@
<div class="wrap">
<header class="header_wrapper">
<a href="javascript:back.return_url()" class="side_Lbtn hidden pre_btn">이전으로</a>
<h1 class="header_title">아 목록</h1>
<h1 class="header_title">아 목록</h1>
<a href="#" class="side_Rbtn hidden"></a>
</header>
<main class="m_list_member_child">
<div class="child_wrap" >
<h3 class="w_title">
<span class="blue_tit">${model['lm_child']?size!0}</span>명
<span class="blue_tit">${model['lm_child']?size!0}</span>명
</h3>
<div id="sortable" class="child_list_box" >
<#-- 등록된 아이가 있을 경우-->
@ -65,7 +65,7 @@
</#if>
<div class="m_set_account_btn">
<a href="view_bf_family_baby.do?return_url=list_bf_family_baby" class="child_add">
를 추가해주세요<span class="add_icon hidden">추가</span>
를 추가해주세요<span class="add_icon hidden">추가</span>
</a>
</div>

@ -90,29 +90,39 @@
<#if item['diff_d_day'] gt item['day100'] || item['diff_d_day'] lt 0>
100일 D-${(item['day100'])!}일,${item['day100date']!}
<#elseif item['diff_d_day'] gt 0>
${(item['d_title'])!} D-${(item['diff_d_day'])!}일,${item['d_day']!}
<a style='color:white' href="${URL_ROOT}/m/member_env/setting_env_viewnm.do?return_url=setting&view_nm=view_d_day&viewYear=${item['d_day_year']}&viewMonth=${item['d_day_month']}">
${(item['d_title'])!} D-${(item['diff_d_day'])!}일,${item['d_day']!}
</a>
</#if>
<#elseif item['day200'] gt 0>
<#if item['diff_d_day'] gt item['day200'] || item['diff_d_day'] lt 0>
200일 D-${(item['day200'])!}일,${item['day200date']!}
<#elseif item['diff_d_day'] gt 0>
${(item['d_title'])!} D-${(item['diff_d_day'])!}일,${item['d_day']!}
<a style='color:white' href="${URL_ROOT}/m/member_env/setting_env_viewnm.do?return_url=setting&view_nm=view_d_day&viewYear=${item['d_day_year']}&viewMonth=${item['d_day_month']}">
${(item['d_title'])!} D-${(item['diff_d_day'])!}일,${item['d_day']!}
</a>
</#if>
<#elseif item['day300'] gt 0>
<#if item['diff_d_day'] gt item['day300'] || item['diff_d_day'] lt 0>
300일 D-${(item['day300'])!}일,${item['day300date']!}
<#elseif item['diff_d_day'] gt 0>
${(item['d_title'])!} D-${(item['diff_d_day'])!}일,${item['d_day']!}
<a style='color:white' href="${URL_ROOT}/m/member_env/setting_env_viewnm.do?return_url=setting&view_nm=view_d_day&viewYear=${item['d_day_year']}&viewMonth=${item['d_day_month']}">
${(item['d_title'])!} D-${(item['diff_d_day'])!}일,${item['d_day']!}
</a>
</#if>
<#elseif item['day365'] gt 0>
<#if item['diff_d_day'] gt item['day365'] || item['diff_d_day'] lt 0>
첫돌 D-${(item['day365'])!}일,${item['day365date']!}
<#elseif item['diff_d_day'] gt 0>
${(item['d_title'])!} D-${(item['diff_d_day'])!}일,${item['d_day']!}
<a style='color:white' href="${URL_ROOT}/m/member_env/setting_env_viewnm.do?return_url=setting&view_nm=view_d_day&viewYear=${item['d_day_year']}&viewMonth=${item['d_day_month']}">
${(item['d_title'])!} D-${(item['diff_d_day'])!}일,${item['d_day']!}
</a>
</#if>
<#elseif item['day365'] lt 0>
<#if item['diff_d_day'] gt 0>
${(item['d_title'])!} D-${(item['diff_d_day'])!}일,${item['d_day']!}
<a style='color:white' href="${URL_ROOT}/m/member_env/setting_env_viewnm.do?return_url=setting&view_nm=view_d_day&viewYear=${item['d_day_year']}&viewMonth=${item['d_day_month']}">
${(item['d_title'])!} D-${(item['diff_d_day'])!}일,${item['d_day']!}
</a>
<#else>
설정된 D-Day가 없습니다.
</#if>

@ -15,7 +15,7 @@
<a href="${URL_ROOT}/m/member_env/setting_nm.do?return_url=setting&view_nm=view_set_account" class="more_item">계정 관리</a>
</div>
<div class="list_item">
<a href="${URL_ROOT}/m/bf_family_baby/list_bf_family_baby.do?return_url=setting" class="more_item">아이 정보 입력/변경</a>
<a href="${URL_ROOT}/m/bf_family_baby/list_bf_family_baby.do?return_url=setting" class="more_item">아기 정보 변경</a>
</div>
</div>

@ -1,73 +0,0 @@
<#include "/m/include/index_top.ftl">
<#assign profile_path = ""><#-- 프로필 이미지 -->
<#if Session.rm_member['profile_path']! != ''>
<#if Session.rm_member['profile_path']?index_of("http") == 0>
<#assign profile_path = Session.rm_member['profile_path']>
<#else>
<#assign profile_path = URL_ROOT + Session.rm_member['profile_path']>
</#if>
<#else>
<#assign profile_path = URL_STATIC_ROOT + "/m/img/setting/account_pic.png">
</#if>
<body>
<div class="wrap">
<header class="header_wrapper">
<a href="javascript:back.return_url()" class="side_Lbtn hidden pre_btn">이전으로</a>
<h1 class="header_title">계정관리</h1>
<a href="#" class="side_Rbtn hidden"></a>
</header>
<main class="m_set_account">
<div class="account_header">
<div class="p_header_pic">
<div class="pic hidden" style="background-image:url(${profile_path})">프로필 사진</div>
<div class="name_tit">${Session.rm_member['NAME']!}</div>
</div>
</div>
<div class="set_account_cont profile_wrap">
<p class="set_account_info">
※ 휴대전화 기기를 교체하거나 번호를 변경하여도
아이키매니저에 등록해놓은 휴대전화 번호로 로그인 하시면
이전에 사용하였던 아이목록, 측정기록 등을 다시 불러올 수 있습니다.
</p>
<div class="set_account_list">
<a href="${URL_ROOT}/m/member_env/setting_nm.do?view_nm=view_set_account_name&return_url=view_set_account" class="list_item">
<span class="emphasis_tit">닉네임</span> 변경
</a>
<a href="javascript:fncGoSetPwd();" class="list_item">
<span class="emphasis_tit">비밀번호</span> 변경
</a>
<a href="${URL_ROOT}/m/member_env/setting_nm.do?view_nm=view_set_account_phone&return_url=view_set_account" class="list_item">
<span class="emphasis_tit">휴대전화 번호</span> 변경
</a>
<#-- <a href="${URL_ROOT}/m/member_env/setting_nm.do?view_nm=view_set_account_mail&return_url=view_set_account" class="list_item">-->
<#-- <span class="emphasis_tit">이메일</span> 변경-->
<#-- </a>-->
<a href="${URL_ROOT}/m/member_env/setting_nm.do?view_nm=view_set_account_memberleave&return_url=view_set_account" class="list_item">
<span class="emphasis_tit">계정</span> 삭제
</a>
</div>
<a href="${URL_ROOT}/m/login/logout.do"><button type="button" class="btns blue_btn logout_btn">로그아웃</button></a>
</div>
<#include "/m/include/index_bottom_info.ftl">
</main>
</div>
<#include "/m/member_env/include_return_url.ftl">
<script>
var socialType = "${Session.rm_member['social_type']!}";
function fncGoSetPwd() {
if(socialType == "") {
location.href = "${URL_ROOT}/m/member_env/setting_nm.do?view_nm=view_set_account_pw&return_url=view_set_account";
} else {
Swal.fire({text: socialType + ' 소셜 로그인 회원은 해당 소셜 사이트에서 비밀번호를 변경할수 있습니다.'});
}
}
</script>
</body>
<#include "/m/include/index_bottom.ftl">

@ -1,218 +0,0 @@
<#include "/m/include/index_top.ftl">
<body class="bg_setting">
<div class="wrap">
<header class="header_wrapper">
<a href="javascript:back.return_url()" class="side_Lbtn hidden pre_btn">이전으로</a>
<h1 class="header_title">계정관리</h1>
<a href="#" class="side_Rbtn hidden"></a>
</header>
<main class="m_set_account m_set_account_name">
<form name="frmMember" id="frmMember" method="POST">
<input type="hidden" name="is_test" id="is_test" value="N" />
<input type="hidden" name="s_no" id="s_no" value="" />
<input type="hidden" name="sms_use_cd_no" id="sms_use_cd_no" value="SMS_USE_CODE_UPDATE"/>
<input type="hidden" name="check_status" id="check_status" value=""/>
<h1 class="l_title">변경하실 휴대전화 번호를 입력해주세요</h1>
<div class="l_list">
<div class="p_list_item p_border_box">
<div class="p_input_box">
<input type="number" id="phone_num" name="phone_num" class="required" data-tit="휴대전화번호" placeholder="'-'없이 번호만 입력" >
</div>
</div>
<div class="m_set_account_btn"><button type="button" id="" name="" class="btns blue_btn" onclick="auth.ajax_send_sms()">인증요청</button></div>
</div>
<div class="l_list">
<p class="l_info">※ 휴대폰으로 전송된 인증번호를 입력해주세요.</p>
<div class="timer_box">인증 유효 시간 <span id="id_limit_time" class="timer emphasis_tit">02:59</span></div>
<div class="p_list_item p_border_box">
<div class="p_input_box">
<#-- 인증 문자 발송 후 required 클래스 추가 -->
<input type="text" id="check_num" name="check_num" class="" data-tit="인증번호" placeholder="인증번호 입력">
</div>
</div>
<div class="m_set_account_btn"><button type="submit" id="id_check_num" name="" class="btns grey_btn">인증확인</button></div>
</div>
</form>
<#include "/m/include/index_bottom_info.ftl">
</main>
</div>
<script>
var member = {
init: function(){
$('#frmMember').on('submit',function(e){
if(!auth.timer_check){
e.preventDefault()
return;
}
if($('#check_status').val()!='Y'){
e.preventDefault()
auth.ajax_confirm_sms()
return;
}
e.preventDefault()
return;
})
},
ajax_update_sn_member_phone: function(){
var data = $('#frmMember').serialize()
$.ajax({
url:'${URL_ROOT}/m/member_env/ajax_update_member_phone.do?1=1',
type:'post',
data: data,
dataType:'json',
error:function(request,status,error){
Swal.fire({text: '오류가 발생했습니다'})
auth.is_loading = false
},
success:function(result){
console.log(result)
var RESULT = result.RESULT
if(RESULT == 0){ //0:RESULT_SUCCESS
Swal.fire({text: '변경되었습니다'}).then((result) => { location.reload(); })
}else if(RESULT == 5){ //5: RESULT_CUSTOM_MSG
Swal.fire({html: result.MSG})
}else{
Swal.fire({text: '변경에 실패했습니다'})
}
},
})
},
}
var auth = {
timer_check : null,
init:function(){
},
start_timer : function() {
this.stop_timer()
$('#id_check_num').addClass('blue_btn')
$('#id_check_num').removeClass('grey_btn')
this.timer_check = setInterval(function() {
if(s_time <= 0){
this.stop_timer()
Swal.fire({text: '인증 시간이 만료되었습니다'})
}else{
var min = parseInt((--s_time%3600)/60)
var sec = s_time%60
var remain_time = (min < 10? "0" + min : min) + ":" + (sec < 10 ? "0" + sec : sec)
$('#id_limit_time').text(remain_time)
}
}.bind(this), 1000)
},
stop_timer : function(){
s_time = 180
clearInterval(this.timer_check)
this.is_loading = false
this.timer_check = null
// 버튼 끄기
$('#id_check_num').addClass('grey_btn')
$('#id_check_num').removeClass('blue_btn')
// send_sms 결과 초기화
$('#s_no').val('')
$('#check_status').val('')
$('#check_num').val('')
$('#check_num').removeClass('required')
},
ajax_send_sms: function(){
if (!SNValidator.validateWithAlert('#frmMember')) {
this.stop_timer()
return;
} else if(!SNUtil.regPh.test($("#phone_num").val())){
this.stop_timer()
Swal.fire({text: '올바른 휴대전화 번호를 입력하세요'})
return;
} else {
this.stop_timer()
}
var data = $('#frmMember').serialize()
$.ajax({
url:'${URL_ROOT}/api/sms/send_sms.do?1=1',
type:'post',
data: data,
dataType:'json',
error:function(request,status,error){
this.stop_timer()
Swal.fire({text: '오류가 발생했습니다'})
}.bind(this),
success:function(result){
console.log(result)
this.stop_timer()
var RESULT = result.RESULT
var RESULT_MSG = result.RESULT_MSG
var s_no = result.s_no
if(result.RESULT_CODE == "401"){ //401: member is being
this.stop_timer();
Swal.fire({text: result.sms_msg})
}else if(result.RESULT == 'true'){
// confirm_sms DATA세팅
this.start_timer();
$('#s_no').val(s_no);
$('#check_num').addClass('required')
Swal.fire({text: '발송되었습니다'})
}else{
this.stop_timer();
Swal.fire({text: '오류가 발생했습니다'})
}
}.bind(this),
})
},
ajax_confirm_sms: function(){
if (!SNValidator.validateWithAlert('#frmMember')) {
return;
}
var data = $('#frmMember').serialize()
$.ajax({
url:'${URL_ROOT}/api/sms/confirm_sms.do?1=1',
type:'post',
data: data,
dataType:'json',
error:function(request,status,error){
Swal.fire({text: '오류가 발생했습니다'})
}.bind(this),
success:function(result){
console.log(result)
if(result.RESULT == 'true' && result.check_status == 'Y'){
// confirm_sms DATA세팅
$('#check_status').val(result.check_status)
//완료처리
member.ajax_update_sn_member_phone()
}else{
Swal.fire({text: '올바른 인증번호를 입력하세요'})
}
}.bind(this),
})
}
}
$(function(){
auth.init()
member.init()
})
</script>
<#include "/m/member_env/include_return_url.ftl">
</body>
<#include "/m/include/index_bottom.ftl">

@ -10,48 +10,48 @@
<h1 class="header_title">음악 설정</h1>
<a href="#" class="side_Rbtn hidden"></a>
</header>
<main class="m_set_lighting_time">
<main class="m_set_recode_order favorite_word">
<div class="cont">
<form id="frmUpdate" name="frmUpdate" method="post" ecntype="multipart/form-data" onsubmit="return false">
<form id="frmUpdate" name="frmUpdate" method="post" onsubmit="return false">
<input type="hidden" id="delList" name="delList" value="">
<input type="hidden" id="muteYnIdxList" name="muteYnIdxList" value="">
<input type="hidden" id="muteYnList" name="muteYnList" value="">
<div class="set_list_wrap">
<#list model['music_list'] as item>
<div class="list_item item_order">
<input type="hidden" name="music_list" value="/bf/upload/${item['music_file_path']!}">
<div>${item['music_name']!}</div>
<div class="order_button">
<button key="${item['idx']!}" base="${item['base_yn']}" onclick="fncRemove(this)" type="button">
<img style="width:18px;height:18px" src="../img/setting/delete_ico.png"/>
</button>&nbsp;
<#if item['mute_yn'] == 'N'>
<button type="button" name="mute_yn" value="N" key="${item['idx']!}" >
<img style="width:18px;height:18px" src="../img/nutrition/ico_sound_on_black_18.png" alt="" onclick="fncMute(this);">
</button>&nbsp;
</#if>
<#if item['mute_yn'] == 'Y'>
<button type="button" name="mute_yn" value="Y" key="${item['idx']!}" >
<img style="width:18px;height:18px" src="../img/nutrition/ico_sound_off_black_18.png" alt="" onclick="fncMute(this);">
</button>
</#if>
</div>
</div>
</#list>
<div class="list_cont" id="list_cont">
<div id="word_list">
<div class="set_list_wrap list">
<#list model['music_list'] as item>
<div name="list_item" class="item_order flex_box">
<input type="hidden" name="music_list" value="/bf/upload/${item['music_file_path']!}">
<div>${item['music_name']!}</div>
<div class='btn_cont'>
<#if item['mute_yn'] == 'N'>
<input class="mute" key="${item['idx']!}" type="hidden" name="mute_yn" value="Y">
<div class="btn" onclick="fncMute(this);">음소거</div>
</#if>
<#if item['mute_yn'] == 'Y'>
<input class="mute" key="${item['idx']!}" type="hidden" name="mute_yn" value="N">
<div class="btn" onclick="fncMute(this);">음소거해제</div>
</#if>
<#if item['base_yn'] == 'N'>
<input class="del" type="hidden" value="${item['idx']!}">
<div class="btn" onclick="fncRemove(this);">삭제</div>
</#if>
</div>
</div>
</#list>
</div>
</div>
</div>
<div class="item_add" onclick="fncAddItem()">
<!-- <input id="file" type = "file" name="file" accept = ".mp3"> -->
<img src="../img/setting/add_circle_ico.png" />
<div class="list_cont01">
<div class="item_add" onclick="fncAddItem(this)"><img src="../img/setting/add_circle_ico.png" /></div>
</div>
<audio src="/m/" controls id="audio_control" style="width: 100%" onended="fncNextPlay()"></audio>
<div class="m_set_description">
*음악은 랜덤으로 재생됩니다.<br>
*원하는 음악을 추가하실 수 있습니다. (최대 5개 / MP3파일만 지원)<br>
*추가하신 음악은 삭제 및 수정이 가능합니다<br>
*원하지 않은 음악은 삭제 버튼을 눌러 재생 목록에서 제거할 수 있습니다<br>
<div class="info">
* 텍스트를 눌러 표현을 수정하거나 버튼을 눌러 삭제할 수 있습니다.
</div>
<div class="m_set_account_btn"><button type="button" id="" name="" onclick="fncSave()" class="btns blue_btn">저장</button></div>
<button type="submit" onclick="fncSave()" id="" name="" class="btns blue_btn save">저장</button>
</form>
</div>
</main>
@ -78,14 +78,14 @@
function fncMute(e) {
// console.log($(e).parent().attr("name") + "," + $(e).parent().attr("value"));
var type = $(e).parent().attr("value");
var type = $(e).parent().children('.mute').val();
if(type == "Y") {
$(e).attr("src", "../img/nutrition/ico_sound_on_black_18.png")
$(e).parent().attr("value", "N")
$(e).text("음소거해제");
$(e).parent().children('.mute').val("N");
} else {
$(e).attr("src", "../img/nutrition/ico_sound_off_black_18.png")
$(e).parent().attr("value", "Y")
$(e).text("음소거");
$(e).parent().children('.mute').val("Y");
}
// muteYnIdxList += $(e).attr("key") + ",";
}
@ -132,25 +132,16 @@
});
}
$(function(){
env.init()
})
function fncModify(e) {
$(e).parent().find(".fileSpan").show();
}
function fncRemove(e) {
if($(e).attr("base") == "N") {
delList += $(e).attr("key") + ",";
$(e).parent().parent().remove();
var key = $(e).parent().children('.del').val();
delList += key + ",";
$(e).parent().parent().remove();
$("#delList").val(delList);
} else {
Swal.fire({text: '기본 음악파일은 삭제가 불가능 합니다.'});
}
$("#delList").val(delList);
}
@ -182,17 +173,15 @@
return;
}
$(".set_list_wrap").append("<div class='list_item item_order'>" +
"<div><input type='file' onchange='fn_M_my_fileSave(this);' name='file'></div>" +
"<div class='order_button'>" +
"<button type='button' base='N' onclick='fncRemove(this)'>" +
"<img style='width:18px;height:18px' src='../img/setting/delete_ico.png'/>" +
"</button>&nbsp;" +
"<button type='button' name='mute_yn' value='N'>" +
"<img style='width:18px;height:18px' src='../img/nutrition/ico_sound_on_black_18.png' alt='' onclick='fncMute(this);'>" +
"</button>" +
"</div>" +
"</div>")
$(".list").append(
"<div name='list_item' class='item_order flex_box'>" +
" <div><input type='file' accept='audio/*' onchange='fn_M_my_fileSave(this);' name='file'></div>" +
" <div class='btn_cont'>" +
" <div class='btn' onclick='fncMute(this);'>음소거</div>" +
" <div class='btn' onclick='fncRemove(this);'>삭제</div>" +
" </div>" +
"</div>"
);
}
// function fncRemove(e) {

@ -0,0 +1,206 @@
<!DOCTYPE html>
<html lang="ko">
<#include "/m/include/index_top.ftl">
<link rel="stylesheet" href="../css/style.css">
<body>
<div class="wrap">
<header class="header_wrapper">
<a href="javascript:history.back();" class="side_Lbtn hidden pre_btn">이전으로</a>
<h1 class="header_title">음악 설정</h1>
<a href="#" class="side_Rbtn hidden"></a>
</header>
<main class="m_set_lighting_time">
<div class="cont">
<form id="frmUpdate" name="frmUpdate" method="post" ecntype="multipart/form-data" onsubmit="return false">
<input type="hidden" id="delList" name="delList" value="">
<input type="hidden" id="muteYnIdxList" name="muteYnIdxList" value="">
<input type="hidden" id="muteYnList" name="muteYnList" value="">
<div class="set_list_wrap">
<#list model['music_list'] as item>
<div class="list_item item_order">
<input type="hidden" name="music_list" value="/bf/upload/${item['music_file_path']!}">
<div>${item['music_name']!}</div>
<div class="order_button">
<button key="${item['idx']!}" base="${item['base_yn']}" onclick="fncRemove(this)" type="button">
<img style="width:18px;height:18px" src="../img/setting/delete_ico.png"/>
</button>&nbsp;
<#if item['mute_yn'] == 'N'>
<button type="button" name="mute_yn" value="N" key="${item['idx']!}" >
<img style="width:18px;height:18px" src="../img/nutrition/ico_sound_on_black_18.png" alt="" onclick="fncMute(this);">
</button>&nbsp;
</#if>
<#if item['mute_yn'] == 'Y'>
<button type="button" name="mute_yn" value="Y" key="${item['idx']!}" >
<img style="width:18px;height:18px" src="../img/nutrition/ico_sound_off_black_18.png" alt="" onclick="fncMute(this);">
</button>
</#if>
</div>
</div>
</#list>
</div>
<div class="item_add" onclick="fncAddItem()">
<!-- <input id="file" type = "file" name="file" accept = ".mp3"> -->
<img src="../img/setting/add_circle_ico.png" />
</div>
<audio src="/m/" controls id="audio_control" style="width: 100%" onended="fncNextPlay()"></audio>
<div class="m_set_description">
*음악은 랜덤으로 재생됩니다.<br>
*원하는 음악을 추가하실 수 있습니다. (최대 5개 / MP3파일만 지원)<br>
*추가하신 음악은 삭제 및 수정이 가능합니다<br>
*원하지 않은 음악은 삭제 버튼을 눌러 재생 목록에서 제거할 수 있습니다<br>
</div>
<div class="m_set_account_btn"><button type="button" id="" name="" onclick="fncSave()" class="btns blue_btn">저장</button></div>
</form>
</div>
</main>
</div>
<script>
var delList = "";
// var muteYnIdxList = "";
var music_idx = 0;
$("#audio_control").attr("src", $("input[name='music_list']").eq(0).val());
function fncNextPlay() {
$("#audio_control").get(0).src = $("input[name='music_list']").eq(music_idx).val();
$("#audio_control").get(0).play();
if( music_idx >= $("input[name='music_list']").length-1) {
music_idx = 0;
} else {
music_idx++;
}
}
function fncMute(e) {
// console.log($(e).parent().attr("name") + "," + $(e).parent().attr("value"));
var type = $(e).parent().attr("value");
if(type == "Y") {
$(e).attr("src", "../img/nutrition/ico_sound_on_black_18.png")
$(e).parent().attr("value", "N")
} else {
$(e).attr("src", "../img/nutrition/ico_sound_off_black_18.png")
$(e).parent().attr("value", "Y")
}
// muteYnIdxList += $(e).attr("key") + ",";
}
function fncSave() {
var muteYnList = ""; //음소거 YN 값 목록
var muteYnIdxList = ""; //음소거 IDX 목록
var delList = $("#delList").val();
//음소거여부 yn목록
$("button[name='mute_yn']").each(function(index, item){
muteYnList += $(item).attr("value") + ",";
muteYnIdxList += $(item).attr("key") + ",";
});
//삭제키
if(delList.length > 0) {
$("#delList").val( delList.substring(0, delList.length-1) );
}
//음소거키
if(muteYnIdxList.length > 0) {
$("#muteYnIdxList").val( muteYnIdxList.substring(0, muteYnIdxList.length-1) );
}
//음소거 Value값
if(muteYnList.length > 0) {
$("#muteYnList").val( muteYnList.substring(0, muteYnList.length-1) );
}
var formData = new FormData($("#frmUpdate")[0]);
$.ajax({
url: "${URL_ROOT}/m/member_env/saveMusicFile.do",
processData: false,
contentType: false,
data: formData,
type: 'POST',
async : false,
success: function(response){
Swal.fire({text: '저장 되었습니다.'}).then((result)=>{ location.reload(); })
// callback(response);
}
});
}
$(function(){
env.init()
})
function fncModify(e) {
$(e).parent().find(".fileSpan").show();
}
function fncRemove(e) {
if($(e).attr("base") == "N") {
delList += $(e).attr("key") + ",";
$(e).parent().parent().remove();
$("#delList").val(delList);
} else {
Swal.fire({text: '기본 음악파일은 삭제가 불가능 합니다.'});
}
}
// 동영상 업로드 파일 DB에 저장하기
function fn_M_my_fileSave(th) {
try {
var name = $(th)[0].files[0].name;
var ext = name.split('.').pop().toLowerCase();
if($.inArray(ext, ['mp3','mp4']) == -1) {
Swal.fire({text: '음약 파일(mp3)을 업로드 해 주세요.'}).then((result)=>{ $(th).parent().remove(); })
return;
}
var size = $(th)[0].files[0].size;
var size2 = Number(size)/(1024*1024);
if(size2 > 7){
Swal.fire({text: '7M 이하 파일을 업로드 해 주세요.'}).then((result)=>{ $(th).parent().remove(); })
return;
}
} catch (e) { console.log(e); }
}
function fncAddItem() {
var size = $("input[name='file']").length + $("input[name='music_list']").length;
if(size >=5) {
Swal.fire({text: '음악파일은 5개까지 설정 가능합니다.'});
return;
}
$(".set_list_wrap").append("<div class='list_item item_order'>" +
"<div><input type='file' onchange='fn_M_my_fileSave(this);' name='file'></div>" +
"<div class='order_button'>" +
"<button type='button' base='N' onclick='fncRemove(this)'>" +
"<img style='width:18px;height:18px' src='../img/setting/delete_ico.png'/>" +
"</button>&nbsp;" +
"<button type='button' name='mute_yn' value='N'>" +
"<img style='width:18px;height:18px' src='../img/nutrition/ico_sound_on_black_18.png' alt='' onclick='fncMute(this);'>" +
"</button>" +
"</div>" +
"</div>")
}
// function fncRemove(e) {
// $(e).parent().parent().remove();
// }
</script>
<#include "/m/member_env/include_return_url.ftl">
</body>
<#include "/m/include/index_bottom.ftl">
</html>
Loading…
Cancel
Save