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" => "toronto-film-school-announces-members-of-its-new-diversity-advisory-councils"
  "category_name" => "news"
]
query_string
"name=toronto-film-school-announces-members-of-its-new-diversity-advisory-councils&category_name=news"
request
"news/toronto-film-school-announces-members-of-its-new-diversity-advisory-councils"
matched_rule
"(.+?)/([^/]+)(?:/([0-9]+))?/?$"
matched_query
"category_name=news&name=toronto-film-school-announces-members-of-its-new-diversity-advisory-councils&page="
did_permalink
true
Key Value
query
array:3 [
  "page" => ""
  "name" => "toronto-film-school-announces-members-of-its-new-diversity-advisory-councils"
  "category_name" => "news"
]
query_vars
array:66 [
  "page" => 0
  "name" => "toronto-film-school-announces-members-of-its-new-diversity-advisory-councils"
  "category_name" => "news"
  "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
22323
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 = 'toronto-film-school-announces-members-of-its-new-diversity-advisory-councils' 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
22323
post_author
"43"
post_date
"2021-02-26 15:43:57"
post_date_gmt
"2021-02-26 15:43:57"
post_content
"""
“Sometimes you gotta remind people who the damn hell you are ­– that you’re the shit.”\n
\n
&nbsp;\n
\n
Those were just a few of the inspirational words of advice <a href="https://treyanthony.com/" target="_blank" rel="noopener noreferrer">Trey Anthony</a> passed along to students during her recent guest appearance on Toronto Film School’s <em>In Conversation</em> speaker series.\n
\n
&nbsp;\n
<p style="text-align: center;"> <iframe src="https://www.youtube.com/embed/QNxl50xNI7E" width="560" height="315" frameborder="0" allowfullscreen="allowfullscreen"></iframe><ins datetime="2021-02-23T20:05:13+00:00"></ins></p>\n
&nbsp;\n
\n
The four-time NAACP Award-winning writer of <a href="https://www.playwrightscanada.com/Books/D/da-Kink-in-my-hair" target="_blank" rel="noopener noreferrer"><em>‘da Kink in My Hair</em></a> and <a href="https://www.playwrightscanada.com/Books/H/How-Black-Mothers-Say-I-Love-You" target="_blank" rel="noopener noreferrer"><em>How Black Mothers Say I Love You</em></a> spent 90 minutes engaged in a lively discussion about her career with Toronto Film School’s <a href="https://www.torontofilmschool.ca/blog/andrew-barnsley-executive-producer-schitts-creek-joins-toronto-film-school-executive-producer-residence/" target="_blank" rel="noopener noreferrer">Executive Producer in Residence </a><a href="http://www.project10.ca/about" target="_blank" rel="noopener noreferrer">Andrew Barnsley</a> and <a href="https://www.torontofilmschool.ca/programs/writing-for-film-tv-diploma/" target="_blank" rel="noopener noreferrer">Writing for Film &amp; TV </a>alumnus <a href="https://www.google.com/search?client=safari&amp;rls=en&amp;q=caleigh+bacchus+toronto+film+school&amp;ie=UTF-8&amp;oe=UTF-8" target="_blank" rel="noopener noreferrer">Caleigh Bacchus</a> on Feb. 18.\n
\n
&nbsp;\n
\n
<img class="alignnone size-medium wp-image-22280 aligncenter" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2021/02/TFS_ALL_TreyAnthonyInConvoPanel1_0218.jpg" alt="" width="670" height="393" />\n
\n
&nbsp;\n
\n
Previous guests of the <em>In Conversation</em> speaker series have included Academy Award-nominated filmmaker <a href="https://www.torontofilmschool.ca/blog/in-conversation-with-atom-egoyan-event-delves-into-all-facets-of-celebrated-filmmakers-journey/" target="_blank" rel="noopener noreferrer">Atom Egoyan</a>, Beverly Hills 90210 star <a href="https://www.torontofilmschool.ca/blog/jason-priestleys-transformation-from-teen-heartthrob-to-acclaimed-actor-director-impresses-in-conversation-audience/" target="_blank" rel="noopener noreferrer">Jason Priestley</a>, Emmy-winning actors <a href="https://www.torontofilmschool.ca/blog/emmy-nominated-schitts-creek-star-annie-murphy-dishes-on-working-on-canadian-hit-comedy-series/" target="_blank" rel="noopener noreferrer">Annie Murphy</a> and <a href="https://www.torontofilmschool.ca/blog/orphan-black-star-tatiana-maslany-shares-acting-insights-during-inspirational-in-conversation-event/" target="_blank" rel="noopener noreferrer">Tatiana Maslany</a>, Oscar- and Golden Globe-nominated writer and actor <a href="https://www.torontofilmschool.ca/blog/nia-vardalos-meteoric-rise-to-fame-and-critical-acclaim-inspires-during-motivational-in-conversation-event/" target="_blank" rel="noopener noreferrer">Nia Vardalos</a>, and 30-year veteran stand-up comedian <a href="https://www.torontofilmschool.ca/blog/toronto-film-school-students-crack-up-with-caroline-rhea-during-latest-instalment-of-in-conversation-series/" target="_blank" rel="noopener noreferrer">Caroline Rhea</a>.\n
\n
&nbsp;\n
\n
Here’s what Anthony – whose latest book, <a href="https://www.penguinrandomhouse.ca/books/647507/black-girl-in-love-with-herself-by-trey-anthony/9781401960261" target="_blank" rel="noopener noreferrer"><em>Black Girl in Love (With Herself)</em></a>, was published in early January – had to say during her Feb. 18 chat with Toronto Film School via Zoom:\n
\n
&nbsp;\n
\n
<strong>On moving to Canada from England at 12 and growing up in Rexdale</strong>\n
\n
&nbsp;\n
\n
“My mother left us in England with our grandmother when I was 8 years old when she moved to Canada to get settled and create a home for us. Her intentions were for it to be shorter than it was, but we were actually separated from our mother for four years. That was the framework around my story, <em><a href="https://www.playwrightscanada.com/Books/H/How-Black-Mothers-Say-I-Love-You" target="_blank" rel="noopener noreferrer">How Black Mothers Say I Love You</a></em>, which dealt with mothers leaving their children. So, it definitely impacted my life in what I would say a very serious way.\n
\n
&nbsp;\n
\n
“When we moved to be with her, we moved to Toronto Housing in <a href="https://en.wikipedia.org/wiki/Rexdale" target="_blank" rel="noopener noreferrer">Rexdale</a>, which was a very big Caribbean, Jamaican population. I went to <a href="https://schoolweb.tdsb.on.ca/elmbank/" target="_blank" rel="noopener noreferrer">Elmbank Middle School</a>, and when I got there, all of a sudden it was the most Black kids I had ever seen in my life. In England, I was in a more diverse, mixed area that was very working class, but here in Toronto, it was a very Black school.  And when I got there, all of a sudden everyone said, ‘Oh, she thinks she’s white,’ because of my accent. I had an English accent, so all of the kids thought I thought I was better than them…I became this novelty because no one had seen a Black girl with an English accent, but that also brought a lot of hate my way, because people thought I was stuck up. And that really began my entry into being a people pleaser and being a comedian, because I tried to make fun of myself before other people made fun of me…\n
\n
&nbsp;\n
\n
“I think that experience is what has really shaped me to be able to be this kind of shapeshifter who’s able to really fit into places. That’s also how I started out becoming this actor. I acted my way through middle school.”\n
\n
&nbsp;\n
\n
<strong>On how her grandmother fostered her early love for performing </strong>\n
\n
&nbsp;\n
\n
“The only thing I didn’t fall into in my life was acting. I always knew I wanted to be an actor from the get-go. My family’s Jamaican, and there’s this very popular actor called <a href="https://en.wikipedia.org/wiki/Oliver_Samuels" target="_blank" rel="noopener noreferrer">Oliver (Samuels)</a> and he does these sketch comedies. He was like the Jamaican <a href="https://en.wikipedia.org/wiki/Benny_Hill" target="_blank" rel="noopener noreferrer">Benny Hill</a>, and my grandparents were just obsessed with Oliver. They thought he was the best thing since sliced bread, and I would watch them and see how much joy they got from him, and then I would start to repeat some of his jokes, and my grandmother would be like, ‘Oh my gosh, she’s so funny! She’s going to be Oliver’s twin!’ So that’s how I got started. I saw how my family loved when I played jokes, and repeated jokes.\n
\n
&nbsp;\n
\n
“My grandmother, bless her heart, she really had a dream to tour as a Black Caribbean woman. She had come to England from Jamaica and did very menial jobs for her entire life. She got a job at London Transport, where she swept trains at night, but she always wanted to be an entertainer. And I think because she never got the freedom to do that because she was supporting her family, she kind of poured all of that into me. So, my grandmother would always be, like, ‘Oh, put this in the story’ or ‘Write this,’ and she always thought I was the smartest thing ever. If she had a story, she would always be, like, ‘Trey, write this!’ So, I would write for her and we would act it out and do little sketches, and she just loved it. So that was really, I think, how I got into acting.”\n
\n
&nbsp;\n
\n
<strong>On racism in the Canadian film and television industry</strong>\n
\n
&nbsp;\n
\n
“It’s something people don’t want to talk about, especially in Canada. The racism that exists in the industry – it is very much there and we’re just having these conversations now in the last six months about the systemic barriers that are affecting the BIPOC community in Canada. It always surprises me, the fact that we’ve been having these conversations for years, and it feels like white mainstream is finally, like, ‘Oh my god, there’s a problem!’\n
\n
&nbsp;\n
\n
“I would not be able to work or survive or thrive in this industry if I did not make my own projects. It’s as simple as that. You gotta build your own damn table. That is the truth. You really have to.”\n
\n
&nbsp;\n
\n
<img class="alignnone size-medium wp-image-22281 aligncenter" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2021/02/TFS_ALL_TreyAnthonyInConvo1_0218.jpg" alt="" width="670" height="393" />\n
\n
&nbsp;\n
\n
<strong>On returning to the harsh realities of being a Black actor in Canada after a successful internship opportunity in the U.S.</strong>\n
\n
&nbsp;\n
\n
“When I came back from New York, I was really feeling myself. I’d been working on <a href="https://en.wikipedia.org/wiki/The_Chris_Rock_Show" target="_blank" rel="noopener noreferrer"><em>The Chris Rock Show</em></a> for six months, and I just came back from the <a href="https://www.aada.edu/" target="_blank" rel="noopener noreferrer">American Academy of Dramatic Arts</a>, where everybody was saying ‘You’re so good, you’re so good.’ So, I just assumed that I would get all these amazing roles because I was of the school of belief that if you work hard and you’re talented, that the world should respond accordingly, right?\n
\n
&nbsp;\n
\n
“I had no idea that the world only saw me as a Black, dark-skinned, chubby woman, so that was the box they were going to put me in: crackhead #1; baby momma #2; girlfriend on welfare #4. I remember going into auditions and they would say stuff like, ‘Could you just do that Black girl thing? Do that neck snap!’ and I remember coming back from one of those auditions feeling so unseen. They were such demeaning roles, but I had bills to pay. So, I went, but I always came back so upset.”\n
\n
&nbsp;\n
\n
<strong>On dealing with rejection</strong>\n
\n
&nbsp;\n
\n
“If you’re in this industry, you’re going to hear ‘no.’ People always say you hear ten ‘nos’ for every ‘yes.’ But I think when you’re Black, you hear 10,000 ‘nos’ for every ‘yes.’\n
\n
&nbsp;\n
\n
“Knowing this, I decided to make myself a rule. I said, ‘You have 24 hours to be sad. You have 24 hours to bitch about it. You have 24 hours to cry about it. You have 24 hours to talk about racism and sexism and all the other isms. You have 24 hours to call a friend and bemoan the existence and bane of your life. You have 24 hours. Then after that, you go to Plan B.’ And that is something that has stuck with me for my entire life.\n
\n
&nbsp;\n
\n
“You cannot afford to feel sorry for yourself. You cannot. We need to keep it going. And that is always how I’ve moved through my life, because this is what I’ve been dealt: this body, this skin, this sexuality, this working-class family. Those have been cards. And either I play them, or I sit there and feel sorry for myself. So, I’m gonna play. I’m gonna play my cards because I’m God’s pick-me.”\n
\n
&nbsp;\n
\n
<strong>On how her grandmother inspired her to write her own material</strong>\n
\n
&nbsp;\n
<p style="text-align: left;">“One day after another bad audition, I said to my grandmother, ‘They just give me such shitty roles. I hate this shit.’ And my grandmother, with all her wisdom, said to me, ‘Well, if they’re giving you shit and they’re writing shit, then write your own shit.’ And I was, like, ‘What?’ But that’s how <em><a href="https://en.wikipedia.org/wiki/Da_Kink_in_My_Hair" target="_blank" rel="noopener noreferrer">da Kink in My Hair</a></em> came about. It really was my grandmother urging me to write something that I know, and that’s how I fell into becoming a writer. I never, in my wildest dreams, had imagined I wanted to be a writer. It was just out of necessity.</p>\n
&nbsp;\n
\n
“I think that’s the same with every single thing in my career – the level of frustration that I feel in the industry and knowing that nothing has ever been handed to me. People always say ‘Things must’ve gotten easier for you,’ but it’s pretty much the same now. I may get a meeting because of my name and my reputation, but I definitely have to work harder.”\n
\n
&nbsp;\n
\n
<strong>On the benefits of creating projects for yourself </strong>\n
\n
&nbsp;\n
\n
“When you have a level of autonomy and control over your work, it prevents you from getting bitter and jaded, because I’m not waiting on anyone to hire me. I’ll hire my damn self, I’ll produce it my damn self, I’ll show up my damn self. I may not be able to do it on the biggest budget that I want, but I’m going to do it in the way that I can for now. You gotta start. And you talk about my optimism, I think I’m able to be this optimistic because I ain’t waitin’ on nobody. It would be good to work with you, it would be good to partner with you, but I ain’t waiting.”\n
\n
&nbsp;\n
\n
<strong>On creating your own opportunities with “bold asks”</strong>\n
\n
&nbsp;\n
\n
“I do a mentoring program for creative entrepreneurs, and one of the things I talk about – and it’s something I do once a day – is what I call the ‘bold ask’. It’s something I’ve done since I was a ‘nobody’ and I continue to do it now. I’ve never been scared to ask people for what I want…\n
\n
&nbsp;\n
\n
“I remember when <em>da Kink in My Hair</em> got picked up at Theatre Passe Mureille…every single night after the play, I would look at the guest list…and one day I looked and saw that <a href="https://kellyfrobinson.com/" target="_blank" rel="noopener noreferrer">Kelly Robinson</a> from <a href="https://www.mirvish.com/" target="_blank" rel="noopener noreferrer">Mirvish Productions</a> had come to see the play. And I did what I thought was necessary: I called Mirvish and I asked to speak to Kelly Robinson. He came on the phone and I said, ‘Hey, I’m Trey Anthony. I hear you came out to my play last night,’ and he said, ‘Yep, yep. I came.’ When I asked him what he thought of the play, I’ll never forget, he said, ‘It was a very handsome production...I brought my girlfriend and she loved it, but, I’ll be really honest with you, I didn’t get it.’ I said, ‘Okay, but is it possible for me to come down there and have a meeting with you? I’ve love to discuss <em>da Kink</em> with you.’ And there was my bold ask.\n
\n
&nbsp;\n
\n
“So, I went into Mirvish and I’d done my research because you cannot argue with facts. When they started telling me they did not think <em>da Kink </em>would hit their demographic…I said, ‘Yeah, your audience is older, they’re also white, and they’re going to be dead in 20 years. So, don’t you want to get in a younger audience? Don’t you want to get in a more diverse audience? Try <em>da Kink</em>. That’s what we do, we have a young, diverse audience.’ And that is how we got the Mirvish deal…\n
\n
&nbsp;\n
\n
“You have to do your research. You have to know your stuff. I went into that Mirvish meeting and I knew exactly what I wanted to say. I knew the stats. I remember quoting to them that 80 per cent of theatre tickets are purchased by women who are buying for their partners, and my play attracts 95 per cent women. Why would they say no to this? You have to go in there armed with information.”\n
\n
&nbsp;\n
\n
<img class="alignnone size-medium wp-image-22282 aligncenter" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2021/02/TFS_ALL_TreyAnthonyInConvoPanel2_0218.jpg" alt="" width="670" height="393" />\n
\n
&nbsp;\n
\n
<strong>On the importance of researching the people you want to work with</strong>\n
\n
&nbsp;\n
\n
“I can’t tell you how many times I’ve had emails from young people saying, ‘I’d love to work with you, Mr. Anthony.’ And I’m, like, you can’t even figure out my damn gender and you’re asking me for an opportunity? I don’t get it. Or I’ve interviewed people who have no idea what I’ve done, what I’ve produced. What, you can’t do a Google damn search? Just do your research…\n
\n
&nbsp;\n
\n
“You have to know stuff. In this day and age, there’s no excuse for not knowing who you’re meeting or why you want to meet them or doing some research on what people have done. There’s no excuse. And I find sometimes – and I’m sorry if people are going to get mad – but I’m going to tell you the damn truth: this millennial generation, everybody wants this quick fix. Nobody’s willing to do the damn work…and I think it’s because Instagram and Facebook have fooled us into believing that people got to where they got to overnight. So, you were expecting this overnight career to happen to you, too. But if you’re doing the research on most people, you will find that it took them years and years and years and years to get to where they are.”\n
\n
&nbsp;\n
\n
<strong>On having mixed feelings about making Canadian TV history with <em>da Kink in My Hair</em></strong>\n
\n
&nbsp;\n
\n
“It’s funny, when we got the TV deal for <em><a href="https://en.wikipedia.org/wiki/Da_Kink_in_My_Hair_(TV_series)" target="_blank" rel="noopener noreferrer">da Kink in My Hair</a>,</em> we were the first all-Black cast on Canadian television…in 2007. That just blows my mind. So, it was very bitter-sweet that we were the first, and that <a href="https://en.wikipedia.org/wiki/Ngozi_Paul" target="_blank" rel="noopener noreferrer">Ngozi Paul</a> and I were the first Black Canadian women to produce and star in a TV show.\n
\n
&nbsp;\n
\n
“My brother recently did this NSI (<a href="https://nsi-canada.ca/" target="_blank" rel="noopener noreferrer">National Screen Institute</a>) training program…and he told me they rolled out <em>da Kink in My Hair</em> as their diversity show – and this is how many years later? This is the only show, aside from <em><a href="https://www.cbc.ca/kimsconvenience/m_site/" target="_blank" rel="noopener noreferrer">Kim’s Convenience</a> </em>(that they can showcase as being diverse). Think about that: Canada is…a country of minorities, and yet we do not reflect what is in Canadian society. And that’s not even talking about the First Nation community, the Indigenous community…\n
\n
&nbsp;\n
\n
“It really shocks me that we are only now having these conversations because of the Black Lives Matter movement and George Floyd. People have only now become really vocal about the racism that has existed in the industry, while I have made a career talking about it for years. I was able to speak, because I knew there were a lot of people in the industry who wanted to speak but were scared, and because I had built my own career and had my own shows and I was producing them and making money independently. That gave me a level of power and freedom to be able to say, ‘This industry is a mess. This industry is racist. This industry has systemic barriers in place to stop people of colour.’”\n
\n
&nbsp;\n
\n
<strong>On her new role as a development producer for Bell Media</strong>\n
\n
&nbsp;\n
\n
“I just recently got a job as a <a href="https://playbackonline.ca/2020/12/21/bell-media-studios-taps-trey-anthony-as-development-producer/" target="_blank" rel="noopener noreferrer">CTV development producer</a>, and I was reading this news article that said, ‘Trey Anthony is the highest-ranked Black woman in Bell Media,’ and I had no idea…I should not come in and start a job in December 2020 and be the highest-ranking Black woman in Bell Media, because that’s deplorable. But that’s what we’re dealing with in the industry.\n
\n
&nbsp;\n
\n
“If we do not have people of colour in positions of power to greenlight shows, we then know for a fact that our stories are not going to be told. And that is just the truth. So, I’m glad change is happening, but also, really, just shocked that we’re only now starting to have these conversations.\n
\n
&nbsp;\n
\n
“I’ve been talking about this for years and years – to the point where I left Canada, because I just could not bear to be in a country that refuses to see me or acknowledge my work anymore. Somebody once said to me, ‘You started before Tyler Perry. If you had done what you have done in the U.S., you would have been a household name and probably a billionaire.’ But that is not the case. So, that is something we really need to look at in Canada…how America is way ahead of where we are. And England it way ahead of where we are. And I think that’s embarrassing. That’s just the truth.”\n
\n
&nbsp;\n
\n
<strong>On not considering herself an actor anymore</strong>\n
\n
&nbsp;\n
\n
“I cannot be in a box. It’s so funny, I was doing a Global TV interview this week, and they had me listed as ‘Actress and Playwright Trey Anthony’ – but I don’t consider myself an actor anymore. ‘Actor’ no longer speaks to me. For me, the things that speak to me passionately now are doing projects that I feel can change people’s lives. I don’t know if I will ever act in another project again, but I get really excited about giving opportunities to other people of colour to do my work.”\n
\n
&nbsp;\n
\n
<strong>On advice to young creatives just starting out in the industry </strong>\n
\n
&nbsp;\n
\n
“I would say my biggest advice is to intern, volunteer and let people know what you want, what your dream is, what your ultimate goal is.\n
\n
&nbsp;\n
\n
“Also, get going on stuff. It doesn’t cost you to put up a YouTube channel. It doesn’t cost you to do a short video on Instagram. Start to build your platform. My biggest advice I give to a lot of the kids I mentor is, let people catch you working. A lot of people think they can’t start unless they’ve got an impressive resume or a huge agent, but what I’m saying is, get yourself a little YouTube channel, put out some stuff on Instagram. I just watched this young actor who put out a short film on Instagram and it was so impressive that I wrote her. Now she’s in my mind for anything I have that may come up for her in the future.”\n
\n
&nbsp;\n
\n
<strong>On the advice she’d give herself as a young writer</strong>\n
\n
&nbsp;\n
\n
“Write what you know. And that people have editors. When I was in Grade 12, I took this writing course and my writing teacher said, ‘Oh my gosh, you write how you speak. Your grammar is so bad.’ And funny enough, I use that to my advantage. People come up to me at my plays and go, ‘Oh my God, your dialogue is so realistic. It sounds like it came right out of somebody’s mouth.’ And that’s a good thing.\n
\n
&nbsp;\n
\n
“I used to be really self-conscious about my grammar, because I sometimes don’t know where to put a comma, don’t know where to put a period, and I have long, run-on sentences. But guess what? There are people who know how to do that shit. They can edit it…You can hire people to edit your stuff. Don’t let stuff like that stop you. I feel that was one of the things I was really scared of ­– that I wasn’t doing Shakespearean English, and I wasn’t that confident with my English. I’d be really self-conscious of that, but now I realize it’s okay. People have editors.”\n
\n
&nbsp;\n
\n
<img class="alignnone size-medium wp-image-22283 aligncenter" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2021/02/TFS_ALL_TreyAnthonyInConvo3_0218.jpg" alt="" width="670" height="393" />\n
\n
&nbsp;\n
\n
<strong>On the importance of watching films and television for screenwriters</strong>\n
\n
&nbsp;\n
\n
“I’m always shocked at how you’re not watching TV, you’re not watching films. You need to be watching what’s happening, what’s going on. My excuse right now is that I have a baby, but my son just started full-time daycare in January, and let me tell you, boy, I drop that kid off and I come home and half my day is blocked off just watching TV.\n
\n
&nbsp;\n
\n
“I like to watch what’s happening, but sometimes I’m behind the curve. Everyone and their mother has watched <em>I May Destroy You</em>, but I just finally watched it this week. Watch what people are doing and what they’re creating, but don’t mimic them.”\n
\n
&nbsp;\n
\n
<strong>On the importance of being disciplined in your writing schedule</strong>\n
\n
&nbsp;\n
\n
“The thing we tend to do a lot is, we become professional students, where we’re forever taking classes and we’re forever doing research instead of writing the damn thing. There comes a time when you’ve got to pull the trigger and just write. I’ve seen many a student say, ‘I’m taking this class, I’m reading this book, and doing this,’ but I always ask them, ‘Yeah, but what have you written?’ They’re just researching to death and you fool yourself into thinking you’re doing shit when you ain’t doing nothing. It’s a way to procrastinate and also to avoid failure. You fool yourself into thinking you’re researching and you’re a student, but you can do that stuff and still be writing stuff.\n
\n
&nbsp;\n
\n
“That has been something that’s been important to me. Being disciplined is important when you’re an artist, because people don’t always respect your writing time…You have to set up parameters around your time. If there’s one thing I’m really good at, it’s being laser-focused and saying ‘This is the project I’m working on’ and ‘These are the times I’m writing’ and ‘These are the times I’m researching’ and ‘These are the times I’m making calls’ and ‘These are the times I’m paying bills’ and ‘These are the times I’m going to cook’ and ‘These are the times I’m watching TV’. It’s a beautiful balancing act.”\n
\n
&nbsp;\n
\n
<strong>On her parting words of wisdom</strong>\n
\n
&nbsp;\n
\n
“Do not let anyone discourage you from your dream. Do not let anyone – even your damn self. Always work on what you feel passionate about. Always work on your calling. Always know that you were meant to be here to do something amazing. I truly believe that. Sometimes you gotta remind people who the damn hell you are ­– that you’re the shit.”\n
\n
&nbsp;\n
\n
&nbsp;\n
\n
<img class="alignnone size-medium wp-image-21892 aligncenter" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2021/01/TFS_ALL_TreyAnthonyHeadshot_0108.jpg" alt="" width="670" height="393" />\n
<p style="text-align: center;"><strong>About Trey Anthony</strong></p>\n
<p style="text-align: center;"><a href="https://treyanthony.com/" target="_blank" rel="noopener noreferrer">Trey Anthony</a> is an award-winning writer, motivational speaker and relationship/life coach. She is the first black woman in Canada to have a television series on a prime-time network. Her work includes the plays <a href="https://www.playwrightscanada.com/Books/D/da-Kink-in-my-hair" target="_blank" rel="noopener noreferrer"><em>‘da Kink in My Hair </em></a>and <a href="https://www.playwrightscanada.com/Books/H/How-Black-Mothers-Say-I-Love-You" target="_blank" rel="noopener noreferrer"><em>How Black Mothers Say I Love You</em></a>. Anthony’s life purpose is to empower women to live their best damn lives! Her new book, <a href="https://www.penguinrandomhouse.ca/books/647507/black-girl-in-love-with-herself-by-trey-anthony/9781401960261" target="_blank" rel="noopener noreferrer"><em>Black Girl in Love (With Herself)</em></a>, published by <a href="https://www.hayhouse.com/" target="_blank" rel="noopener noreferrer">Hay House</a>, was released in January 2021. She divides her time between Toronto and Atlanta. She is an adoption advocate and the proud momma bear to her son, Kai. In her spare time, she enjoys laughing at herself and all her antics, and eating cupcakes. Follow her on Instagram <a href="https://www.instagram.com/blackgirlinlove/" target="_blank" rel="noopener noreferrer">@blackgirlinlove</a> and visit <a href="https://treyanthony.com/" target="_blank" rel="noopener noreferrer">treyanthony.com</a> to learn more about her.</p>\n
&nbsp;\n
\n
&nbsp;
"""
post_title
"Toronto Film School/Toronto Film School Online Faculty, Staff and Student Diversity Advisory Councils"
post_excerpt
""
post_status
"publish"
comment_status
"closed"
ping_status
"open"
post_password
""
post_name
"toronto-film-school-announces-members-of-its-new-diversity-advisory-councils"
to_ping
""
pinged
""
post_modified
"2023-03-27 21:07:36"
post_modified_gmt
"2023-03-27 21:07:36"
post_content_filtered
""
post_parent
0
guid
"https://dev.tfs.staging.poundandgrain.ca/?p=22323"
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
"/news/toronto-film-school-announces-members-of-its-new-diversity-advisory-councils/"
USER
"forge"
HOME
"/home/forge"
HTTP_REFERER
"https://dev.tfs.staging.poundandgrain.ca/news/toronto-film-school-announces-members-of-its-new-diversity-advisory-councils"
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
"29382"
REMOTE_ADDR
"3.142.133.41"
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
1731874644.6209
REQUEST_TIME
1731874644
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