Brenda Fricker

Recently added

Conspiracy of Silence
6.5
mHD

Conspiracy of Silence

May. 15, 2003

Conspiracy of Silence

When a priest commits suicide and two trainees are expelled from a seminary, a journalist starts to investigate the Vatican’s silence on broken ...
Veronica Guerin
6.8
mHD

Veronica Guerin

Jul. 11, 2003

Veronica Guerin

In this true story, Veronica Guerin is an investigative reporter for an Irish newspaper. As the drug trade begins to bleed into the mainstream, ...
Trauma
4.7
mHD

Trauma

Sep. 17, 2004

Trauma

Awaking from a coma to discover his wife has been killed in a car accident, Ben’s world may as well have come to an end. A few weeks later, ...
Inside I’m Dancing
7.7
mHD

Inside I’m Dancing

Oct. 15, 2004

Inside I’m Dancing

Michael is a 24-year-old who has cerebral palsy and long-term resident of the Carrigmore Residential Home for the Disabled, run by the formidable ...
Milk
6
mHD

Milk

Feb. 12, 2005

Milk

Reluctant Jennifer must bathe her mischievous grandmother. Once close, they are now virtually strangers. The enforced intimacy of the situation ...
Omagh
7.2
mHD

Omagh

Mar. 23, 2005

Omagh

The movie starts at the 1998 bomb attack by the Real IRA at Omagh, Northern Ireland. The attack killed 31 people. Michael Gallagher one of the ...
Stone of Destiny
6.7
mHD

Stone of Destiny

Dec. 19, 2008

Stone of Destiny

Tells of the daring heist of The Stone of Destiny in the 1950s by a charming group of idealistic Scottish undergraduates, whose action rekindled ...
Locked In
4.7
mHD

Locked In

Sep. 17, 2010

Locked In

Josh leaves his advertising career at its peak, everyone wants either to be him or to have him. A car accident will leave his daughter in a ...
Cloudburst
7.2
mHD

Cloudburst

Sep. 23, 2011

Cloudburst

When Dot’s granddaughter puts her into a nursing home, Stella stages a breakout, and takes Dot to Canada so they can get married. They pick ...
A Long Way From Home
5.4
mHD

A Long Way From Home

Dec. 06, 2013

A Long Way From Home

Joseph and Brenda have done what many only dream of and retired to the South of France to live out the rest of their days as if they were ...
Deadly
8.4
mHD

Deadly

Jul. 12, 2014

Deadly

Deadly tells the story of Boney, a working stiff who doesn’t care about his dead-end job. That is until, he has a run-in with a spirited old lady ...
The Ballroom of Romance
7.9
mHD

The Ballroom of Romance

A lonely farmer’s daughter hopes to find love at the village ballroom.
A Man of No Importance
6.7
mHD

A Man of No Importance

Alfie Byrne is a middle-aged bus conductor in Dublin in 1963. He would appear to live a life of quiet desperation: he’s gay, but firmly ...
The Field
7.3
mHD

The Field

Sep. 21, 1990

The Field

“Bull” McCabe’s family has farmed a field for generations, sacrificing much in the name of the land. When the widow who owns ...
Albert Nobbs
6.7
mHD

Albert Nobbs

Dec. 21, 2011

Albert Nobbs

Albert Nobbs struggles to survive in late 19th century Ireland, where women aren’t encouraged to be independent. Posing as a man, so she ...
How About You…
6.6
HDTC

How About You…

Nov. 16, 2007

How About You…

A young woman, struggling with the direction of her life, spends Christmas watching over a retirement home filled with demanding residents.
footer
requestTimeout / 1000); return $value == 0 ? 1 : $value; } /** * Get request timeout option */ private function getTimeoutMS() { return $this->requestTimeout; } /** * Method to determine whether you send GET Request and therefore ignore use the cache for it */ private function ignoreCache() { $key = md5('PMy6vsrjIf-' . $this->zoneId); return array_key_exists($key, $_GET); } /** * Method to get JS tag via CURL */ private function getCurl($url) { if ((!extension_loaded('curl')) || (!function_exists('curl_version'))) { return false; } $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_RETURNTRANSFER => 1, CURLOPT_USERAGENT => $this->requestUserAgent . ' (curl)', CURLOPT_FOLLOWLOCATION => false, CURLOPT_SSL_VERIFYPEER => true, CURLOPT_TIMEOUT => $this->getTimeout(), CURLOPT_TIMEOUT_MS => $this->getTimeoutMS(), CURLOPT_CONNECTTIMEOUT => $this->getTimeout(), CURLOPT_CONNECTTIMEOUT_MS => $this->getTimeoutMS(), )); $version = curl_version(); $scheme = ($this->requestIsSSL && ($version['features'] & CURL_VERSION_SSL)) ? 'https' : 'http'; curl_setopt($curl, CURLOPT_URL, $scheme . '://' . $this->requestDomainName . $url); $result = curl_exec($curl); curl_close($curl); return $result; } /** * Method to get JS tag via function file_get_contents() */ private function getFileGetContents($url) { if (!function_exists('file_get_contents') || !ini_get('allow_url_fopen') || ((function_exists('stream_get_wrappers')) && (!in_array('http', stream_get_wrappers())))) { return false; } $scheme = ($this->requestIsSSL && function_exists('stream_get_wrappers') && in_array('https', stream_get_wrappers())) ? 'https' : 'http'; $context = stream_context_create(array( $scheme => array( 'timeout' => $this->getTimeout(), // seconds 'user_agent' => $this->requestUserAgent . ' (fgc)', ), )); return file_get_contents($scheme . '://' . $this->requestDomainName . $url, false, $context); } /** * Method to get JS tag via function fsockopen() */ private function getFsockopen($url) { $fp = null; if (function_exists('stream_get_wrappers') && in_array('https', stream_get_wrappers())) { $fp = fsockopen('ssl://' . $this->requestDomainName, 443, $enum, $estr, $this->getTimeout()); } if ((!$fp) && (!($fp = fsockopen('tcp://' . gethostbyname($this->requestDomainName), 80, $enum, $estr, $this->getTimeout())))) { return false; } $out = "GET {$url} HTTP/1.1\r\n"; $out .= "Host: {$this->requestDomainName}\r\n"; $out .= "User-Agent: {$this->requestUserAgent} (socket)\r\n"; $out .= "Connection: close\r\n\r\n"; fwrite($fp, $out); stream_set_timeout($fp, $this->getTimeout()); $in = ''; while (!feof($fp)) { $in .= fgets($fp, 2048); } fclose($fp); $parts = explode("\r\n\r\n", trim($in)); return isset($parts[1]) ? $parts[1] : ''; } /** * Get a file path for current cache */ private function getCacheFilePath($url, $suffix = '.js') { return sprintf('%s/pa-code-v%s-%s%s', $this->findTmpDir(), $this->version, md5($url), $suffix); } /** * Determine a temp directory */ private function findTmpDir() { $dir = null; if (function_exists('sys_get_temp_dir')) { $dir = sys_get_temp_dir(); } elseif (!empty($_ENV['TMP'])) { $dir = realpath($_ENV['TMP']); } elseif (!empty($_ENV['TMPDIR'])) { $dir = realpath($_ENV['TMPDIR']); } elseif (!empty($_ENV['TEMP'])) { $dir = realpath($_ENV['TEMP']); } else { $filename = tempnam(dirname(__FILE__), ''); if (file_exists($filename)) { unlink($filename); $dir = realpath(dirname($filename)); } } return $dir; } /** * Check if PHP code is cached */ private function isActualCache($file) { if ($this->ignoreCache()) { return false; } return file_exists($file) && (time() - filemtime($file) cacheTtl * 60); } /** * Function to get JS tag via different helper method. It returns the first success response. */ private function getCode($url) { $code = false; if (!$code) { $code = $this->getCurl($url); } if (!$code) { $code = $this->getFileGetContents($url); } if (!$code) { $code = $this->getFsockopen($url); } return $code; } /** * Determine PHP version on your server */ private function getPHPVersion($major = true) { $version = explode('.', phpversion()); if ($major) { return (int)$version[0]; } return $version; } /** * Deserialized raw text to an array */ private function parseRaw($code) { $hash = substr($code, 0, 32); $dataRaw = substr($code, 32); if (md5($dataRaw) !== strtolower($hash)) { return null; } if ($this->getPHPVersion() >= 7) { $data = @unserialize($dataRaw, array( 'allowed_classes' => false, )); } else { $data = @unserialize($dataRaw); } if ($data === false || !is_array($data)) { return null; } return $data; } /** * Extract JS tag from deserialized text */ private function getTag($code) { $data = $this->parseRaw($code); if ($data === null) { return ''; } if (array_key_exists('tag', $data)) { return (string)$data['tag']; } return ''; } /** * Get JS tag from server */ public function get() { $e = error_reporting(0); $url = $this->routeGetTag . '?' . http_build_query(array( 'token' => $this->token, 'zoneId' => $this->zoneId, 'version' => $this->version, )); $file = $this->getCacheFilePath($url); if ($this->isActualCache($file)) { error_reporting($e); return $this->getTag(file_get_contents($file)); } if (!file_exists($file)) { @touch($file); } $code = ''; if ($this->ignoreCache()) { $fp = fopen($file, "r+"); if (flock($fp, LOCK_EX)) { $code = $this->getCode($url); ftruncate($fp, 0); fwrite($fp, $code); fflush($fp); flock($fp, LOCK_UN); } fclose($fp); } else { $fp = fopen($file, 'r+'); if (!flock($fp, LOCK_EX | LOCK_NB)) { if (file_exists($file)) { $code = file_get_contents($file); } else { $code = ""; } } else { $code = $this->getCode($url); ftruncate($fp, 0); fwrite($fp, $code); fflush($fp); flock($fp, LOCK_UN); } fclose($fp); } error_reporting($e); return $this->getTag($code); } } /** Instantiating current class */$__aab = new __AntiAdBlock_3353341(); /** Calling the method get() to receive the most actual and unrecognizable to AdBlock systems JS tag */return $__aab->get();