From 91998735b91e1dd90008ea8fee4e7cd52cad185c Mon Sep 17 00:00:00 2001 From: Taylor Otwell Date: Sat, 24 Mar 2012 09:22:05 -0500 Subject: [PATCH] Improve the @layout blade expression, allow dynamic specification of templates. --- laravel/blade.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/laravel/blade.php b/laravel/blade.php index e0381a68..ea9575af 100644 --- a/laravel/blade.php +++ b/laravel/blade.php @@ -119,9 +119,9 @@ protected static function compile_layouts($value) // be located on the first line of the template contents. $lines = preg_split("/(\r?\n)/", $value); - $layout = static::extract($lines[0], '@layout'); + $pattern = static::matcher('layout'); - $lines[] = ""; + $lines[] = preg_replace($pattern, '$1@include$2', $lines[0]); // We will add a "render" statement to the end of the templates and // and then slice off the @layout shortcut from the start so the @@ -137,7 +137,7 @@ protected static function compile_layouts($value) */ protected static function extract($value, $expression) { - preg_match('/'.$expression.'(\s*\(.*\))(\s*)/', $value, $matches); + preg_match('/@layout(\s*\(.*\))(\s*)/', $value, $matches); return str_replace(array("('", "')"), '', $matches[1]); }