*
* @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" => "toronto-film-school-grads-celebrate-life-support-at-films-tiff-world-premiere" "category_name" => "news" ] |
query_string | "name=toronto-film-school-grads-celebrate-life-support-at-films-tiff-world-premiere&category_name=news"
|
request | "news/toronto-film-school-grads-celebrate-life-support-at-films-tiff-world-premiere"
|
matched_rule | "(.+?)/([^/]+)(?:/([0-9]+))?/?$"
|
matched_query | "category_name=news&name=toronto-film-school-grads-celebrate-life-support-at-films-tiff-world-premiere&page="
|
did_permalink | true
|
Key | Value |
query | array:3 [ "page" => "" "name" => "toronto-film-school-grads-celebrate-life-support-at-films-tiff-world-premiere" "category_name" => "news" ] |
query_vars | array:66 [ "page" => 0 "name" => "toronto-film-school-grads-celebrate-life-support-at-films-tiff-world-premiere" "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 | 17179
|
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-grads-celebrate-life-support-at-films-tiff-world-premiere' 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 | 17179
|
post_author | "43"
|
post_date | "2019-09-11 15:51:56"
|
post_date_gmt | "2019-09-11 15:51:56"
|
post_content | """ \n \n <em><a href="https://www.facebook.com/PolytheFilm/" target="_blank" rel="noopener noreferrer">Poly</a></em> emerged as the big winner at this year’s <a href="http://www.torontofilmschool.ca/blog/get-ready-to-celebrate-the-2019-toronto-film-school-festival-of-films/" target="_blank" rel="noopener noreferrer">Toronto Film School Festival of Films</a> (TFsFF).\n \n \n \n The seven-minute short film, which chronicles the fallout of a toxic polyamorous relationship, took home three of the 2019 festival’s top prizes during an awards ceremony at the Yonge-Dundas Cineplex on Aug. 22 – including Best Director and Best Picture trophies for <a href="https://www.imdb.com/name/nm10448923/?ref_=nv_sr_1?ref_=nv_sr_1" target="_blank" rel="noopener noreferrer">Yeimy Daza</a>.\n \n \n <p style="text-align: center;"><iframe src="https://www.youtube.com/embed/TUbE638vShA" width="560" height="315" frameborder="0" allowfullscreen="allowfullscreen"></iframe></p>\n \n \n “The feeling of tonight, it’s awesome,” the 24-year-old native Colombian said in an interview after her double wins for <em>Poly</em>, which she both wrote and directed.\n \n \n \n <img class="alignnone size-medium wp-image-16895 aligncenter" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2019/08/TFS_ALL_YeimyDazaFestival2_0822.jpg" alt="" width="670" height="393" />\n \n \n \n “To be able to see your movie on the big screen, in a Cineplex, is just an incredible experience and I think that this is just another way to convince myself that this is the right path because I don’t see myself doing anything else. I really want to direct movies.”\n \n \n \n In total, 46 different student projects – including short films, documentaries, commercials, PSAs and music videos – were screened over the course of the day-long Festival of Films, which culminated in an evening awards ceremony emceed by <em><a href="https://www.cbc.ca/schittscreek/" target="_blank" rel="noopener noreferrer">Schitt’s Creek</a></em> Executive Producer <a href="https://www.imdb.com/name/nm2367266/" target="_blank" rel="noopener noreferrer">Andrew Barnsley</a>.\n \n \n <p style="text-align: center;"><iframe src="https://www.youtube.com/embed/9RncgbomSvY" width="560" height="315" frameborder="0" allowfullscreen="allowfullscreen"></iframe></p>\n \n \n “This is a night I look forward to every year,” said Barnsley, who’s attended TFsFF for the last three years in his capacity as the school’s <a href="http://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>.\n \n \n \n <img class="alignnone size-medium wp-image-16885 aligncenter" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2019/08/TFS_ALL_BarnsleyFestival_0822.jpg" alt="" width="670" height="393" />\n \n \n \n “Believe it or not, I’ve watched every film and I have to tell you, every year I’m blown away by the production values and the level of standards that you students are achieving here. It doesn’t look like student films from when I went to school. So, it’s really wonderful that we’re here celebrating your work.”\n \n \n \n To judge this year’s slate of TFsFF nominees, <a href="http://www.torontofilmschool.ca/programs/film-production-diploma/faculty/" target="_blank" rel="noopener noreferrer">Yale Massey</a> said 23 industry professionals were commissioned to help cull more than 130 student submissions down to just 16 winners – including TIFF International Programmer <a href="https://www.linkedin.com/in/jane-schoettle-19b889b/?originalSubdomain=ca" target="_blank" rel="noopener noreferrer">Joanne Schoettle</a> (Best Film) and <em><a href="https://www.imdb.com/title/tt5722298/" target="_blank" rel="noopener noreferrer">Private Eyes</a></em> Producer <a href="https://www.imdb.com/name/nm1504289/" target="_blank" rel="noopener noreferrer">Alex Jordan</a> (Best Director).\n \n \n \n <img class="alignnone size-medium wp-image-16889 aligncenter" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2019/08/TFS_ALL_MasseyFestival_0822.jpg" alt="" width="670" height="393" />\n \n \n \n “Most (judges) had nothing to do with the school at all, because we wanted an unbiased approach. But regardless of winners and losers, just having your films played here today was a huge accomplishment,” Massey, co-program director of the TFS’s <a href="http://www.torontofilmschool.ca/programs/film-production-diploma/" target="_blank" rel="noopener noreferrer">Film Production Diploma</a>, told the young filmmakers in attendance.\n \n \n \n “As an audience, we often just sit back and eat popcorn and watch the films, and we’re not realizing that on several of these sets, there were over 60 people working on the film each day, there were set builds to do, and in one case, there was music to produce before the filming took place. It was just a huge undertaking, so way to go!”\n \n \n \n In total, 16 awards were handed out during TFsFF’s two-hour awards ceremony.\n \n \n \n <img class="alignnone size-medium wp-image-16911 aligncenter" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2019/08/TFS_ALL_RickDaveyFestival_0822.jpg" alt="" width="670" height="393" />\n \n \n \n <em><a href="https://www.imdb.com/title/tt10294470/" target="_blank" rel="noopener noreferrer">About Mermaids & Sailors</a>, </em>a 13-minute musical set in a women’s mental institution won Best Producer nods for <a href="https://www.imdb.com/name/nm10376921/?ref_=fn_al_nm_1" target="_blank" rel="noopener noreferrer">Will Falks</a> and <a href="https://www.imdb.com/name/nm9778985/?ref_=fn_al_nm_1" target="_blank" rel="noopener noreferrer">Tatiana Mattos</a>.\n \n \n \n “I’ve always liked musicals and I wanted to experience how it is to produce one,” said Falks, who also co-wrote and directed the film, said in an interview after the awards.\n \n \n \n <img class="alignnone size-medium wp-image-16897 aligncenter" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2019/08/TFS_ALL_WillFalksFestival_0822.jpg" alt="" width="670" height="393" />\n \n \n \n “The big challenge was creating the music before the short film, because you have to imagine your film done before it’s been recorded or even before you have the actors there…but it was also very fun. I would love to do it again.”\n \n \n \n <a href="https://www.imdb.com/name/nm10423537/?ref_=fn_al_nm_1" target="_blank" rel="noopener noreferrer">Natalia Aranguren</a>, who took home the Best Female Performance award for her portrayal of <em>Poly</em>’s title character, said the experience of making the film only served to validate her decision to come to Toronto Film School from Colombia to study <a href="https://www.torontofilmschool.ca/programs/acting-for-film-tv-and-the-theatre-diploma/" target="_blank" rel="noopener noreferrer">Acting for Film, TV and the Theatre</a>.\n \n \n <p style="text-align: center;"><img class="alignnone size-medium wp-image-16899" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2019/08/TFS_ALL_Natalis-ArangurenFestival_0822.jpg" alt="" width="670" height="447" /></p>\n \n \n “It was a really huge change of life and a really big risk that I took,” the 26-year-old said of leaving her family and friends behind to pursue her dreams.\n \n \n \n “So, this (award) makes me really proud...I think this is just the next step for me to know that I’m capable to do this.”\n \n \n \n Likewise, Michael Abram said his award-winning turn as a potentially murderous teen in <em>Roots </em>was a boost to his self-esteem.\n \n \n \n “I think (this award) will definitely help me confidence-wise, and to be able to understand maybe if I do put in hard work that I will be able to give good performances,” said the 21-year-old Best Male Performance award winner, who counts Joaquin Phoenix and Daniel Day-Lewis amongst his acting role models.\n \n \n \n “This was my first short film that I’ve ever done, and probably my first real on-set experience, so it was a learning experience. I learned from doing it and ultimately, as a result, I’ll be a better actor for it.”\n \n \n \n <strong><em>The full list of winners from the 2019 Toronto Film School Festival of Films is as follows:</em></strong>\n \n <strong> </strong>\n <p style="text-align: center;"><strong><u>Best Picture</u></strong></p>\n <p style="text-align: center;">- <em><a href="https://vimeo.com/338562931?fbclid=IwAR2lCjzOVLmQ5Z4XJakXpe35kYZ0Bo_w4prt6whAaTBu1zYfgUK3sVm35Fc" target="_blank" rel="noopener noreferrer">Poly</a></em> – <a href="https://www.imdb.com/name/nm10448923/?ref_=nv_sr_1?ref_=nv_sr_1" target="_blank" rel="noopener noreferrer">Yeimy Daza</a></p>\n \n <p style="text-align: center;"><strong><u>Best Director </u></strong></p>\n <p style="text-align: center;">- <em><a href="https://vimeo.com/338562931?fbclid=IwAR2lCjzOVLmQ5Z4XJakXpe35kYZ0Bo_w4prt6whAaTBu1zYfgUK3sVm35Fc" target="_blank" rel="noopener noreferrer">Poly</a></em> – <a href="https://www.imdb.com/name/nm10448923/?ref_=nv_sr_1?ref_=nv_sr_1" target="_blank" rel="noopener noreferrer">Yeimy Daza</a></p>\n <p style="text-align: center;"><strong><u>\n Best Producer </u></strong></p>\n <p style="text-align: center;">- <em><a href="https://www.imdb.com/title/tt10294470/" target="_blank" rel="noopener noreferrer">About Mermaids and Sailors</a> </em>– <a href="https://www.imdb.com/name/nm10376921/?ref_=fn_al_nm_1" target="_blank" rel="noopener noreferrer">Will Falks</a> & <a href="https://www.imdb.com/name/nm9778985/?ref_=fn_al_nm_1" target="_blank" rel="noopener noreferrer">Tatiana Mattos</a></p>\n \n <p style="text-align: center;"><strong><u>Best Cinematography </u></strong></p>\n <p style="text-align: center;">- <em>In Memoriam</em> – <a href="https://www.imdb.com/name/nm9389819/" target="_blank" rel="noopener noreferrer">Dylan Budnieski</a></p>\n \n <p style="text-align: center;"><img class="alignnone size-medium wp-image-16891" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2019/08/TFS_ALL_YeimyDazaFestival_0822.jpg" alt="" width="670" height="393" /></p>\n <p style="text-align: center;"><strong><u>Best Female Performance </u></strong></p>\n <p style="text-align: center;"><em>- <a href="https://vimeo.com/338562931?fbclid=IwAR2lCjzOVLmQ5Z4XJakXpe35kYZ0Bo_w4prt6whAaTBu1zYfgUK3sVm35Fc" target="_blank" rel="noopener noreferrer">Poly</a> – </em><a href="https://www.imdb.com/name/nm10423537/?ref_=fn_al_nm_1" target="_blank" rel="noopener noreferrer">Natalia Aranguren</a></p>\n \n <p style="text-align: center;"><strong><u>Best Male Performance </u></strong></p>\n <p style="text-align: center;"><em>- Roots – </em>Michael Abram<u></u></p>\n \n <p style="text-align: center;"><strong><u>Best Screenplay </u></strong></p>\n <p style="text-align: center;"><em>- Cranes – </em>Christine Cortes</p>\n \n <p style="text-align: center;"><img class="alignnone size-medium wp-image-16907" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2019/08/TFS_ALL_WelseyWoo_0822.jpg" alt="" width="670" height="393" /></p>\n <p style="text-align: center;"><strong><u>Best Sound </u></strong></p>\n <p style="text-align: center;"><em>- Maria</em> – Welsey “Welly” Woo</p>\n \n <p style="text-align: center;"><strong><u>Best Visual Effects</u></strong></p>\n <p style="text-align: center;"><em>- Algorithms</em> – Will Dano</p>\n \n <p style="text-align: center;"><img class="alignnone size-medium wp-image-16905" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2019/08/TFS_ALLRohitSinghKathuria_0822.jpg" alt="" width="670" height="393" /></p>\n <p style="text-align: center;"><strong><u>Best Film Editing</u></strong></p>\n <p style="text-align: center;"><em>- Abra Ka Dabra – </em>Rohit Singh Kathuria</p>\n <p style="text-align: center;"><strong><u>\n Best Production Design </u></strong></p>\n <p style="text-align: center;"><em>- Orbit</em> – Jacob Ide & Tatiana Flores</p>\n \n <p style="text-align: center;"><img class="alignnone size-medium wp-image-16901" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2019/08/TFS_ALL_YuliyaKornienkoFestival_0822.jpg" alt="" width="670" height="393" /></p>\n <p style="text-align: center;"><strong><u>Best Documentary</u></strong></p>\n <p style="text-align: center;"><em>- Big Waters – </em><a href="https://www.imdb.com/name/nm9389825/?ref_=fn_al_nm_1" target="_blank" rel="noopener noreferrer">Yuliya Kornienko</a></p>\n \n <p style="text-align: center;"><strong><u>Best Commercial </u></strong></p>\n <p style="text-align: center;">- The Cowboy – Mike Wong</p>\n \n <p style="text-align: center;"><img class="alignnone size-medium wp-image-16903" src="https://dev.tfs.staging.poundandgrain.ca/app/uploads/2019/08/TFS_ALL_KendalStraughn_0822.jpg" alt="" width="670" height="393" /></p>\n <p style="text-align: center;"><strong><u>Best Music Video </u></strong></p>\n <p style="text-align: center;"><em>- <a href="https://www.facebook.com/watch/?v=2119014688151976" target="_blank" rel="noopener noreferrer">Chosen</a> - </em>Kendal Straughn</p>\n \n <p style="text-align: center;"><strong><u>Motion Design Award</u></strong></p>\n <p style="text-align: center;">- Sameehan Gadkari</p>\n \n <p style="text-align: center;"><strong><u>Best Graduating Video Game</u></strong></p>\n <p style="text-align: center;">- <em>Last Drive</em> – Fall 2018</p> """ |
post_title | "Toronto Film School Grads Celebrate World Premiere of Life Support at TIFF 2019"
|
post_excerpt | "" |
post_status | "publish"
|
comment_status | "closed"
|
ping_status | "open"
|
post_password | "" |
post_name | "toronto-film-school-grads-celebrate-life-support-at-films-tiff-world-premiere"
|
to_ping | "" |
pinged | "" |
post_modified | "2023-03-27 21:08:13"
|
post_modified_gmt | "2023-03-27 21:08:13"
|
post_content_filtered | "" |
post_parent | 0
|
guid | "https://dev.tfs.staging.poundandgrain.ca/?p=17179"
|
menu_order | 0
|
post_type | "post"
|
post_mime_type | "" |
comment_count | "0"
|
filter | "raw"
|
Key | Value |
SERVER_SOFTWARE | "nginx/1.22.1"
|
REQUEST_URI | "/news/toronto-film-school-grads-celebrate-life-support-at-films-tiff-world-premiere/"
|
USER | "forge"
|
HOME | "/home/forge"
|
HTTP_REFERER | "https://dev.tfs.staging.poundandgrain.ca/news/toronto-film-school-grads-celebrate-life-support-at-films-tiff-world-premiere"
|
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 | "42993"
|
REMOTE_ADDR | "18.191.45.169"
|
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 | 1731868896.7802
|
REQUEST_TIME | 1731868896
|
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"
|