Browse Source

Merge pull request #5407 from ADmad/3.0-string-template-trait

3.0 - Move StringTemplateTrait to more appropriate namespace.
Mark Story 11 years ago
parent
commit
d6f63ac09d

+ 1 - 1
src/View/Helper/FormHelper.php

@@ -28,7 +28,7 @@ use Cake\View\Form\EntityContext;
 use Cake\View\Form\NullContext;
 use Cake\View\Helper;
 use Cake\View\Helper\IdGeneratorTrait;
-use Cake\View\Helper\StringTemplateTrait;
+use Cake\View\StringTemplateTrait;
 use Cake\View\View;
 use Cake\View\Widget\WidgetRegistry;
 use DateTime;

+ 1 - 1
src/View/Helper/HtmlHelper.php

@@ -17,7 +17,7 @@ namespace Cake\View\Helper;
 use Cake\Core\Configure;
 use Cake\Network\Response;
 use Cake\View\Helper;
-use Cake\View\Helper\StringTemplateTrait;
+use Cake\View\StringTemplateTrait;
 use Cake\View\View;
 
 /**

+ 1 - 0
src/View/Helper/PaginatorHelper.php

@@ -16,6 +16,7 @@ namespace Cake\View\Helper;
 
 use Cake\Utility\Inflector;
 use Cake\View\Helper;
+use Cake\View\StringTemplateTrait;
 use Cake\View\View;
 
 /**

+ 1 - 1
src/View/Helper/SessionHelper.php

@@ -15,7 +15,7 @@
 namespace Cake\View\Helper;
 
 use Cake\View\Helper;
-use Cake\View\Helper\StringTemplateTrait;
+use Cake\View\StringTemplateTrait;
 
 /**
  * Session Helper.

+ 9 - 64
src/View/Helper/StringTemplateTrait.php

@@ -12,69 +12,14 @@
  * @since         3.0.0
  * @license       http://www.opensource.org/licenses/mit-license.php MIT License
  */
-namespace Cake\View\Helper;
 
-/**
- * Adds string template functionality to any class by providing methods to
- * load and parse string templates.
- */
-trait StringTemplateTrait {
-
-/**
- * StringTemplate instance.
- *
- * @var \Cake\View\StringTemplate
- */
-	protected $_templater;
-
-/**
- * Get/set templates to use.
- *
- * @param string|null|array $templates null or string allow reading templates. An array
- *   allows templates to be added.
- * @return $this|string|array
- */
-	public function templates($templates = null) {
-		if ($templates === null || is_string($templates)) {
-			return $this->templater()->get($templates);
-		}
-
-		$this->templater()->add($templates);
-		return $this;
-	}
-
-/**
- * Format a template string with $data
- *
- * @param string $name The template name.
- * @param array $data The data to insert.
- * @return string
- */
-	public function formatTemplate($name, $data) {
-		return $this->templater()->format($name, $data);
-	}
-
-/**
- * templater
- *
- * @return \Cake\View\StringTemplate
- */
-	public function templater() {
-		if (empty($this->_templater)) {
-			$class = $this->config('templateClass') ?: 'Cake\View\StringTemplate';
-			$this->_templater = new $class();
-
-			$templates = $this->config('templates');
-			if ($templates) {
-				if (is_string($templates)) {
-					$this->_templater->add($this->_defaultConfig['templates']);
-					$this->_templater->load($templates);
-				} else {
-					$this->_templater->add($templates);
-				}
-			}
-		}
-		return $this->_templater;
-	}
+class_alias('Cake\View\StringTemplateTrait', 'Cake\View\Helper\StringTemplateTrait');
 
-}
+trigger_error(
+	sprintf(
+		'%s has been moved. Use %s instead.',
+		'Cake\View\Helper\StringTemplateTrait',
+		'Cake\View\StringTemplateTrait'
+	),
+	E_USER_WARNING
+);

+ 1 - 1
src/View/Helper/TimeHelper.php

@@ -16,7 +16,7 @@ namespace Cake\View\Helper;
 
 use Cake\I18n\Time;
 use Cake\View\Helper;
-use Cake\View\Helper\StringTemplateTrait;
+use Cake\View\StringTemplateTrait;
 
 /**
  * Time Helper class for easy use of time data.

+ 80 - 0
src/View/StringTemplateTrait.php

@@ -0,0 +1,80 @@
+<?php
+/**
+ * CakePHP(tm) : Rapid Development Framework (http://cakephp.org)
+ * Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
+ *
+ * Licensed under The MIT License
+ * For full copyright and license information, please see the LICENSE.txt
+ * Redistributions of files must retain the above copyright notice.
+ *
+ * @copyright     Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
+ * @link          http://cakephp.org CakePHP(tm) Project
+ * @since         3.0.0
+ * @license       http://www.opensource.org/licenses/mit-license.php MIT License
+ */
+namespace Cake\View;
+
+/**
+ * Adds string template functionality to any class by providing methods to
+ * load and parse string templates.
+ */
+trait StringTemplateTrait {
+
+/**
+ * StringTemplate instance.
+ *
+ * @var \Cake\View\StringTemplate
+ */
+	protected $_templater;
+
+/**
+ * Get/set templates to use.
+ *
+ * @param string|null|array $templates null or string allow reading templates. An array
+ *   allows templates to be added.
+ * @return $this|string|array
+ */
+	public function templates($templates = null) {
+		if ($templates === null || is_string($templates)) {
+			return $this->templater()->get($templates);
+		}
+
+		$this->templater()->add($templates);
+		return $this;
+	}
+
+/**
+ * Format a template string with $data
+ *
+ * @param string $name The template name.
+ * @param array $data The data to insert.
+ * @return string
+ */
+	public function formatTemplate($name, $data) {
+		return $this->templater()->format($name, $data);
+	}
+
+/**
+ * templater
+ *
+ * @return \Cake\View\StringTemplate
+ */
+	public function templater() {
+		if (empty($this->_templater)) {
+			$class = $this->config('templateClass') ?: 'Cake\View\StringTemplate';
+			$this->_templater = new $class();
+
+			$templates = $this->config('templates');
+			if ($templates) {
+				if (is_string($templates)) {
+					$this->_templater->add($this->_defaultConfig['templates']);
+					$this->_templater->load($templates);
+				} else {
+					$this->_templater->add($templates);
+				}
+			}
+		}
+		return $this->_templater;
+	}
+
+}

+ 2 - 3
tests/TestCase/View/Helper/StringTemplateTraitTest.php

@@ -12,12 +12,11 @@
  * @since         3.0.0
  * @license       http://www.opensource.org/licenses/mit-license.php MIT License
  */
-namespace Cake\Test\TestCase\View\Helper;
+namespace Cake\Test\TestCase\View;
 
 use Cake\Core\InstanceConfigTrait;
 use Cake\TestSuite\TestCase;
-use Cake\View\Helper\StringTemplate;
-use Cake\View\Helper\StringTemplateTrait;
+use Cake\View\StringTemplateTrait;
 
 /**
  * TestStringTemplate