XETOWN

호수 공원

XE 사용에 대한 여러가지 정보들을 공유할 수 있습니다.
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

안녕하세요! XE타운 여러분~!?

 

datepicker.jpg

 

게시판 설정 -> 사용자 정의에서 형식을 일자(연월일)로 선택하고

글을 쓰면 위에 스샷처럼 날짜만 선택이 가능합니다.

 

datetimepicker.jpg

 

 

저는 위 스샷과 같이 날짜에 추가적으로 시간 데이터까지 필요하게 되어 별도의 작업을 진행 하였습니다.

 

해당 부분은 코어를 수정하는것 같아.. 만약 해당파일이 수정이되면 다시 패치해줘야 하는 번거로움이 있습니다.

참고 하시고 하는 방법은 아래를 읽어주시기 바랍니다.

 


 

 

우선 필요한 준비물은 jQuery-Timepicker-Addon JavaScript 패키지가 필요 합니다.

 

https://github.com/trentrichardson/jQuery-Timepicker-Addon.git

해당 파일은 위 주소에서 받으시면 됩니다.

 

파일을 받고 압축 파일을 열어보면

 

2016-09-01_124933.jpg

 

위와 같은 파일들을 확인 할 수 있는데 여기서 필요한 파일들은

 

 

2016-09-01_125040.jpg

 

dist 폴더에 있는 

jquery-ui-sliderAccess.js

jquery-ui-timepicker-addon.min.js

jquery-ui-timepicker-addon.min.css

 

파일 3개와

 

2016-09-01_125104.jpg

 

dist -> i18n 폴더안에 

jquery-ui-timepicker-ko.js

파일 1개가 필요 합니다.

 

2016-09-01_125509.jpg

xe설치경로/common/js/plugins/ 로 들어가서

위 파일 4개를 ui.datetimepicker 폴더를 만들어 주시고 넣어 줍니다.

 

2016-09-01_125733.jpg

 

그리고 xe설치경로/common/js/plugins/ui 에 들어가서

jquery-ui.min.js

jquery-ui.min.css

images 폴더

 

2개의 파일과 images 폴더를 복사해서 ui.datetimepicke 폴더에 넣어 줍니다.

 

2016-09-01_130037.jpg

 

그러면 최종적으로 ui.datetimepicke 폴더에는 위와 같이 파일들이 모여 있겠죠?

마지막으로 파일 하나를 더 추가해줘야하는데 바로

 

plugin.load

파일을 만들고 그 파일에 

jquery-ui.min.js
jquery-ui.min.css
jquery-ui-sliderAccess.js
jquery-ui-timepicker-addon.min.css
jquery-ui-timepicker-addon.min.js
jquery-ui-timepicker-ko.js

라고 내용을 적어주시고 저장해주시기 바랍니다.

 

그러면 timepicker를 사용할 준비는 끝났습니다.

 

// 귀찮으신 분들은 구글 드라이브에 파일을 올렸으니 받아서 해당 경로에 압축을 풀고 넣어주세요 (링크)

 

 

이제는 소스를 약간 수정해야 합니다.

 

2016-09-01_130708.jpg

 xe설치경로/classes/extravar/Extravar.class.php  수정

 

case 'date' :
   //return zdate($value, "Y-m-d");
   return zdate($value, "Y-m-d H:i:s");

 

위 경로에 case 'date' :

부분을 기본 return zdate($value, "Y-m-d"); 는 주석 처리 해주시고 위와같이 변경해주세요

 

case 'date' :
// datepicker javascript plugin load
// Context::loadJavascriptPlugin('ui.datepicker');
// $buff[] = '<input type="hidden" name="' . $column_name . '" value="' . $value . '" />'; 
// $buff[] = '<input type="text" id="date_' . $column_name . '" value="' . zdate($value, 'Y-m-d H:i:s') . '" class="date" />';
// $buff[] = '<input type="button" value="' . lang('cmd_delete') . '" class="btn" id="dateRemover_' . $column_name . '" />';
// $buff[] = '<script type="text/javascript">';
// $buff[] = '//<![CDATA[';
// $buff[] = '(function($){';
// $buff[] = '$(function(){';
// $buff[] = '  var option = { dateFormat: "yy-mm-dd", changeMonth:true, changeYear:true, gotoCurrent:false, yearRange:\'-100:+10\', onSelect:function(){';
// $buff[] = '    $(this).prev(\'input[type="hidden"]\').val(this.value.replace(/-/g,""))}';
// $buff[] = '  };';
// $buff[] = '  $.extend(option,$.datepicker.regional[\'' . Context::getLangType() . '\']);';
// $buff[] = '  $("#date_' . $column_name . '").datepicker(option);';
// $buff[] = '  $("#dateRemover_' . $column_name . '").click(function(){';
// $buff[] = '    $(this).siblings("input").val("");';
// $buff[] = '    return false;';
// $buff[] = '  })';
// $buff[] = '});';
// $buff[] = '})(jQuery);';
// $buff[] = '//]]>';
// $buff[] = '</script>';
Context::loadJavascriptPlugin('ui.datetimepicker');
$buff[] = '<input type="hidden" name="' . $column_name . '" value="' . $value . '" />'; 
$buff[] =  '<input type="text" id="date_' . $column_name . '" value="' . zdate($value, 'Y-m-d H:i:s') . '" class="date" />';
$buff[] =  '<input type="button" value="' . lang('cmd_delete') . '" class="btn" id="dateRemover_' . $column_name . '" />';
$buff[] =  '<script type="text/javascript">';
$buff[] = '//<![CDATA[';
$buff[] =  '(function($){';
$buff[] =  '$(function(){';
$buff[] =  '  var option = { timeFormat: "HH:mm:ss", changeMonth:true, changeYear:true, gotoCurrent:true, yearRange:\'-100:+10\',  onSelect:function(){';
$buff[] =  '    $(this).prev(\'input[type="hidden"]\').val(this.value.replace(/\D/g,""))}';
$buff[] =  '  };';
$buff[] =  '  $("#date_' . $column_name . '").datetimepicker(option);';
$buff[] =  '  $("#dateRemover_' . $column_name . '").click(function(){';
$buff[] =  '    $(this).siblings("input").val("");';
$buff[] =  '    return false;';
$buff[] =  '  })';
$buff[] =  '});';
$buff[] =  '})(jQuery);';
$buff[] = '//]]>';
$buff[] = '</script>';
break;

 

그리고 위와 같이

Context::loadJavascriptPlugin('ui.datepicker'); 부분을 컨트롤+F 로 찾아서

기존 datepicker 부분을 datetimepicker로 변경해 줍니다.

 

그러면 사용자정의에서 날짜와 시간을 선택 할 수 있습니다.

 

 

 

 

 

  • profile
    구름이 2016.09.01 16:08:58
    좋은팁 감사드립니다~!
  • profile
    윤삼 2016.09.01 19:18:49
    생각지도 못해봤던 팁이네요. 감사합니다~
  • profile
    데버 2016.09.06 09:57:49
    웹호스팅 받는 홈피에서도 사용 가능한 거인가요?
  • profile
    Sunup 2016.09.06 13:16:10
    넵 ftp로 파일 업로드 수정만 하시면 가능 합니다~!
  • ?
    가이더 2017.02.11 17:24:43
    왜 저는 똑같이 했는데도 안되는지 모르겠습니다.

List of Articles
번호 분류 제목 글쓴이 날짜
화제의 글 자료공유 스케치북 게시판용 서명 애드온 v0.1 10 file ExtendKR 2017.03.11
4863 질문/답변 스케치북 게시판 아이콘 나오지 않네요 file hellomond 2017.03.15
4862 질문/답변 내가 올린 이미지 불러오는 갤러리 위젯 KiMoHwang 2017.03.15
4861 질문/답변 통계 자료가 부족합니다 뜹니다. 민규 2017.03.15
4860 질문/답변 1.8.34에서 게시글 관리권한 2 휘즈 2017.03.15
4859 질문/답변 CMS 어디들 이용하시나요 ? 6 웹지기 2017.03.15
4858 질문/답변 프로필 이미지를 불러오고 싶습니다. 3 웹지기 2017.03.15
4857 질문/답변 특정한 게시판의 태그를 불러오려 합니다. 3 웹지기 2017.03.15
4856 질문/답변 곰곰히 생각해보니까 폰트 말이죠 3 socialskyo 2017.03.15
4855 질문/답변 XE타운에서 아이템 장터랑 포인트 마켓은 어느분이 제작하셨나요? 1 대한천자 2017.03.15
4854 질문/답변 Doorweb 님 청와통닭 배포용 레이아웃을 쓰고 있는데요. 2 file 리피 2017.03.15
4853 질문/답변 홈페이지 게시판에서 내용부분이 안뜨네요... file YongwonKim 2017.03.15
4852 질문/답변 데이터 이전후 이미지 경로 문제 똑띠 2017.03.15
4851 질문/답변 누리고 다음 업데이트 언제쯤일까요? 6 xe왕초보 2017.03.15
4850 질문/답변 슬라이드 위젯 사용시 메뉴가 가려져요 2 file enroot 2017.03.15
4849 질문/답변 DB 테이블 프리픽스 한번에 바꾸는 쿼리문 알려주세요;; 2 file 이온디 2017.03.15
4848 질문/답변 사이트를 접속하기전에 확인절차를 통한 후 접속을 할수있게 가능한가요? 2 라그릿 2017.03.15
4847 질문/답변 위젯 설치 후 뜨지 않는 이유가 뭘까요? 5 file 비누 2017.03.15
4846 질문/답변 애드온에서 위젯코드를 출력해줄 수는 없나요 ?? 웹지기 2017.03.15
4845 질문/답변 div class 가운데 정렬 방법? 3 Chronos 2017.03.15
4844 질문/답변 알림센터 모바일에서 위치 2 숨가빠 2017.03.15
Board Pagination Prev 1 ... 3 4 5 6 7 8 9 10 11 12 ... 251 Next
/ 251
위로
서버에 요청 중입니다. 잠시만 기다려 주십시오...