private static function download(Package $package, $license = null)
{
$query = '';
if ($package->premium) {
$query = \json_encode(array_merge($package->premium, ['slug' => $package->slug, 'filename' => $package->premium['filename'], 'license_key' => $license]));
$query = '?d=' . base64_encode($query);
}
try {
$contents = Response::get($package->zipball_url . $query, []);
} catch (\Exception $e) {
throw new \RuntimeException($e->getMessage());
}
$tmp_dir = Admin::getTempDir() . '/Grav-' . uniqid();
Folder::mkdir($tmp_dir);
$filename = $package->slug . basename($package->zipball_url);
file_put_contents($tmp_dir . DS . $filename . '.zip', $contents);
return $tmp_dir . DS . $filename . '.zip';
}