*
* @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;
}
"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)"
*
* @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();
}
*
* @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;
}
"syntax error, unexpected '|', expecting variable (T_VARIABLE)"
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];
}
*
* 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();
/**
* @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);
}
}
"/home/forge/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/vendor/caseyamcl/toc/src/UniqueSlugify.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];
}
/**
* @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
<?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;
}
}
}
*/
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()
{
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
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
* @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));
* @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;
}
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]);
}
}
} 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());
}
$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
<?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**/ ?>
/**
* 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();
"/home/forge/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/storage/framework/views/eb422c8beb3d93cfa2fe08ce3b438f23bc0fae21.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);
$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;
}
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());
}
/**
$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
<!doctype html>
<html <?php language_attributes(); ?>>
<?php echo \Roots\view(\Roots\app('sage.view'), \Roots\app('sage.data'))->render(); ?>
</html>
}
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;
}
"/home/forge/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/app/themes/tfs/index.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';
}
"/home/forge/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/wp/wp-includes/template-loader.php"
<?php
/**
* WordPress View Bootstrapper
*/
define('WP_USE_THEMES', true);
require __DIR__ . '/wp/wp-blog-header.php';
"/home/forge/dev.tfs.staging.poundandgrain.ca/releases/20241113033749/web/wp/wp-blog-header.php"
Key | Value |
query_vars | array:3 [ "page" => "" "name" => "film-production-grad-cheyenne-lynn-discusses-toronto-screenwriting-mentorship-on-upcoming-arts-anatomy-podcast" "category_name" => "blog" ] |
query_string | "name=film-production-grad-cheyenne-lynn-discusses-toronto-screenwriting-mentorship-on-upcoming-arts-anatomy-podcast&category_name=blog"
|
request | "blog/film-production-grad-cheyenne-lynn-discusses-toronto-screenwriting-mentorship-on-upcoming-arts-anatomy-podcast"
|
matched_rule | "(.+?)/([^/]+)(?:/([0-9]+))?/?$"
|
matched_query | "category_name=blog&name=film-production-grad-cheyenne-lynn-discusses-toronto-screenwriting-mentorship-on-upcoming-arts-anatomy-podcast&page="
|
did_permalink | true
|
Key | Value |
query | array:3 [ "page" => "" "name" => "film-production-grad-cheyenne-lynn-discusses-toronto-screenwriting-mentorship-on-upcoming-arts-anatomy-podcast" "category_name" => "blog" ] |
query_vars | array:66 [ "page" => 0 "name" => "film-production-grad-cheyenne-lynn-discusses-toronto-screenwriting-mentorship-on-upcoming-arts-anatomy-podcast" "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 | 20143
|
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 = 'film-production-grad-cheyenne-lynn-discusses-toronto-screenwriting-mentorship-on-upcoming-arts-anatomy-podcast' 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 | 20143
|
post_author | "43"
|
post_date | "2020-06-18 13:40:58"
|
post_date_gmt | "2020-06-18 13:40:58"
|
post_content | """ How pervasive is discrimination in show business? How does racism, homophobia, sexism and all other forms of intolerance and inequity impact the entertainment industry? How can we, here at Toronto Film School, sow seeds of lasting change as we nurture this country’s creative voices of tomorrow?\n \n \n \n Those are just a few of the questions a special, acting-focused panel discussion on Diversity in the Entertainment Industry tackled this week in response to the reinvigorated Black Lives Matter movement.\n \n \n <p style="text-align: center;"><iframe src="https://www.youtube.com/embed/B9V02hJ0Ipo" width="560" height="315" frameborder="0" allowfullscreen="allowfullscreen"></iframe></p>\n \n \n Hosted by <a href="https://www.torontofilmschool.ca/programs/acting-for-film-tv-and-the-theatre-diploma/faculty/" target="_blank" rel="noopener noreferrer">Hart Massey</a>, director of Toronto Film School’s <a href="https://www.torontofilmschool.ca/programs/acting-for-film-tv-and-the-theatre-diploma/" target="_blank" rel="noopener noreferrer">Acting for Film, TV & the Theatre</a> program, the two-hour online discussion took place on Friday, June 12, featuring a diverse panel of faculty and special guests, including <a href="https://www.imdb.com/name/nm8107206/?ref_=fn_al_nm_1" target="_blank" rel="noopener noreferrer">Adrian Currie</a>, <a href="https://www.imdb.com/name/nm0366325/?ref_=fn_al_nm_1" target="_blank" rel="noopener noreferrer">Ingrid Hart</a>, <a href="https://andrewmoodie.webs.com/" target="_blank" rel="noopener noreferrer">Andrew Moodie</a>, <a href="https://www.imdb.com/name/nm8437976/" target="_blank" rel="noopener noreferrer">Daniel Ramnauth</a>, <a href="https://www.linkedin.com/in/rosanna-saracino-b9360923/?originalSubdomain=ca" target="_blank" rel="noopener noreferrer">Rosanna Saracino</a>, and <a href="https://www.imdb.com/name/nm5110180/" target="_blank" rel="noopener noreferrer">Chad Tailor</a>.\n \n \n \n “I think these kinds of conversations have been important always, because we are such a diverse school and we have representations of all kinds of cultural backgrounds, gender, sexual preferences in both our faculty and our student population,” Massey said of the discussion.\n \n \n \n “We need to address this kind of intolerance, make sure it doesn’t happen in our classrooms, and look at how we, as a group, can improve the situation not only here in school, but also in the industry as a whole.”\n \n \n \n As working performers themselves, each member of the panel was able to speak to discrimination they’ve personally experienced and witnessed themselves, and to talk about the ways in which they believe Black Lives Matter will impact the entertainment industry.\n \n \n \n <strong>“</strong>I think this (movement) is much more than a trend. I don’t have the fear that this will in any way fade out, because the information is out there now – and it’s out there in a way, today, that it couldn’t have been distributed 20 years ago,” said Hart.\n \n \n \n “Now we have directors like <a href="http://www.avaduvernay.com/" target="_blank" rel="noopener noreferrer">Ava DuVernay</a> who are putting out movies that clearly, clearly illustrate the history of this systemic racism, what it is and how it started. I don’t think it’s a trend – we are witnessing, I believe, the tail end of what started in the ’50s and ’60s and that movement.”\n \n \n \n To learn more about what other members of the panel had to say, watch the full webinar <a href="https://www.youtube.com/watch?v=B9V02hJ0Ipo&t=201s" target="_blank" rel="noopener noreferrer">here</a>.\n \n \n <p style="text-align: center;"><strong>About the Panelists: </strong></p>\n <strong> <img class="alignnone size-medium wp-image-20021 aligncenter" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2020/06/TFS_ACT_AdrianCurrieHeadshot_0608.jpg" alt="" width="670" height="393" /></strong>\n <p style="text-align: center;"><strong><a href="https://www.imdb.com/name/nm8107206/?ref_=fn_al_nm_1" target="_blank" rel="noopener noreferrer">Adrian Currie </a></strong></p>\n \n <p style="text-align: left;">Adrian is an actor and filmmaker, with Bachelor of Arts degrees in both Economics and History from McGill University. In addition to shooting commercials and playing parts in local film and television productions, Currie made a short film a few years ago called <a href="https://www.imdb.com/title/tt7769212/?ref_=nm_flmg_dr_1" target="_blank" rel="noopener noreferrer"><em>iRasta</em></a> – a semi-autobiographical film detailing his adoption of the Rastafari culture and his transformation as a young man with Jamaican roots living in Toronto.</p>\n <p style="text-align: left;">A <a href="https://www.greenparty.ca/en/council/election-2020/candidates/adrian-currie" target="_blank" rel="noopener noreferrer">member of the Green Party</a>, Currie is also the Ontario representative to the Federal Council of the Green Party of Canada. As such, he is now one of 18 major decision makers in the GPC, as well as the outreach coordinator for the campaign to elect <a href="https://www.annamiepaul.ca/" target="_blank" rel="noopener noreferrer">Annamie Paul</a> as the new leader of the GPC. Currie is proud to be working with Annamie – a strong, Black woman of Caribbean decent, who is working to effect much needed change in Canadian society.</p>\n <p style="text-align: left;">Currie is also a co-owner of <a href="https://www.facebook.com/1017gallery/" target="_blank" rel="noopener noreferrer">Gallery 1017</a> – a contemporary art gallery located in the Junction district of Toronto. Gallery 1017's mission is to highlight the work of local artists, giving them a platform to showcase their work and to get known in the community.</p>\n \n \n \n \n <img class="alignnone size-medium wp-image-20022 aligncenter" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2020/06/TFS_ACT_IngridHartHeadshot_0608.jpg" alt="" width="670" height="392" />\n <p style="text-align: center;"><strong><a href="https://www.imdb.com/name/nm0366325/?ref_=fn_al_nm_1" target="_blank" rel="noopener noreferrer">Ingrid Hart</a></strong></p>\n \n \n Ingrid Hart was born and raised in Toronto, Canada to Afro-Jamaican parents. She began her career in front of the camera as a fashion model and later studied theatre at New York City’s <a href="https://www.aada.edu/" target="_blank" rel="noopener noreferrer">American Academy of Dramatic Arts</a>.\n \n Perhaps best known for her lead role in Global Television’s improvisational drama, <a href="https://www.imdb.com/title/tt0362379/?ref_=fn_al_tt_1" target="_blank" rel="noopener noreferrer"><em>Train 48</em></a><em>,</em> Hart has more than 20 years of acting experience who has appeared in films such as <a href="https://www.imdb.com/title/tt0251127/?ref_=nm_flmg_act_67" target="_blank" rel="noopener noreferrer"><em>How to Lose a Guy in Ten Days</em></a> and <a href="https://www.imdb.com/title/tt0890870/?ref_=fn_al_tt_1" target="_blank" rel="noopener noreferrer"><em>Saw IV</em> </a>and television series such as NBC’s <a href="https://www.imdb.com/title/tt0439375/?ref_=nm_flmg_act_14" target="_blank" rel="noopener noreferrer"><em>Kojak</em></a> and CBC’s <a href="https://www.imdb.com/title/tt1149608/" target="_blank" rel="noopener noreferrer"><em>Being Erica</em></a><em>.</em>\n \n Hart is also Canada’s first certified teacher of the <a href="http://www.ivanachubbuck.com/faq/#:~:text=The%20Chubbuck%20Technique%20is%20a,needs%20that%20dictate%20our%20behavior." target="_blank" rel="noopener noreferrer">Chubbuck Technique</a> – an empowering approach to script analysis used by Emmy, Tony, Academy and Joey award winners worldwide.\n \n She has directly worked with actors represented in festivals such as the <a href="http://nationalblackfilmfestival.com/" target="_blank" rel="noopener noreferrer">National Black Film Festival</a> in Houston, Texas, the Alaska International Film Festival and the <a href="https://www.tiff.net/" target="_blank" rel="noopener noreferrer">Toronto International Film Festival</a>. In addition to her own private coaching practice, Ingrid teaches Camera Acting at Toronto Film School, which is proudly ranked as the 8th best film school in the world.\n \n \n \n \n \n <img class="alignnone size-medium wp-image-20023 aligncenter" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2020/06/TFS_ACT_AndrewMoodieHeadshot_0608.jpg" alt="" width="670" height="394" />\n <p style="text-align: center;"><strong><a href="https://andrewmoodie.webs.com/" target="_blank" rel="noopener noreferrer">Andrew Moodie</a></strong></p>\n \n \n Multi award-winning, Ontario-based actor/playwright/director Andrew Moodie exploded onto the scene in 1995 with his first play, <a href="https://www.canadianplayoutlet.com/products/riot" target="_blank" rel="noopener noreferrer"><em>Riot</em></a>, which won the 1996 Chalmers Award for Best New Play.\n \n As a stage actor, he has performed in countless productions for companies all across Canada including the <a href="https://www.gctc.ca/" target="_blank" rel="noopener noreferrer">Great Canadian Theatre Company</a>, <a href="https://www.stratfordfestival.ca/" target="_blank" rel="noopener noreferrer">Stratford</a>, <a href="https://www.youngpeoplestheatre.org/" target="_blank" rel="noopener noreferrer">Young People's Theatre</a>, <a href="https://www.soulpepper.ca/" target="_blank" rel="noopener noreferrer">Soulpepper</a>, <a href="https://www.pte.mb.ca/" target="_blank" rel="noopener noreferrer">Prairie Theatre Exchange</a> and <a href="https://shakespeareintheruff.com/" target="_blank" rel="noopener noreferrer">Shakespeare in the Ruff</a>. Selected credits include: <em>Our Country's Good; Better Living; Macbeth; The Merry Wives of Windsor;</em> <em>Amadeus</em>; <em>Whale; Alice; Pinocchio; In the Field of Dreams; the Nelson Mandela Story;</em> <em>Health Class; The Incredible Speediness of Jamie Cavanaugh</em>; <em>Nathan the Wise; Master Harold and the Boys</em>; and <em>Othello.</em>\n \n He was the host of TVO’s <a href="https://www.tvo.org/programs/big-ideas" target="_blank" rel="noopener noreferrer"><em>Big Ideas</em></a> from 2006 to 2011, and has made appearances in many film and television productions, including: <a href="https://www.imdb.com/title/tt0491747/?ref_=nm_flmg_act_64" target="_blank" rel="noopener noreferrer"><em>Away From Her</em></a>, <a href="https://www.imdb.com/title/tt0251127/?ref_=nm_flmg_act_67" target="_blank" rel="noopener noreferrer"><em>How to Lose a Guy in Ten Days</em></a><em>, </em><a href="https://www.imdb.com/title/tt1386703/?ref_=nm_flmg_act_50" target="_blank" rel="noopener noreferrer"><em>Total Recall</em></a>, <a href="https://www.imdb.com/title/tt3499096/?ref_=nm_flmg_act_36" target="_blank" rel="noopener noreferrer"><em>Race</em></a><em>, </em><a href="https://www.imdb.com/title/tt1495708/?ref_=nm_flmg_act_55" target="_blank" rel="noopener noreferrer"><em>Covert Affairs</em></a><em>, </em><a href="https://www.imdb.com/title/tt1149608/" target="_blank" rel="noopener noreferrer"><em>Being Erica</em></a>, <a href="https://www.imdb.com/title/tt1690215/?ref_=fn_al_tt_1" target="_blank" rel="noopener noreferrer"><em>Reviving Ophelia</em></a>, <a href="https://www.imdb.com/title/tt0996557/?ref_=nm_flmg_act_59" target="_blank" rel="noopener noreferrer"><em>Da Kink in My Hair</em></a>, <a href="https://www.imdb.com/title/tt2234222/?ref_=nm_flmg_act_26" target="_blank" rel="noopener noreferrer"><em>Orphan Black</em></a>, <a href="https://www.imdb.com/title/tt8826128/?ref_=nm_flmg_act_7" target="_blank" rel="noopener noreferrer"><em>October Faction</em></a>, and Gem’s <a href="https://www.imdb.com/title/tt7267968/?ref_=nm_flmg_act_3" target="_blank" rel="noopener noreferrer"><em>Detention Adventure</em></a><em>,</em> among others.\n \n His theatre writing credits include: <em>Riot</em> (Factory Theatre, 1995); Oui (Factory Theatre, 1998); <em>Wilbur County Blues</em> (Blythe Festival, 1998); <em>A Common Man's Guide to Loving Women</em> (Canadian Stage/National Arts Centre, 1999); <em>The Lady Smith</em> (Passe Muraille, 2000); <em>The Real McCoy</em> (Factory Theatre 2007-2008); and the Dora Award-nominated <em>Toronto the Good</em> (Factory Theatre, 2009).\n \n \n \n \n \n <img class="alignnone size-medium wp-image-20024 aligncenter" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2020/06/TFS_ACT_DanielRamnauthHeadshot_0608.jpg" alt="" width="670" height="393" />\n <p style="text-align: center;"><strong><a href="https://www.imdb.com/name/nm8437976/" target="_blank" rel="noopener noreferrer">Daniel Ramnauth</a></strong></p>\n \n \n Daniel Demitri Ramnauth is a Canadian-born actor and musician. He plays guitar, bass, drums, piano and sings. Before pursuing acting, Ramnauth was the frontman and principle song writer for many bands. He has since graduated from the acting programs at both Seneca College and Toronto Film School.\n \n Ramnauth has appeared in movies such as <a href="https://www.imdb.com/title/tt7661054/?ref_=nm_flmg_act_1" target="_blank" rel="noopener noreferrer"><em>Beginner’s Luck</em></a> and in TV shows like <a href="https://www.imdb.com/title/tt4189570/" target="_blank" rel="noopener noreferrer"><em>See No Evil</em></a>. He is also a screenwriter who made his directional debut in this thesis film,<em> Static,</em> and has directed various projects since. He is currently a teaching assistant at Toronto Film School, and continues to write, direct, audition and perform.\n \n \n \n \n \n <img class="alignnone size-medium wp-image-20025 aligncenter" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2020/06/TFS_ACT_RosannaSaracinoHeadshot_0608.jpg" alt="" width="670" height="392" />\n <p style="text-align: center;"><strong><a href="https://www.linkedin.com/in/rosanna-saracino-b9360923/?originalSubdomain=ca" target="_blank" rel="noopener noreferrer">Rosanna Saracino</a></strong></p>\n \n \n Rosanna Saracino is an Italian-Canadian director, creative consultant, performance and public speaking coach, and educator.\n \n Saracino has directed more than 80 productions – from opera to classical, contemporary and devised theatre – and, with her company <a href="https://ttdb.ca/companies/redhanded-film-and-theatre/" target="_blank" rel="noopener noreferrer">redhanded</a>, wrote and directed several shorts featured at various film festivals including <a href="https://www.lafemme.org/" target="_blank" rel="noopener noreferrer">LA Femme Film Festival</a> in California.\n \n She is also the founder and artistic director of <a href="https://www.facebook.com/artandliespro/" target="_blank" rel="noopener noreferrer">art & lies productions</a>, which focuses on devised, stylized and post-modernism. Her directing work includes: <a href="https://en.wikipedia.org/wiki/Fear_and_Misery_of_the_Third_Reich" target="_blank" rel="noopener noreferrer"><em>Fear and Misery of the Third Reich</em></a> by Bertolt Brecht (<a href="https://www.youngcentre.ca/" target="_blank" rel="noopener noreferrer">Yonge Centre for the Performing Arts</a>), <em>The Other 99%</em> (<a href="https://www.factorytheatre.ca/" target="_blank" rel="noopener noreferrer">Factory Theatre</a>), <a href="https://en.wikipedia.org/wiki/Inferno_(Dante)" target="_blank" rel="noopener noreferrer"><em>Dante's Inferno</em></a> (<a href="https://www.factorytheatre.ca/" target="_blank" rel="noopener noreferrer">Factory Theatre</a>, <a href="https://www.theatresmithgilmour.com/" target="_blank" rel="noopener noreferrer">Theatre Smith-Gilmour</a>), <em>Nasty</em> (<a href="https://www.facebook.com/events/344189042733466/" target="_blank" rel="noopener noreferrer">Feminist FuckIt Festival</a>), <a href="https://en.wikipedia.org/wiki/Antony_and_Cleopatra" target="_blank" rel="noopener noreferrer"><em>Antony and Cleopatra</em></a> (<a href="https://buddiesinbadtimes.com/" target="_blank" rel="noopener noreferrer">Buddies in Bad Times</a>), the world premiere live actor version of <a href="https://www.goodreads.com/book/show/5997981-provenance" target="_blank" rel="noopener noreferrer"><em>Provenance </em>by Ronnie Burkett</a> (<a href="https://www.canadianstage.com/Online/default.asp" target="_blank" rel="noopener noreferrer">Canadian Stage</a>) and <em>Suitcases</em> (<a href="https://www.canadianstage.com/Online/default.asp" target="_blank" rel="noopener noreferrer">Canadian Stage</a>).\n \n \n \n \n \n <img class="alignnone size-medium wp-image-20026 aligncenter" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2020/06/TFS_ACT_ChadTailorHeadshot_0608.jpg" alt="" width="670" height="393" />\n <p style="text-align: center;"><strong><a href="https://www.imdb.com/name/nm5110180/">Chad Tailor</a></strong></p>\n \n \n Chad Tailor is an actor, producer, director, and LGBTQ+ community member. He is a current instructor at Toronto Film School who teaches Producing and Directing, and is also a former valedictorian for the Acting for Film, TV & the Theatre program.\n \n Throughout the last decade, Tailor has produced and starred in several films of his own – including <a href="https://www.imdb.com/title/tt3545944/?ref_=nm_flmg_act_12" target="_blank" rel="noopener noreferrer"><em>A Done Deal</em></a> and <a href="https://www.imdb.com/title/tt11887694/?ref_=nm_flmg_act_1" target="_blank" rel="noopener noreferrer"><em>Godforsaken</em></a> – through his company Tailored Films. He’s also created commercial content for business clients, worked as a production coordinator and casting director on several indie productions, as well as produced and directed <em>Toronto the Good</em> for the stage at <a href="https://buddiesinbadtimes.com/" target="_blank" rel="noopener noreferrer">Buddies in Bad Times Theatre</a> with Gisha Productions.\n \n His film acting credits include TV’s <a href="https://www.imdb.com/title/tt1874066/?ref_=fn_al_tt_1" target="_blank" rel="noopener noreferrer"><em>Paranormal Witness</em></a>, <a href="https://www.imdb.com/title/tt3241896/?ref_=fn_al_tt_1" target="_blank" rel="noopener noreferrer"><em>The Rendlesham Files</em></a>, the independent short film <em>Resist</em>, screened at TIFF Bell Lightbox opening for the film <em>Green Book</em>, sci-fi short <a href="https://www.imdb.com/title/tt5171906/?ref_=nm_flmg_act_3" target="_blank" rel="noopener noreferrer"><em>Technically Love</em></a>, and action-feature <a href="https://www.imdb.com/title/tt4345666/?ref_=nm_flmg_act_6" target="_blank" rel="noopener noreferrer"><em>The Face</em></a>.\n \n Tailor is an activist for equal rights and equal opportunities for all, and he looks forward to having these discussions about our industry.\n \n \n \n """ |
post_title | "Film Production Grad Cheyenne "Casper" Lynn Discusses Toronto Screenwriting Mentorship on Arts Anatomy Podcast"
|
post_excerpt | "" |
post_status | "publish"
|
comment_status | "closed"
|
ping_status | "open"
|
post_password | "" |
post_name | "film-production-grad-cheyenne-lynn-discusses-toronto-screenwriting-mentorship-on-upcoming-arts-anatomy-podcast"
|
to_ping | "" |
pinged | "" |
post_modified | "2023-03-27 21:07:55"
|
post_modified_gmt | "2023-03-27 21:07:55"
|
post_content_filtered | "" |
post_parent | 0
|
guid | "https://dev.tfs.staging.poundandgrain.ca/?p=20143"
|
menu_order | 0
|
post_type | "post"
|
post_mime_type | "" |
comment_count | "0"
|
filter | "raw"
|
Key | Value |
SERVER_SOFTWARE | "nginx/1.22.1"
|
REQUEST_URI | "/blog/film-production-grad-cheyenne-lynn-discusses-toronto-screenwriting-mentorship-on-upcoming-arts-anatomy-podcast/"
|
USER | "forge"
|
HOME | "/home/forge"
|
HTTP_REFERER | "https://dev.tfs.staging.poundandgrain.ca/blog/film-production-grad-cheyenne-lynn-discusses-toronto-screenwriting-mentorship-on-upcoming-arts-anatomy-podcast"
|
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 | "43640"
|
REMOTE_ADDR | "18.188.59.18"
|
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 | 1731893035.8621
|
REQUEST_TIME | 1731893035
|
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"
|