Jo An

Recently added

Sorum
5.7
WEBRip

Sorum

Aug. 04, 2001

Sorum

A young man moves into a run-down apartment building and soon gets into a relationship with a neighbor. Both the characters and the building have ...
Wishing Stairs
5.8
WEBRip

Wishing Stairs

Aug. 01, 2003

Wishing Stairs

A staircase leading to a schoolgirls’ dormitory usually has 28 steps, but sometimes a 29th step appears. Any wish you make while standing ...
Spin Kick
6
WEBRip

Spin Kick

Jul. 23, 2004

Spin Kick

A school director is forced to train the ‘worst’ students of his school to master Taekwondo as the old coach, taking along the best ...
Holiday
6.4
WEBRip

Holiday

Jan. 19, 2006

Holiday

After 1988 Seoul Olympic, Ji Kang-heon, who is sentenced for 7 years, and other inmates escape from the police van. After escaping, Ji Kang-heon ...
Project Makeover
5.9
WEBRip

Project Makeover

Jan. 04, 2007

Project Makeover

An unhappy woman goes back in time and poses as her cousin to prevent her younger self from making the same mistakes and ruining her future.
Little Prince
0
WEBRip

Little Prince

Jan. 17, 2008

Little Prince

Jon Chul (Tak Jae Hoon) is a workaholic man who has no time to his wife nor son since he’s always too much concentraded in his job, until ...
Out of My Intention
0
WEBRip

Out of My Intention

Mar. 20, 2008

Out of My Intention

A man is driving in the middle of downtown, with his girlfriend, Ok-gyeong, sitting next to him. Ok-gyeong wants to talk about their problem and ...
Bronze Medalist
6.8
WEBRip

Bronze Medalist

Jul. 01, 2009

Bronze Medalist

Lee Ji-Bong is a former Olympics bronze medalist for weight-lifting, but a career-ending injury from the games forces him into early retirement. ...
Hello My Love
5.6
WEBRip

Hello My Love

Oct. 08, 2009

Hello My Love

Ho-jung is a scriptwriter in a local radio station. She is waiting for her 30th birthday and also eager to be promoted as a DJ of her own ...
A Wonderful Moment
6.9
WEBRip

A Wonderful Moment

Jan. 09, 2013

A Wonderful Moment

A musical director who craves advancement participates in a musical which picks the role of a king in a survival method as a mentor. There he ...
Blood and Ties
6.4
WEBRip

Blood and Ties

Oct. 24, 2013

Blood and Ties

A young woman’s happy life with her father takes a downward turn when she begins to suspect that he’s a kidnapper.
Tuning Fork
0
WEBRip

Tuning Fork

Oct. 30, 2014

Tuning Fork

Sim Chung-Yi has an absolute sense of sight which allows her to identify thousands of colors. She also has a bright personality. Sim Chung-Yi ...
Old Bicycle
0
WEBRip

Old Bicycle

Nov. 12, 2015

Old Bicycle

Drama series follows the loves and worries of a mother and her two daughters. The women are single, divorced and remarried.
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();