웹마스터 팁
page_full_width">
알림LITE의 모바일쪽지 확인시 "잘못된 요청" 처리법
2014.10.28 16:25
모바일EX (Mobileex) 모듈을 사용하고 있는 사용자에 해당합니다.
개요및 문제점-
저같은 경우는 mobileex 모듈을 이용해서 회원정보 및 쪽지확인 개인정보변경등을 mobileex 스킨으로 모두 사용중입니다.
그런데, 알림센터Lite를 이용하면 모바일 기기에서는 알림창으로 쪽지가 왔다고 알림이 왔지만
터치해서 쪽지를 확인하려하면 빈페이지가 나오거나 "잘못된 요청입니다"로 나오게 될 때가 있습니다.
원인-
이는 쪽지 알림의 링크가 communication 모듈을 향하고 있기 때문입니다.
이것을 mobileex 모듈로 향하게 해주면 간단하게 해결됩니다.
해결-
아래와 같이 알림센터Lite 모듈의 controller.php 파일을 여시고 procNcenterliteRedirect() 함수를 찾아서
590줄 정도 되는 곳에
if(Mobile::isMobileCheckByAgent()) $url = str_replace('dispCommunicationMessages','dispMobileexMessages',$url);
를 추가해주세요. 반드시 이 코드위에 $url 이라는 변수가 있어야 합니다.
설명-
이 한줄의 코드는 모바일여부를 판단해서 모바일기기이면, $url 의 문자열중에서 dispCommunicationMessages 라는 문자를 dispMobileexMessages 로 바꿔주는 기능을 합니다.
579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 | function procNcenterliteRedirect() { $logged_info = Context::get( 'logged_info' ); $url = Context::get( 'url' ); $notify = Context::get( 'notify' ); if (! $logged_info || ! $url || ! $notify ) return new Object(-1, 'msg_invalid_request' ); $output = $this ->updateNotifyRead( $notify , $logged_info ->member_srl); if (! $output ->toBool()) return $output ; $url = str_replace ( '&' , '&' , $url ); //dispMobileexMessages 로 바꿔줌 if (Mobile::isMobileCheckByAgent()) $url = str_replace ( 'dispCommunicationMessages' , 'dispMobileexMessages' , $url ); header( 'location: ' . $url ); Context::close(); exit ; } |
확인-
저는 확인해보니 잘 되네요.
캬..좋은정보 감사합니다.
덕분에 해결했네요.