diff options
| author | czaks <marcin@6irc.net> | 2013-07-31 14:54:20 -0400 |
|---|---|---|
| committer | czaks <marcin@6irc.net> | 2013-07-31 14:54:20 -0400 |
| commit | 55c7146d884005f70d15e991a9e8ea31b7021361 (patch) | |
| tree | 57b6548601dfd1542febe05375efe49d439e1fb4 /inc/mod/pages.php | |
| parent | ee23ec1e24bb2a0cec24af011012e95652ce85a9 (diff) | |
| parent | 8e4c493a4c5bbff07483fd4a11c44c687c99e441 (diff) | |
Merge branch 'master' of https://github.com/savetheinternet/Tinyboard
Conflicts:
inc/config.php
inc/display.php
inc/functions.php
inc/image.php
js/expand.js
js/hide-threads.js
js/local-time.js
js/smartphone-spoiler.js
templates/header.html
templates/index.html
templates/main.js
templates/page.html
templates/post_reply.html
templates/post_thread.html
templates/thread.html
Diffstat (limited to 'inc/mod/pages.php')
| -rw-r--r-- | inc/mod/pages.php | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/inc/mod/pages.php b/inc/mod/pages.php index ab4cdaaf..08604039 100644 --- a/inc/mod/pages.php +++ b/inc/mod/pages.php @@ -446,6 +446,23 @@ function mod_new_board() { if (!preg_match('/^' . $config['board_regex'] . '$/u', $_POST['uri'])) error(sprintf($config['error']['invalidfield'], 'URI')); + $bytes = 0; + $chars = preg_split('//u', $_POST['uri'], -1, PREG_SPLIT_NO_EMPTY); + foreach ($chars as $char) { + $o = 0; + $ord = ordutf8($char, $o); + if ($ord > 0x0080) + $bytes += 5; // @01ff + else + $bytes ++; + } + $bytes + strlen('posts_.frm'); + + if ($bytes > 255) { + error('Your filesystem cannot handle a board URI of that length (' . $bytes . '/255 bytes)'); + exit; + } + if (openBoard($_POST['uri'])) { error(sprintf($config['error']['boardexists'], $board['url'])); } |
