묻고답하기
xe regdate 시간과 time() 시간 비교
2015.02.05 09:24
1일된 게시물에서는 포인트 시스템이 적용되지 않도록 만들기
/**
* @brief The trigger to give points for downloading the file
*/
function triggerDownloadFile(&$obj)
{
// Run only when logged in
$logged_info = Context::get('logged_info');
if(!$logged_info->member_srl) return new Object();
$module_srl = $obj->module_srl;
$member_srl = $logged_info->member_srl;
if(!$module_srl) return new Object();
// Pass if it is your file
if(abs($obj->member_srl) == abs($member_srl)) return new Object();
// Get the point module information
$oModuleModel = getModel('module');
$config = $oModuleModel->getModuleConfig('point');
$module_config = $oModuleModel->getModulePartConfig('point', $module_srl);
// Get the points of the member
$oPointModel = getModel('point');
$cur_point = $oPointModel->getPoint($member_srl, true);
// Get the points
//$point = $module_config['download_file']; 원본소스
//추가시작 1일이상 지나지 않은 게시물에는 포인트 적용하지 않기
//변수선언 시작
$document_srl = $obj->document_srl;
$oDocumentModel = getModel('document');
$oDocument = $oDocumentModel->getDocument($document_srl);
//변수선언 끝
if(ztime($oDocument->get('regdate')) < time()-(60*60*24*1)){
$point = $module_config['download_file'];
}else{
$point = 0;
}
//추가 끝
if(strlen($point) == 0 && !is_int($point)) $point = $config->download_file;
// Increase the point
$cur_point += $point;
$this->setPoint($member_srl,$cur_point);
return new Object();
}
해당 부분을 적용하여도 기간에 관계없이 포인트가 차감되는 문제가 있습니다 ㅠ_ㅠ
아무래도 if(ztime($oDocument->get('regdate')) < time()-(60*60*24*1)){ 부분이 문제
인 것 같은데
odcoumment->get regdate가 201502051232 이런식으로 출력하는 것같고
if(ztime($oDocument->get('regdate')) < time()-(60*60*24*1)){
201502051232 < (time() 1970년 1월 1일 부터 초단위로 변환) - (1일: 86,400초)
이렇게 되면 둘이 비교하는 값이 틀려서 적용이 안되는 것 같습니다.
하나는 초기준이고 regdate는 년단위 표시로 나타나는데
제가 생각하고 있는게 맞는 건가요?
댓글 8
-
꾸링
2015.02.05 12:48
우선 해결은 안됬지만, 답변이 달린 것 자체만으로도 감사합니다 ㅠ_ㅠ
if ($oDocument->get('regdate') < date('YmdHis', strtotime('+1 days')) 이렇게 해버리면
항상 True가 나와버릴 것 같습니다.
ex) 2월 1일 작성게시물 < 오늘 날짜 2월 5일 +1 = 2월 6일
ex2) 2월 5일 작성 게시물 < 오늘 날짜 2월 5일 +1 =2월 6일
항상 참이 되어버립니다.
-
꾸링
2015.02.05 12:51
if($oDocument->get('regdate') < date('YmdHis', strtotime('-1 days'))){
-1days로 놓고
바로 아래에
$point = $module_config['download_file'];
}else{
$point = 0;
}
//추가 끝이렇게 놓으면 정상적으로 작동해야 되는데 이상하게 날짜 구분없이 참으로 가는 현상이 ㅠ_ㅠ)
-
-1 days가 맞습니다. 잠시 착각을...
작성하신 if 문이 '게시글 작성 시간이 1일 이내라면'인데, 원하시는 건 게시글 작성 시간이 1일 이내라면 '포인트 적용 안 하기' 아닌가요?
괄호 안 내용들이 서로 뒤바뀐 것 같습니다. -
꾸링
2015.02.05 13:10
네 맞습니다. 작성한지 하루된 게시물은 포인트 차감 적용이 되지 않는 것을 원하는 것이에요..
if($oDocument->get('regdate') < date('YmdHis', strtotime('-1 days'))){
$point = $module_config['download_file'];
}else{
$point = 0;
}위와 같이해야 정상소스라고 생각해요.
regdate 는 게시물 작성날짜고, date는 오늘날짜 - 1Day니까해당 값이 True일 때, 모듈 콘픽에서 포인트 차감 설정해둔 -10이 적용되도록 하는 것이 맞지 않을까요?
ex)if ( 2월 2일 작성된 게시물 < 오늘 날짜 2월 5일 - 1Day = 월 2월 4일 )
{
$point = $module_config['download_file']; True값 2월2일은 작성한지 3일이나 지난 게시물이니
config 에 포인트를 설정해둔 값이 적용다만 2월 5일 오늘 작성 한 게시물일 땐, < 오늘 날짜 - 1Day = 2월 4일
Else가 작동하여
$point = 0; 포인트 값이 0이 되어 포인트 차감이 되지 않도록 하는 것이 맞다고 생각하는데
날짜 구분없이 다 차감되는 현상이 있네요, 안에 값을 말씀하신대로 바꾸면 날짜 구분없이
포인트 차감이 안되어버립니다. 제가 적용한 소스는 또 반대로 날짜 구분없이 다 차감해버리구요 ㅠ_ㅠ) -
꾸링
2015.02.05 13:13
아마도 초보지만.
제가 임의로 oDocumment를 사용하기 위해
//변수선언 시작
$document_srl = $obj->document_srl;
$oDocumentModel = getModel('document');
$oDocument = $oDocumentModel->getDocument($document_srl);
//변수선언 끝추가한 변수가 문제가 되서 작동을 안하는 것으로 생각되요 ㅠ_ㅠ
-
아... 그럼 저는 지금 도와드릴 수 없겠네요. 모바일이라서요.
실제 값이 있는지 없는지는 die, var_dump 함수를 이용해 확인해보거나 XE 디버깅 함수 debugPrint를 사용하세요. -
꾸링
2015.02.05 13:23
아니에요!! 답변 해주시는 것만으로도 큰 힘이 됩니다 고맙습니다!
글쓴이 | 제목 | 최종 글 |
---|---|---|
XE | 공지 글 쓰기,삭제 운영방식 변경 공지 [16] | 2019.03.05 by 남기남 |
ictai | 레이아웃직접 만드는데 탑마진이 계속남아있어요ㅜㅜ [6] | 2015.02.06 by DoorWeb |
TVAJIN | 테이블 정의문서 [1] | 2015.02.06 by 간장게장같은남자 |
ictai | 제로보드 위젯페이지문의요 [2] | 2015.02.06 by ictai |
forest535 | Zboard4-XE 이전시 첨부파일 미포함? [2] | 2015.02.06 by forest535 |
designare0 | ssl 설정을 잘못선택하여 로그인이 되지 않습니다 [2] | 2015.02.06 by 이이녑 |
JK광이 |
절실히 도움이 필요합니다. xe게시판 분류별 정렬관련
![]() | |
이나0413 |
인덱스 페이지 설정 후 메뉴 문제 관련해서 문의드립니다.
[2]
![]() | 2015.02.05 by 쿠페빵 |
올때메로나 | 제로보드4 가입시 레벨 조정 오류 | |
라디오스테이션 | 지속적으로 (프록시)접속해서 테러를하는 회원이 있습니다. [5] | 2015.02.05 by 라디오스테이션 |
키스미베이베 | 메인페이지를 외부페이지로 쓰고있는데... | |
eeksu |
회원가입 링크 수정
[2]
![]() | 2015.02.05 by eeksu |
능현 | 로그인오류문제질문드려요 [5] | 2015.02.05 by 능현 |
孤松 | 제로보드4 XE 게시판 | |
xe짱좋아 | xe.. 외부페이지 질문드립니다.변수값 오류 | |
xe초보 |
레이아웃 디자인 수정하면 메뉴들이 없어집니다ㅠ
[2]
![]() | 2015.02.05 by xe초보 |
재승TM |
외부IP설정된 XE 내부네트워크에서 접속시
[2]
![]() | 2015.02.05 by 재승TM |
forest535 | Zboard4->XE 이전시 xml 파일은 어디에 있나요? [1] | 2015.02.05 by forest535 |
아형여옹 | 첨부파일 다운로드 문제입니다. [2] | 2015.02.05 by 아형여옹 |
saramjh | placeholder를 사용할때의 맹점 ㅜㅜ [7] | 2015.02.05 by saramjh |
아형여옹 | 포인트가 자꾸 초기화 됩니다. |
이러면 아마 될 듯합니다만...