XE 공식 자료실

제작자
srboard
등록일
2014-05-05
다운로드 수
93
링크1
srboard.styx.kr

http://srboard.styx.kr/xe/
위 링크에 사용된 채팅소스입니다.
ajax를 사용하고,
사용자의 계정에 직접 설치해서 사용하는 것입니다.
채팅 데이타는 ./widgets/srchat/chat/ 경로에 저장되기 때문에,
이 디렉토리를 FTP에서 777 또는 707로 권한설정해줘야 합니다.

라이선스
GPL v2
설치경로
./widgets/srchat
최초 등록일
2010-10-24
전체 다운로드
13,616
체험하기

쉬운설치로 바로 체험할 수 있습니다

상세 설명

업로드한 곳 : http://srboard.tistory.com/68

◇◇◇ xe용 위젯 : srchat_XE_219.311.rar
◇◇◇ urlencode : urlencode.rar
◇◇◇ 버튼 아이콘 : buttons-140427.rar

예제 : http://srboard.styx.kr/xe/

◇ 기본적인 설명은 :: http://srboard.styx.kr/srboard/index.php?section=15


<img class="zbxe_widget_output" widget="srchat" skin="default" chtsrchat="영문숫자로채팅방아이디" chthorizon='v' chtwidth="190px" chtheight="30mm" cht_contwh="85mm" cht_usrwh="15mm" cht_wico="1" />

위젯 코드를 붙여넣기 할 때는 - <img> 형식으로 삽입할 때는 -
• chtheight="30mm" :
30%를 지칭하는데,%가 저기에 들어가면, 스킨으로 %라는 기호가 전달이 안됩니다.
그래서, 이것저것 해보다가 mm로 정했습니다.
mm로 전달된 값은 자바스크립트에서 % 로 변환됩니다.

이 문제는 페이지수정에서 위젯코드를 직접 만들 때는 해당되지 않습니다.
<img ~~> 이렇게 생성해서, 붙여넣기 할 때만 문제가 됩니다.

<img class="zbxe_widget_output" widget="srchat" skin="default" chtsrchat="영문숫자로채팅방아이디" />
이렇게 붙여넣기하고, 나머지는 채팅의 관리자기능에서 설정할 수도 있습니다.

설치방법
  • widgets/srchat/chat 폴더의 권한을 FTP에서 777, 또는 707로 줍니다.
  • 이후에 위젯코드를 생성하고,
  • 관리자기능 링크(아이콘)를 열어서, [ install ] 버튼을 누르면 됩니다

  • srchat/chat
  • srchat/emoticon
  • 압축 풀었을 때 이 폴더가 없으면, 새폴더라도 만들고,
  • FTP에서 widgets/srchat/chat 폴더의 권한을 777 또는 707로 주세요.
  • (알집으로 풀면 빈폴더를 복원해내질 않습니다. 유의하세요.)

한글 ajax입력이 안되는 경우엔 urlencode.rar
  • 외국서버에서 한글이 ajax로 입력안되는 경우가 있다고해서 원본의 일부를 수정한 파일입니다.
  • 수정하는 방법은 http://srboard.styx.kr/srboard/index.php?id=free&no=584 덧글에 있는데, 별도로 배포하고 있습니다.
  • 한글입력에 문제가 없으면, 불필요한 부하만 늘어나는 수정입니다.
  • 적용 방법 - 원본을 다운받아서 압축풀고, urlencode.rar를 다운받아서 압축풀어서 원본의 해당파일에 덮어씌웁니다.

혼자 테스트하려면
  • srchat.php 18번 줄
  • $chtip = str_pad(str_replace('.','',$_SERVER['REMOTE_ADDR']),12,'x'); /* ip로 사용자구분 할때 */
  • //$chtip = substr(session_id(),0,12); /* ip로 사용자구분 안할때 */

  • 여기를

  • //$chtip = str_pad(str_replace('.','',$_SERVER['REMOTE_ADDR']),12,'x'); /* ip로 사용자구분 할때 */
  • $chtip = substr(session_id(),0,12); /* ip로 사용자구분 안할때 */

  • 이렇게 수정해야 합니다.

  • 사용자가 어디까지 읽어갔는지가 서버측에 저장되기 때문에,
  • 한 명의 사용자가 두 개의 브라우저로 열면 제대로 작동되지 않습니다.
  • 그래서 혼자 테스트하려면, 브라우저마다 각각의 사용자가 되도록
  • 위와 같이 IP가 아닌 세션아이디로 사용자를 구분하도록 수정해줘야 합니다.

질문은
  • http://srboard.styx.kr/srboard/index.php?id=free 여기서 하시고,
  • 질문에 "XE용 srchat" 에 대한 질문이라고, 특정해주시기 바랍니다. (srchat도 여러가지가 있어서)
  • 알집으로 압축풀면, 빈 폴더(필수적인)가 생성되지 않습니다.. 되도록 다른 압축프로그램을 사용하시길 바랍니다.



  • 이모티콘 크기 max-width, max-height로 바꿈

    • 기존에 이모티콘 크기가 css에서 width:19px, height:19px 이었는데
      max-width:19px, max-height:19px 로 정의를 바꿨습니다.

    • IE6 에서는 제대로 해석을 못하지만
      여태까지 IE6을 쓴다면, 이 정도는 뭐 감수해야 하잖을까 싶기도 합니다.

  • 전역변수 2분마다 재정의되도록 함

    • 혹시나 해서 바꾼 것이기도 한데
      자바스크립트에 이런 저런 자바스크립트 전역 변수가 있는데
      그 중에서도 내용이 한번 정의되면 바뀌지 않는 변수들
      (대체로 관리자 기능 설정사항을 담고 있는 것들)
      그것들만 2분마다 재정의되도록 했습니다.

    • 스킨을 보면 <input type='hidden' id='뭐뭐' value='값' /> 이런 게 여러개 붙어 있는데
      왜냐면 그냥 자바스크립트 전역변수 만으로 하기엔 불안정하기 때문입니다.
      특히나 브라우저를 오래 열어두고 있으면
      변수의 정의를 잊어버리거나 하는 경우가 발생하는 거 같더라구요.
      그래서 <input>에다가 아예 텍스트로 박아서, 잊어버리지 못하도록 한 것인데

      그 비슷한 맥락으로
      내용 변동이 없는 전역변수를 전부 <input>에 담아서 2분마다 eval 함수로 재정의되도록 했습니다.
      그럼 혹시 브라우저가 잊어버리더라도, 되살려낼 수가 있고
      간격이 겨우 2분이니까. 브라우저가 잊어버리게 되지도 않겠지요.

    • 그래서 스킨(widgets/srchat/skins/default/srchat.html + default.css)도 수정되었습니다.

    • 더불어서 1 또는 0 으로 정의되던 변수를 전부 true, false로 바꿨습니다.
      기타 숫자로 정의되던 변수는 모두 작은 따옴표 떼어내고 숫자로 정의되도록 했고 등등등
      근데 이건 뭐 별 이유가 없군요.

  • 기타 사소한 수정이 있었습니다.


  • • srchat 219.30 -> 219.31 수정사항.

    • <? 를 <?php 로 변경함
      • php.ini 에서 short_open_tag를 On으로 설정하지 않아도 되도록 수정했습니다.
      • <?로 쓰여졌던 부분을 모두 <?php로 바꿨습니다.

    • 방문자목록에 css 오류 수정
      • ";" 이게 하나 빠지는 바람에, 브라우저가 오류를 내진 않았지만 오류가 있었는데 수정했습니다.

    • 우측 상단 시간표시 관련 문제 수정
      • 우측 상단의 시간표시 때문에 채팅방 레이아웃이 깨지는 경우가 있다고 해서 살펴보니까
      • font-family 정의가 없길래, css에서 font-family를 Tahoma로 하고
      • font-size는 10px로 했습니다. 11px로 해도 되지만, 혹시 또 어디서 깨진다는 얘기가 나올까봐
        여유를 넉넉하게 잡기 위해서.

      • 시간 표시는 - 시간표시가 중요한 게 아니고, 그거 시간 바뀔 때마다 서버에 ajax로 접속했다는 것입니다.
      • 그래서 1초마다 시간이 바뀌질 않고, 띠엄띠엄 바뀌는 것입니다.
      • 이 시간표시가 바뀌질 않고 있으면, 브라우저의 ajax 접속이 먹통되었다고 보시면 됩니다.
      • 그런 맥락에서 표시하는 시간입니다.

  • • srchat 219.31 -> 219.311 수정사항.

    • srchat.class.php 맨 윗줄에 <?php php 로 되어있어서 오류가 났습니다. 수정했습니다.
    • srchat.class.php 맨 윗줄을 <?php로 수정하거나 srchat 219.311 버전으로 업데이트하세요.


포럼 0

로그인 후 작성할 수 있습니다.