51

(57 답글들, 공지사항에 작성)

J. Parker 작성:

와우 저만 느끼는 것인지는 모르겠지만 관리자모드에서 글편집은 베타3 보다 속도면에선 개선된것 같습니다.
또한, 파일 업로드시 로딩바도 멋지고 짧은 시간 테스트 해봤지만 특이한 이상 없습니다.
퇴근전 태터 1.0.5 RC1 이상무 신고합니다. <('0')
고생하셨습니다. 좋은 저녁 보내세요.:D

- 전에도 말씀드린적 있던것 같은데요. 관리자 페이지 접근시 태터툴즈가 릴리즈된 사항을 알림으로 처리하면
   보다 많은 유저분들께서 확인하시기 편할것 같습니다. 'alert'알림을 하루에 한번정도 아님 'popup'으로 ....


ps.개인적인 바램은 'blog/category/index.php'에 1.0.2버젼 처럼 'if(isset($list)){'(2237번째줄)
위에 'handleTags($view);'하나 넣어주시면 썸네일 플러그인 사용시 별도 수정없이 될수 있을 것
같습니다. 'handleTags($view);' 와 'handleTags($sval);' 동시 사용하면 문제가 될 요지가 있나요?

1.0.6에 말씀하신 사항을 티켓팅해 보겠습니다. 즐거운 저녁 보내세요 smile

52

(57 답글들, 공지사항에 작성)

KIM 작성:

setup.php는 변동이 없겠지요? 번역 시작하겠습니다.

네, 그렇습니다. 또한 setup.php는 optimizing 대상이 아닙니다. svn에 등록된 source file 그대로 배포됩니다.

53

(57 답글들, 공지사항에 작성)

RC2가 준비되었습니다. 다운로드 URL은 http://dev.tattertools.com/attachment/w … format=raw 입니다.
* 트랙백 송신 오류 수정
* 영문 리소스 오타 수정
* UpdateVisitorStatistics 이벤트를 UpdatingVisitorStatistics로 이름 변경
* checkup 검사 루틴 오류 수정

checkup 검사 루틴 오류로 인해 1.0.5 RC1을 설치하신 분들은 수동으로 checkup해 주셔야 합니다.
확인 부탁 드립니다.

54

(57 답글들, 공지사항에 작성)

cirrus 작성:

다시 받아서 해봤는데도 안됩니다. 혹시 수정만 하시고 새로 안올리신 건 아니죠??

아직 수정된 것이 아닙니다.
RC2에서 수정될 것입니다. 조금만 기다려 주세요~

55

(57 답글들, 공지사항에 작성)

지금까지 보고된 것을 정리해서 RC2를 공개하겠습니다. 10분 소요 예정...

56

(57 답글들, 공지사항에 작성)

건더기 작성:
LonnieNa 작성:

미리 이 부분에 대해서 언급한걸 본적은 있지만 갑자기 최근글 댓글등 글 자름 방식이 바뀌어나서
이전의 20에서 자르던걸 40정도로 늘려서 잘라야 이전과 같아지더라구요. 많이 당황했습니다.-0-
자세한 세부사항까진 모르지만 여기저기 클릭클릭 막 눌러봐도 마우스가 문제가 있는지..-_-;;
그외의 문제점은 없는듯합니다.

글 자름방식은 아무래도 영어 기준으로 바뀐듯....
(한글은 2바이트라서 2배의 길이를 주어야 기존의 길이가 되는 아햏햏....ㅡㅡ;;)

LonnieNa 작성:

아 그리고 자세히 못읽었는데. 이 부분도 언급했던것 같은데.
에디터에서 html모드로 가서 수정하고 에디터 모드로 돌아오면 수정한게 적용이 안되던데...
서버 환경이 이상한건가..

저는 잘 되는데요??

한글은 3바이트입니다. 그리고 폰트들이 가변폭 가변자간이라 무작정 2배로 줄 수도 없고,
이 전에 관련 논의가 포럼에 있었습니다. 당연히 정답을 낼 수는 없습니다.
기존에는 한글이나 영문을 모두 1 글자로 처리하였으나, 이번에 몇 부분에 대해서는 한글을 2 글자로 처리하도록 하는 루틴이 추가되었습니다.

57

(57 답글들, 공지사항에 작성)

cirrus 작성:

파일질라에서 전송하는데 제대로 전송이 안된 거 같습니다.
다시 전송해보고 트랙백 테스트를 다시 해보겠습니다;;;

저 위에 관련 글이 있습니다 smile

58

(57 답글들, 공지사항에 작성)

건더기 작성:

큰 장애는 없는 듯 싶군요....
드디어 릴리즈가 이루어지려나???

건더기님이 확인하신 것으로 간주하겠습니다 smile
이제 두 분만 더 확인해 주세요. 그러면 릴리즈 하겠습니다!

59

(5 답글들, 지역화및 문서화 작업에 작성)

지금 commit된 UpdateVisitorStatistics 이벤트를 UpdatingVisitorStatistics 로 rename하겠습니다.

60

(5 답글들, 지역화및 문서화 작업에 작성)

= 추가되는 부분 =
일반 - 댓글/트랙백 스팸의 해결 (기본) : 집단적 방법을 통한 해결은 1.0.6으로 이월.
일반 - Eolin의 Tag suggestion 을 켜고 끌 수 있는 기능
일반 - 에디터에서 기본 글씨체 설정 부분의 글꼴명에 한글 글꼴명 추가
일반 - 프로필 사진 초기화 기능
일반 - 블로그 출력시 UTF-8 링크를 인코딩하여 내보내도록 선택 가능
일반 - 트랙백 전송 다이얼로그에 닫기 버튼 추가
일반 - 트랙백 받기 부분에 IP 필터링이 적용
일반 - UTF8 미지원 database에 대한 field length 전처리 지원
일반 - 댓글에 퍼머링크 추가
에디터 - 다중파일 업로드 컴포넌트 (shockwave flash 기반)
플러그인 - 스팸 차단 플러그인을 위한 이벤트 추가
플러그인 - 스팸 차단 플러그인 추가
플러그인 - 플러그인의 다국어 지원
플러그인 - 이벤트 추가 - 리퍼러 로그 출력시
플러그인 - 이벤트 추가 - 리더, RSS 출력시
플러그인 - 이벤트 추가 - updateVisitorStatistics 실행될시
리더 - 개별 피드 업데이트 기능

= 변경및 개선되는 부분 =
일반 - 다국어 지원관련 인프라 고도화 (코어 변경)
일반 - Tag/Location Suggest Timeout 문제 해결
일반 - UTF8 미지원 database에 대한 field length 전처리 지원
일반 - 관리자 메뉴에서의 모든 도움말 링크를 태터툴즈 support 사이트의 해당 부분 (wiki)으로 링크
일반 - XHTML specification에 따른 일부 출력 수정
일반 - 스킨 적용 전에 경고메세지 출력
일반 - '자동으로 저장되었습니다' 메세지 출력 고정 관련 수정
일반 - 블로그 설명 수정
일반 - checkup 자동 권고 기능
일반 - 글리스트에서 휴지통 아이콘 위에서 커서가 잘못 표시
일반 - 일반 화면에서 바로 로그인 / 로그아웃 및 원래 화면으로 돌아오는 기능
스킨 - comment/tracback 에 포함된 URL 에 rel='external nofollow' 포함
리더 - ATOM 피드 읽어오기 개선

= 버그 수정 =
일반 - 관리자 화면이 아닌 블로그 화면에서 '수정'을 눌러 글을 수정하였을 경우 RSS가 갱신 안되는 문제
일반 - 패스식별 다중사용자 모드에서 블로그 주소 설정시 / 중복 오류
일반 - RSS 공개 / 비공개 변경시 RSS가 갱신되지 않는 문제
일반 - [HTML] 치환자를 사용하여 글을 작성한 경우 트랙백된 요약문에 치환자가 표시되는 문제
일반 - 카테고리/검색시 대상이 되는 글이 아주 많은 경우 목록이 출력되지 않는 문제
일반 - 최근트랙백과 받은 트랙백 목록이 불일치하는 문제
일반 - 다중 사용자 모드 사용시 경우에 따라 1차 도메인 주소가 반복되어 출력되는 문제
일반 - javascript string에 ", \r이 포함된 경우에 발생하는 escape 오류 문제
일반 - 트랙백 사이트명에 어포스트로피(')가 있는 경우 표시의 문제
리더 - 오래된 글이 삭제되지 않는 문제
리더 - reader의 갱신 주기가 늦는 문제
리더 - 특정한 경우 EUC-KR로 작성된 RSS를 읽어올 수 없는 문제
리더 - 특정 피드에서 발생하는 에러 문제
리더 - RSS 리더에서 글 계속 보관으로 셋팅한 경우 피드를 가져오지 않는 문제
리더 - 전체피드 업데이트 할때 내 피드만 업데이트 됨
리더 - 그룹 이름 수정할때 다른 사용자의 그룹이름이 변경되는 문제
에디터 - 글을 HTML 모드에서 저장한 후 새 줄이 사라지는 문제
에디터 - 그림 첨부중 Free 방식으로 넣을때 스크립트 에러
에디터 - 특정한 경우 한국어 파일명으로 업로드한 이미지 파일을 볼 수 없는 문제
에디터 - 첨부파일 용량 표시에 null이 나타나는 문제
에디터 - 정규식 처리부분 점검
에디터 - 그림 첨부중 Free 방식으로 넣을때 스크립트 에러가 발생하는 문제
에디터 - 미디어를 복수로 삽입하는 경우 잘못된 태그가 생성되는 문제
에디터 - 그림이 존재하지 않는 경우 갤러리 스크립트 에러 발생하는 문제
에디터 - 새글에 대한 autosave 작동 후 첨부파일의 문제
백업 / 마이그레이터 - 데이터 복원(import/migration)시에 일부 글이 누락되는 문제

= 스킨에 추가된 치환자들 =
[##_rp_rep_link_##] - Comment에 대한 permalink
[##_s_ad_m_onclick_##] - 글편집 팝업창 열기

= 플러그인에 추가된 이벤트들 =
UpdatingVisitorStatistics - 방문자 통계 정보 갱신 여부
ViewRefererURL - 리퍼러 로그 URL를 출력할 때
ViewRSS - RSS 피드를 출력할 때
SaveFeedItem - 리더에서 읽어온 피드를 저장할 때
AddingComment - 댓글 추가 여부
ModifyingComment - 댓글 수정 여부
AddingTrackback - 트랙백 수신 여부
AddingRefererLog - 리퍼러 로그 추가 여부

61

(57 답글들, 공지사항에 작성)

소필 작성:

checkup 후에 자동으로 onwer 페이지로 돌아갔으면 합니다...(그게더 편할듯?)

1.0.6부터 [되돌아가기] 버튼을 추가하도록 하겠습니다.
checkup은 구조적인 변경 사항을 반영하기 위한 것으로, 심지어 로그인이 안되는 경우를 해결하기도 합니다.

62

(57 답글들, 공지사항에 작성)

건더기 작성:
PAPACHA 작성:
건더기 작성:

이제 제 서버에 올리기 시작한 상태라 아직 정상작동 여부까지는 잘 모르겠지만....
앞으로는 중간 배포도 tar나 tgz로 같이 해주시면 않될까요??

unzip을 사용하실 수 없는 환경인가요? tar.gz으로 묶을려면 제가 상당히 귀찮아서요 ^^;

제 서버에서는 가끔씩 unzip이 반란을 꾸미더군요...:rolleyes:

새 버전 unzip을 설치하세용 big_smile

63

(57 답글들, 공지사항에 작성)

건더기 작성:

이제 제 서버에 올리기 시작한 상태라 아직 정상작동 여부까지는 잘 모르겠지만....
앞으로는 중간 배포도 tar나 tgz로 같이 해주시면 않될까요??

unzip을 사용하실 수 없는 환경인가요? tar.gz으로 묶을려면 제가 상당히 귀찮아서요 ^^;

64

(57 답글들, 공지사항에 작성)

cirrus 작성:

checkup시 "시스템을 점검합니다" 멘트 수정하신다고 하신 거 같은데 그대롭니다. ;;

'시스템 점검이 필요합니다. 지금 점검하시겠습니까?'에서
'태터툴즈 시스템 점검이 필요합니다. 지금 점검하시겠습니까?'로 수정하였습니다. 적당히 한글로만 쓰기에 마땅한 표현이 없어 '태터툴즈'로 제한하여 표시하도록 하였습니다.
더 좋은 의견 있으면 알려주십시오.

65

(57 답글들, 공지사항에 작성)

trunk @149 (sandbox @98)의 변경에 버그(트랙백 송신 불가)가 있는 것 같습니다. 이는 해당 변경을 revert하여 해결하는 것으로 하겠습니다. inureyes님과 peris님이 좀더 sandbox @98을 파고 드셔야 할 듯 ^^

66

(57 답글들, 공지사항에 작성)

KIM 작성:

설치시 언어선택을 추가하지않았나요?아니면 자동으로 선택하게 하였는데 작동되지않되는지?(언어팩에 분명히 포함되여 있는데요^^)

네, 아직 Setup(setup.php)에 language sensing 또는 selection routine이 없습니다. 이는 1.0.5 배포 이후에 별도로 추가할 예정입니다.

건더기 작성:

http://www.tattertools.com/bbs/view.php … mp;no=2986

태터 게시판에서 보고 글 씁니다...
이 분 말씀에 따르면....
(1.0.4 기준으로) 위지윅 글쓰기는 IE7 Beta에서는 현재 정상적으로 되지않는다는 이야기군요...
만약 IE7 엔진 자체의 변화라면....
차기 버전에서는 반영하여 코드를 고쳐야 할 듯 싶습니다...

(끙야.... 아무래도 IE7 Beta 설치하고 테스트 해야 할 듯... orz) roll

아직 IE7를 지원하기 위한 어떠한 작업도 진행된 것이 없습니다.
IE7이 베타이고 계속 변화를 보이고 있기 때문에 어느 정도 안정적이라는 판단이 서면 그 때부터 지원 작업을 시작할 예정입니다.

68

(57 답글들, 공지사항에 작성)

마모루 작성:

데이터를 교정하였으나, 마지막에 ? 로 끝나는 트랙백이 한개 있습니다.
이전 beta3에서 '뷁</spa' 이런 식으로 닫히지 않은 태그에서 '?'로 교정되었는데,
RC1 역시 마찬가지군요.

http://mamoru.homeip.net/test/23

'뷁/span>'이 '?</span>'으로 바뀌었다면 정상적인 교정입니다. 이 경우가 아니라면 정확히 어느 부분인지 알려주십시오.
교정은 UTF-8 인코딩을 위반하는 코드를 ?로 교체합니다.

69

(57 답글들, 공지사항에 작성)

PAPACHA 작성:

최종 테스트 부탁 드립니다.
다운로드 URL: http://dev.tattertools.com/attachment/w … format=raw

세 분이 확인해 주시면 배포하겠습니다. smile

@다음 1.0.6부터는 베타 기간을 세부적으로 나누고 길게 가져가야 할 것 같습니다.

PAPACHA 작성:
徐하늘 a.k.a !Nazu NT 작성:

 샌드박스를 통해서 올리는 것은 아직 권한이 없을 듯 해서 이렇게 직접 링크합니다.

- http://nekoto.poporu.net/tt105b_plugins.zip

 일단 태터툴즈 4대 기본 플러그인의 XML 상의 일본어 지원을 걸어 두었습니다. 하지만 생일 표시의 PHP 부분은 한글 그대로 두었습니다. 이에 대해서 언어지원은 아직 이루어진 거 같지 않아서 말이지요.

수고하셨습니다.
베타3 기간에 반영하겠습니다.

차주에 출근해서 샌드박스 commit 권한을 받으실 수 있도록 처리하겠습니다.

("徐하늘 a.k.a !Nazu NT"를 id로 지정할 수가 없어서) 원하시는 id를 알려주십시오.

71

(57 답글들, 공지사항에 작성)

최종 테스트 부탁 드립니다.

RC2가 준비되었습니다. 다운로드 URL은 http://dev.tattertools.com/attachment/w … format=raw 입니다.

Peris 작성:

현재의 플러그인 제작 방식을 그대로 사용한다면야 악의적인 코드를 찾기란 무리겠죠.
BlogIcon 플러그인을 기준으로 제가 생각하는 대략적인 구상을 말해보겠습니다.

components/Tattertools.Plugins.php 파일

class Plugins {
    var $owner;
    var $database;
    ...
    function tt_empty($v) {
        return empty($v);
    }

    function tt_strlen($v) {
        return strlen($v);
    }
    ...
}

Plugins/BlogIcon/index.php

class BlogIcon extends Plugins {
    var $target;
    var $mother;

    function BlogIcon($target, $mother) {
        $this->__construct($target, $mother);
    }

    function __construct($target, $mother) {
        $this->target = $target;
        $this->mother = $mother;
    }

    function BlogIcon_main() {
        if (Plugins::tt_empty($this->mother['homepage']))
            return $this->target;
        $slash = ($this->mother['homepage']{Plugins::tt_strlen($this->mother['homepage']) - 1} == '/' ? '' : '/');
        return "<img src=\"{$this->mother['homepage']}{$slash}index.gif\" width=\"16\" height=\"16\" onerror=\"this.parentNode.removeChild(this)\"/> $this->target";
    }
}

Plugins/BlogIcon/index.xml

...
    <listener event="ViewCommenter">BlogIcon::BlogIcon_main</listener>
    <listener event="ViewGuestCommenter">BlogIcon::BlogIcon_main</listener>
...

상당히 노가다이긴 하지만..; Plugins class에 사용 가능한 함수들을 일일이 등록시켜주는 거죠.;;
(모듈화된 상태기때문에 개별적으로 업데이트가 이루어지면 되니 큰 문제는 아니라고 생각중)
이렇게되면 validate 시에 Plugins class를 거치지 않는 함수를 잡아내는건 쉽겠죠.
쿼리같은 경우는 아래처럼 대충 처리하고 drop같은건 지원을 안하면 되겠죠.;
(예전에 사용하던 MySQL class 발췌; )

function mysql_select($table, $where, $field = '*') {
    return mysql_query("SELECT ".$field." FROM ".$table." ".$where);
}

헛점이 너무 많은가요? -_-;;

이것은 인터페이스만을 제한하는 것으로, 앞서 논의된 문제 해결과 관련이 없습니다.
이렇게 하면 플러그인 개발이 더 힘들어지기 때문에 지금의 간단한 구조를 채택한 것입니다.

마모루님의 협조로 원인을 찾아 수정하였습니다.

백업파일을 제공해 주실 수 있으시면, 저장하셔서 URL을 제 이메일(papacha@tattertools.com)로 알려주십시오.

회피할 수 있는 방법을 제공하는 eval(), create_function(), call_user_func(), call_user_func_array(), include, include_once, require, require_once 등을 사용하지 못하게 하면 가능합니다.