Illuminate \ View \ ViewException (E_ERROR)
syntax error, unexpected '|', expecting variable (T_VARIABLE) (View: /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/resources/views/single.blade.php)
Previous exceptions
  • syntax error, unexpected '|', expecting variable (T_VARIABLE) (0)
Illuminate\View\ViewException thrown with message "syntax error, unexpected '|', expecting variable (T_VARIABLE) (View: /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/resources/views/single.blade.php)" Stacktrace: #28 Illuminate\View\ViewException in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/cocur/slugify/src/SlugifyInterface.php:35 #27 Illuminate\View\Engines\CompilerEngine:handleViewException in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/view/Engines/PhpEngine.php:43 #26 ParseError in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/cocur/slugify/src/SlugifyInterface.php:35 #25 Composer\Autoload\{closure} in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/composer/ClassLoader.php:427 #24 Composer\Autoload\ClassLoader:loadClass in [internal]:0 #23 spl_autoload_call in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/caseyamcl/toc/src/UniqueSlugify.php:31 #22 include in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/composer/ClassLoader.php:576 #21 Composer\Autoload\{closure} in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/composer/ClassLoader.php:427 #20 Composer\Autoload\ClassLoader:loadClass in [internal]:0 #19 spl_autoload_call in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/caseyamcl/toc/src/MarkupFixer.php:56 #18 TOC\MarkupFixer:__construct in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/app/View/Composers/BlogPost.php:20 #17 App\View\Composers\BlogPost:override in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/roots/acorn/src/Acorn/View/Composer.php:72 #16 Roots\Acorn\View\Composer:merge in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/roots/acorn/src/Acorn/View/Composer.php:59 #15 Roots\Acorn\View\Composer:compose in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/view/Concerns/ManagesEvents.php:124 #14 Illuminate\View\Factory:Illuminate\View\Concerns\{closure} in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/events/Dispatcher.php:381 #13 Illuminate\Events\Dispatcher:Illuminate\Events\{closure} in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/events/Dispatcher.php:226 #12 Illuminate\Events\Dispatcher:dispatch in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/view/Concerns/ManagesEvents.php:177 #11 Illuminate\View\Factory:callComposer in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/view/View.php:120 #10 Illuminate\View\View:renderContents in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/view/View.php:91 #9 Illuminate\View\View:render in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/storage/framework/views/2bc8d2ea874031e3ddb3a557319b7cad31a2f2d3.php:3 #8 include in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/view/Engines/PhpEngine.php:41 #7 Illuminate\View\Engines\PhpEngine:evaluatePath in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/view/Engines/CompilerEngine.php:57 #6 Illuminate\View\Engines\CompilerEngine:get in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/view/View.php:139 #5 Illuminate\View\View:getContents in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/view/View.php:122 #4 Illuminate\View\View:renderContents in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/view/View.php:91 #3 Illuminate\View\View:render in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/index.php:4 #2 include in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/wp/wp-includes/template-loader.php:106 #1 require_once in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/wp/wp-blog-header.php:19 #0 require in /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/index.php:6
28
Illuminate\View\ViewException
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/cocur/slugify/src/SlugifyInterface.php35
27
Illuminate\View\Engines\CompilerEngine handleViewException
/vendor/illuminate/view/Engines/PhpEngine.php43
26
ParseError
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/cocur/slugify/src/SlugifyInterface.php35
25
Composer\Autoload\{closure}
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/composer/ClassLoader.php427
24
Composer\Autoload\ClassLoader loadClass
[internal]0
23
spl_autoload_call
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/caseyamcl/toc/src/UniqueSlugify.php31
22
include
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/composer/ClassLoader.php576
21
Composer\Autoload\{closure}
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/composer/ClassLoader.php427
20
Composer\Autoload\ClassLoader loadClass
[internal]0
19
spl_autoload_call
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/caseyamcl/toc/src/MarkupFixer.php56
18
TOC\MarkupFixer __construct
/app/View/Composers/BlogPost.php20
17
App\View\Composers\BlogPost override
/vendor/roots/acorn/src/Acorn/View/Composer.php72
16
Roots\Acorn\View\Composer merge
/vendor/roots/acorn/src/Acorn/View/Composer.php59
15
Roots\Acorn\View\Composer compose
/vendor/illuminate/view/Concerns/ManagesEvents.php124
14
Illuminate\View\Factory Illuminate\View\Concerns\{closure}
/vendor/illuminate/events/Dispatcher.php381
13
Illuminate\Events\Dispatcher Illuminate\Events\{closure}
/vendor/illuminate/events/Dispatcher.php226
12
Illuminate\Events\Dispatcher dispatch
/vendor/illuminate/view/Concerns/ManagesEvents.php177
11
Illuminate\View\Factory callComposer
/vendor/illuminate/view/View.php120
10
Illuminate\View\View renderContents
/vendor/illuminate/view/View.php91
9
Illuminate\View\View render
/storage/framework/views/2bc8d2ea874031e3ddb3a557319b7cad31a2f2d3.php3
8
include
/vendor/illuminate/view/Engines/PhpEngine.php41
7
Illuminate\View\Engines\PhpEngine evaluatePath
/vendor/illuminate/view/Engines/CompilerEngine.php57
6
Illuminate\View\Engines\CompilerEngine get
/vendor/illuminate/view/View.php139
5
Illuminate\View\View getContents
/vendor/illuminate/view/View.php122
4
Illuminate\View\View renderContents
/vendor/illuminate/view/View.php91
3
Illuminate\View\View render
/index.php4
2
include
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/wp/wp-includes/template-loader.php106
1
require_once
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/wp/wp-blog-header.php19
0
require
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/index.php6
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/cocur/slugify/src/SlugifyInterface.php
 *
 * @package   org.cocur.slugify
 * @author    Florian Eckerstorfer <florian@eckerstorfer.co>
 * @author    Marchenko Alexandr
 * @copyright 2012-2014 Florian Eckerstorfer
 * @license   http://www.opensource.org/licenses/MIT The MIT License
 */
interface SlugifyInterface
{
    /**
     * Return a URL safe version of a string.
     *
     * @param string            $string
     * @param string|array|null $options
     *
     * @return string
     *
     * @api
     */
    public function slugify(string $string, array|string|null $options = null): string;
}
 
Arguments
  1. "syntax error, unexpected '|', expecting variable (T_VARIABLE) (View: /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/resources/views/single.blade.php)"
    
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/view/Engines/PhpEngine.php
     *
     * @param  string  $__path
     * @param  array  $__data
     * @return string
     */
    protected function evaluatePath($__path, $__data)
    {
        $obLevel = ob_get_level();
 
        ob_start();
 
        extract($__data, EXTR_SKIP);
 
        // We'll evaluate the contents of the view inside a try/catch block so we can
        // flush out any stray output that might get out before an error occurs or
        // an exception is thrown. This prevents any partial views from leaking.
        try {
            include $__path;
        } catch (Throwable $e) {
            $this->handleViewException($e, $obLevel);
        }
 
        return ltrim(ob_get_clean());
    }
 
    /**
     * Handle a view exception.
     *
     * @param  \Throwable  $e
     * @param  int  $obLevel
     * @return void
     *
     * @throws \Throwable
     */
    protected function handleViewException(Throwable $e, $obLevel)
    {
        while (ob_get_level() > $obLevel) {
            ob_end_clean();
        }
 
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/cocur/slugify/src/SlugifyInterface.php
 *
 * @package   org.cocur.slugify
 * @author    Florian Eckerstorfer <florian@eckerstorfer.co>
 * @author    Marchenko Alexandr
 * @copyright 2012-2014 Florian Eckerstorfer
 * @license   http://www.opensource.org/licenses/MIT The MIT License
 */
interface SlugifyInterface
{
    /**
     * Return a URL safe version of a string.
     *
     * @param string            $string
     * @param string|array|null $options
     *
     * @return string
     *
     * @api
     */
    public function slugify(string $string, array|string|null $options = null): string;
}
 
Arguments
  1. "syntax error, unexpected '|', expecting variable (T_VARIABLE)"
    
Exception message: syntax error, unexpected '|', expecting variable (T_VARIABLE)
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/composer/ClassLoader.php
    public function unregister()
    {
        spl_autoload_unregister(array($this, 'loadClass'));
 
        if (null !== $this->vendorDir) {
            unset(self::$registeredLoaders[$this->vendorDir]);
        }
    }
 
    /**
     * Loads the given class or interface.
     *
     * @param  string    $class The name of the class
     * @return true|null True if loaded, null otherwise
     */
    public function loadClass($class)
    {
        if ($file = $this->findFile($class)) {
            $includeFile = self::$includeFile;
            $includeFile($file);
 
            return true;
        }
 
        return null;
    }
 
    /**
     * Finds the path to the file where the class is defined.
     *
     * @param string $class The name of the class
     *
     * @return string|false The path if found, false otherwise
     */
    public function findFile($class)
    {
        // class map lookup
        if (isset($this->classMap[$class])) {
            return $this->classMap[$class];
        }
[internal]
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/caseyamcl/toc/src/UniqueSlugify.php
 *
 * For the full copyright and license information, please view the LICENSE.md
 * file that was distributed with this source code.
 *
 * ------------------------------------------------------------------
 */
 
declare(strict_types=1);
 
namespace TOC;
 
use Cocur\Slugify\Slugify;
use Cocur\Slugify\SlugifyInterface;
 
/**
 * UniqueSlugify creates slugs from text without repeating the same slug twice per instance
 *
 * @author Casey McLaughlin <caseyamcl@gmail.com>
 */
class UniqueSlugify implements SlugifyInterface
{
    /**
     * @var SlugifyInterface
     */
    private $slugify;
 
    /**
     * @var array
     */
    private $used;
 
    /**
     * Constructor
     *
     * @param SlugifyInterface|null $slugify
     */
    public function __construct(?SlugifyInterface $slugify = null)
    {
        $this->used = array();
        $this->slugify = $slugify ?: new Slugify();
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/composer/ClassLoader.php
 
    /**
     * @return void
     */
    private static function initializeIncludeClosure()
    {
        if (self::$includeFile !== null) {
            return;
        }
 
        /**
         * Scope isolated include.
         *
         * Prevents access to $this/self from included files.
         *
         * @param  string $file
         * @return void
         */
        self::$includeFile = \Closure::bind(static function($file) {
            include $file;
        }, null, null);
    }
}
 
Arguments
  1. "/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/caseyamcl/toc/src/UniqueSlugify.php"
    
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/composer/ClassLoader.php
    public function unregister()
    {
        spl_autoload_unregister(array($this, 'loadClass'));
 
        if (null !== $this->vendorDir) {
            unset(self::$registeredLoaders[$this->vendorDir]);
        }
    }
 
    /**
     * Loads the given class or interface.
     *
     * @param  string    $class The name of the class
     * @return true|null True if loaded, null otherwise
     */
    public function loadClass($class)
    {
        if ($file = $this->findFile($class)) {
            $includeFile = self::$includeFile;
            $includeFile($file);
 
            return true;
        }
 
        return null;
    }
 
    /**
     * Finds the path to the file where the class is defined.
     *
     * @param string $class The name of the class
     *
     * @return string|false The path if found, false otherwise
     */
    public function findFile($class)
    {
        // class map lookup
        if (isset($this->classMap[$class])) {
            return $this->classMap[$class];
        }
[internal]
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/caseyamcl/toc/src/MarkupFixer.php
    /**
     * @var HTML5
     */
    private $htmlParser;
 
    /**
     * @var SlugifyInterface
     */
    private $slugifier;
 
    /**
     * Constructor
     *
     * @param HTML5|null $htmlParser
     * @param SlugifyInterface|null $slugify
     */
    public function __construct(?HTML5 $htmlParser = null, ?SlugifyInterface $slugify = null)
    {
        $this->htmlParser = $htmlParser ?? new HTML5();
        $this->slugifier = $slugify ?? new UniqueSlugify();
    }
 
    /**
     * Fix markup
     *
     * @param string $markup
     * @param int    $topLevel
     * @param int    $depth
     * @return string Markup with added IDs
     * @throws RuntimeException
     */
    public function fix(string $markup, int $topLevel = 1, int $depth = 6): string
    {
        if (! $this->isFullHtmlDocument($markup)) {
            $partialID = uniqid('toc_generator_');
            $markup = sprintf("<body id='%s'>%s</body>", $partialID, $markup);
        }
 
        $domDocument = $this->htmlParser->loadHTML($markup);
        $domDocument->preserveWhiteSpace = true; // do not clobber whitespace
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/app/View/Composers/BlogPost.php
<?php
 
namespace App\View\Composers;
 
use DOMDocument;
use Roots\Acorn\View\Composer;
 
class BlogPost extends Composer
{
    protected static $views = [
        'partials.content-single',
    ];
 
    public function override()
    {
        $fields = get_fields();
 
        $htmlContent = apply_filters( 'the_content', get_the_content() );
 
        $markupFixer  = new \TOC\MarkupFixer();
        $tocGenerator = new \TOC\TocGenerator();
 
        $htmlContent = $markupFixer->fix($htmlContent);
        $fields['toc'] = $tocGenerator->getOrderedHtmlMenu($htmlContent);
        $fields['the_content'] = $htmlContent;
        $fields['the_category'] = $this->getCategory();
 
        return $fields;
    }
 
    public function getCategory() {
      $category = null;
      if(get_the_terms(get_the_id(), 'category')) {
        foreach(get_the_terms(get_the_id(), 'category') as $term) {
            if($term->name !== "Blog" && $term->name !== "Events" && $term->name !== "News") {
                $category = $term;
                return $category;
            }
        }
      }
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/roots/acorn/src/Acorn/View/Composer.php
     */
    public function compose(View $view)
    {
        $this->view = $view;
        $this->data = new Fluent($view->getData());
 
        $view->with($this->merge());
    }
 
    /**
     * Data to be merged and passed to the view before rendering.
     *
     * @return array
     */
    protected function merge()
    {
        return array_merge(
            $this->with(),
            $this->view->getData(),
            $this->override()
        );
    }
 
    /**
     * Data to be passed to view before rendering
     *
     * @return array
     */
    protected function with()
    {
        return [];
    }
 
    /**
     * Data to be passed to view before rendering
     *
     * @return array
     */
    protected function override()
    {
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/roots/acorn/src/Acorn/View/Composer.php
            return static::$views;
        }
 
        $view = array_slice(explode('\\', static::class), 3);
        $view = array_map([Str::class, 'snake'], $view, array_fill(0, count($view), '-'));
        return implode('/', $view);
    }
 
    /**
     * Compose the view before rendering.
     *
     * @param  \Illuminate\View\View $view
     * @return void
     */
    public function compose(View $view)
    {
        $this->view = $view;
        $this->data = new Fluent($view->getData());
 
        $view->with($this->merge());
    }
 
    /**
     * Data to be merged and passed to the view before rendering.
     *
     * @return array
     */
    protected function merge()
    {
        return array_merge(
            $this->with(),
            $this->view->getData(),
            $this->override()
        );
    }
 
    /**
     * Data to be passed to view before rendering
     *
     * @return array
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/view/Concerns/ManagesEvents.php
 
        return $callback;
    }
 
    /**
     * Build a class based container callback Closure.
     *
     * @param  string  $class
     * @param  string  $prefix
     * @return \Closure
     */
    protected function buildClassEventCallback($class, $prefix)
    {
        [$class, $method] = $this->parseClassEvent($class, $prefix);
 
        // Once we have the class and method name, we can build the Closure to resolve
        // the instance out of the IoC container and call the method on it with the
        // given arguments that are passed to the Closure as the composer's data.
        return function () use ($class, $method) {
            return $this->container->make($class)->{$method}(...func_get_args());
        };
    }
 
    /**
     * Parse a class based composer name.
     *
     * @param  string  $class
     * @param  string  $prefix
     * @return array
     */
    protected function parseClassEvent($class, $prefix)
    {
        return Str::parseCallback($class, $this->classEventMethodForPrefix($prefix));
    }
 
    /**
     * Determine the class event method based on the given prefix.
     *
     * @param  string  $prefix
     * @return string
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/events/Dispatcher.php
     * @param  \Closure|string  $listener
     * @param  bool  $wildcard
     * @return \Closure
     */
    public function makeListener($listener, $wildcard = false)
    {
        if (is_string($listener)) {
            return $this->createClassListener($listener, $wildcard);
        }
 
        if (is_array($listener) && isset($listener[0]) && is_string($listener[0])) {
            return $this->createClassListener($listener, $wildcard);
        }
 
        return function ($event, $payload) use ($listener, $wildcard) {
            if ($wildcard) {
                return $listener($event, $payload);
            }
 
            return $listener(...array_values($payload));
        };
    }
 
    /**
     * Create a class based listener using the IoC container.
     *
     * @param  string  $listener
     * @param  bool  $wildcard
     * @return \Closure
     */
    public function createClassListener($listener, $wildcard = false)
    {
        return function ($event, $payload) use ($listener, $wildcard) {
            if ($wildcard) {
                return call_user_func($this->createClassCallable($listener), $event, $payload);
            }
 
            $callable = $this->createClassCallable($listener);
 
            return $callable(...array_values($payload));
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/events/Dispatcher.php
     * @param  bool  $halt
     * @return array|null
     */
    public function dispatch($event, $payload = [], $halt = false)
    {
        // When the given "event" is actually an object we will assume it is an event
        // object and use the class as the event name and this event itself as the
        // payload to the handler, which makes object based events quite simple.
        [$event, $payload] = $this->parseEventAndPayload(
            $event, $payload
        );
 
        if ($this->shouldBroadcast($payload)) {
            $this->broadcastEvent($payload[0]);
        }
 
        $responses = [];
 
        foreach ($this->getListeners($event) as $listener) {
            $response = $listener($event, $payload);
 
            // If a response is returned from the listener and event halting is enabled
            // we will just return this response, and not call the rest of the event
            // listeners. Otherwise we will add the response on the response list.
            if ($halt && ! is_null($response)) {
                return $response;
            }
 
            // If a boolean false is returned from a listener, we will stop propagating
            // the event to any further listeners down in the chain, else we keep on
            // looping through the listeners and firing every one in our sequence.
            if ($response === false) {
                break;
            }
 
            $responses[] = $response;
        }
 
        return $halt ? null : $responses;
    }
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/view/Concerns/ManagesEvents.php
    protected function addEventListener($name, $callback)
    {
        if (Str::contains($name, '*')) {
            $callback = function ($name, array $data) use ($callback) {
                return $callback($data[0]);
            };
        }
 
        $this->events->listen($name, $callback);
    }
 
    /**
     * Call the composer for a given view.
     *
     * @param  \Illuminate\Contracts\View\View  $view
     * @return void
     */
    public function callComposer(ViewContract $view)
    {
        $this->events->dispatch('composing: '.$view->name(), [$view]);
    }
 
    /**
     * Call the creator for a given view.
     *
     * @param  \Illuminate\Contracts\View\View  $view
     * @return void
     */
    public function callCreator(ViewContract $view)
    {
        $this->events->dispatch('creating: '.$view->name(), [$view]);
    }
}
 
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/view/View.php
        } catch (Throwable $e) {
            $this->factory->flushState();
 
            throw $e;
        }
    }
 
    /**
     * Get the contents of the view instance.
     *
     * @return string
     */
    protected function renderContents()
    {
        // We will keep track of the amount of views being rendered so we can flush
        // the section after the complete rendering operation is done. This will
        // clear out the sections for any separate views that may be rendered.
        $this->factory->incrementRender();
 
        $this->factory->callComposer($this);
 
        $contents = $this->getContents();
 
        // Once we've finished rendering the view, we'll decrement the render count
        // so that each sections get flushed out next time a view is created and
        // no old sections are staying around in the memory of an environment.
        $this->factory->decrementRender();
 
        return $contents;
    }
 
    /**
     * Get the evaluated contents of the view.
     *
     * @return string
     */
    protected function getContents()
    {
        return $this->engine->get($this->path, $this->gatherData());
    }
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/view/View.php
        $this->view = $view;
        $this->path = $path;
        $this->engine = $engine;
        $this->factory = $factory;
 
        $this->data = $data instanceof Arrayable ? $data->toArray() : (array) $data;
    }
 
    /**
     * Get the string contents of the view.
     *
     * @param  callable|null  $callback
     * @return array|string
     *
     * @throws \Throwable
     */
    public function render(callable $callback = null)
    {
        try {
            $contents = $this->renderContents();
 
            $response = isset($callback) ? $callback($this, $contents) : null;
 
            // Once we have the contents of the view, we will flush the sections if we are
            // done rendering all views so that there is nothing left hanging over when
            // another view gets rendered in the future by the application developer.
            $this->factory->flushStateIfDoneRendering();
 
            return ! is_null($response) ? $response : $contents;
        } catch (Throwable $e) {
            $this->factory->flushState();
 
            throw $e;
        }
    }
 
    /**
     * Get the contents of the view instance.
     *
     * @return string
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/storage/framework/views/2bc8d2ea874031e3ddb3a557319b7cad31a2f2d3.php
<?php $__env->startSection('content'); ?>
  <?php while(have_posts()): ?> <?php (the_post()); ?>
    <?php echo $__env->first(['partials.content-single-' . get_post_type(), 'partials.content-single'], \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?>
  <?php endwhile; ?>
<?php $__env->stopSection(); ?>
 
<?php echo $__env->make('layouts.app', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?><?php /**PATH /home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/resources/views/single.blade.php ENDPATH**/ ?>
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/view/Engines/PhpEngine.php
    /**
     * Get the evaluated contents of the view at the given path.
     *
     * @param  string  $__path
     * @param  array  $__data
     * @return string
     */
    protected function evaluatePath($__path, $__data)
    {
        $obLevel = ob_get_level();
 
        ob_start();
 
        extract($__data, EXTR_SKIP);
 
        // We'll evaluate the contents of the view inside a try/catch block so we can
        // flush out any stray output that might get out before an error occurs or
        // an exception is thrown. This prevents any partial views from leaking.
        try {
            include $__path;
        } catch (Throwable $e) {
            $this->handleViewException($e, $obLevel);
        }
 
        return ltrim(ob_get_clean());
    }
 
    /**
     * Handle a view exception.
     *
     * @param  \Throwable  $e
     * @param  int  $obLevel
     * @return void
     *
     * @throws \Throwable
     */
    protected function handleViewException(Throwable $e, $obLevel)
    {
        while (ob_get_level() > $obLevel) {
            ob_end_clean();
Arguments
  1. "/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/storage/framework/views/2bc8d2ea874031e3ddb3a557319b7cad31a2f2d3.php"
    
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/view/Engines/CompilerEngine.php
     *
     * @param  string  $path
     * @param  array  $data
     * @return string
     */
    public function get($path, array $data = [])
    {
        $this->lastCompiled[] = $path;
 
        // If this given view has expired, which means it has simply been edited since
        // it was last compiled, we will re-compile the views so we can evaluate a
        // fresh copy of the view. We'll pass the compiler the path of the view.
        if ($this->compiler->isExpired($path)) {
            $this->compiler->compile($path);
        }
 
        // Once we have the path to the compiled file, we will evaluate the paths with
        // typical PHP just like any other templates. We also keep a stack of views
        // which have been rendered for right exception messages to be generated.
        $results = $this->evaluatePath($this->compiler->getCompiledPath($path), $data);
 
        array_pop($this->lastCompiled);
 
        return $results;
    }
 
    /**
     * Handle a view exception.
     *
     * @param  \Throwable  $e
     * @param  int  $obLevel
     * @return void
     *
     * @throws \Throwable
     */
    protected function handleViewException(Throwable $e, $obLevel)
    {
        $e = new ViewException($this->getMessage($e), 0, 1, $e->getFile(), $e->getLine(), $e);
 
        parent::handleViewException($e, $obLevel);
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/view/View.php
        $this->factory->callComposer($this);
 
        $contents = $this->getContents();
 
        // Once we've finished rendering the view, we'll decrement the render count
        // so that each sections get flushed out next time a view is created and
        // no old sections are staying around in the memory of an environment.
        $this->factory->decrementRender();
 
        return $contents;
    }
 
    /**
     * Get the evaluated contents of the view.
     *
     * @return string
     */
    protected function getContents()
    {
        return $this->engine->get($this->path, $this->gatherData());
    }
 
    /**
     * Get the data bound to the view instance.
     *
     * @return array
     */
    public function gatherData()
    {
        $data = array_merge($this->factory->getShared(), $this->data);
 
        foreach ($data as $key => $value) {
            if ($value instanceof Renderable) {
                $data[$key] = $value->render();
            }
        }
 
        return $data;
    }
 
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/view/View.php
 
            throw $e;
        }
    }
 
    /**
     * Get the contents of the view instance.
     *
     * @return string
     */
    protected function renderContents()
    {
        // We will keep track of the amount of views being rendered so we can flush
        // the section after the complete rendering operation is done. This will
        // clear out the sections for any separate views that may be rendered.
        $this->factory->incrementRender();
 
        $this->factory->callComposer($this);
 
        $contents = $this->getContents();
 
        // Once we've finished rendering the view, we'll decrement the render count
        // so that each sections get flushed out next time a view is created and
        // no old sections are staying around in the memory of an environment.
        $this->factory->decrementRender();
 
        return $contents;
    }
 
    /**
     * Get the evaluated contents of the view.
     *
     * @return string
     */
    protected function getContents()
    {
        return $this->engine->get($this->path, $this->gatherData());
    }
 
    /**
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/view/View.php
        $this->view = $view;
        $this->path = $path;
        $this->engine = $engine;
        $this->factory = $factory;
 
        $this->data = $data instanceof Arrayable ? $data->toArray() : (array) $data;
    }
 
    /**
     * Get the string contents of the view.
     *
     * @param  callable|null  $callback
     * @return array|string
     *
     * @throws \Throwable
     */
    public function render(callable $callback = null)
    {
        try {
            $contents = $this->renderContents();
 
            $response = isset($callback) ? $callback($this, $contents) : null;
 
            // Once we have the contents of the view, we will flush the sections if we are
            // done rendering all views so that there is nothing left hanging over when
            // another view gets rendered in the future by the application developer.
            $this->factory->flushStateIfDoneRendering();
 
            return ! is_null($response) ? $response : $contents;
        } catch (Throwable $e) {
            $this->factory->flushState();
 
            throw $e;
        }
    }
 
    /**
     * Get the contents of the view instance.
     *
     * @return string
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/index.php
<!doctype html>
<html <?php language_attributes(); ?>>
 
    <?php echo \Roots\view(\Roots\app('sage.view'), \Roots\app('sage.data'))->render(); ?>
 
</html>
 
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/wp/wp-includes/template-loader.php
            }
 
            break;
        }
    }
 
    if ( ! $template ) {
        $template = get_index_template();
    }
 
    /**
     * Filters the path of the current template before including it.
     *
     * @since 3.0.0
     *
     * @param string $template The path of the template to include.
     */
    $template = apply_filters( 'template_include', $template );
    if ( $template ) {
        include $template;
    } elseif ( current_user_can( 'switch_themes' ) ) {
        $theme = wp_get_theme();
        if ( $theme->errors() ) {
            wp_die( $theme->errors() );
        }
    }
    return;
}
 
Arguments
  1. "/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/index.php"
    
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/wp/wp-blog-header.php
<?php
/**
 * Loads the WordPress environment and template.
 *
 * @package WordPress
 */
 
if ( ! isset( $wp_did_header ) ) {
 
    $wp_did_header = true;
 
    // Load the WordPress library.
    require_once __DIR__ . '/wp-load.php';
 
    // Set up the WordPress query.
    wp();
 
    // Load the theme template.
    require_once ABSPATH . WPINC . '/template-loader.php';
 
}
 
Arguments
  1. "/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/wp/wp-includes/template-loader.php"
    
/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/index.php
<?php
/**
 * WordPress View Bootstrapper
 */
define('WP_USE_THEMES', true);
require __DIR__ . '/wp/wp-blog-header.php';
 
Arguments
  1. "/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/wp/wp-blog-header.php"
    

Environment & details:

Key Value
query_vars
array:3 [
  "page" => ""
  "name" => "jack-grinhaus-brings-wings-of-hope-to-the-tfs-virtual-stage"
  "category_name" => "blog"
]
query_string
"name=jack-grinhaus-brings-wings-of-hope-to-the-tfs-virtual-stage&category_name=blog"
request
"blog/jack-grinhaus-brings-wings-of-hope-to-the-tfs-virtual-stage"
matched_rule
"(.+?)/([^/]+)(?:/([0-9]+))?/?$"
matched_query
"category_name=blog&name=jack-grinhaus-brings-wings-of-hope-to-the-tfs-virtual-stage&page="
did_permalink
true
Key Value
query
array:3 [
  "page" => ""
  "name" => "jack-grinhaus-brings-wings-of-hope-to-the-tfs-virtual-stage"
  "category_name" => "blog"
]
query_vars
array:66 [
  "page" => 0
  "name" => "jack-grinhaus-brings-wings-of-hope-to-the-tfs-virtual-stage"
  "category_name" => "blog"
  "error" => ""
  "m" => ""
  "p" => 0
  "post_parent" => ""
  "subpost" => ""
  "subpost_id" => ""
  "attachment" => ""
  "attachment_id" => 0
  "pagename" => ""
  "page_id" => 0
  "second" => ""
  "minute" => ""
  "hour" => ""
  "day" => 0
  "monthnum" => 0
  "year" => 0
  "w" => 0
  "tag" => ""
  "cat" => ""
  "tag_id" => ""
  "author" => ""
  "author_name" => ""
  "feed" => ""
  "tb" => ""
  "paged" => 0
  "meta_key" => ""
  "meta_value" => ""
  "preview" => ""
  "s" => ""
  "sentence" => ""
  "title" => ""
  "fields" => ""
  "menu_order" => ""
  "embed" => ""
  "category__in" => []
  "category__not_in" => []
  "category__and" => []
  "post__in" => []
  "post__not_in" => []
  "post_name__in" => []
  "tag__in" => []
  "tag__not_in" => []
  "tag__and" => []
  "tag_slug__in" => []
  "tag_slug__and" => []
  "post_parent__in" => []
  "post_parent__not_in" => []
  "author__in" => []
  "author__not_in" => []
  "search_columns" => []
  "ignore_sticky_posts" => false
  "suppress_filters" => false
  "cache_results" => true
  "update_post_term_cache" => true
  "update_menu_item_cache" => false
  "lazy_load_term_meta" => true
  "update_post_meta_cache" => true
  "post_type" => ""
  "posts_per_page" => 16
  "nopaging" => false
  "comments_per_page" => "50"
  "no_found_rows" => false
  "order" => "DESC"
]
meta_query
WP_Meta_Query {#2562}
queried_object
WP_Post {#2563}
queried_object_id
21808
request
"""
SELECT   wp_posts.*\n
\t\t\t\t\t FROM wp_posts \n
\t\t\t\t\t WHERE 1=1  AND wp_posts.post_name = 'jack-grinhaus-brings-wings-of-hope-to-the-tfs-virtual-stage' AND wp_posts.post_type = 'post'\n
\t\t\t\t\t \n
\t\t\t\t\t ORDER BY wp_posts.post_date DESC\n
\t\t\t\t\t 
"""
post_count
1
in_the_loop
true
current_comment
-1
found_posts
1
is_single
true
is_singular
true
Key Value
ID
21808
post_author
"43"
post_date
"2020-12-15 20:02:31"
post_date_gmt
"2020-12-15 20:02:31"
post_content
"""
“Welcome to Wings of Hope’s community. Here we will offer you freedom from the real world, the one that rejects you and offers you only this lifetime to fight for. We are here to tell you that there is more to your like and your soul. This is our story.”\n
\n
&nbsp;\n
\n
So begins <a href="https://create.torontofilmschool.ca/showcase/wings-of-hope/"><em>Wings of Hope</em></a> – Toronto Film School’s latest virtual stage production to be developed, structured, written, produced, designed and performed by a company of fifth-term acting students over the span of just one term.\n
\n
&nbsp;\n
\n
[caption id="attachment_21811" align="aligncenter" width="337"]<img class="wp-image-21811 size-medium" src="https://uat.tfs.staging.poundandgrain.ca/app/uploads/2023/03/TFS_ACT_WingsOfHope_PlayPoster_JoelMartel_1214-337x526-1.jpg" alt="" width="337" height="526" /> Poster Design by Joel Martel[/caption]\n
\n
&nbsp;\n
\n
Directed by <a href="https://www.boundtocreate.com/the-company">Jack Grinhaus</a>, the 70-minute play marks Toronto Film School’s third exploration of working in a collective creation format.\n
\n
&nbsp;\n
\n
“From day one, this group of talented students have worked towards creating a story and then fitting themselves into it; learning to put their own egos and wants aside for the greater good of the piece,” Grinhaus explained, noting that the task was not an easy one, but one that gleaned profound learning for each of them.\n
\n
&nbsp;\n
\n
“By the end of the term, they will have all learned how to collaborate to develop, write, edit, and perform in a project from scratch, with only a concept that was decided upon through group conversations. Conversation become ideas and ideas become inspiration. A series of vignettes and scenes soon become a story and a play.”\n
\n
&nbsp;\n
\n
With Wings of Hope, Grinhaus said the story starts out based in the truths of our current reality, then becomes “confused by individual need and ego – much like what is happening in our world today.”\n
\n
&nbsp;\n
\n
“We have all put blood and guts in on this one,” he said, “and we hope you enjoy what was put together by 14 varied minds, ideas, and thoughts.”\n
\n
&nbsp;\n
\n
The play, which was stage managed by Kristoff Felix, will take to the virtual stage for a three-performance run on the evenings of Dec. 16, 17 and 18 as follows:\n
\n
<em> </em>\n
<p style="text-align: center;">Wednesday, Dec. 16 – 8:15 to 9:45 p.m. (EST)</p>\n
<p style="text-align: center;">Thursday, Dec. 17 – 6:30 to 8 p.m. (EST)</p>\n
<p style="text-align: center;">Friday, Dec. 18 – 8:15 to 9:45 p.m. (EST)</p>\n
&nbsp;\n
<p style="text-align: center;"><strong>***Click </strong><a href="https://create.torontofilmschool.ca/showcase/wings-of-hope/"><strong>here</strong></a><strong> to livestream any of the above performances***</strong></p>\n
&nbsp;\n
\n
&nbsp;\n
\n
<strong> </strong>\n
<h2 style="text-align: center;"><strong>The Creative Team Behind <em>Wings of Hope</em>:</strong></h2>\n
<p style="text-align: center;"><strong> </strong></p>\n
<p style="text-align: center;"><img class="alignnone size-medium wp-image-21812 aligncenter" src="https://uat.tfs.staging.poundandgrain.ca/app/uploads/2023/03/TFS_ACT_MiEmeryNguyen_1214-488x526-1.jpg" alt="" width="488" height="526" /></p>\n
<p style="text-align: center;"><strong>Emery Nguyen </strong><strong>(Willow)</strong></p>\n
<p style="text-align: center;">Emery Nguyen is a Toronto-based actress. Her previous works include performances in short films such as <em>Love Mementos</em>, <em>Sally</em>, and <em>Gay As In Happy: An Queer Anti-Tragedy</em>, which has featured in over 110 film festivals around the world. Her latest project, <em>Queer Isolation</em>, has been officially selected for 12 film festivals and won eight awards. She enjoys singing and embroidery in her downtime when not learning lines. Emery is currently finishing her acting training at Toronto Film School.</p>\n
&nbsp;\n
\n
&nbsp;\n
<p style="text-align: center;"><img class="alignnone size-medium wp-image-21813" src="https://uat.tfs.staging.poundandgrain.ca/app/uploads/2023/03/TFS_ACT_FrancisDufour_1214-488x526-1.jpg" alt="" width="488" height="526" /></p>\n
<p style="text-align: center;"><strong>Francis Dufour </strong><strong>(Blake)</strong></p>\n
<p style="text-align: center;">Francis is a bilingual 25-year-old Canadian actor born in New Brunswick. After taking on many different occupations in his life and obtaining a Kinesiology degree, he finally took the plunge and used his sales skills to buy his way out of New Brunswick and move to Toronto. During his training at Toronto Film School, he found love for TV, film and voiceover. In the summer of 2020, he also directed and produced a silent film that he starred in titled <em>Duality</em>. Francis is a great fit for corporate roles, detectives, best friend next door and sometime assholes. He’s also very athletic and loves to be in fast-paced action.</p>\n
&nbsp;\n
<p style="text-align: center;"><strong> </strong></p>\n
<p style="text-align: center;"><img class="alignnone size-medium wp-image-21814" src="https://uat.tfs.staging.poundandgrain.ca/app/uploads/2023/03/TFS_ACT_HilaryMikus_1214-488x526-1.jpg" alt="" width="488" height="526" /></p>\n
<p style="text-align: center;"><strong>Hilary Mikus </strong><strong>(Imogen)</strong></p>\n
<p style="text-align: center;">Hilary Mikus is an aspiring actor and a current student at Toronto Film School. In high school, she acted in the musical <em>Sweet Charity</em>, and <em>How To Succeed In Business Without Really Trying</em>. During her time at TFS, she has worked on several different film projects, including her own film called <em>The Butterfly Paradox</em>, which she wrote, directed, and acted in. She aspires to work alongside actors she both respects and admires. Hilary is excited to be making her debut at TFS in <em>Wings of Hope</em> and hopes it leads to many more.</p>\n
<p style="text-align: center;"><strong> </strong></p>\n
&nbsp;\n
\n
<img class="alignnone size-medium wp-image-21815 aligncenter" src="https://uat.tfs.staging.poundandgrain.ca/app/uploads/2023/03/TFS_ACT_AfraazAlam_1214-488x526-1.jpg" alt="" width="488" height="526" />\n
<p style="text-align: center;"><strong>Afraaz Alam </strong><strong>(Zane)</strong></p>\n
<p style="text-align: center;">Afraaz Alam has been involved in acting since the age of eight. He played a scarecrow in a school play when he was nine years old. In high school, he acted in a children’s theatre production when he was 15. At age 19, he acted in a short film called <em>unknown</em>. Outside of acting, Afraaz loves to watch movies and play video games.</p>\n
&nbsp;\n
\n
&nbsp;\n
<p style="text-align: center;"><strong><img class="alignnone size-medium wp-image-21816" src="https://uat.tfs.staging.poundandgrain.ca/app/uploads/2023/03/TFS_ACT_MonikaSingh_1214-488x526-1.jpg" alt="" width="488" height="526" /> </strong></p>\n
<p style="text-align: center;"><strong>Monika Singh </strong><strong>(Florence)</strong></p>\n
<p style="text-align: center;">Monika Singh is an Indian actress, model, theatre artist and television host who was born in Delhi in 1988. She has been connected to theatre and acting since her school days, during which she performed in various plays. She used to perform on social and world issues, festival celebrations, annual functions. She loves to act in these categories: professional, Mafia, police/FBI, family drama and love stories. She believes as an artist we should try to try every role. She’s acted in <em>Money Game, </em>directed and produced by Khaled Hosari, as a main lead female character. She was also part of the Bubba Productions’ <em>Cord I Bear </em>and Third Scar, on which she was a production designer. She’s also directed and produced her own movie project, <em>Stuck Soul</em>. She loves music and travelling.</p>\n
&nbsp;\n
\n
&nbsp;\n
<p style="text-align: center;"><strong> <img class="alignnone size-medium wp-image-21817" src="https://uat.tfs.staging.poundandgrain.ca/app/uploads/2023/03/TFS_ACT_KelvinRodrigues_1214-488x526-1.jpg" alt="" width="488" height="526" /></strong></p>\n
<p style="text-align: center;"><strong>Kelvin Rodrigues </strong><strong>(Jason)</strong></p>\n
<p style="text-align: center;">Kelvin Rodrigues was born in Sao Paulo, Brazil back in 1992 and moved to Montreal, Canada at the age of three. With a passion for music and entertainment in general, he worked quite a bit with music in his teenage years before deciding to pursue his dream of becoming an actor. He began his journey in 2019 when he moved to Toronto to join Toronto Film School. In his time at TFS, Kelvin has worked on various projects such as commercials and short films including <em>Face Your Demon</em>, a silent film he wrote, produced and acted in. Now in Term 5, he has worked in a short film with production students and is excited and eager to work with more amazing actors for the play <em>Wings of Hope</em>.</p>\n
&nbsp;\n
\n
&nbsp;\n
<p style="text-align: center;"><strong> <img class="alignnone size-medium wp-image-21818" src="https://uat.tfs.staging.poundandgrain.ca/app/uploads/2023/03/TFS_ACT_ShantayCormier_1214-489x526-1.jpg" alt="" width="489" height="526" /></strong></p>\n
<p style="text-align: center;"><strong>Shantay Cormier </strong><strong>(Jessie)</strong></p>\n
<p style="text-align: center;">Thrilled to be taking her talent to the stage, Shantay Cormier is excited to be making her debut with Toronto Film School. After starring in the short film <em>Alone</em> earlier this year, and appearing in other short films late last year such as <em>A Cry For Help</em> and <em>The 6ix</em>, she is looking forward to sharing her theatre training with you. While completing her training as an actor at Toronto Film School, she wrote, directed and produced her own short film, <em>Sally</em>, which won an award for Best First Time Female Short Filmmaker at Cyrus Monthly Short Festival of Toronto. This young French-Canadian grew up playing sports, but also practices more relaxed avocations such as drawing and writing. Her goal is to have a successful production company and tell all the stories that are not being shared with the world.</p>\n
&nbsp;\n
\n
&nbsp;\n
<p style="text-align: center;"><strong><img class="alignnone size-medium wp-image-21819" src="https://uat.tfs.staging.poundandgrain.ca/app/uploads/2023/03/TFS_ACT_LarsMachoczek_1214-488x526-1.jpg" alt="" width="488" height="526" /> </strong></p>\n
<p style="text-align: center;"><strong>Lars Machoczek </strong><strong>(Max)</strong></p>\n
<p style="text-align: center;">Lars Machoczek is an aspiring actor and a current student at Toronto Film School. Back in Brazil he took one year of theatre classes at Conservatorio Carlos Gomes in Campinas, SP. He is Brazilian with a German background and speaks Portuguese, German and English. He aspires to work alongside actors he admires and also be able to enjoy great experiences and learnings.</p>\n
<p style="text-align: center;"><strong> </strong></p>\n
&nbsp;\n
<p style="text-align: center;"><img class="alignnone size-medium wp-image-21820" src="https://uat.tfs.staging.poundandgrain.ca/app/uploads/2023/03/TFS_ACT_NiloufarFereidoni_1214-489x526-1.jpg" alt="" width="489" height="526" /></p>\n
<p style="text-align: center;"><strong>Niloufar Fereidoni </strong><strong>(Tammy)</strong></p>\n
<p style="text-align: center;">Niloufar Fereidoni was born in Tehran, Iran. She has loved acting since she was a kid. She started to study acting at eight years old, when she played the main role in a short film called <em>Best Friend</em> as a graduation project. She played many roles since, in high school theatre projects. Then she found an opportunity to get back to her dream and decided to continue studying performing arts at Toronto Film School in 2019. Niloufar played the main role in the short film <em>Too Late</em>. She was the director, writer, and producer of the film as well. She loves creating her own content to show her culture to the world. Other than English, she also speaks Farsi and Turkish. Other passions of hers are dancing and fitness.</p>\n
&nbsp;\n
\n
&nbsp;\n
<p style="text-align: center;"><img class="alignnone size-medium wp-image-21821" src="https://uat.tfs.staging.poundandgrain.ca/app/uploads/2023/03/TFS_ACT_BreannaRomaniello_1214-488x526-1.jpg" alt="" width="488" height="526" /></p>\n
<p style="text-align: center;"><strong>Breanna Roaniello </strong><strong>(Echo)</strong></p>\n
<p style="text-align: center;">Breanna Roaniello is an aspiring young actress. Before discovering her passion for acting, Breanna spent six years in dance as a child and immediately fell in love with the stage. She then joined a local theatre company, Linus Hand Productions, at the age of 12 and has been in numerous local plays such as <em>Oliver, The Wizard Of Oz, Into The Woods</em>, and <em>Hairspray</em>. Following her high school years, Breanna immediately chose to attend Toronto Film School, where she is currently a Term 5 student. During her time at TFS she has been a part of numerous of her peer’s projects, such as commercials and silent films and is currently working on developing her own short film.</p>\n
&nbsp;\n
\n
&nbsp;\n
<p style="text-align: center;"><img class="alignnone size-medium wp-image-21822" src="https://uat.tfs.staging.poundandgrain.ca/app/uploads/2023/03/TFS_ACT_StaceyTaylor_1214-488x526-1.jpg" alt="" width="488" height="526" /></p>\n
<p style="text-align: center;"><strong>Stacey Taylor </strong><strong>(Clementine)</strong></p>\n
<p style="text-align: center;">Stacey Taylor has wanted to be an actress all of her life. In her high school days, Stacey knew acting was the career for her when she had the chance to play Sophie, Bonnie, and the Assemble in the musical production of <em>Annie</em>. Over the last two years. Stacey has stayed up night after night to study her lines, she has worked on a number of different film students sets such as <em>My Pipes, The Food Truck,</em> and she’s even; written, directed, edited and acted in her own short films such as <em>Ouija</em> and, she’s currently working on <em>The Forgotten</em>, which she will showcase in Term 6. Tonight, Stacey is playing a role of a lifetime as a cult leader named Clementine. After graduating, Stacey has the ambition on going after her dream role of playing Fantine in the Broadway musical classic <em>Les Misérables</em>. Outside of school, Stacey likes to dance and sing. Tonight Stacey would like to say thank you to the administration, the teachers, her parents, and friends and leaves them with one final thought about her time so far at Toronto Film School: “I will always remember my time here at TFS and I will never forget any of you. Thanks for tagging along on my journey, I promise to make you all proud. I will forever love you all, my little different species.”</p>\n
&nbsp;\n
\n
&nbsp;\n
<p style="text-align: center;"><img class="alignnone size-medium wp-image-21823" src="https://uat.tfs.staging.poundandgrain.ca/app/uploads/2023/03/TFS_ACT_MinhuiQiu_1214-488x526-1.jpg" alt="" width="488" height="526" /></p>\n
<p style="text-align: center;"><strong>Minhui Qiu </strong><strong>(Mary)</strong></p>\n
<p style="text-align: center;">Minhui Qiu (Questa) is a Chinese student who came to Toronto Film School in 2018 to study acting. She played many roles in the final exam. She was trained as a journalist when she was eight years old. She had been in a Latin dance competition and got a gold medal. She studied piano for three years. She likes painting, listening to music, and photography. She wants to be an actress, and she will go back to China after graduation to achieve her dream. She thanks her parents for always letting her pursue her dreams. She will keep working hard until she becomes a good actress.</p>\n
&nbsp;\n
\n
&nbsp;\n
<p style="text-align: center;"><img class="alignnone size-medium wp-image-21824" src="https://uat.tfs.staging.poundandgrain.ca/app/uploads/2023/03/TFS_ACT_FelixKristoff_1214-488x526-1.jpg" alt="" width="488" height="526" /></p>\n
<p style="text-align: center;"><strong>Kristoff Felix – Stage Manager</strong></p>\n
<p style="text-align: center;">Kristoff Felix is a graduate of Toronto Film School’s diploma program. He is an actor who has compiled a handful of acting credits in films such as <em>The Cord I Bare, Buddy Guy, Neon Bills, Bar Fight </em>and<em> The Fear Itself. </em>He has also taken part in many student studies from <em>The Fresh Prince of Bel-Air, Big Bang Theory </em>and<em> Fences</em>. Kristoff possesses a multitude of skills such as intermediate levels of dancing, Parkour Artistry, certified hand-to-hand combat for TV and Stage, with a versatility in a plethora of sports. Kristoff has always been a charismatic individual with many talents and this career path is ideal for developing himself and utilizing those skills for film, stage and other forms entertainment. One of his drives for pursuing this career is to be an inspiration to his daughter; to encourage free expression and perseverance to achieve her goals. He continues to work hard to further expand his skillsets as he looks forward to establishing the beginning of a long career in film and television.</p>\n
&nbsp;\n
\n
&nbsp;\n
<p style="text-align: center;"><img class="alignnone size-medium wp-image-21825" src="https://uat.tfs.staging.poundandgrain.ca/app/uploads/2023/03/TFS_ACT_JackGrinhaus_1214-488x526-1.jpg" alt="" width="488" height="526" /></p>\n
<p style="text-align: center;"><strong>Jack Grinhaus – Director</strong></p>\n
<p style="text-align: center;">Jack Grinhaus is a multi-award nominated theatre and film artist. Primarily a director, Jack has worked as a producer, playwright, and actor with numerous theatre, TV, and film credits throughout his career. He is Co-Artistic Director of <a href="http://www.boundtocreate.com/">B2C Theatre</a>, was the Artistic Director for the Canadian regional Theatre NorthWest (2014-2019), was a member of the Canadian Stage BASH Directors Residency, and holds an MFA and BA Honours from York University’s Theatre program and an Associate Degree from The American Academy of Dramatic Arts, in New York City. Past directing credits include: For TFS – <em>Dark Rapture, A Few Good Men, Exit-less, Covid Carnival Cabaret</em>. OTHER: <em>Isitwendam </em>(Native Earth Performing Arts/B2C/Talking Stick/Four Dora Nominations), <em>ART</em> (Persephone Theatre/ S.A.T Nomination Outstanding Direction), <em>Hedda Noir, Million Dollar Quartet, A Wonderful Life: The Radio Play, Alice in Wonderland, Half Life, The Secret Mask</em> (Theatre NorthWest), <em>dirty butterfly</em> (B2C/Obsidian Theatre), <em>Phaedra’s Lust</em> (Tapestry New Opera/B2C), <em>Macbeth</em> (Classical Theatre Project). He also recently directed the B2C Film, <em>Elle’s Valley</em>.</p>\n
&nbsp;
"""
post_title
"Jack Grinhaus Brings 'Wings of Hope' to the TFS Virtual Stage"
post_excerpt
""
post_status
"publish"
comment_status
"closed"
ping_status
"open"
post_password
""
post_name
"jack-grinhaus-brings-wings-of-hope-to-the-tfs-virtual-stage"
to_ping
""
pinged
""
post_modified
"2023-04-04 19:10:43"
post_modified_gmt
"2023-04-04 19:10:43"
post_content_filtered
""
post_parent
0
guid
"https://uat.tfs.staging.poundandgrain.ca/?p=21808"
menu_order
0
post_type
"post"
post_mime_type
""
comment_count
"0"
filter
"raw"
empty
empty
empty
empty
empty
Key Value
SERVER_SOFTWARE
"nginx/1.22.1"
REQUEST_URI
"/blog/jack-grinhaus-brings-wings-of-hope-to-the-tfs-virtual-stage/"
USER
"forge"
HOME
"/home/forge"
HTTP_REFERER
"https://uat.tfs.staging.poundandgrain.ca/blog/jack-grinhaus-brings-wings-of-hope-to-the-tfs-virtual-stage"
HTTP_ACCEPT_ENCODING
"gzip, br, zstd, deflate"
HTTP_USER_AGENT
"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"
HTTP_ACCEPT
"*/*"
HTTP_HOST
"uat.tfs.staging.poundandgrain.ca"
REDIRECT_STATUS
"200"
HTTPS
"on"
SERVER_NAME
"uat.tfs.staging.poundandgrain.ca"
SERVER_PORT
"443"
SERVER_ADDR
"10.0.1.187"
REMOTE_PORT
"45990"
REMOTE_ADDR
"3.145.16.251"
GATEWAY_INTERFACE
"CGI/1.1"
SERVER_PROTOCOL
"HTTP/2.0"
DOCUMENT_ROOT
"/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web"
DOCUMENT_URI
"/index.php"
SCRIPT_NAME
"/index.php"
SCRIPT_FILENAME
"/home/forge/uat.tfs.staging.poundandgrain.ca/releases/20241113033749/web/index.php"
CONTENT_LENGTH
""
CONTENT_TYPE
""
REQUEST_METHOD
"GET"
QUERY_STRING
""
FCGI_ROLE
"RESPONDER"
PHP_SELF
"/index.php"
REQUEST_TIME_FLOAT
1736361781.4997
REQUEST_TIME
1736361781
DB_NAME
"tfs_uat"
DB_USER
"***"
DB_PASSWORD
"************"
WP_ENV
"development"
WP_HOME
"https://uat.tfs.staging.poundandgrain.ca"
WP_SITEURL
"https://uat.tfs.staging.poundandgrain.ca/wp"
WP_DEBUG_LOG
"/path/to/debug.log"
AUTH_KEY
"****************************************************************"
SECURE_AUTH_KEY
"****************************************************************"
LOGGED_IN_KEY
"****************************************************************"
NONCE_KEY
"****************************************************************"
AUTH_SALT
"****************************************************************"
SECURE_AUTH_SALT
"****************************************************************"
LOGGED_IN_SALT
"****************************************************************"
NONCE_SALT
"****************************************************************"
ACF_PRO_KEY
"b3JkZXJfaWQ9NDQxMjV8dHlwZT1kZXZlbG9wZXJ8ZGF0ZT0yMDE0LTExLTEyIDA2OjA0OjE3"
MIRROR_URL
"https://dev.tfs.staging.poundandgrain.ca"
SOURCE_OF_TRUTH
"false;"
BLOG_URL
"https://dev.tfs.staging.poundandgrain.ca"
Key Value
DB_NAME
"tfs_uat"
DB_USER
"***"
DB_PASSWORD
"************"
WP_ENV
"development"
WP_HOME
"https://uat.tfs.staging.poundandgrain.ca"
WP_SITEURL
"https://uat.tfs.staging.poundandgrain.ca/wp"
WP_DEBUG_LOG
"/path/to/debug.log"
AUTH_KEY
"****************************************************************"
SECURE_AUTH_KEY
"****************************************************************"
LOGGED_IN_KEY
"****************************************************************"
NONCE_KEY
"****************************************************************"
AUTH_SALT
"****************************************************************"
SECURE_AUTH_SALT
"****************************************************************"
LOGGED_IN_SALT
"****************************************************************"
NONCE_SALT
"****************************************************************"
ACF_PRO_KEY
"b3JkZXJfaWQ9NDQxMjV8dHlwZT1kZXZlbG9wZXJ8ZGF0ZT0yMDE0LTExLTEyIDA2OjA0OjE3"
MIRROR_URL
"https://dev.tfs.staging.poundandgrain.ca"
SOURCE_OF_TRUTH
"false;"
BLOG_URL
"https://dev.tfs.staging.poundandgrain.ca"
0. Roots\Acorn\Exceptions\Handler\PrettyPageHandler