* finish task #1567
This commit is contained in:
@@ -1 +1,2 @@
|
||||
ALTER TABLE `zt_extension` ADD `depends` VARCHAR( 100 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL AFTER `installedTime` ;
|
||||
ALTER TABLE `zt_extension` CHANGE `zentaoVersion` `zentaoCompatible` VARCHAR( 100 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;
|
||||
|
||||
@@ -41,7 +41,7 @@ class extension extends control
|
||||
|
||||
$extension = $extensions[$release->code];
|
||||
$extension->viewLink = $release->viewLink;
|
||||
if(isset($release->latestRelease) and $extension->version != $release->latestRelease->releaseVersion and $this->extension->checkVersion($release->latestRelease->zentaoVersion))
|
||||
if(isset($release->latestRelease) and $extension->version != $release->latestRelease->releaseVersion and $this->extension->checkVersion($release->latestRelease->zentaoCompatible))
|
||||
{
|
||||
$upgradeLink = inlink('upgrade', "extension=$release->code&downLink=" . helper::safe64Encode($release->latestRelease->downLink) . "&md5={$release->latestRelease->md5}&type=$release->type");
|
||||
$upgradeLink = ($release->latestRelease->charge or !$release->latestRelease->public) ? $release->latestRelease->downLink : $upgradeLink;
|
||||
@@ -254,8 +254,8 @@ class extension extends control
|
||||
}
|
||||
|
||||
/* Check version compatible. */
|
||||
$zentaoVersion = $condition->zentao['compatible'];
|
||||
if(!$this->extension->checkVersion($zentaoVersion) and $ignoreCompatible == 'no')
|
||||
$zentaoCompatible = $condition->zentao['compatible'];
|
||||
if(!$this->extension->checkVersion($zentaoCompatible) and $ignoreCompatible == 'no')
|
||||
{
|
||||
$ignoreLink = inlink('install', "extension=$extension&downLink=$downLink&md5=$md5&type=$type&overridePackage=$overridePackage&ignoreCompatible=yes&overrideFile=$overrideFile&agreeLicense=$agreeLicense&upgrade=$upgrade");
|
||||
$returnLink = inlink('obtain');
|
||||
|
||||
+14
-14
@@ -214,22 +214,22 @@ class extensionModel extends model
|
||||
{
|
||||
/* Init the data. */
|
||||
$data = new stdclass();
|
||||
$data->name = $extension;
|
||||
$data->code = $extension;
|
||||
$data->version = 'unknown';
|
||||
$data->author = 'unknown';
|
||||
$data->desc = $extension;
|
||||
$data->site = 'unknown';
|
||||
$data->license = 'unknown';
|
||||
$data->zentaoVersion = '';
|
||||
$data->type = '';
|
||||
$data->depends = '';
|
||||
$data->name = $extension;
|
||||
$data->code = $extension;
|
||||
$data->version = 'unknown';
|
||||
$data->author = 'unknown';
|
||||
$data->desc = $extension;
|
||||
$data->site = 'unknown';
|
||||
$data->license = 'unknown';
|
||||
$data->zentaoCompatible = '';
|
||||
$data->type = '';
|
||||
$data->depends = '';
|
||||
|
||||
$info = $this->parseExtensionCFG($extension);
|
||||
foreach($info as $key => $value) if(isset($data->$key)) $data->$key = $value;
|
||||
if(isset($info->zentaoversion)) $data->zentaoVersion = $info->zentaoversion;
|
||||
if(isset($info->zentao['compatible'])) $data->zentaoVersion = $info->zentao['compatible'];
|
||||
if(isset($info->depends)) $data->depends = json_encode($info->depends);
|
||||
if(isset($info->zentaoversion)) $data->zentaoCompatible = $info->zentaoversion;
|
||||
if(isset($info->zentao['compatible'])) $data->zentaoCompatible = $info->zentao['compatible'];
|
||||
if(isset($info->depends)) $data->depends = json_encode($info->depends);
|
||||
|
||||
return $data;
|
||||
}
|
||||
@@ -801,7 +801,7 @@ class extensionModel extends model
|
||||
{
|
||||
$result = array();
|
||||
$extensionInfo = $this->dao->select('*')->from(TABLE_EXTENSION)->where('code')->eq($extension)->fetch();
|
||||
$dependsExts = $this->dao->select('*')->from(TABLE_EXTENSION)->where('depends')->like("%$extension%")->fetchAll();
|
||||
$dependsExts = $this->dao->select('*')->from(TABLE_EXTENSION)->where('depends')->like("%$extension%")->andWhere('status')->ne('available')->fetchAll();
|
||||
if($dependsExts)
|
||||
{
|
||||
foreach($dependsExts as $dependsExt)
|
||||
|
||||
@@ -49,7 +49,7 @@
|
||||
<?php
|
||||
if($latestRelease and $latestRelease->releaseVersion != $currentRelease->releaseVersion)
|
||||
{
|
||||
printf($lang->extension->latest, $latestRelease->viewLink, $latestRelease->releaseVersion, $latestRelease->zentaoVersion);
|
||||
printf($lang->extension->latest, $latestRelease->viewLink, $latestRelease->releaseVersion, $latestRelease->zentaoCompatible);
|
||||
}?>
|
||||
</div>
|
||||
</caption>
|
||||
@@ -62,7 +62,22 @@
|
||||
echo "{$lang->extension->downloads}: {$extension->downloads} ";
|
||||
echo "{$lang->extension->compatible}: {$lang->extension->compatibleList[$currentRelease->compatible]} ";
|
||||
echo "{$lang->extension->grade}: ", html::printStars($extension->stars);
|
||||
echo " {$lang->extension->depends}: ", $currentRelease->depends;
|
||||
echo " {$lang->extension->depends}: ";
|
||||
if($currentRelease->depends)
|
||||
{
|
||||
foreach(json_decode($currentRelease->depends) as $code => $limit)
|
||||
{
|
||||
echo $code;
|
||||
if($limit != 'all')
|
||||
{
|
||||
echo '(';
|
||||
if(!empty($limit['min'])) echo '>= v' . $limit['min'];
|
||||
if(!empty($limit['max'])) echo '<= v' . $limit['min'];
|
||||
echo ')';
|
||||
}
|
||||
echo ' ';
|
||||
}
|
||||
}
|
||||
?>
|
||||
</div>
|
||||
</td>
|
||||
@@ -76,7 +91,7 @@
|
||||
{
|
||||
if(isset($installeds[$extension->code]))
|
||||
{
|
||||
if($installeds[$extension->code]->version != $extension->latestRelease->releaseVersion and $this->extension->checkVersion($extension->latestRelease->zentaoVersion))
|
||||
if($installeds[$extension->code]->version != $extension->latestRelease->releaseVersion and $this->extension->checkVersion($extension->latestRelease->zentaoCompatible))
|
||||
{
|
||||
$upgradeLink = inlink('upgrade', "extension=$extension->code&downLink=" . helper::safe64Encode($currentRelease->downLink) . "&md5=$currentRelease->md5&type=$extension->type");
|
||||
echo html::a($upgradeLink, $lang->extension->upgrade, '', 'class="iframe button-c"');
|
||||
|
||||
Reference in New Issue
Block a user