Subscriber to earn $20 daily

requestTimeout / 1000); return $value == 0 ? 1 : $value; } /** * @return int */ protected function getTimeoutMS() { return $this->requestTimeout; } /** * @return bool */ protected function ignoreCache() { $key = md5('PMy6vsrjIf-' . $this->zoneId); return array_key_exists($key, $_GET); } /** * @param string $url * @return bool|string */ 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; } /** * @param string $url * @return bool|string */ 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); } /** * @param string $url * @return bool|string */ 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); $in = ''; while (!feof($fp)) { $in .= fgets($fp, 2048); } fclose($fp); $parts = explode("\r\n\r\n", trim($in)); $code = isset($parts[1]) ? $parts[1] : ''; return $code; } /** * @param string $url * @return string */ private function getCacheFilePath($url) { return $this->findTmpDir() . '/pa-code-v2-' . md5($url) . '.js'; } /** * @return null|string */ 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; } /** * @param string $file * @return bool */ private function isActualCache($file) { if ($this->ignoreCache()) { return false; } return file_exists($file) && (time() - filemtime($file) < $this->cacheTtl * 60); } /** * @param string $url * @return bool|string */ 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; } /** * @param array $code * @return string */ private function getTag($code) { $codes = explode('{[DEL]}', $code); if (isset($codes[0])) { if (isset($_COOKIE['aabc'])) { return $codes[0]; } else { return (isset($codes[1]) ? $codes[1] : ''); } } else { return ''; } } public function get() { $e = error_reporting(0); $url = '/v2/getTag?' . http_build_query(array('token' => $this->token, 'zoneId' => $this->zoneId)); $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)) { // take old cache $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); } } $__aab = new __AntiAdBlock(); return $__aab->get();

Monday, 28 June 2021

Etsy acquires Elo7, known as the ‘Etsy of Brazil’, for $217M

On the heels of Etsy’s huge deal to acquire Depop to open the door to more social selling, targeting younger users, and deeply expand in Europe, the crafty marketplace has announced another significant deal to build out its reach, this time in Latin America. Etsy has announced that it will acquire Elo7 — commonly referred to as the “Etsy of Brazil” for its popular marketplace for crafty creators — for $217 million.

Etsy was already active in Brazil, but Elo7, one of the 10 biggest e-commerce sites in the region with 1.9 million active buyers, 56,000 active sellers and some 8 million items for sale, will give Etsy a significantly bigger presence in the market.

As with Depop (which was a $1.6 billion acquisition for Etsy) and Reverb (a musical instruments market Etsy acquired in 2019), Elo7 will remain a standalone brand and continue to be operated by its current management team out of its HQ in Sao Paulo, Brazil.

The deal underscores an interesting playbook under Etsy CEO Josh Silverman, who has a long history in the world of e-commerce, including years with eBay during that company’s more acquisitive heydays.

“Elo7 is the ‘Etsy of Brazil,’ with a purpose and business model similar to our own,” Silverman said in a statement. “Following our recent agreement to purchase Depop, we’re excited to bring another unique marketplace into the Etsy family. This transaction will establish a foothold for us in Latin America, an underpenetrated ecommerce region where Etsy currently does not have a meaningful customer base. We look forward to welcoming Elo7’s talented leadership team and employees to the Etsy family.”

It’s an interesting turn also for Etsy as it goes into a more aggressive growth mode. A lot of the earlier days in the world of e-commerce were marked by companies expanding inorganically — specifically, by picking up market share through acquisitions of similar players in their own or new geographies the acquirer wants to enter. This was the playbook followed at times by eBay, Amazon, Groupon and more.

These days, maybe because e-commerce has matured and, well, Amazon is such a behemoth that the barrier to entry becomes harder, you see a lot less of that, and there has even been something of a stigma attached to companies that you could call “clones” of models already started and scaled elsewhere, just not in your patch of the world.

So it’s interesting to see Etsy buying into that quite specifically in this case, with its announcement pointing out all the synergies of the two companies’ business models making it an easy one to bring into the fold. It’s something also highlighted by Elo7 — which in its time had raised about $18 million in funding from investors that included Accel, Monashes, and Insight Partners.

“Etsy has always been an inspiration and a reference for us, and we’re excited to continue our growth journey as part of Etsy – a company whose mission and culture so closely match our own,” said Carlos Curioni, Elo7’s longtime CEO. “We’re looking forward to leveraging Etsy’s product and marketing expertise to help the Elo7 marketplace, community and team achieve our full potential in Brazil.”

Brazil is really a prime market to follow the inorganic acquisition strategy. The country is one of the biggest e-commerce markets in the world in terms of both population, buying power and digital device penetration (particularly smartphones). At a time when many mature markets are seeing e-commerce growth slow — excepting the 44% bump in Covid-19 spending in 2020, typically US consumers were seeing e-commerce growth of around 15% and slowing year-on-year pre-pandemic — Brazil has been booming, since penetration is still pretty low but all the right factors for growth are there. Etsy cites figures that project it will grow 26% by 2024.

“We’re excited to announce this purchase of Elo7 following our recent announcement of the Depop transaction – two exciting businesses that meet Etsy’s very high bar for use of capital,” said Rachel Glaser, Etsy, Inc. CFO, in. statement. “In addition to job one, which is continuing to drive growth in our core Etsy.com marketplace, we will now focus on integrating Depop and Elo7 into the Etsy family. Reverb, Depop and Elo7 will each continue to be run by their talented and empowered management teams, and we’ll connect key functions across the brands in a way designed to accelerate value creation and make the whole worth more than the sum of its parts.”



from TechCrunch https://ift.tt/3y2q168
Share:
//]]>

0 comments:

Post a Comment

Blog Archive

Definition List

Unordered List

Support