$interval = '+1 week';
$hideWhenNoUpgrade = $modx->getOption('hideWhenNoUpgrade', $props, false, true);
$plOnly = $modx->getOption('plOnly', $props);
$versionsToShow = $modx->getOption('versionsToShow', $props, 5);
$currentVersion = $modx->getOption('settings_version');
$latestVersion = $modx->getOption('latestVersion', $props, '', true);
$versionListPath = $upgrade->getVersionListPath();
$versionListExists = false;
$fullVersionListPath = $versionListPath . 'versionlist';
if (file_exists($fullVersionListPath)) {
    $v = file_get_contents($fullVersionListPath);
    if (!empty($v)) {
        $versionListExists = true;
    }
}
$timeToCheck = $upgrade->timeToCheck($lastCheck, $interval);
/* Perform check if no versionlist or latestVersion, or if it's time to check */
if (!$versionListExists || $timeToCheck || empty($latestVersion)) {
    $upgradeAvailable = $upgrade->upgradeAvailable($currentVersion, $plOnly, $versionsToShow, $method);
    $latestVersion = $upgrade->getLatestVersion();
} else {
    $upgradeAvailable = version_compare($currentVersion, $latestVersion) < 0;
}
$placeholders = array();
$placeholders['[[+ugm_current_version]]'] = $currentVersion;
$placeholders['[[+ugm_latest_version]]'] = $latestVersion;
$errors = $upgrade->getErrors();
if (!empty($errors)) {
    $msg = '';
    foreach ($errors as $error) {
        $msg .= '<br/><span style="color:red">' . $modx->lexicon('ugm_error') . ': ' . $error . '</span>';
}
$upgrade = new UpgradeMODX($modx);
$props = $scriptProperties;
$lastCheck = $modx->getOption('lastCheck', $props);
$interval = $modx->getOption('interval', $props);
if (empty($lastCheck)) {
    $lastCheck = '2015-08-17 00:00:004';
}
if (!($lastCheck && $interval)) {
    return '<p style="color:red">' . $modx->lexicon('ugm_missing_properties') . '</p>';
}
$hideWhenNoUpGrade = $modx->getOption('hideWhenNoUpgrade', $props);
$plOnly = $modx->getOption('plOnly', $props);
$versionsToShow = $modx->getOption('versionsToShow', $props, 5);
$currentVersion = $modx->getOption('settings_version');
if ($upgrade->timeToCheck($lastCheck, $interval)) {
    $upgradeAvailable = $upgrade->upgradeAvailable($currentVersion, $plOnly, $versionsToShow);
    $latestVersion = $upgrade->getLatestVersion();
} else {
    $latestVersion = $modx->getOption('latestVersion', $props);
    $upgradeAvailable = version_compare($currentVersion, $latestVersion) < 0;
}
$placeholders = array();
$placeholders['[[+ugm_current_version]]'] = $currentVersion;
$placeholders['[[+ugm_latest_version]]'] = $latestVersion;
$errors = $upgrade->getErrors();
if (!empty($errors)) {
    $msg = '';
    foreach ($errors as $error) {
        $msg .= '<br/><span style="color:red">' . $modx->lexicon('ugm_error') . ': ' . $error . '</span>';
    }