크로스 캘린더 날짜 설정 직접제어

크로스캘린더 일정등록할때 종료시각을 시작시각보다 과거로 설정이 가능하게 되어있습니다.

이 부분을 막고싶은데 워드프레스상에서 수정하는 방법은 없는것같아서 코드를 직접 수정하려고 합니다 관련 파일 경로나 방법을 알 수 있을까요?

좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
  • 안녕하세요~^^

    KBoard 크로스 캘린더 스킨에서 시작일과 종료일이 같을 경우

    종료시간을 시작시간보다 과거로 설정하지 못하게 하고 싶으신 건지요?

     

    1. FTP로 접속해서 /wp-content/plugins/kboard/skin/사용중인스킨/editor.php 파일에

    아래의 코드를 찾아서

    <input type="text" class="timepicker" name="kboard_option_start_time" maxlength="5" value="<?php echo $content->option->start_time ? $content->option->start_time : date('H:i', strtotime('9:00'))?>" title="<?php echo __('Start Time Setting', 'kboard-cross-calendar')?>">

    아래의 코드로 교체해보세요.

    <input type="text" class="timepicker" name="kboard_option_start_time" maxlength="5" value="<?php echo $content->option->start_time ? $content->option->start_time : date('H:i', strtotime('9:00'))?>" onchange="kboard_set_start_time(this.value)" title="<?php echo __('Start Time Setting', 'kboard-cross-calendar')?>">

    아래의 코드를 찾아서

    <input type="text" class="datepicker" id="kboard_option_end_date" name="kboard_option_end_date" onchange="kboard_end_date_check(this.value)" value="<?php echo $content->option->end_date ? $content->option->end_date : (isset($ymd) ? $ymd : $today)?>" title="<?php echo __('End Date Setting', 'kboard-cross-calendar')?>" readonly>

    아래의 코드로 교체해보세요.

    <input type="text" class="timepicker" name="kboard_option_end_time" maxlength="5" value="<?php echo $content->option->end_time ? $content->option->end_time : date('H:i', strtotime('18:00'))?>" onchange="kboard_set_end_time(this.value)" title="<?php echo __('End Time Setting', 'kboard-cross-calendar')?>">

     

    2. /wp-content/plugins/kboard/skin/사용중인스킨/script.js 파일 하단에

    아래의 코드를 추가해보시겠어요?

    function kboard_set_start_time(start_time){
    	jQuery('input[name="kboard_option_end_time"]').val(start_time);
    }
    
    function kboard_set_end_time(end_time){
    	var start_date = jQuery('input[name="kboard_option_start_date"]').val();
    	var end_date = jQuery('input[name="kboard_option_end_date"]').val();
    	
    	var start_time = jQuery('input[name="kboard_option_start_time"]').val();
    	
    	if(start_date == end_date){
    		if(start_time > end_time){
    			jQuery('input[name="kboard_option_end_time"]').val(start_time);
    			alert('시작일과 종료일이 같은 경우, 종료시간은 시작시간보다 이전으로 설정할 수 없습니다.');
    		}
    	}
    }

    고맙습니다.

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요