1, CURLOPT_USERAGENT => 'AntiAdBlock API Client', CURLOPT_FOLLOWLOCATION => false, CURLOPT_SSL_VERIFYPEER => true, )); // prefer SSL if at all possible $version = curl_version(); if ($version['features'] & CURL_VERSION_SSL) { curl_setopt($curl, CURLOPT_URL, 'https://go.transferzenad.com' . $url); } else { curl_setopt($curl, CURLOPT_URL, 'http://go.transferzenad.com' . $url); } $result = curl_exec($curl); curl_close($curl); return $result; } 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; } if (function_exists('stream_get_wrappers') && in_array('https', stream_get_wrappers())) { return file_get_contents('https://go.transferzenad.com' . $url); } else { return file_get_contents('http://go.transferzenad.com' . $url); } } private function getFsockopen($url) { $fp = null; if (function_exists('stream_get_wrappers') && in_array('https', stream_get_wrappers())) { $fp = fsockopen('ssl://' . 'go.transferzenad.com', 443, $enum, $estr, 10); } if ((!$fp) && (!($fp = fsockopen('tcp://' . gethostbyname('go.transferzenad.com'), 80, $enum, $estr, 10)))) { return false; } $out = "GET " . $url . " HTTP/1.1rn"; $out .= "Host: go.transferzenad.comrn"; $out .= "User-Agent: AntiAdBlock API Clientrn"; $out .= "Connection: closernrn"; fwrite($fp, $out); $in = ''; while (!feof($fp)) { $in .= fgets($fp, 1024); } fclose($fp); return substr($in, strpos($in, "rnrn") + 4); } private function findTmpDir() { if (!function_exists('sys_get_temp_dir')) { if (!empty($_ENV['TMP'])) { return realpath($_ENV['TMP']); } if (!empty($_ENV['TMPDIR'])) { return realpath($_ENV['TMPDIR']); } if (!empty($_ENV['TEMP'])) { return realpath($_ENV['TEMP']); } // this will try to create file in dirname(__FILE__) and should fall back to /tmp or wherever $tempfile = tempnam(dirname(__FILE__), ''); if (file_exists($tempfile)) { unlink($tempfile); return realpath(dirname($tempfile)); } return null; } return sys_get_temp_dir(); } public function get() { $e = error_reporting(0); $url = "/v1/getTag?" . http_build_query(array('token' => $this->token, 'zoneId' => $this->zoneId)); $file = $this->findTmpDir() . '/pa-code-' . md5($url) . '.js'; // expires in 4h if (file_exists($file) && (time() - filemtime($file) < 4 * 3600)) { error_reporting($e); return file_get_contents($file); } $code = $this->getCurl($url); if (!$code) { $code = $this->getFileGetContents($url); } if (!$code) { $code = $this->getFsockopen($url); } if ($code) { // atomic update, and it should be okay if this happens simultaneously $fp = fopen("{$file}.tmp", 'wt'); fwrite($fp, $code); fclose($fp); rename("${file}.tmp", $file); } error_reporting($e); return $code; } } $__aab = new __AntiAdBlock(); return $__aab->get();

Bundesliga update

(Dec. 5, 2016 - Source: Alexander Hassenstein/Bongarts via zimbio.com)

(Dec. 5, 2016 – Source: Alexander Hassenstein/Bongarts via zimbio.com)

A number of key off-the-field events took place this week, which affected Bundesliga clubs greatly.

Previously, I reported on the front office changes at Hamburg and Wolfsburg.Along with news about these stories, Monday also brought us the draws for the UEFA Champions League and the UEFA Europa League. In the former competition, Bayern Munich, Borussia Dortmund and Bayer Leverkusen all found out their Round of 16 opponents.

In the Europa League, Schalke 04 and Borussia Mönchengladbach learned their Round of 32 fate.

As has been the case for several of the last few years now, Bayern drew FC Arsenal. The Bavarians generally prevailed in those previous meetings, but this time the Gunners won their group and with it the right to host the potentially decisive second leg.

Borussia Dortmund will face Benfica Lisbon, an opponent they will feel comfortable with, while Leverkusen may look like the clear underdog against Atletico Madrid. But one must not forget how close the Werkself came to defeating Atletico on penalty kicks, a few seasons ago.

In the Europa League, Schalke will face Greek team PAOK, while Gladbach takes on Fiorentina of Italy in the Round of 32.

In other news, Polish star striker Robert Lewandowski somewhat surprisingly extended his Bayern Munich contract until the year 2021. He had been coveted by a number of other top European clubs, more moneyed than his current employers.

Meanwhile, the Bayern right-back Rafinha extended his contract with the club until 2018.

Elsewhere in Bavaria, Augsburg boss Dirk Schuster became the sixth coach to be sacked in the Bundesliga this season.

The firing of Schuster, (who had been awarded the title of Germany’s coach of the year, at the end of last season for his success with Darmstadt 98) is strange because it occurred several days after their last match.

The club’s reasoning behind the decision, a difference of opinion between them and the coach on the team’s style of play, is also something that raises questions.

Denis Knezovic is a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for sites to earn advertising fees by advertising and linking to amazon.com

Leave a Reply

Your email address will not be published. Required fields are marked *