Karina Suwandi

Recently added

Ayo Putus
7.9
mHD

Ayo Putus

Dec. 15, 2022

Ayo Putus

Selatan has the principle of getting a girl and then breaking up after three days of dating. But that principle wavered when he targeted Alma. ...
Bangku Kosong: Ujian Terakhir
0
Bluray

Bangku Kosong: Ujian Terakhir

Dozens of students died gruesomely during the last school exams. It started with one of the students being possessed and harming the others. The ...
A Perfect Fit
5.4
TC

A Perfect Fit

Jul. 15, 2021

A Perfect Fit

Sparks fly when a fashion blogger in Bali meets a gifted shoemaker, leading her to question her commitment to her fiancé.
My Generation
6.9
TC

My Generation

Nov. 09, 2017

My Generation

Four high school friends must face the consequences of their video critics after the principal forbid them to have their annual vacation.
Kuntilanak 2
4.3
TC

Kuntilanak 2

Jun. 04, 2019

Kuntilanak 2

Dinda who escapes the Kuntilanak (female vampire ghost) terror, without the agreement of Aunt Donna, intends to meet someone who is believed to ...
A Thousand Days
6.5
SD

A Thousand Days

Apr. 19, 2023

A Thousand Days

Sri accepts a generous job offer and tasked to perform a cleansing ritual for Dela Atmojo, an unconscious girl who is suffering from the hex of ...
May the Devil Take You
5.9
240p

May the Devil Take You

Hoping to find answers to her estranged father’s mysterious illness, a young woman visits his old villa and uncovers a horrifying truth ...
Darah Daging
7.9
720p

Darah Daging

Dec. 05, 2019

Darah Daging

Adapted from a true story of robbery by 3 brothers to save the mother’s life.
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 ...
Dubsmash
0
360p

Dubsmash

Jun. 09, 2016

Dubsmash

Teejay (Teejay Marquez), a new student from the Philippines, made hysterical girls at school. Teejay is famous for Dubsmash videos that are often ...
Best Friend?
6.8
360p

Best Friend?

Jun. 26, 2008

Best Friend?

Tania is the golden child of the teachers because she is smart. But her schoolmates find her too serious. Moli, the new student, is the exact ...
Love Like the Falling Rain
4.7
360p

Love Like the Falling Rain

Fearing rejection, a young man struggles to declare his feelings for his best friend, who soon falls for another man — until a fateful incident.
Dear Nathan
6.8
360p

Dear Nathan

Mar. 23, 2017

Dear Nathan

The romance between a teen troublemaker and the girl he adores faces an emotional test when his ex returns to play with his heart.
Senior
7
360p

Senior

Nov. 21, 2019

Senior

Nakula experienced an event that changed and haunted his life. He then established a relationship with Aluna, a new student at his school. His ...
Dear Nathan: Hello Salma
7.1
360p

Dear Nathan: Hello Salma

After a school transfer forces them apart, Nathan and Salma try to adjust but their attempts to move ahead get tested by hard emotions and new faces.
Kulari Ke Pantai
7.6
480p

Kulari Ke Pantai

Jun. 28, 2018

Kulari Ke Pantai

Sam and her mother Uci, are about to do a road trip to G-Land beach in Banyuwangi. Sam’s cousin, Happy, who’s 180° different from Sam ...
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();