Compare commits
12 commits
2b808ece4d
...
1f5c95b382
Author | SHA1 | Date | |
---|---|---|---|
1f5c95b382 | |||
|
e44b94a4bd | ||
|
944e9ba725 | ||
|
6de67ec6f9 | ||
|
598ce738f4 | ||
|
a09f9f21cb | ||
|
cf88f10b93 | ||
|
b1a9a7addb | ||
|
234bbfafd8 | ||
|
df992f97cb | ||
|
f4faa2178c | ||
|
07a871e686 |
10 changed files with 48 additions and 2 deletions
|
@ -143,4 +143,8 @@ class auth_password_test extends DokuWikiTest {
|
|||
}
|
||||
}
|
||||
|
||||
function test_verifyPassword_Woltlab()
|
||||
{
|
||||
$this->assertTrue(auth_verifyPassword('zQ9ZwsTvgufN', 'Bcrypt:$2y$12$ygz.4TeGn/NXEcXIE0pyge4lJyuSMqRdDPT5dW469lODb.HswSzjW'));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -86,6 +86,9 @@ class Export extends AbstractAction
|
|||
$headers['Content-Type'] = 'text/html; charset=utf-8';
|
||||
$output = p_wiki_xhtml($ID, $REV, false);
|
||||
break;
|
||||
case 'metadata':
|
||||
// metadata should not be exported
|
||||
break;
|
||||
default:
|
||||
$output = p_cached_output(wikiFN($ID, $REV), $mode, $ID);
|
||||
$headers = p_get_metadata($ID, "format $mode");
|
||||
|
|
|
@ -77,6 +77,11 @@ class MobileMenu implements MenuInterface
|
|||
$html .= '<optgroup label="' . $lang[$tools . '_tools'] . '">';
|
||||
foreach ($items as $item) {
|
||||
$params = $item->getParams();
|
||||
|
||||
// FIXME: $params['do'] is sometimes not set, it might be a symptom of some bug.
|
||||
// Such entries are silently skipped instead of generating bogus HTML code.
|
||||
if ( ! array_key_exists('do', $params) ) continue;
|
||||
|
||||
$html .= '<option value="' . $params['do'] . '">';
|
||||
$html .= hsc($item->getLabel());
|
||||
$html .= '</option>';
|
||||
|
|
|
@ -79,7 +79,10 @@ class PassHash
|
|||
$salt = $m[1];
|
||||
} elseif (preg_match('/^\$2([abxy])\$(.{2})\$/', $hash, $m)) {
|
||||
$method = 'bcrypt';
|
||||
$salt = $hash;
|
||||
$salt = $hash;
|
||||
} elseif (str_starts_with($hash, 'Bcrypt:$2')) {
|
||||
$method = 'woltlab';
|
||||
$salt = substr($hash, 7);
|
||||
} elseif (str_starts_with($hash, '{SSHA}')) {
|
||||
$method = 'ssha';
|
||||
$salt = substr(base64_decode(substr($hash, 6)), 20);
|
||||
|
@ -685,6 +688,21 @@ class PassHash
|
|||
return crypt($clear, $salt);
|
||||
}
|
||||
|
||||
/**
|
||||
* Password hashing method 'woltlab'
|
||||
*
|
||||
* Woltlab forums use a bcrypt hash with a custom prefix.
|
||||
*
|
||||
* @param $clear
|
||||
* @param $salt
|
||||
* @return string
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function hash_woltlab($clear, $salt = null)
|
||||
{
|
||||
return 'Bcrypt:' . $this->hash_bcrypt($clear, $salt);
|
||||
}
|
||||
|
||||
/**
|
||||
* Password hashing method SHA-2
|
||||
*
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
/**
|
||||
* @license GPL 2 (http://www.gnu.org/licenses/gpl.html)
|
||||
*
|
||||
* @author nakky <nakky@naver.com>
|
||||
* @author merefox retronica <merefox@naver.com>
|
||||
* @author take <take@ruu.kr>
|
||||
* @author merefox <admin@homerecz.com>
|
||||
|
@ -156,6 +157,8 @@ $lang['profdeleted'] = '당신의 사용자 계정이 이 위키에서
|
|||
$lang['profconfdelete'] = '이 위키에서 내 계정을 제거하고 싶습니다. <br/> 이 행동은 되돌릴 수 없습니다.';
|
||||
$lang['profconfdeletemissing'] = '선택하지 않은 확인 상자를 확인';
|
||||
$lang['proffail'] = '사용자 프로필이 업데이트되지 않았습니다.';
|
||||
$lang['proftokenlegend'] = '인증 토큰';
|
||||
$lang['proftokengenerate'] = '토큰 재설정';
|
||||
$lang['pwdforget'] = '비밀번호를 잊으셨나요? 비밀번호를 재설정하세요';
|
||||
$lang['resendna'] = '이 위키는 비밀번호 재설정을 지원하지 않습니다.';
|
||||
$lang['resendpwd'] = '다음으로 새 비밀번호 보내기';
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
/**
|
||||
* @license GPL 2 (http://www.gnu.org/licenses/gpl.html)
|
||||
*
|
||||
* @author Ekin <ata.ekin@windowslive.com>
|
||||
* @author Eren <bosshyapma@protonmail.com>
|
||||
* @author Hakan <hakandursun2009@gmail.com>
|
||||
* @author mahir <mahirtakak@gmail.com>
|
||||
|
@ -152,6 +153,8 @@ $lang['profdeleted'] = 'Bu wiki\'den hesabınız silindi';
|
|||
$lang['profconfdelete'] = 'Bu wiki\'den hesabımı silmek istiyorum. <br/>Bu işlem geri alınamaz';
|
||||
$lang['profconfdeletemissing'] = 'Onay kutusu işaretlenmedi';
|
||||
$lang['proffail'] = 'Kullanıcı bilgileri güncellenmedi.';
|
||||
$lang['proftokenlegend'] = 'Doğrulama Belirteci';
|
||||
$lang['proftokengenerate'] = 'Sıfırlama Belirteci';
|
||||
$lang['pwdforget'] = 'Parolanızı mı unuttunuz? Yeni bir parola alın';
|
||||
$lang['resendna'] = 'Bu wiki parolayı tekrar göndermeyi desteklememektedir.';
|
||||
$lang['resendpwd'] = 'İçin yeni şifre belirle';
|
||||
|
@ -222,6 +225,7 @@ $lang['created'] = 'oluşturuldu';
|
|||
$lang['restored'] = 'eski sürüme dönüldü (%s)';
|
||||
$lang['external_edit'] = 'Dışarıdan düzenle';
|
||||
$lang['summary'] = 'Özeti düzenle';
|
||||
$lang['unknowndate'] = 'Bilinmeyen tarih';
|
||||
$lang['noflash'] = 'Bu içeriği göstermek için <a href="http://get.adobe.com/flashplayer">Adobe Flash Eklentisi</a> gerekmektedir.';
|
||||
$lang['download'] = 'Parçacığı indir';
|
||||
$lang['tools'] = 'Alet';
|
||||
|
@ -362,3 +366,6 @@ $lang['plainhtml'] = 'Yalın HTML';
|
|||
$lang['wikimarkup'] = 'Wiki Biçimlendirmesi';
|
||||
$lang['email_signature_text'] = 'Bu e-posta aşağıdaki DokuWiki tarafından otomatik olarak oluşturulmuştur
|
||||
@DOKUWIKIURL@';
|
||||
$lang['log_file_too_large'] = 'Kayıt dosyası fazla büyük. Önceki sıralar atlandı!';
|
||||
$lang['log_file_failed_to_open'] = 'Kayıt dosyası açılamadı.';
|
||||
$lang['log_file_failed_to_read'] = 'Bu kaydı okurken bir sorun oluştu.';
|
||||
|
|
|
@ -108,6 +108,8 @@ class Doku_Renderer_metadata extends Doku_Renderer
|
|||
if (!isset($this->meta['date']['modified'])) {
|
||||
$this->meta['date']['modified'] = filemtime(wikiFN($ID));
|
||||
}
|
||||
|
||||
$this->doc = '';
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -378,7 +378,7 @@ function store_data($d)
|
|||
$d['policy'] = (int)$d['policy'];
|
||||
|
||||
// create local.php
|
||||
$now = gmdate('r');
|
||||
$now = date('r');
|
||||
$output = <<<EOT
|
||||
<?php
|
||||
/**
|
||||
|
|
|
@ -3,6 +3,8 @@
|
|||
/**
|
||||
* @license GPL 2 (http://www.gnu.org/licenses/gpl.html)
|
||||
*
|
||||
* @author Ekin <ata.ekin@windowslive.com>
|
||||
* @author ilker rifat kapaç <irifat@gmail.com>
|
||||
*/
|
||||
$lang['bindpw'] = 'Üstteki kullanıcının şifresi';
|
||||
$lang['referrals_o_-1'] = 'varsayılanı kullan';
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
/**
|
||||
* @license GPL 2 (http://www.gnu.org/licenses/gpl.html)
|
||||
*
|
||||
* @author Ekin <ata.ekin@windowslive.com>
|
||||
* @author Eren <bosshyapma@protonmail.com>
|
||||
* @author Hakan <hakandursun2009@gmail.com>
|
||||
* @author mahir <mahirtakak@gmail.com>
|
||||
|
@ -35,6 +36,7 @@ $lang['_anti_spam'] = 'Spam Engelleme Ayarları';
|
|||
$lang['_editing'] = 'Sayfa Yazımı Ayarları';
|
||||
$lang['_links'] = 'Bağlantı Ayarları';
|
||||
$lang['_media'] = 'Medya Ayarları';
|
||||
$lang['_notifications'] = 'Bildirim';
|
||||
$lang['_advanced'] = 'Gelişmiş Ayarlar';
|
||||
$lang['_network'] = 'Ağ Ayarları';
|
||||
$lang['_msg_setting_undefined'] = 'Ayar üstverisi yok.';
|
||||
|
|
Loading…
Reference in a new issue