웹마스터 팁

XE - 읽지 않은 쪽지 개수 보이기.

예전에 이와 비슷한 신규 쪽지 개수 보이기 팁이 올라 왔습니다. 전 신규 쪽지 개수가 아니라 아직 읽지 않은 쪽지 개수를 표시하고 싶어 기능을 구현하고 작으나마 다른 분께 도움이 될까 하여 이렇게 올립니다. 

XE는 신규 쪽지가 오면 플래그 파일로 임시 저장하고, 읽을꺼냐?? 물어 본 후 Yes건 No건 선택하면 플래그 파일을 지워 버립니다. 곧, XE는 신규 쪽지에 대해 처음에 딱 한 번 알리고 말 뿐입니다.
DB에는 신규인지 아닌지 저장되지 않죠.

거기다 쪽지를 보내면 DB에는 두 개의 레코드가 생깁니다. 하나는 받은 쪽지고 하나는 보낸 쪽지죠. 이것 때문에 readed 필드가 'N'인지만 비교해서는 정확한 값을 알 수 없습니다.
정확히 알려면 받는 사람(receiver_srl)과 받은 쪽지인지(message_type)와 읽었냐(readed) 세 개를 비교해야 합니다.

하지만, communication module의 쪽지에서 쿼리를 뒤져 봐도 제가 원하는 기능을 하는 쿼리가 없었습니다. 그래서, XE를 최대한 건들지 않는게 목적이라 지금 쓰는 선우 로그인 폼에 이 기능을 추가하기로 했습니다.

※ 선우 로그인 위젯 

추가한 파일 : \xe\widgets\login_sunoo\queries\getUnreadMessages.xml

수정한 파일 : \xe\widgets\login_sunoo\skins\sunoo_loginbox\sunoo_login_info.html 

 

1. getUnreadMessages.xml 추가

\xe\widgets\login_sunoo 디렉토리 아래에 'queries' 디렉토리를 만듭니다.
다른 로그인 위젯을 쓰시는 분은 login_sunoo 대신에 쓰고 있는 위젯 디렉토리 아래에 만들면 됩니다.
그 다음 아래 코드를 작성해서 'queries' 디렉토리에 'getUnreadMessages.xml' 로 저장합니다.(파일 인코딩: ANSI)
unread2.gif

'receiver_srl' : 받는 사람 member_srl
'message_type' : 쪽지 종류. 'R'은 받은 쪽지, 'S'는 보낸 쪽지, 'T'는 보관한 쪽지
'reaede' : 읽기 상태. 'Y'는 읽음. 'N'은 읽지 않음.

  

2. sunoo_login_info.html 수정

\xe\widgets\login_sunoo\skins\sunoo_loginbox\sunoo_login_info.html 파일을 열어 아래와 같이 수정합니다.
빨간색 부분을 쓰고 있는 로그인 위젯 폴더명으로 수정해야 합니다.

43 line 추가 : {@ $m_args->receiver_srl = $logged_info->member_srl; $m_output = executeQuery('widgets.login_sunoo.getUnreadMessages', $m_args); }

67 line 추가 : <font color="#ff0000">[{$m_output->data->count}]</font>
unread3.gif


쓰고 있는 로그인 폼 스킨 파일에서 적당히 비슷한 곳 찾아 취향에 맞게 고치면 됩니다. 
Code Highlighter가 작동을 안하네요. -_-; 그래서 걍 이미지로 넣었습니다;;


 queries.zip
--------------------------
제목 글쓴이 날짜
제로보드XE 1.4 -> 1.5 초간단 업그레이드 [10] 행복돌이 2012.05.15
소셜로그인 이메일 입력시 SSL 사용 패시브 2012.07.27
로그인 정보 폼에 읽지 않은 쪽지 개수 보이기. [21] file 무얼까 2011.07.23
관리자의 회원포인트목록 에서 ID/닉네임 등으로 검색하는 소스 추가 [3] sejin7940 2012.06.25
socialxe 페이스북에서 SSL timeout 해결법 및 자체 서버사용시 500 문제해결 [1] spi-ca 2012.05.16
관리자 글 등록시 비번 입력하게 만들기 [5] 우진♡아빠 2010.04.28
Xe 1.5.1로 사이트 꾸미기 part 1 [25] file 황비 2011.12.04
조회수 클릭때마다 올라가기(1.4.5.7 버전에서 되네요) [2] file 아네모네 2011.06.20
phpmyadmin 로그인시 아래와 같은 에러나올경우 해결방법 [1] file 때린데 또때려 2012.03.12
XE 도쿠위키 세션으로 연동 [5] 도라란 2011.11.17
Xe 1.5.0.9 사용자 설치메뉴얼 제2부 [22] file 황비 2011.11.22
일반 페이지에 로그인(세션) 정보 활용하기 [13] noirzo 2008.11.07
외부페이지 로그인 연동 [10] 응삼 2011.02.28
여러도메인으로 접속시 무조건 하나의 도메인으로 이동시키기 squarehacker 2012.02.02
XE 1.5.1 업그레이드시 조심해야 [1] 소걸음 2011.12.23
제로보드4에서 XE로 넘어와 헤메는 분들을 위해서(1편)-Xe개념이해와 설치 [16] file 황비 2010.03.18
무분별한 스팸글 등록으로부터 임시해결 팁 [15] file 라르게덴 2010.08.12
1.5 에서 기존 로그인 스킨 이메일 로그인 구동시키기 [1] 쿨키드 2011.11.01
다운로드 필요 포인트가 0 인 모듈에서의 비회원 다운로드 권한 부여 [2] 키네시스 2011.02.09
비회원도 추천가능하게 하기 (1.5기준설명) [3] 빽짱구 2011.11.18