Browse Source

Added render_each helper.

Taylor Otwell 12 years ago
parent
commit
0e4a63606f
3 changed files with 16 additions and 16 deletions
  1. 0 14
      laravel/blade.php
  2. 14 0
      laravel/helpers.php
  3. 2 2
      laravel/view.php

+ 0 - 14
laravel/blade.php

@@ -18,7 +18,6 @@ class Blade {
 		'yields',
 		'section_start',
 		'section_end',
-		'render_each',
 	);
 
 	/**
@@ -239,19 +238,6 @@ class Blade {
 		return preg_replace('/@endsection/', '<?php \\Laravel\\Section::stop(); ?>', $value);
 	}
 
-	/**
-	 * Rewrites Blade @render_each statements into View statements.
-	 *
-	 * @param  string  $value
-	 * @return string
-	 */
-	protected static function compile_render_each($value)
-	{
-		$pattern = static::matcher('render_each');
-
-		return preg_replace($pattern, '$1<?php \\Laravel\\View::render_each$2; ?>', $value);
-	}
-
 	/**
 	 * Get the regular expression for a generic Blade function.
 	 *

+ 14 - 0
laravel/helpers.php

@@ -436,4 +436,18 @@ function has_php($version)
 function render($view, $data = array())
 {
 	return Laravel\View::make($view, $data)->render();
+}
+
+/**
+ * Get the rendered contents of a partial from a loop.
+ *
+ * @param  string  $view
+ * @param  array   $data
+ * @param  string  $iterator
+ * @param  string  $empty
+ * @return string
+ */
+function render_each($partial, array $data, $iterator, $empty = 'raw|')
+{
+	return Laravel\View::render_each($partial, $data, $iterator, $empty);
 }

+ 2 - 2
laravel/view.php

@@ -232,7 +232,7 @@ class View implements ArrayAccess {
 	 * @param  string  $empty
 	 * @return string
 	 */
-	public static function render_each($view, array $data, $iterator, $empty = null)
+	public static function render_each($view, array $data, $iterator, $empty = 'raw|')
 	{
 		$result = '';
 
@@ -260,7 +260,7 @@ class View implements ArrayAccess {
 			}
 			else
 			{
-				$result = render($empty ?: $view.'_empty');
+				$result = render($empty);
 			}
 		}