1
0
mirror of https://github.com/e107inc/e107.git synced 2025-08-16 11:36:08 +02:00

Plugin/Theme update check moved to admin_shortcodes

This commit is contained in:
Cameron
2017-02-02 11:48:13 -08:00
parent 8843752aa1
commit f7a14d29ae
8 changed files with 170 additions and 204 deletions

View File

@@ -1319,7 +1319,123 @@ Inverse 10 <span class="badge badge-inverse">10</span>
}
function sc_admin_addon_updates()
{
if(!getperms('0'))
{
return null;
}
$themes = $this->getUpdateable('theme');
$plugins = $this->getUpdateable('plugin');
$text = $this->renderAddonUpdate($plugins);
$text .= $this->renderAddonUpdate($themes);
if(empty($text))
{
return null;
}
$tp = e107::getParser();
return e107::getRender()->tablerender($tp->toGlyph('fa-arrow-circle-o-down').'Updates Available',$text,'default',true);
}
private function getUpdateable($type)
{
if(empty($type))
{
return false;
}
require_once(e_HANDLER.'e_marketplace.php');
$mp = new e_marketplace(); // autodetect the best method
switch($type)
{
case "theme":
$versions = $mp->getVersionList('theme');
$list = e107::getTheme()->getThemeList('version');
break;
case "plugin":
$versions = $mp->getVersionList('plugin');
$list = e107::getPref('plug_installed');
break;
}
$ret = array();
foreach($list as $folder=>$version)
{
if(!empty($versions[$folder]['version']) && version_compare( $version, $versions[$folder]['version'], '<'))
{
$versions[$folder]['modalDownload'] = $mp->getDownloadModal('theme', $versions[$folder]);
$ret[] = $versions[$folder];
e107::getMessage()->addDebug("Local version: ".$version." Remote version: ".$versions[$folder]['version']);
}
}
return $ret;
}
private function renderAddonUpdate($list)
{
if(empty($list))
{
return null;
}
$tp = e107::getParser();
$text = '<ul class="media-list">';
foreach($list as $row)
{
$caption = LAN_DOWNLOAD.": ".$row['name']." ".$row['version'];
$ls = '<a href="'.$row['modalDownload'].'" class="e-modal alert-link" data-modal-caption="'.$caption .'" title="'.LAN_DOWNLOAD.'">';
$le = '</a>';
$thumb = ($row['icon']) ? $row['icon'] : $row['thumbnail'];
$text .= '
<li class="media">
<div class="media-left">
'.$ls.'
<img class="media-object" src="'.$thumb.'" width="96">
'.$le.'
</div>
<div class="media-body">
<h4 class="media-heading">'.$ls.$row['name'].$le.'</h4>
<p>'.$row['version'].'<br />
<small class="text-muted">Released: '.($row['date']).'</small>
</p>
</div>
</li>
';
}
$text .= "</ul>";
return $text;
}
function sc_admin_update()
{