From 0935e47a721787c830e6d85ed59a3e4d4d58846c Mon Sep 17 00:00:00 2001 From: "C. Scott Ananian" Date: Wed, 13 Jun 2018 13:49:29 -0400 Subject: Remove most uses of deprecated Language::truncate() The Language::truncate() function was split into Language::truncateForVisual() (which measures characters) and Language::truncateForDatabase() (which measures bytes) in 1.31, but the patch which soft-deprecated Language::truncate() didn't actually remove all the uses in the codebase. Replace most of those old uses now, which should actually improve the situation for non-latin-alphabet users who were getting unfairly squeezed in a number of places. Bug: T197492 Change-Id: I2291c69d9df17c1a9e4ab1b7d4cbc73bc51d3ebb --- includes/CommentStore.php | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) (limited to 'includes/CommentStore.php') diff --git a/includes/CommentStore.php b/includes/CommentStore.php index 8a1901c747a5..484b8464dd15 100644 --- a/includes/CommentStore.php +++ b/includes/CommentStore.php @@ -458,16 +458,7 @@ class CommentStore { $comment = CommentStoreComment::newUnsavedComment( $comment, $data ); # Truncate comment in a Unicode-sensitive manner - $comment->text = $this->lang->truncate( $comment->text, self::MAX_COMMENT_LENGTH ); - if ( mb_strlen( $comment->text, 'UTF-8' ) > self::COMMENT_CHARACTER_LIMIT ) { - $ellipsis = wfMessage( 'ellipsis' )->inLanguage( $this->lang )->escaped(); - if ( mb_strlen( $ellipsis ) >= self::COMMENT_CHARACTER_LIMIT ) { - // WTF? - $ellipsis = '...'; - } - $maxLength = self::COMMENT_CHARACTER_LIMIT - mb_strlen( $ellipsis, 'UTF-8' ); - $comment->text = mb_substr( $comment->text, 0, $maxLength, 'UTF-8' ) . $ellipsis; - } + $comment->text = $this->lang->truncateForVisual( $comment->text, self::COMMENT_CHARACTER_LIMIT ); if ( $this->stage > MIGRATION_OLD && !$comment->id ) { $dbData = $comment->data; @@ -530,7 +521,7 @@ class CommentStore { $comment = $this->createComment( $dbw, $comment, $data ); if ( $this->stage <= MIGRATION_WRITE_BOTH ) { - $fields[$key] = $this->lang->truncate( $comment->text, 255 ); + $fields[$key] = $this->lang->truncateForDatabase( $comment->text, 255 ); } if ( $this->stage >= MIGRATION_WRITE_BOTH ) { -- cgit v1.2.3