Ferry Salim

Recently added

2045 Apa Ada Cinta
5.8
mHD

2045 Apa Ada Cinta

Dec. 01, 2022

2045 Apa Ada Cinta

Indonesia 2045. When getting an assignment from the campus, Meara meets a young entrepreneur named, Marshal, the cofounder of Go Green which she ...
Ca-Bau-Kan
7.2
TC

Ca-Bau-Kan

Feb. 07, 2002

Ca-Bau-Kan

Ca Bau Kan relates the saga of Giok Lan, an Indonesian woman living in the Netherlands, who returns to Indonesia in search of her roots. Her ...
The Lost Suitcase
5.7
TC

The Lost Suitcase

Aug. 31, 2006

The Lost Suitcase

Yahya, a low-class employee, finds a suitcase on an empty street. The suitcase is suspected to contain robbed money from a bank. This results in ...
Bangkit!
0
TC

Bangkit!

Jul. 28, 2016

Bangkit!

Addri works hard to save the entire bus passenger which plunged into the abyss due to torrential rain. Addri’s wife, Indri, is very understanding ...
Tiger Boy
0
TC

Tiger Boy

Oct. 15, 2015

Tiger Boy

While on vacation Kanya encounters a mysterious boy in a forbidden forest whom she names Radja. Several years later, Kanya has grown into a ...
Papa Hao
0
TC

Papa Hao

Oct. 09, 2008

Papa Hao

A boy asks his dad about their difference in skin color and eyes.
Street Society
6.7
TC

Street Society

Feb. 20, 2014

Street Society

Cocky, charismatic and womanizing Rio is the reigning champion of Indonesia’s illegal street racing scene. Along with his friends-tuning ...
Perfect Dream
6.9
TC

Perfect Dream

Mar. 20, 2017

Perfect Dream

A rich ambitious street mob lost his mind. He endanger his family members, so did his marriage. He had to pay back his fault, and look forward to ...
Reva: Guna Guna
5
TC

Reva: Guna Guna

Mar. 07, 2019

Reva: Guna Guna

Reva, a cheerful student, suddenly changes after her 21st birthday. Reva becomes moody and doesn’t want to hang out. Then at her house, her ...
Tampan Tailor
7.4
TC

Tampan Tailor

Mar. 28, 2013

Tampan Tailor

Topan (Vino G. Bastian), a tailor, has just lost his wife, his tailor house and nearly lost the future of his son Bintang (Jefan Nathanio) who ...
Love and Faith
7.9
TC

Love and Faith

Mar. 05, 2015

Love and Faith

Karmaka Surjaudaja (Rio Dewanto) aka Kwee Tjie Hwei, Chinese-born, moves to Indonesia at the age of 10 months. He is brought by his mother (Irina ...
A Man Called Ahok
8.2
TS

A Man Called Ahok

Nov. 11, 2018

A Man Called Ahok

An indonesian biopic movie on the controversial former Jakarta governor Ahok.
Dimsum Martabak
6.1
360p

Dimsum Martabak

Jun. 15, 2018

Dimsum Martabak

After an out-of-work waitress finds a job at a food truck, a budding romance with her boss gets complicated when she learns about his true wealth.
Winter in Tokyo
6.9
360p

Winter in Tokyo

Aug. 11, 2016

Winter in Tokyo

While a librarian sorts out her lingering feelings, she meets an intriguing new neighbor who is trying to forget a past romance and start anew.
My Sassy Girl
7.1
360p

My Sassy Girl

Jun. 23, 2022

My Sassy Girl

Gian, a young man saves Sisy, a woman who makes drunk, depressed and wants to kill herself at a train station at night. Their love story started ...
The Chocolate Chance
0
360p

The Chocolate Chance

Feb. 02, 2017

The Chocolate Chance

Orvala Theobroma (Pamela Bowie), an chocholate addict. Her dreams is to able work in anything that relate to chocolate. That dreams come true ...
Micin Generation vs Kevin
5.7
360p

Micin Generation vs Kevin

An ordinary high school student with a blog teams up with his classmates to expose wrongdoing at his school — and soon finds his calling.
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();