Illuminate \ View \ ViewException (E_ERROR)
syntax error, unexpected '|', expecting variable (T_VARIABLE) (View: /home/forge/dev.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/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/resources/views/single.blade.php)" Stacktrace: #28 Illuminate\View\ViewException in /home/forge/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/cocur/slugify/src/SlugifyInterface.php:35 #27 Illuminate\View\Engines\CompilerEngine:handleViewException in /home/forge/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/view/Engines/PhpEngine.php:43 #26 ParseError in /home/forge/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/cocur/slugify/src/SlugifyInterface.php:35 #25 Composer\Autoload\{closure} in /home/forge/dev.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/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/caseyamcl/toc/src/UniqueSlugify.php:31 #22 include in /home/forge/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/composer/ClassLoader.php:576 #21 Composer\Autoload\{closure} in /home/forge/dev.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/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/caseyamcl/toc/src/MarkupFixer.php:56 #18 TOC\MarkupFixer:__construct in /home/forge/dev.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/dev.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/dev.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/dev.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/dev.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/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/events/Dispatcher.php:226 #12 Illuminate\Events\Dispatcher:dispatch in /home/forge/dev.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/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/view/View.php:120 #10 Illuminate\View\View:renderContents in /home/forge/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/view/View.php:91 #9 Illuminate\View\View:render in /home/forge/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/storage/framework/views/eb422c8beb3d93cfa2fe08ce3b438f23bc0fae21.php:3 #8 include in /home/forge/dev.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/dev.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/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/view/View.php:139 #5 Illuminate\View\View:getContents in /home/forge/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/view/View.php:122 #4 Illuminate\View\View:renderContents in /home/forge/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/vendor/illuminate/view/View.php:91 #3 Illuminate\View\View:render in /home/forge/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/index.php:4 #2 include in /home/forge/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/wp/wp-includes/template-loader.php:106 #1 require_once in /home/forge/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/wp/wp-blog-header.php:19 #0 require in /home/forge/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/index.php:6
28
Illuminate\View\ViewException
/home/forge/dev.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/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/cocur/slugify/src/SlugifyInterface.php35
25
Composer\Autoload\{closure}
/home/forge/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/composer/ClassLoader.php427
24
Composer\Autoload\ClassLoader loadClass
[internal]0
23
spl_autoload_call
/home/forge/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/caseyamcl/toc/src/UniqueSlugify.php31
22
include
/home/forge/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/composer/ClassLoader.php576
21
Composer\Autoload\{closure}
/home/forge/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/composer/ClassLoader.php427
20
Composer\Autoload\ClassLoader loadClass
[internal]0
19
spl_autoload_call
/home/forge/dev.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/eb422c8beb3d93cfa2fe08ce3b438f23bc0fae21.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/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/wp/wp-includes/template-loader.php106
1
require_once
/home/forge/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/wp/wp-blog-header.php19
0
require
/home/forge/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/index.php6
/home/forge/dev.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/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/resources/views/single.blade.php)"
    
/home/forge/dev.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/dev.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/dev.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/dev.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/dev.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/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/caseyamcl/toc/src/UniqueSlugify.php"
    
/home/forge/dev.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/dev.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/dev.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/dev.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/dev.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/dev.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/dev.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/dev.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/dev.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/dev.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/dev.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/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/storage/framework/views/eb422c8beb3d93cfa2fe08ce3b438f23bc0fae21.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/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/resources/views/single.blade.php ENDPATH**/ ?>
/home/forge/dev.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/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/storage/framework/views/eb422c8beb3d93cfa2fe08ce3b438f23bc0fae21.php"
    
/home/forge/dev.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/dev.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/dev.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/dev.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/dev.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/dev.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/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/index.php"
    
/home/forge/dev.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/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/wp/wp-includes/template-loader.php"
    
/home/forge/dev.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/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/wp/wp-blog-header.php"
    

Environment & details:

Key Value
query_vars
array:3 [
  "page" => ""
  "name" => "acting-students-bring-homer-epic-the-odyssey-to-virtual-stage"
  "category_name" => "blog"
]
query_string
"name=acting-students-bring-homer-epic-the-odyssey-to-virtual-stage&category_name=blog"
request
"blog/acting-students-bring-homer-epic-the-odyssey-to-virtual-stage"
matched_rule
"(.+?)/([^/]+)(?:/([0-9]+))?/?$"
matched_query
"category_name=blog&name=acting-students-bring-homer-epic-the-odyssey-to-virtual-stage&page="
did_permalink
true
Key Value
query
array:3 [
  "page" => ""
  "name" => "acting-students-bring-homer-epic-the-odyssey-to-virtual-stage"
  "category_name" => "blog"
]
query_vars
array:66 [
  "page" => 0
  "name" => "acting-students-bring-homer-epic-the-odyssey-to-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" => 10
  "nopaging" => false
  "comments_per_page" => "50"
  "no_found_rows" => false
  "order" => "DESC"
]
meta_query
WP_Meta_Query {#2559}
queried_object
WP_Post {#2560}
queried_object_id
24974
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 = 'acting-students-bring-homer-epic-the-odyssey-to-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
24974
post_author
"43"
post_date
"2022-03-09 19:56:32"
post_date_gmt
"2022-03-09 19:56:32"
post_content
"""
Toronto Film School will reimagine a Homer classic when its upcoming production of <em><a href="https://create.torontofilmschool.ca/showcase/theodyssey/" target="_blank" rel="noopener noreferrer">The Odyssey</a></em> hits the virtual stage this month.\n
\n
<em> </em>\n
\n
Adapted by <a href="https://www.jonathanwhittaker.com/" target="_blank" rel="noopener noreferrer">Jonathan Whittaker</a> and his fifth-term <a href="https://www.torontofilmschool.ca/programs/acting-for-film-tv-and-the-theatre-diploma/" target="_blank" rel="noopener noreferrer">Acting for Film, TV &amp; the Theatre</a> students, the 90-minute play revisits the tale of Odysseus’s epic, 20-year journey to reunite with his family.\n
\n
&nbsp;\n
\n
“Odyssey ­­– a journey, a travel through adversity. Clinging steadfast in the belief in our ability to succeed against overwhelming odds. Seeking redemption and salvation as the ultimate goal. We have all been on such a journey of late,” said Whittaker.\n
\n
&nbsp;\n
\n
[caption id="attachment_24975" align="aligncenter" width="334"]<img class="wp-image-24975 size-medium" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2022/03/TFS_ACT_TheOdysseyPosterFULL_0308.jpg" alt="Toronto Film School presents Homer's The Odyssey poster" width="334" height="526" /> Design by Angèlie Gilchrist Blanchard[/caption]\n
\n
&nbsp;\n
\n
<em>The Odyssey</em>, which was assistant directed and stage managed by Regan Pardo, will take to the virtual stage for a three-performance run on March 23, 24 and 26 as follows:\n
\n
&nbsp;\n
<p style="text-align: center;">Wednesday, March 23 at 6 p.m. (EST)</p>\n
<p style="text-align: center;">Thursday, March 24 at 8 p.m. (EST)</p>\n
<p style="text-align: center;">Saturday, March 26 at 1 p.m. (EST)</p>\n
&nbsp;\n
<p style="text-align: center;"><strong>***Click <a href="https://create.torontofilmschool.ca/showcase/theodyssey/">here</a> to livestream any of the above performances***</strong></p>\n
&nbsp;\n
\n
<strong> </strong>\n
<h1 style="text-align: center;"><strong>The Creative Team Behind <em>The Odyssey:</em></strong></h1>\n
&nbsp;\n
\n
&nbsp;\n
<p style="text-align: center;"><strong><em> <img class="alignnone wp-image-24978 size-medium" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2022/03/TFS_ACT_1MorvaridAlinejad_0308.jpg" alt="Morvarid Alinejad - Toronto Film School actor " width="526" height="526" /></em></strong></p>\n
<p style="text-align: center;"><strong>Morvarid Alinejad – Euryclea, Ino, Arete, Ensemble </strong></p>\n
<p style="text-align: center;">Morvarid Alinejad is currently an Acting student at Toronto Film School, who graduated Early Childhood Education from Seneca College in 2018. She was the first assistant director in a feature film directed by Abdolreza Kahani in 2022. She had the opportunity to be the second lead actress in a feature film <em>Peace in Pain</em> in 2021. Morvarid is also interested in film making and directed two short films, <em>Surface</em> and <em>Lifehood</em> in 2021. She immigrated to Canada in 2010 and speaks English and Farsi fluently. She loves working out at the gym, swimming, dancing, and horseback riding in her free time. Morvarid also enjoys oil painting and pottery.</p>\n
&nbsp;\n
\n
&nbsp;\n
\n
<img class="aligncenter wp-image-24979 size-medium" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2022/03/TFS_ACT_2ShahlaFatah_0308.jpg" alt="Shahla Fatah - Toronto Film School actor " width="526" height="526" />\n
<p style="text-align: center;"><strong>Shahla Fatah – Nestor, Eurylochus, Ensemble </strong></p>\n
<p style="text-align: center;">Shahla Fatah was born and raised in Toronto, Ontario. She took a big step to pursue her passion for filmmaking at Toronto Film School. She has previously worked with MADD Canada as one of the lead roles in their commercial and participated in different student projects, such as having the lead role in Max Thompson’s short film, other student assignments, and having background experiences. Shahla, a proficient athlete who has trained in different sports such as soccer, tennis, and skiing, is inspired to use her talents through her art.</p>\n
&nbsp;\n
\n
&nbsp;\n
\n
<img class="aligncenter wp-image-24980 size-medium" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2022/03/TFS_ACT_3JaeGrant_0308.jpg" alt="Jae Grant - Toronto Film School actor " width="526" height="526" />\n
<p style="text-align: center;"><strong>Jae Grant – Hermes, Eumaeus, Ensemble </strong></p>\n
<p style="text-align: center;">Jae Grant was born in Whitecourt, Alberta and moved to Toronto at age 25. She is Metis, and a member of the LGBTQ+ community. In the past, Jae performed in the TFS production of <em>Seventeen</em>, and played Vaela in the TFS film <em>Nightshade</em>, directed by Jonathan Higgins. Jae is a student at Toronto Film school, where she is gaining experience in acting and voiceover. Jae has a background in first aid, as well as security work. Outside of acting, Jae enjoys cosplaying, reading, watching anime and writing.</p>\n
&nbsp;\n
\n
&nbsp;\n
\n
<img class="aligncenter wp-image-24981 size-medium" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2022/03/TFS_ACT_4MartinGuibord_0308.jpg" alt="Martin Guibord - Toronto Film School actor " width="526" height="526" />\n
<p style="text-align: center;"><strong>Martin Guibord – Antinous, Elpenor, Ensemble </strong></p>\n
<p style="text-align: center;">Martin Guibord is a 52-year-old actor currently attending Toronto Film School. He was a dentist for 24 years before he decided to make a career change into acting. He is fully bilingual in both English and French. He has appeared in five short films thus far, playing a range of roles such as a doctor, a mad scientist, a TV interviewer, a father, and a street person. He is a father of two and fantastic at telling silly dad jokes. He loves to play hockey and take his dog out for long walks. He hopes to have a successful career in both TV and film, as well as voiceover work.</p>\n
&nbsp;\n
\n
&nbsp;\n
\n
<img class="aligncenter wp-image-24982 size-medium" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2022/03/TFS_ACT_5MoiraJones_0308.jpg" alt="Moira Jones - Toronto Film School actor " width="526" height="526" />\n
<p style="text-align: center;"><strong>Moira Jones – </strong><strong>Cyclopes, Alcinous, Ensemble </strong></p>\n
<p style="text-align: center;">After graduating from Drumheller Valley Secondary School, Moira Jones applied to Toronto Film School , where she currently trains to advance her craft, meeting a like-minded community that has helped further her passion. Moira is adept in classical ballet, training in dance for over six years, as well as piano and classical voice training as a soprano for 14 years. Moira started off in musical theatre before branching out toward film and voice acting, finding a newfound love for each medium. Additionally, she has starred in numerous short films, most notably the award-winning Canada Shorts independent film <em>All Alone,</em> as well as several theatrical productions such as <em>Sister Act</em>, as Sister Mary Roberts and <em>Seven Stories</em> as Lenny, all produced by Kaleidoscope Theatre in her town of Drumheller.</p>\n
&nbsp;\n
\n
&nbsp;\n
\n
<img class="aligncenter wp-image-24983 size-medium" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2022/03/TFS_ACT_6OliviaKydd_0308.jpg" alt="Olivia Kydd - Toronto Film School actor " width="526" height="526" />\n
<p style="text-align: center;"><strong>Olivia Kydd – Odysseus</strong></p>\n
<p style="text-align: center;">Olivia Kydd was born in Hamilton, Ontario and raised in Halifax, Nova Scotia. Always an avid film and TV lover, she deeply admires Rita Hayworth, who inspired her to pursue the arts. After graduating from Halifax West High School in 2019, she applied to Toronto Film School and has been dedicated to a career in film and TV ever since. She has since moved to Toronto with her two adopted cats and roommate. She has featured in two shorts and two commercials, as well\n
as written, directed, edited and performed in her own short film at Toronto Film School. She strives to have a successful career in theatre, film, TV, and voiceover.</p>\n
&nbsp;\n
\n
&nbsp;\n
\n
<img class="aligncenter wp-image-24984 size-medium" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2022/03/TFS_ACT_7NicholasLaframboise_0308.jpg" alt="Nicholas Laframboise -Toronto Film School actor " width="526" height="526" />\n
<p style="text-align: center;"><strong>Nicholas Laframboise </strong><strong>– Telemachus, Ensemble </strong></p>\n
<p style="text-align: center;">Nicholas found his passion for acting in high school theatre productions such as <em>The Importance of Being Earnest</em> (‘Algernon Moncrieff’), <em>Marat/Saad</em> (‘Jean Paul Marat’), and <em>The Laramie Project </em>(‘Aaron McKinney’). After graduating from the University of St. Andrews in Scotland with a degree in International Relations, he returned to his native Montreal, where he worked before rediscovering his love of performance arts through a Second City Improv class. While training at Toronto Film School, Nicholas has had the pleasure of taking on challenging characters, such as ‘Stanley Kowalski’ (<em>A Streetcar Named Desire</em>) and ‘Joe Pitt’ (<em>Angels in America</em>), that have helped to push his emotional range as an actor. He is bilingual in English and French, proficient in multiple accents and enjoys sports such as golf, tennis, skiing, horseback riding, and is an avid angler and outdoorsman. Having had the opportunity to star in two TFS shorts, as well as write and direct one himself, Nicholas hopes to pursue a career in both film and theatre.</p>\n
&nbsp;\n
\n
&nbsp;\n
\n
<img class="aligncenter wp-image-24985 size-medium" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2022/03/TFS_ACT_8AliceLapyko_0308.jpg" alt="Alice Lapyko - Toronto Film School actor " width="526" height="526" />\n
<p style="text-align: center;"><strong>Alice Lapyko  – Zeus, Teiresias, Philoetius, Ensemble </strong></p>\n
<p style="text-align: center;">Alice Lapyko is a fifth term Toronto Film School student/actress. She started doing plays at the age of five and would perform on a yearly basis, if not more often. She continued following this passion, doing musical theatre at Woodroffe High School in her hometown of Ottawa. After graduation, she had a lead role in a music video and a supporting role in a short film. She then started studying at Toronto Film School and moved to Toronto in order to pursue this career. Alice is trilingual and enjoys trying new things and learning new skills. She is looking forward to work on upcoming projects and can’t wait to find more.</p>\n
&nbsp;\n
\n
&nbsp;\n
\n
<img class="aligncenter wp-image-24986 size-medium" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2022/03/TFS_ACT_9AnnaLysgaard_0308.jpg" alt="Anna Lysgaard - Toronto Film School actor " width="526" height="526" />\n
<p style="text-align: center;"><strong>Anna Lysgaard – Penelope, Circe, Ensemble </strong></p>\n
<p style="text-align: center;">Anna Lysgaard is an actress from Throsby, Alberta. She enjoys writing her own material and has been working hard in her training at TFS thus far. She is an athletic individual, who is trained in volleyball, swimming, and rugby at a competitive level. She is also trained in music – both instrumental (on the piano, clarinet, and flute) and voice – and plans to release her own music one day. Growing up on a farm, she learned how to ride horseback. She took drama and improv throughout her last year of high school and followed her passion at Red Deer College in a Production Performance program. She then transferred to Toronto Film School, where in her first year she was taught by many active performers in the industry including Jonathan Cherry, Rosanna Saracino, and Lauren Brotman. She has performed in memorable theatre pieces including <em>Extremities</em> by playwright William Mastrosimone, and <em>Dirty Butterfly</em> by playwright Debbie Tucker Green, to name a couple. She is outgoing and looks forward to opportunities in her future as an artist.</p>\n
&nbsp;\n
\n
&nbsp;\n
\n
<img class="aligncenter wp-image-24987 size-medium" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2022/03/TFS_ACT_10LinkaLouangeNitereka_0308.jpg" alt="Linka Louange Nitereka - Toronto Film School actor " width="526" height="526" />\n
<p style="text-align: center;"><strong>Linka Louange Nitereka – Eurymachus, Calypso, Anticlea, Ensemble </strong></p>\n
<p style="text-align: center;">Linka Louange Nitereka is a trilingual actress and writer who speaks fluent French, English and Kirundi. She migrated from a very small country called Burundi in 2016. At the age of 16, she entered high school and started her new life with her family in Vancouver. After high school, she went on to attend Langara College, where she studied International Relations and Political Science for a year. Within that year, she realized acting and writing were her passions, so she applied to Toronto Film School. In her first year at TFS, she got to train with teachers who are still working in the industry like Jonathan Cherry, Rosanna Saracino, and Lauren Brotman, and got to work on plays like <em>Oleanna</em> written by David Mamet,<em> tough</em> produced by Green Thumb and many others. She had training in Stanislavski’s and Uta Hagen’s Methods. During her studies at TFS, she also had the chance to write and direct her first short film <em>Drowning</em> and is currently working on her second short film called <em>My Story to Tell</em>.</p>\n
&nbsp;\n
\n
&nbsp;\n
\n
<img class="aligncenter wp-image-24988 size-medium" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2022/03/TFS_ACT_11ShanaRose_0308.jpg" alt="Toronto Film School actor Shana Rose" width="526" height="526" />\n
<p style="text-align: center;"><strong>Shana Rose – Athena, Mentor </strong></p>\n
<p style="text-align: center;">Shana Rose is a Toronto-based actor, singer/songwriter, and filmmaker, training in film, TV, and theatre at Toronto Film School. Throughout adolescence, they participated in many extracurricular Musical Theatre productions, including <em>The Prince of Egypt</em> with the Neshama Theatre Troupe. Shana has also performed as the lead role in several short films, including <em>Fairyland</em>, with Centennial College, and wrote, directed, and starred in the silent short film, <em>Truth</em>. Shana Rose graduated from Ryerson University’s Photographic Arts’ program and studied Psychology at Excelsior College in New York. They enjoy being active with dance, swimming, and indoor rock-climbing and speak English, Hebrew, and French. Shana looks forward to using all their techniques and skills to build a successful career as an actor.</p>\n
&nbsp;\n
\n
&nbsp;\n
\n
<img class="aligncenter wp-image-24989 size-medium" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2022/03/TFS_ACT_12MihirUpadhyaya_0308.jpg" alt="Toronto Film School actor Mihir Upadhyaya" width="526" height="526" />\n
<p style="text-align: center;"><b>Mihir Upadhyaya – Menelaus, Euryalus, Poseidon, Ensemble </b></p>\n
<p style="text-align: center;">Mihir Upadhyaya is a dedicated actor, writer, director, and producer who resides in Toronto. He is passionate about his craft and has experience producing short, self-made projects. These projects include a short <em>Lego Star Wars</em> fan film and a song parody music video. He also enjoys photography and has collected a portfolio for himself over the years. After high school, he decided to join Brock University’s film program, but a year later decided to join a more hands-on program at Toronto Film School. Sports are another major subject of interest, as he is incredibly involved with watching and participating in many different sports (basketball, soccer, MMA, boxing...). Music is another interest, as he is learning how to play the guitar and has the desire to learn how to sing in the future, too. He has also produced his own silent short film at Toronto Film School,<em> orthodox</em>.</p>\n
&nbsp;\n
\n
&nbsp;\n
\n
<img class="aligncenter wp-image-24990 size-medium" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2022/03/TFS_ACT_13ReganPardo_0308.jpg" alt="Regan Pardo, Assistant Director, Stage Manager - Toronto Film School " width="526" height="526" />\n
<p style="text-align: center;"><strong>Regan Pardo – Assistant Director, Stage Manager </strong></p>\n
<p style="text-align: center;">Regan Pardo was born and raised in Blenheim, Ontario. She grew up on her parent’s berry farm and attended the University of Windsor, where she received her Bachelor of Forensic Science and specialized in Biochemistry. After finishing her degree, she realized she wanted to pursue her true passion and moved to Toronto to begin her career in TV, Film, and Theatre. Regan attended Toronto Film School, where she worked and trained under accomplished actors in the field. She has been a part of many short films; in addition, she débuted her theatre talents in the production of <em>Twelfth Night</em> as Maria, directed by Jack Grinhaus. She works hard at her craft, is dedicated to her work and is always looking to expand her knowledge. Regan has been singing for over 10 years, she is also a lover of accents, dialects, and character voices. She has a talented hand in theatre/film makeup. She is also a nature enthusiast, loves animals, drives tractors, and has an extensive berry knowledge.</p>\n
&nbsp;\n
\n
&nbsp;\n
\n
<img class="aligncenter wp-image-24991 size-medium" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2022/03/TFS_ACT_14JonathanWhittaker_0308.jpg" alt="Toronto Film School actor " width="526" height="526" />\n
<p style="text-align: center;"><strong>Jonathan Whittaker – Director</strong></p>\n
<p style="text-align: center;"><a href="https://www.jonathanwhittaker.com/">Jonathan Whittaker</a> is a graduate of Ryerson University with a Bachelor of Fine Arts with distinction degree in Performance/Acting (1978-80) and a 2015 participant of the Banff/Citadel Professional Development Program. His notable theatre credits include: <em>Beside Myself</em>, <em>Prom Queen, </em>Nigredo <em>Hotel </em>(Dora Award nomination), <em>The Big Sleep</em>, <em>Colours in the Storm, The Team on the Hill, Jake and the Kid</em>, <em>Les Misérables and Dirty Dancing </em>(Mirvish Productions), <em>Man of La Mancha</em>, <em>Closer than Ever</em>, <em>12 Angry Men</em> and <em>The Dining Room</em>. He’s also appeared on many television series and feature films, including: <a href="https://www.imdb.com/title/tt1091909/?ref_=nm_flmg_act_4"><em>Murdoch Mysteries</em></a><em>, <a href="https://www.imdb.com/title/tt5809150/?ref_=nm_flmg_act_7">Ransom</a>, <a href="https://www.imdb.com/title/tt3230854/?ref_=nm_flmg_act_8">The Expanse</a>, <a href="https://www.imdb.com/title/tt4057844/?ref_=nm_flmg_act_17">Open Heart</a> </em>(series lead), <a href="https://www.imdb.com/title/tt0338574/?ref_=nm_flmg_act_53"><em>Alienated</em></a> (series lead), <a href="https://www.imdb.com/title/tt1567215/?ref_=nm_flmg_act_28"><em>The Kennedys</em></a><em>, <a href="https://www.imdb.com/title/tt1059475/?ref_=nm_flmg_act_31">Flashpoint</a>, <a href="https://www.imdb.com/title/tt1632701/?ref_=nm_flmg_act_22">Suits</a></em>, <a href="https://www.imdb.com/title/tt8980602/?ref_=nm_flmg_act_1"><em>The Kid Detective</em></a>, <a href="https://www.imdb.com/title/tt0299658/?ref_=nm_flmg_act_60"><em>Chicago</em></a><em>, <a href="https://www.imdb.com/title/tt0418819/?ref_=nm_flmg_act_44">Land of the Dead</a>, <a href="https://www.imdb.com/title/tt0094137/?ref_=nm_flmg_act_111">Three Men and a Baby</a>, </em>and<em> <a href="https://www.imdb.com/title/tt0159097/?ref_=nm_flmg_act_84">Virgin Suicides</a></em>. For Toronto Film School, he’s director the plays <em>Lord of the Flies, Journeys, 12 Angry Jurors, </em>and <em>Spirited</em>.</p>\n
&nbsp;
"""
post_title
"Acting Students Bring Homer Epic ‘The Odyssey’ to Virtual Stage"
post_excerpt
""
post_status
"publish"
comment_status
"closed"
ping_status
"open"
post_password
""
post_name
"acting-students-bring-homer-epic-the-odyssey-to-virtual-stage"
to_ping
""
pinged
""
post_modified
"2023-03-27 21:07:10"
post_modified_gmt
"2023-03-27 21:07:10"
post_content_filtered
""
post_parent
0
guid
"https://dev.tfs.staging.poundandgrain.ca/?p=24974"
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/acting-students-bring-homer-epic-the-odyssey-to-virtual-stage/"
USER
"forge"
HOME
"/home/forge"
HTTP_REFERER
"https://dev.tfs.staging.poundandgrain.ca/blog/acting-students-bring-homer-epic-the-odyssey-to-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
"dev.tfs.staging.poundandgrain.ca"
REDIRECT_STATUS
"200"
HTTPS
"on"
SERVER_NAME
"dev.tfs.staging.poundandgrain.ca"
SERVER_PORT
"443"
SERVER_ADDR
"10.0.1.187"
REMOTE_PORT
"47675"
REMOTE_ADDR
"3.138.124.64"
GATEWAY_INTERFACE
"CGI/1.1"
SERVER_PROTOCOL
"HTTP/2.0"
DOCUMENT_ROOT
"/home/forge/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web"
DOCUMENT_URI
"/index.php"
SCRIPT_NAME
"/index.php"
SCRIPT_FILENAME
"/home/forge/dev.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
1731850587.8531
REQUEST_TIME
1731850587
DB_NAME
"tfs_dev"
DB_USER
"***"
DB_PASSWORD
"************"
WP_ENV
"development"
WP_HOME
"https://dev.tfs.staging.poundandgrain.ca"
WP_SITEURL
"https://dev.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"
Key Value
DB_NAME
"tfs_dev"
DB_USER
"***"
DB_PASSWORD
"************"
WP_ENV
"development"
WP_HOME
"https://dev.tfs.staging.poundandgrain.ca"
WP_SITEURL
"https://dev.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"
0. Roots\Acorn\Exceptions\Handler\PrettyPageHandler