From dc1d1a3fcd0e6a9e4f1ba791e15765d68b09e6dc Mon Sep 17 00:00:00 2001 From: Michael Foster Date: Wed, 31 Jul 2013 16:22:27 -0400 Subject: [PATCH 1/3] Issue #125 --- inc/locale/pl_PL/LC_MESSAGES/tinyboard.mo | Bin 19790 -> 19840 bytes inc/locale/pl_PL/LC_MESSAGES/tinyboard.po | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/inc/locale/pl_PL/LC_MESSAGES/tinyboard.mo b/inc/locale/pl_PL/LC_MESSAGES/tinyboard.mo index 2a31d64e2b739bc537600e64426544aa1e58a4fe..bc603e6776603e1b1c86a613577a3c9ddc23aad2 100644 GIT binary patch delta 2375 zcmXZeeN5F=9LMo53dqC7f&@_!uk3=56&JW=aUU3&T@fmkEL&x32DN-j%q7$IW0f|g z`o~%cZj7x5TFw=?CQ*)DXtib|bEqrlR&Kdgvc;Oqp5CAPJAb{-IluGpJ>PTAg;PCg zUA<`^PGx!Tq?xU#Hd|z7lVP($EUqyt!&~qZT!q6Js5P63CvY*I!4Rg^nNhR~%)p17 zkKqjJZJ39fFdcVdDR$MFX9X1cXvoGv%)(DGfn%tJ(j#WmF^mczf&pBLIk?jKFlvEz zR3IBL6Srb6?!ejj5+?Cr#522r!p}4)!mFsrGH>+*Do1^<#?*p1m-{+&#|SRM zw@`Ou6gB=^ROT+BGBJtD?BA#(3lPN&?w=J=(3zCtYOF`yg;!AndQky+m&d2dAAEQ2j2WF5@4l z2`%Qoj!e9ZY7QzR_n|WK9ID?QRHk1+9c>?a+S%I_wD2$%;TY;{e{k(Tp(eV5<@hhE zUnp)?f>CV6wKxwCp%(lSm4Q>J`F=yKH-*KRogn}EP?qp7Nfj!PD5^b)+VQ=p)UQPi z>_7$7jmkt1s^5Fgk5HK#ah^cUJC4f0kElyOnIQj)=qe5Rfyry|7tY6JT<2oc*{y5z z&#VJ=#ye39?nRB?kGd-ZsGT20ZQvMc;W5`fjyF@Ez?(3`yVKuEE%KDD5i4;A^4nqk zs2xwBGBAlsea=$9z7S_qkD^lFih3PeP=WWj`eD?(=Wsqw$n;j=g$-^9h(i#m#vsCm9~UO_VES>SFzk`mN{ zb*PKiU)839!36e+F8{2>?Sk*VA?{|5wxO?@JZL+g}O6? zSj75vl7b?D1jE7l;O6q0a3WqCtf)v8WATWJm1+*hYQn)?yHf4y S6Ru)R4P$DnhDO5sOa2E15E6j^ delta 2325 zcmXZde@vBC9LMo5D8dDas4j%!MGYYZr*f|);YH9cw<~%xz$w)~=2CDnnk6mg_K<5b z%aQA9Yo;S}q$}rAHl3Dix#prD)XWW{wp=yWD$}7`|3vHk;W-=Qbt*j#b!agfphU+yoe=B%r4*<-h&6L%qs9Wmg2X_pWWqO z29}3?7h)#$Fy>+nPQ?UD_v+0ziV=K)Mm{|Xmi@DZC_XdTX^-i*pjr$<2%zl@4_H|F6U4B}g;6`pj@2VDIEmeKw> zs{fy;0B<`dP%F-U)L%dWDiaHwOPt;^3W{U}D)n*qU>$1U4XD7Lbv}p6P#bE%9#n>U zF&*DWjnnTujmp${)K(9nGWC=H+_S=E{)5?A#Dg$usFaT2W=ya4 z5APP#+2}>}KZ?rS04fuMsLXze+Ojds{iifE4-aKC%u9n=brIZvV9JCEAy z&rkynqi)AFd>luy9A_=}GZI6+*Mi!Dr%_wmfu2^jgMudR!2(R7_Vz>9eg>7=OE?d| zM!h$V#TbaPIxNGPxC=Gm+o%j2L5=qbYQD?(AdW=IzaHGCL5JiYR3L#`ze5nU;$l?l z%TOKbPyw}~GSP;5Z>Q5kWp1DIAZpw`R0cjm9s0pq@~?=l(4Z9lhzjUujB%WAp!Tk^ z-ruu2)Y(X&CftDPzX^3#x=<_MiyCJ?YT}e@@56=E`>_(g_b6y3w$h9%YkBxEHXz>) z>qM=%AC-YYRO&}v{T3Ed53KT2KL>R?qNu>zTzxlc+!HtpzeA1V{Y^nD$>8L0B`puR zSr$jmk#(c?_*2w-Kj2jS6-)7Vj9_le|IJv5Q>Z_W71)m2ibJSz-g90;GUnMB1x4}) zYQnSzes1#qvFy_Yne)XsTTd+X)eazc^z@}_rJz0C=Iq1_>Mx-V=Pp;@hwAtyYT(1J{g|ttKpoQ4&M#26;uoyKaa6x~ zYy2&$Tw_~oJ`JmAP^vmm6TgZ%*yBv0u1y~*<=>#*yNTNCJE%aj*ZKhzq0USgr(^xV pQ2uCWMk3h~i^rO3X1}m~=Z;O=qp^+anqtk(i6@f-Hy5Xh{|DN>1YiIF diff --git a/inc/locale/pl_PL/LC_MESSAGES/tinyboard.po b/inc/locale/pl_PL/LC_MESSAGES/tinyboard.po index ca4f7ea4..20802b7d 100644 --- a/inc/locale/pl_PL/LC_MESSAGES/tinyboard.po +++ b/inc/locale/pl_PL/LC_MESSAGES/tinyboard.po @@ -16,7 +16,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" #. There is no previous page. #: /var/www/html/Tinyboard/inc/functions.php:958 From d692bce68674934a4af2e9cba79d65e72279b0a9 Mon Sep 17 00:00:00 2001 From: Michael Foster Date: Wed, 31 Jul 2013 16:34:50 -0400 Subject: [PATCH 2/3] Fix issue #74. Note: This bug may break the display of certain filenames prior to upgrade. --- post.php | 6 +++--- templates/post_reply.html | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/post.php b/post.php index a82b56ad..8820db2d 100644 --- a/post.php +++ b/post.php @@ -284,7 +284,7 @@ if (isset($_POST['delete'])) { $post['has_file'] = !isset($post['embed']) && (($post['op'] && !isset($post['no_longer_require_an_image_for_op']) && $config['force_image_op']) || (isset($_FILES['file']) && $_FILES['file']['tmp_name'] != '')); if ($post['has_file']) - $post['filename'] = utf8tohtml(get_magic_quotes_gpc() ? stripslashes($_FILES['file']['name']) : $_FILES['file']['name']); + $post['filename'] = urldecode(get_magic_quotes_gpc() ? stripslashes($_FILES['file']['name']) : $_FILES['file']['name']); if (!($post['has_file'] || isset($post['embed'])) || (($post['op'] && $config['force_body_op']) || (!$post['op'] && $config['force_body']))) { $stripped_whitespace = preg_replace('/[\s]/u', '', $post['body']); @@ -347,7 +347,7 @@ if (isset($_POST['delete'])) { } else $noko = false; if ($post['has_file']) { - $post['extension'] = strtolower(substr($post['filename'], strrpos($post['filename'], '.') + 1)); + $post['extension'] = strtolower(mb_substr($post['filename'], mb_strrpos($post['filename'], '.') + 1)); if (isset($config['filename_func'])) $post['file_id'] = $config['filename_func']($post); else @@ -414,7 +414,7 @@ if (isset($_POST['delete'])) { $is_an_image = !in_array($post['extension'], $config['allowed_ext_files']); // Truncate filename if it is too long - $post['filename'] = substr($post['filename'], 0, $config['max_filename_len']); + $post['filename'] = mb_substr($post['filename'], 0, $config['max_filename_len']); $upload = $_FILES['file']['tmp_name']; diff --git a/templates/post_reply.html b/templates/post_reply.html index bc96e74c..b0391f19 100644 --- a/templates/post_reply.html +++ b/templates/post_reply.html @@ -66,9 +66,9 @@ {% if config.show_filename and post.filename %} , {% if post.filename|length > config.max_filename_display %} - {{ post.filename|truncate(config.max_filename_display)|bidi_cleanup }} + {{ post.filename|truncate(config.max_filename_display)|bidi_cleanup }} {% else %} - {{ post.filename|bidi_cleanup }} + {{ post.filename|e|bidi_cleanup }} {% endif %} {% endif %} {% if post.thumb != 'file' and config.image_identification %} From 6cdf6038754f18af4509ecf078f51894f63c5853 Mon Sep 17 00:00:00 2001 From: Michael Foster Date: Wed, 31 Jul 2013 16:38:09 -0400 Subject: [PATCH 3/3] Fix last commit; Make Tinyboard Twig extension more mb-safe --- inc/lib/Twig/Extensions/Extension/Tinyboard.php | 8 ++++---- templates/post_thread.html | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/inc/lib/Twig/Extensions/Extension/Tinyboard.php b/inc/lib/Twig/Extensions/Extension/Tinyboard.php index 61cf9fc9..58a98c40 100644 --- a/inc/lib/Twig/Extensions/Extension/Tinyboard.php +++ b/inc/lib/Twig/Extensions/Extension/Tinyboard.php @@ -83,9 +83,9 @@ function twig_hasPermission_filter($mod, $permission, $board = null) { } function twig_extension_filter($value, $case_insensitive = true) { - $ext = substr($value, strrpos($value, '.') + 1); + $ext = mb_substr($value, mb_strrpos($value, '.') + 1); if($case_insensitive) - $ext = strtolower($ext); + $ext = mb_strtolower($ext); return $ext; } @@ -96,11 +96,11 @@ function twig_sprintf_filter( $value, $var) { function twig_truncate_filter($value, $length = 30, $preserve = false, $separator = '…') { if (mb_strlen($value) > $length) { if ($preserve) { - if (false !== ($breakpoint = strpos($value, ' ', $length))) { + if (false !== ($breakpoint = mb_strpos($value, ' ', $length))) { $length = $breakpoint; } } - return substr($value, 0, $length) . $separator; + return mb_substr($value, 0, $length) . $separator; } return $value; } diff --git a/templates/post_thread.html b/templates/post_thread.html index 6d14f207..21add308 100644 --- a/templates/post_thread.html +++ b/templates/post_thread.html @@ -23,9 +23,9 @@ {% if config.show_filename and post.filename %} , {% if post.filename|length > config.max_filename_display %} - {{ post.filename|truncate(config.max_filename_display)|bidi_cleanup }} + {{ post.filename|truncate(config.max_filename_display)|bidi_cleanup }} {% else %} - {{ post.filename|bidi_cleanup }} + {{ post.filename|e|bidi_cleanup }} {% endif %} {% endif %} {% if post.thumb != 'file' and config.image_identification %}