mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
Replace KCODE checks with String#chars for truncate. Closes #6385 [Manfred Stienstra]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5300 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
This commit is contained in:
parent
d73f32ce00
commit
81ddeadd49
3 changed files with 6 additions and 9 deletions
|
@ -1,5 +1,7 @@
|
|||
*SVN*
|
||||
|
||||
* Replace KCODE checks with String#chars for truncate. Closes #6385 [Manfred Stienstra]
|
||||
|
||||
* Make page caching respect the format of the resource that is being requested even if the current route is the default route so that, e.g. posts.rss is not transformed by url_for to '/' and subsequently cached as '/index.html' when it should be cached as '/posts.rss'. [Marcel Molina Jr.]
|
||||
|
||||
* Use String#chars in TextHelper::excerpt. Closes #6386 [Manfred Stienstra]
|
||||
|
|
|
@ -20,13 +20,8 @@ module ActionView
|
|||
# if the +text+ is longer than +length+.
|
||||
def truncate(text, length = 30, truncate_string = "...")
|
||||
if text.nil? then return end
|
||||
l = length - truncate_string.length
|
||||
if $KCODE == "NONE"
|
||||
text.length > length ? text[0...l] + truncate_string : text
|
||||
else
|
||||
chars = text.split(//)
|
||||
chars.length > length ? chars[0...l].join + truncate_string : text
|
||||
end
|
||||
l = length - truncate_string.chars.length
|
||||
text.chars.length > length ? text.chars[0...l] + truncate_string : text
|
||||
end
|
||||
|
||||
# Highlights the +phrase+ where it is found in the +text+ by surrounding it like
|
||||
|
|
|
@ -29,8 +29,8 @@ class TextHelperTest < Test::Unit::TestCase
|
|||
assert_equal "\354\225\210\353\205\225\355...", truncate("\354\225\210\353\205\225\355\225\230\354\204\270\354\232\224", 10)
|
||||
end
|
||||
with_kcode 'u' do
|
||||
assert_equal "\354\225\204\353\246\254\353\236\221 \354\225\204\353\246\254\353\236 ...",
|
||||
truncate("\354\225\204\353\246\254\353\236\221 \354\225\204\353\246\254\353\236 \354\225\204\353\235\274\353\246\254\354\230\244", 10)
|
||||
assert_equal "\354\225\204\353\246\254\353\236\221 \354\225\204\353\246\254 ...",
|
||||
truncate("\354\225\204\353\246\254\353\236\221 \354\225\204\353\246\254 \354\225\204\353\235\274\353\246\254\354\230\244", 10)
|
||||
end
|
||||
end
|
||||
|
||||
|
|
Loading…
Reference in a new issue