PlannerXE123 Q&A 게시판
忽 (소홀히 할 홀)
弱肉强食 약육강식
약한 자는 강한 자에게 먹힘.

늘푸른나무2

밥탱님 안녕하세요,

 

해결 하셨다니 다행입니다.

아래에 "다음시간" 업데이트하는 코드를 작성해 놓았으니 한번 적용 해보시기 바랍니다. (확장변수 9번 = 다음시간 가정)

(참고: 아래 코드는 카테고리명 서울:60분전, 대전:30분전, 대구:30분후, 부산:60분후, 광주:60분후 가정입니다.)

 

1) 위 댓글에 있는 _write_extra_normal.html(V5.10.2) 파일 업데이트를 아래 코드로 대체

(1) 69~70번 라인사이에 아래 붉은색 코드 추가

</select>
 <!--@if($ind_mobile)--><br/><!--@else-->&nbsp;&nbsp;&nbsp;
<!--@endif-->
 {@ $ev_next = $extra_keys[9]->value;}
 다음시간:&nbsp;
<select name="extra_vars9" id="extra_vars9_next"><!--// 다음시간선택-->
<option value=""></option><!--//빈칸-->
<!--@foreach($slt_arr as $key_a => $slt_time)-->
 <option value="{$slt_time}"<!--@if($slt_time == $ev_next)-->selected="selected"<!--@endif-->> {$slt_time}</option>
<!--@endforeach-->
</select>

</p>
{@ echo $extra_keys[7]->desc}

 

(2) 33번 라인을 아래와 같이 변경.

<!--@if($val->idx != 7 && !in_array($val->idx, $nonuse_extra_vars) && $val->idx != 9)--><!--// 시간이 아닐때 -->

 

 

2) write_form.html (V5.10.2) 파일의 289~323 라인을 아래 코드로 대체

 

<!--@else-->
<!--// 시작 종료시간 체크 -->
    {@ $category_list_json= json_encode($category_list);}
<script type='text/javascript'> 
// <![CDATA[ 
    var arr_category = {@ echo $category_list_json}; // $category_list
//console.log(arr_category['1260']['text']);
jQuery(function($){ 
$('#extra_vars7_start').change(function() {
var selected_start_time = $('#extra_vars7_start option:selected').val();
var selected_end_time = $('#extra_vars7_end option:selected').val();
if ( selected_end_time && selected_start_time > selected_end_time ) {
alert('End time is earlier than start time.\n' + '종료시간이 시작시간보다 이릅니다.');
}
    if ($("select[name=category_srl]").val()) {
    getNextTime(selected_start_time);
    }

});
$('#extra_vars7_end' ).change(function() {
var selected_start_time = $('#extra_vars7_start option:selected').val();
var selected_end_time = $('#extra_vars7_end option:selected').val();
if ( selected_start_time && selected_start_time > selected_end_time) {
alert('End time is earlier than start time.\n' + '종료시간이 시작시간보다 이릅니다.');
}
});
    $('select[name=category_srl]').change(function() {
    let selected_start_time = $('#extra_vars7_start option:selected').val();
    if (selected_start_time) {
    getNextTime(selected_start_time);
    }
    });

});
function doDateCheck(fm) {
jQuery(function($){ 
var plan_s_ymd = $('input[name="extra_vars1"]').val();
var plan_e_ymd = $('input[name="extra_vars2"]').val();
if(plan_e_ymd != '' && plan_e_ymd < plan_s_ymd) {
$('#date_extra_vars2').focus();
alert('종료일이 시작일보다 더 빠른날자 입니다.\nEnd date is not earlier than start date.');
return false;
}
procFilter(fm, window.insert);
});
}
    function getNextTime(selected_start_time) {
    jQuery(function($){ 
    let obj_NextbyCategory = { 서울:-60, 대전:-30, 대구:30, 부산:60, 광주:60 };
    let S_time = selected_start_time.split(':');
    let checked_category_srl = $("select[name=category_srl]").val();
    let checked_category_title = arr_category[checked_category_srl]['title'];
    let adj_mm = obj_NextbyCategory[checked_category_title];
    let dt = new Date();
    dt.setHours(S_time[0]*1, (S_time[1]*1 + adj_mm), 0, 0);
    let next_hhmm =  String(dt.getHours()).padStart(2, '0')+":"+String(dt.getMinutes()).padStart(2, '0');
    $('#extra_vars9_next').val(next_hhmm).prop("selected",true);
    });
    }

// ]]> 
</script>
<!--@endif-->

 

감사합니다.

ksc

XE Login