Skip to content

Commit

Permalink
Merge branch 'master' of git://github.com/splitbrain/dokuwiki
Browse files Browse the repository at this point in the history
  • Loading branch information
HakanS committed Nov 20, 2010
2 parents ba9418b + 85dcda2 commit 8f0a521
Show file tree
Hide file tree
Showing 35 changed files with 479 additions and 232 deletions.
282 changes: 190 additions & 92 deletions inc/DifferenceEngine.php

Large diffs are not rendered by default.

17 changes: 17 additions & 0 deletions inc/JSON.php
Expand Up @@ -112,6 +112,16 @@
* @deprecated
*/
class JSON {

/**
* Disables the use of PHP5's native json_decode()
*
* You shouldn't change this usually because the native function is much
* faster. However, this non-native will also parse slightly broken JSON
* which might be handy when talking to a non-conform endpoint
*/
public $skipnative = false;

/**
* constructs a new JSON instance
*
Expand All @@ -130,6 +140,7 @@ function JSON($use=JSON_STRICT_TYPE) {

/**
* encodes an arbitrary variable into JSON format
* If available the native PHP JSON implementation is used.
*
* @param mixed $var any number, boolean, string, array, or object to be encoded.
* see argument 1 to JSON() above for array-parsing behavior.
Expand All @@ -140,6 +151,7 @@ function JSON($use=JSON_STRICT_TYPE) {
* @access public
*/
function encode($var) {
if (function_exists('json_encode')) return json_encode($var);
switch (gettype($var)) {
case 'boolean':
return $var ? 'true' : 'false';
Expand Down Expand Up @@ -352,6 +364,7 @@ function reduce_string($str) {

/**
* decodes a JSON string into appropriate variable
* If available the native PHP JSON implementation is used.
*
* @param string $str JSON-formatted string
*
Expand All @@ -363,6 +376,10 @@ function reduce_string($str) {
* @access public
*/
function decode($str) {
if (!$this->skipnative && function_exists('json_decode')){
return json_decode($str,($this->use == JSON_LOOSE_TYPE));
}

$str = $this->reduce_string($str);

switch (strtolower($str)) {
Expand Down
17 changes: 11 additions & 6 deletions inc/actions.php
Expand Up @@ -20,6 +20,7 @@ function act_dispatch(){
global $ID;
global $QUERY;
global $lang;
global $conf;

$preact = $ACT;

Expand Down Expand Up @@ -50,6 +51,12 @@ function act_dispatch(){
}
}

//display some infos
if($ACT == 'check'){
check();
$ACT = 'show';
}

//check permissions
$ACT = act_permcheck($ACT);

Expand Down Expand Up @@ -120,12 +127,6 @@ function act_dispatch(){
if(substr($ACT,0,7) == 'export_')
$ACT = act_export($ACT);

//display some infos
if($ACT == 'check'){
check();
$ACT = 'show';
}

//handle admin tasks
if($ACT == 'admin'){
// retrieve admin plugin name from $_REQUEST['page']
Expand All @@ -143,6 +144,10 @@ function act_dispatch(){
$ACT = act_permcheck($ACT);
} // end event ACTION_ACT_PREPROCESS default action
$evt->advise_after();
// Make sure plugs can handle 'denied'
if($conf['send404'] && $ACT == 'denied') {
header('HTTP/1.0 403 Forbidden');
}
unset($evt);

// when action 'show', the intial not 'show' and POST, do a redirect
Expand Down
9 changes: 9 additions & 0 deletions inc/changelog.php
Expand Up @@ -37,6 +37,15 @@ function parseChangelogLine($line) {
/**
* Add's an entry to the changelog and saves the metadata for the page
*
* @param int $date Timestamp of the change
* @param String $id Name of the affected page
* @param String $type Type of the change see DOKU_CHANGE_TYPE_*
* @param String $summary Summary of the change
* @param mixed $extra In case of a revert the revision (timestmp) of the reverted page
* @param array $flags Additional flags in a key value array.
* Availible flags:
* - ExternalEdit - mark as an external edit.
*
* @author Andreas Gohr <andi@splitbrain.org>
* @author Esther Brunner <wikidesign@gmail.com>
* @author Ben Coburn <btcoburn@silicodon.net>
Expand Down
4 changes: 2 additions & 2 deletions inc/form.php
Expand Up @@ -252,7 +252,7 @@ function getForm() {
global $lang;
$form = '';
$this->params['accept-charset'] = $lang['encoding'];
$form .= '<form ' . html_attbuild($this->params) . '><div class="no">' . DOKU_LF;
$form .= '<form ' . buildAttributes($this->params,true) . '><div class="no">' . DOKU_LF;
if (!empty($this->_hidden)) {
foreach ($this->_hidden as $name=>$value)
$form .= form_hidden(array('name'=>$name, 'value'=>$value));
Expand Down Expand Up @@ -597,7 +597,7 @@ function form_makeListboxField($name, $values, $selected='', $label=null, $id=''
* @author Tom N Harris <tnharris@whoopdedo.org>
*/
function form_tag($attrs) {
return '<'.$attrs['_tag'].' '.buildAttributes($attrs).'/>';
return '<'.$attrs['_tag'].' '.buildAttributes($attrs,true).'/>';
}

/**
Expand Down
1 change: 1 addition & 0 deletions inc/html.php
Expand Up @@ -26,6 +26,7 @@ function html_wikilink($id,$name=null,$search=''){
/**
* Helps building long attribute lists
*
* @deprecated Use buildAttributes instead
* @author Andreas Gohr <andi@splitbrain.org>
*/
function html_attbuild($attributes){
Expand Down
4 changes: 2 additions & 2 deletions inc/lang/cs/lang.php
Expand Up @@ -242,7 +242,7 @@
$lang['i_enableacl'] = 'Zapnout ACL (doporučeno)';
$lang['i_superuser'] = 'Správce';
$lang['i_problems'] = 'Instalátor narazil na níže popsané problémy. Nelze pokračovat v instalaci, dokud je neopravíte.';
$lang['i_modified'] = 'Instalátor bude z bezpečnostních důvodů pracovat pouze s čistou a ještě neupravenou instalací DokuWiki. Buď znovu rozbalte souboru z instalačního balíčku nebo se zkuste poradit s <a href="http://dokuwiki.org/install">instrukcemi pro instalci DokuWiki</a>.';
$lang['i_modified'] = 'Instalátor bude z bezpečnostních důvodů pracovat pouze s čistou a ještě neupravenou instalací DokuWiki. Buď znovu rozbalte souboru z instalačního balíčku nebo se zkuste poradit s <a href="http://dokuwiki.org/install">instrukcemi pro instalaci DokuWiki</a>.';
$lang['i_funcna'] = 'PHP funkce <code>%s</code> není dostupná. Váš webhosting ji možná z nějakého důvodu vypnul.';
$lang['i_phpver'] = 'Verze vaší instalace PHP <code>%s</code> je nižší než požadovaná <code>%s</code>. Budete muset aktualizovat svou instalaci PHP.';
$lang['i_permfail'] = 'DokuWiki nemůže zapisovat do <code>%s</code>. Budete muset opravit práva k tomuto adresáři.';
Expand All @@ -268,7 +268,7 @@
$lang['mu_ready'] = 'připraveno k načtení';
$lang['mu_done'] = 'hotovo';
$lang['mu_fail'] = 'selhalo';
$lang['mu_authfail'] = 'vypršla session';
$lang['mu_authfail'] = 'vypršela session';
$lang['mu_progress'] = '@PCT@% načten';
$lang['mu_filetypes'] = 'Povolené typy souborů';
$lang['mu_info'] = 'soubory načteny.';
Expand Down
2 changes: 1 addition & 1 deletion inc/lang/cs/subscr_form.txt
@@ -1,3 +1,3 @@
====== Správa odběratelů změn ======

Tato stránka Vám umožnuje spravovat uživatele přihlášené k odběru změn aktuální stránky nebo jmenného prostoru.
Tato stránka Vám umožňuje spravovat uživatele přihlášené k odběru změn aktuální stránky nebo jmenného prostoru.
1 change: 1 addition & 0 deletions inc/lang/ko/adminplugins.txt
@@ -0,0 +1 @@
===== 부가적인 플러그인 =====
2 changes: 1 addition & 1 deletion inc/lang/ko/edit.txt
@@ -1,2 +1,2 @@
페이지를 편집하고 **저장**을 누르십시오. 위키 구문은 [[wiki:syntax]] 혹은 [[syntax|(한글) 구문]]을 참고하십시오. 이 페이지를 **더 낫게 만들 자신이 있을** 때에만 편집하십시오. 실험을 하고 싶을 때에는, 먼저 [[playground:playground|연습장]] 에 가서 연습해 보십시오.
페이지를 편집하고 **저장**을 누르십시오. 위키 구문은 [[wiki:syntax]] 혹은 [[wiki:ko_syntax|(한글) 구문]]을 참고하십시오. 이 페이지를 **더 낫게 만들 자신이 있을** 때에만 편집하십시오. 실험을 하고 싶을 때에는, 먼저 [[playground:playground|연습장]] 에 가서 연습해 보십시오.

80 changes: 65 additions & 15 deletions inc/lang/ko/lang.php
Expand Up @@ -8,6 +8,7 @@
* @author dongnak@gmail.com
* @author Song Younghwan <purluno@gmail.com>
* @author SONG Younghwan <purluno@gmail.com>
* @author Seung-Chul Yoo <dryoo@live.com>
*/
$lang['encoding'] = 'utf-8';
$lang['direction'] = 'ltr';
Expand Down Expand Up @@ -41,15 +42,13 @@
$lang['btn_backlink'] = '이전 링크';
$lang['btn_backtomedia'] = '미디어 파일 선택으로 돌아가기';
$lang['btn_subscribe'] = '구독 신청';
$lang['btn_unsubscribe'] = '구독 신청 해지';
$lang['btn_subscribens'] = '네임스페이스 구독 신청';
$lang['btn_unsubscribens'] = '네임스페이스 구독 신청 해지';
$lang['btn_profile'] = '개인정보 변경';
$lang['btn_reset'] = '초기화';
$lang['btn_resendpwd'] = '새 패스워드 보내기';
$lang['btn_draft'] = '문서초안 편집';
$lang['btn_recover'] = '문서초안 복구';
$lang['btn_draftdel'] = '문서초안 삭제';
$lang['btn_revert'] = '복원';
$lang['loggedinas'] = '다음 사용자로 로그인';
$lang['user'] = '사용자';
$lang['pass'] = '패스워드';
Expand Down Expand Up @@ -88,13 +87,45 @@
$lang['resendpwdsuccess'] = '새로운 패스워드는 이메일로 보내드립니다.';
$lang['license'] = '이 위키의 내용은 다음의 라이센스에 따릅니다 :';
$lang['licenseok'] = '주의 : 이 페이지를 수정한다는 다음의 라이센스에 동의함을 의미합니다 :';
$lang['searchmedia'] = '파일이름 찾기:';
$lang['searchmedia_in'] = ' %에서 검색';
$lang['txt_upload'] = '업로드 파일을 선택합니다.';
$lang['txt_filename'] = '업로드 파일 이름을 입력합니다.(선택 사항)';
$lang['txt_overwrt'] = '새로운 파일로 이전 파일을 교체합니다.';
$lang['lockedby'] = '현재 잠금 사용자';
$lang['lockexpire'] = '잠금 해제 시간';
$lang['willexpire'] = '잠시 후 편집 잠금이 해제됩니다.\n편집 충돌을 피하려면 미리보기를 눌러 잠금 시간을 다시 설정하기 바랍니다.';
$lang['js']['notsavedyet'] = "저장하지 않은 변경은 지워집니다.\n계속하시겠습니까?";
$lang['js']['notsavedyet'] = '저장하지 않은 변경은 지워집니다.
계속하시겠습니까?';
$lang['js']['searchmedia'] = '파일 찾기';
$lang['js']['keepopen'] = '선택할 때 윈도우를 열어놓으시기 바랍니다.';
$lang['js']['hidedetails'] = '자세한 정보 감추기';
$lang['js']['mediatitle'] = '링크 설정';
$lang['js']['mediadisplay'] = '링크 형태';
$lang['js']['mediaalign'] = '배치';
$lang['js']['mediasize'] = '그림 크기';
$lang['js']['mediatarget'] = '링크 목표';
$lang['js']['mediaclose'] = '닫기';
$lang['js']['mediainsert'] = '삽입';
$lang['js']['mediadisplayimg'] = '그림보기';
$lang['js']['mediasmall'] = '작게';
$lang['js']['mediamedium'] = '중간';
$lang['js']['medialarge'] = '크게';
$lang['js']['mediaoriginal'] = '원본';
$lang['js']['medialnk'] = '세부정보페이지로 링크';
$lang['js']['mediadirect'] = '원본으로 직접 링크';
$lang['js']['medianolnk'] = '링크 없슴';
$lang['js']['medianolink'] = '그림을 링크하지 않음';
$lang['js']['medialeft'] = '왼쪽 배치';
$lang['js']['mediaright'] = '오른쪽 배치';
$lang['js']['mediacenter'] = '중앙 배치';
$lang['js']['medianoalign'] = '배치 없슴';
$lang['js']['nosmblinks'] = '윈도우 공유 파일과의 연결은 MS 인터넷 익스플로러에서만 동작합니다.
그러나 링크를 복사하거나 붙여넣기를 할 수 있습니다.';
$lang['js']['linkwiz'] = '링크 마법사';
$lang['js']['linkto'] = '다음으로 연결:';
$lang['js']['del_confirm'] = '정말로 선택된 항목(들)을 삭제하시겠습니까?';
$lang['js']['mu_btn'] = '여러 파일들을 한번에 업로드합니다.';
$lang['rssfailed'] = 'feed 가져오기 실패: ';
$lang['nothingfound'] = '아무 것도 없습니다.';
$lang['mediaselect'] = '미디어 파일 선택';
Expand All @@ -112,11 +143,7 @@
$lang['mediainuse'] = '"%s" 파일을 삭제할 수 없습니다. - 아직 사용 중입니다.';
$lang['namespaces'] = '네임스페이스';
$lang['mediafiles'] = '사용 가능한 파일 목록';
$lang['js']['keepopen'] = '선택할 때 윈도우를 열어놓으시기 바랍니다.';
$lang['js']['hidedetails'] = '자세한 정보 감추기';
$lang['js']['nosmblinks'] = '윈도우 공유 파일과의 연결은 MS 인터넷 익스플로러에서만 동작합니다.
그러나 링크를 복사하거나 붙여넣기를 할 수 있습니다.';
$lang['js']['mu_btn'] = '여러 파일들을 한번에 업로드합니다.';
$lang['accessdenied'] = '이 페이지를 볼 권한이 없습니다.';
$lang['mediausage'] = '이 파일을 참조하려면 다음 문법을 사용하기 바랍니다:';
$lang['mediaview'] = '원본 파일 보기';
$lang['mediaroot'] = '루트(root)';
Expand All @@ -143,8 +170,10 @@
$lang['external_edit'] = '외부 편집기';
$lang['summary'] = '편집 요약';
$lang['noflash'] = '이 컨텐츠를 표시하기 위해서 <a href="http://www.adobe.com/products/flashplayer/">Adobe Flash Plugin</a>이 필요합니다.';
$lang['download'] = '조각 다운로드';
$lang['mail_newpage'] = '페이지 추가:';
$lang['mail_changed'] = '페이지 변경:';
$lang['mail_subscribe_list'] = '네임스페이스에서 변경된 페이지:';
$lang['mail_new_user'] = '새로운 사용자:';
$lang['mail_upload'] = '파일 첨부:';
$lang['qb_bold'] = '굵은 글';
Expand All @@ -157,6 +186,11 @@
$lang['qb_h3'] = '3단계 헤드라인';
$lang['qb_h4'] = '4단계 헤드라인';
$lang['qb_h5'] = '5단계 헤드라인';
$lang['qb_h'] = '표제';
$lang['qb_hs'] = '표제 선택';
$lang['qb_hplus'] = '상위 표제';
$lang['qb_hminus'] = '하위 표제';
$lang['qb_hequal'] = '동급 표제';
$lang['qb_link'] = '내부 링크';
$lang['qb_extlink'] = '외부 링크';
$lang['qb_hr'] = '수평선';
Expand All @@ -166,7 +200,7 @@
$lang['qb_sig'] = '서명 추가';
$lang['qb_smileys'] = '이모티콘';
$lang['qb_chars'] = '특수문자';
$lang['js']['del_confirm'] = '정말로 선택된 항목(들)을 삭제하시겠습니까?';
$lang['upperns'] = '상위 네임스페이스로 이동';
$lang['admin_register'] = '새로운 사용자 추가';
$lang['metaedit'] = '메타 데이타를 편집합니다.';
$lang['metasaveerr'] = '메타 데이타 쓰기가 실패했습니다.';
Expand All @@ -182,11 +216,16 @@
$lang['img_format'] = '포맷';
$lang['img_camera'] = '카메라';
$lang['img_keywords'] = '키워드';
$lang['subscribe_success'] = '%s를 추가했습니다. (%s의 구독 목록)';
$lang['subscribe_error'] = '%s를 추가하는데 실패했습니다.(%s의 구독 목록)';
$lang['subscribe_noaddress'] = '로그인 정보에 이메일 주소가 없습니다, 구독 목록에 추가할 수 없습니다.';
$lang['unsubscribe_success'] = '%s를 제외시켰습니다. (%s의 구독 목록)';
$lang['unsubscribe_error'] = '%s를 제외시키는데 실패했습니다.(%s의 구독 목록)';
$lang['subscr_subscribe_noaddress'] = '등록된 주소가 없기 때문에 구독목록에 등록되지 않았습니다.';
$lang['subscr_m_not_subscribed'] = '현재의 페이지나 네임스페이스에 구독등록이 되어있지 않습니다.';
$lang['subscr_m_new_header'] = '구독 추가';
$lang['subscr_m_current_header'] = '현재 구독중인 것들';
$lang['subscr_m_unsubscribe'] = '구독 취소';
$lang['subscr_m_subscribe'] = '구독';
$lang['subscr_m_receive'] = '받기';
$lang['subscr_style_every'] = '모든 변화를 이메일로 받기';
$lang['subscr_style_digest'] = '각 페이지의 변화를 요약 (매 %.2f 일 마다)';
$lang['subscr_style_list'] = '마지막 이메일 이후 변화된 페이지의 목록 (매 %.2f 일 마다)';
$lang['authmodfailed'] = '잘못된 사용자 인증 설정입니다. 관리자에게 문의하기 바랍니다.';
$lang['authtempfail'] = '사용자 인증이 일시적으로 불가능합니다. 만일 계속해서 문제가 발생하면 관리자에게 문의하기 바랍니다.';
$lang['i_chooselang'] = '사용하는 언어를 선택합니다.';
Expand All @@ -213,6 +252,7 @@
$lang['i_pol1'] = '공개형 위키 (누구나 읽을 수 있지만, 등록된 사용자만 쓰기/업로드가 가능합니다.)';
$lang['i_pol2'] = '폐쇄형 위키 (등록된 사용자만 읽기/쓰기/업로드가 가능합니다.)';
$lang['i_retry'] = '다시 시도';
$lang['i_license'] = '내용의 배포를 위한 라이센스를 선택하세요.';
$lang['mu_intro'] = '여러 파일을 한번에 업로드할 수 있습니다. 파일 목록에 추가하려면 "찾기" 버튼을 클릭합니다. 파일 목록 추가 작업이 끝나면 "업로드" 버튼을 클릭하기 바랍니다. ';
$lang['mu_gridname'] = '파일명';
$lang['mu_gridsize'] = '크기';
Expand All @@ -226,4 +266,14 @@
$lang['mu_authfail'] = '세션 기간이 종료되었습니다.';
$lang['mu_progress'] = '@PCT@% 업로드되었습니다.';
$lang['mu_filetypes'] = '허용된 파일타입';
$lang['mu_info'] = '업로드 되었습니다.';
$lang['mu_lasterr'] = '마지막 에러:';
$lang['recent_global'] = '<b>%s</b> 네임스페이스를 구독중입니다. <a href="%s">전체위키 변경사항 </a>도 보실수 있습니다.';
$lang['years'] = '%d 년 전';
$lang['months'] = '%d 개월 전';
$lang['weeks'] = '%d 주 전';
$lang['days'] = '%d 일 전';
$lang['hours'] = '%d 시간 전';
$lang['minutes'] = '%d 분 전';
$lang['seconds'] = '%d 초 전';
$lang['wordblock'] = '스팸 문구를 포함하고 있어서 저장되지 않았습니다.';
2 changes: 1 addition & 1 deletion inc/lang/ko/register.txt
@@ -1,4 +1,4 @@
====== 새 사용자 등록 ======

이 위키에 새 계정을 만들려면 아래의 모든 내용을 입력하십시오. **제대로 된 이메일 주소**를 사용하십시오. 그러나, 아래 내용을 입력했다고 해서 계정을 만들 수 있으리라고는 믿지 마십시오. 이곳은 내가 개인적으로 사용하는 곳이며, 계정을 만들어 주고 안주고는 내 마음입니다. 차라리, 내게 이메일을 보내서 신청하는 편이 더 나을 것입니다. 패스워드는 이 이메일로 보내집니다. 사용자명은 올바른 [[doku>pagename|pagename]] 이어야 합니다.
이 위키에 새 계정을 만들려면 아래의 모든 내용을 입력하세요. **제대로 된 이메일 주소**를 사용하세요. 암호를 입력하는 곳이 없다면 암호는 이 이메일로 보내집니다. 사용자명은 올바른 [[doku>pagename|pagename]] 이어야 합니다.

18 changes: 18 additions & 0 deletions inc/lang/ko/subscr_digest.txt
@@ -0,0 +1,18 @@
안녕하세요!

@TITLE@ 라는 제목의 페이지 @PAGE@ 가 변경되었습니다.

변경사항은 다음과 같습니다:

--------------------------------------------------------
@DIFF@
--------------------------------------------------------

옛날 것: @OLDPAGE@
새 것: @NEWPAGE@

이 페이지 변경알림의 설정을 바구려면, @DOKUWIKIURL@에 로그인한 뒤
@SUBSCRIBE@ 를 방문하여 페이지나 이름공간의 구독을 취소하세요.

--
@DOKUWIKIURL@의 DokuWiki가 자동으로 만들어낸 메일입니다.
3 changes: 3 additions & 0 deletions inc/lang/ko/subscr_form.txt
@@ -0,0 +1,3 @@
====== 구독 관리 ======

이 페이지는 현재의 페이지와 네임스페이스의 구독을 관리할 수있도록 해줍니다.

0 comments on commit 8f0a521

Please sign in to comment.