rollback dotclear Un|Zip class

2.28
Jean-Christian Paul Denis 2023-04-27 21:51:51 +02:00
parent ab7e9f82c3
commit c809e2c6e0
Signed by: JcDenis
GPG Key ID: 1B5B8C5B90B6C951
4 changed files with 9 additions and 67 deletions

View File

@ -161,11 +161,6 @@ class Config extends dcNsProcess
(new Label(__('Fix newline style from files content'), Label::OUTSIDE_LABEL_AFTER))->for('pack_fixnewline')->class('classic'),
]),
]),
(new Fieldset())->class('fieldset')->legend((new Legend(__('Capability'))))->fields([
(new Text('p', $img_on . sprintf(__('Use "%s" class to zip modules.'), Utils::getZipCapability()))),
(new Text('p', $img_on . sprintf(__('Use "%s" class to unzip modules.'), Utils::getUnzipCapability()))),
(new Text('p', $check_conf)),
]),
])->render();
}
}

View File

@ -102,10 +102,10 @@ class Core
$unlink = false;
if ($zip->hasFile($init)) {
$unlink = true;
$zip->unzip($init, $path);
$zip->unzip($init, $target . DIRECTORY_SEPARATOR . $init);
}
$zip->unzip($define, $path);
$zip->unzip($define, $target . DIRECTORY_SEPARATOR . $define);
$sandbox->resetModulesList();
$sandbox->requireDefine($path, basename($path));
@ -125,6 +125,7 @@ class Core
}
}
} catch (Exception $e) {
throw $e;
}
Files::deltree($path);
}
@ -173,7 +174,9 @@ class Core
if ($fixnewline) {
Zip::$fix_newline = true;
}
$zip = new Zip($path);
$fp = fopen($path, 'wb');
$zip = new Zip($fp);
foreach ($exclude as $e) {
$zip->addExclusion($e);
@ -184,6 +187,7 @@ class Core
true
);
$zip->write();
$zip->close();
unset($zip);
}

View File

@ -81,64 +81,6 @@ class Utils
return !(empty($path) || empty($file) || !is_writable(dirname($path . DIRECTORY_SEPARATOR . $file)));
}
public static function getUnzipCapability(): string
{
switch (Unzip::USE_DEFAULT) {
case Unzip::USE_PHARDATA:
if (class_exists('PharData')) {
return 'PharData';
}
if (class_exists('ZipArchive')) {
return 'ZipArchive';
}
break;
case Unzip::USE_ZIPARCHIVE:
if (class_exists('ZipArchive')) {
return 'ZipArchive';
}
if (class_exists('PharData')) {
return 'PharData';
}
break;
case Unzip::USE_LEGACY:
break;
}
return 'Legacy';
}
public static function getZipCapability(): string
{
switch (Zip::USE_DEFAULT) {
case Zip::USE_PHARDATA:
if (class_exists('PharData')) {
return 'PharData';
}
if (class_exists('ZipArchive')) {
return 'ZipArchive';
}
break;
case Zip::USE_ZIPARCHIVE:
if (class_exists('ZipArchive')) {
return 'ZipArchive';
}
if (class_exists('PharData')) {
return 'PharData';
}
break;
case Unzip::USE_LEGACY:
break;
}
return 'Legacy';
}
public static function getRepositoryDir(?string $dir): string
{
if (empty($dir)) {

View File

@ -27,11 +27,12 @@ class Zip extends \Dotclear\Helper\File\Zip\Zip
*
* @param string $name The name
* @param string $file The file
* @param string $size The size
* @param int|null $mtime The mtime
*
* @return void
*/
protected function writeFile(string $name, string $file, ?int $mtime)
protected function writeFile($name, $file, $size, $mtime)
{
if (!isset($this->entries[$name])) {
return;