Browse Source

This is a hotfix for TextHelper which seems to have gone wrong in a merge. tail() is missing completly and the docs for truncate() are the ones for tail(). This fixes it.

euromark 12 years ago
parent
commit
47167f5735
2 changed files with 28 additions and 4 deletions
  1. 27 3
      src/View/Helper/TextHelper.php
  2. 1 1
      tests/TestCase/View/Helper/TextHelperTest.php

+ 27 - 3
src/View/Helper/TextHelper.php

@@ -277,15 +277,16 @@ class TextHelper extends Helper {
 	}
 
 /**
- * Truncates text starting from the end.
+ * Truncates text.
  *
- * Cuts a string to the length of $length and replaces the first characters
+ * Cuts a string to the length of $length and replaces the last characters
  * with the ellipsis if the text is longer than length.
  *
  * ### Options:
  *
- * - `ellipsis` Will be used as Beginning and prepended to the trimmed string
+ * - `ellipsis` Will be used as Ending and appended to the trimmed string (`ending` is deprecated)
  * - `exact` If false, $text will not be cut mid-word
+ * - `html` If true, HTML tags would be handled correctly
  *
  * @see String::truncate()
  *
@@ -300,6 +301,29 @@ class TextHelper extends Helper {
 	}
 
 /**
+ * Truncates text starting from the end.
+ *
+ * Cuts a string to the length of $length and replaces the first characters
+ * with the ellipsis if the text is longer than length.
+ *
+ * ### Options:
+ *
+ * - `ellipsis` Will be used as Beginning and prepended to the trimmed string
+ * - `exact` If false, $text will not be cut mid-word
+ *
+ * @see String::truncate()
+ *
+ * @param string $text String to truncate.
+ * @param integer $length Length of returned string, including ellipsis.
+ * @param array $options An array of html attributes and options.
+ * @return string Trimmed string.
+ * @link http://book.cakephp.org/2.0/en/core-libraries/helpers/text.html#TextHelper::tail
+ */
+	public function tail($text, $length = 100, $options = array()) {
+		return $this->_engine->tail($text, $length, $options);
+	}
+
+/**
  * Extracts an excerpt from the text surrounding the phrase with a number of characters on each side
  * determined by radius.
  *

+ 1 - 1
tests/TestCase/View/Helper/TextHelperTest.php

@@ -84,7 +84,7 @@ class TextHelperTest extends TestCase {
  */
 	public function testTextHelperProxyMethodCalls() {
 		$methods = array(
-			'stripLinks', 'excerpt', 'toList',
+			'stripLinks', 'excerpt', 'toList', 'tail',
 		);
 		$String = $this->getMock(__NAMESPACE__ . '\StringMock', $methods);
 		$Text = new TextHelperTestObject($this->View, array('engine' => __NAMESPACE__ . '\StringMock'));