Merge branch 'sprint/gh-104' into 'master'
* Fix GH-104, Get extension removePath error. See merge request easycorp/zentaopms!6236
This commit is contained in:
@@ -223,7 +223,7 @@ class zfile
|
||||
*
|
||||
* @param string $patern
|
||||
* @access public
|
||||
* @return avoid
|
||||
* @return void
|
||||
*/
|
||||
public function batchRemoveFile($patern)
|
||||
{
|
||||
|
||||
@@ -145,7 +145,6 @@ class extension extends control
|
||||
$this->view->upgrade = $upgrade;
|
||||
$this->view->title = $installTitle . $extension;
|
||||
|
||||
|
||||
$statusFile = $this->loadModel('common')->checkSafeFile();
|
||||
if($statusFile)
|
||||
{
|
||||
@@ -186,7 +185,7 @@ class extension extends control
|
||||
$incompatible = $condition->zentao['incompatible'];
|
||||
if($this->extension->checkVersion($incompatible))
|
||||
{
|
||||
$this->view->error = sprintf($this->lang->extension->errorIncompatible);
|
||||
$this->view->error = $this->lang->extension->errorIncompatible;
|
||||
return $this->display();
|
||||
}
|
||||
|
||||
@@ -220,7 +219,7 @@ class extension extends control
|
||||
$noDepends = false;
|
||||
if(isset($installedExts[$code]))
|
||||
{
|
||||
if($this->extension->compare4Limit($installedExts[$code]->version, $limit, 'noBetween'))$noDepends = true;
|
||||
if($this->extension->compare4Limit($installedExts[$code]->version, $limit, 'noBetween')) $noDepends = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -235,7 +234,7 @@ class extension extends control
|
||||
if(!empty($limit['max'])) $extVersion .= ' <=v' . $limit['max'];
|
||||
$extVersion .=')';
|
||||
}
|
||||
if($noDepends)$dependsExt .= $code . $extVersion . ' ' . html::a(inlink('obtain', 'type=bycode¶m=' . helper::safe64Encode($code)), $this->lang->extension->installExt, '_blank') . '<br />';
|
||||
if($noDepends) $dependsExt .= $code . $extVersion . ' ' . html::a(inlink('obtain', 'type=bycode¶m=' . helper::safe64Encode($code)), $this->lang->extension->installExt, '_blank') . '<br />';
|
||||
}
|
||||
|
||||
if($noDepends)
|
||||
|
||||
@@ -525,9 +525,11 @@ class extensionModel extends model
|
||||
/* Extract files. */
|
||||
$packageFile = $this->getPackageFile($extension);
|
||||
$this->app->loadClass('pclzip', true);
|
||||
$zip = new pclzip($packageFile);
|
||||
$files = $zip->listContent();
|
||||
$removePath = $files[0]['filename'];
|
||||
$zip = new pclzip($packageFile);
|
||||
$files = $zip->listContent();
|
||||
$pathinfo = pathinfo($files[0]['filename']);
|
||||
$removePath = isset($pathinfo['dirname']) && $pathinfo['dirname'] != '.' ? $pathinfo['dirname'] : $pathinfo['basename'];
|
||||
|
||||
if($zip->extract(PCLZIP_OPT_PATH, $extensionPath, PCLZIP_OPT_REMOVE_PATH, $removePath) == 0)
|
||||
{
|
||||
$return->result = 'fail';
|
||||
@@ -548,7 +550,7 @@ class extensionModel extends model
|
||||
{
|
||||
$appRoot = $this->app->getAppRoot();
|
||||
$extensionDir = "ext/$extension/";
|
||||
$paths = scandir($extensionDir);
|
||||
$paths = scandir($extensionDir);
|
||||
$copiedFiles = array();
|
||||
|
||||
foreach($paths as $path)
|
||||
|
||||
Reference in New Issue
Block a user