Commit 2d1a3106b9d1e41e7dbb1e9da911fb01000e3477
1 parent
6d1dcd8e
KTS-3433
"Background task should fetch latest version for Version Notifier and cache ." Implemented. Committed By: Conrad Vermeulen Reviewed By: Megan Watson git-svn-id: https://kt-dms.svn.sourceforge.net/svnroot/kt-dms/trunk@8603 c91229c3-7414-0410-bfa2-8a42b809f60b
Showing
12 changed files
with
315 additions
and
337 deletions
plugins/ktstandard/AdminVersionPlugin/AdminVersion.inc.php
0 → 100644
| 1 | +<?php | |
| 2 | + | |
| 3 | +class AdminVersion | |
| 4 | +{ | |
| 5 | + //const KT_VERSION_URL = 'http://version.knowledgetree.com/kt_versions'; | |
| 6 | + const KT_VERSION_URL = 'http://ktdms.trunk/plugins/ktstandard/AdminVersionPlugin/test/latestVersion.php'; | |
| 7 | + | |
| 8 | + public static | |
| 9 | + function refresh($url = null) | |
| 10 | + { | |
| 11 | + $aEncoded = array(); | |
| 12 | + $aVersions = KTUtil::getKTVersions(); | |
| 13 | + | |
| 14 | + foreach ($aVersions as $k => $v) | |
| 15 | + { | |
| 16 | + $aEncoded[] = sprintf("%s=%s", urlencode($k), urlencode($v)); | |
| 17 | + } | |
| 18 | + | |
| 19 | + if (empty($url)) | |
| 20 | + $sUrl = self::KT_VERSION_URL; | |
| 21 | + else | |
| 22 | + $sUrl = $url; | |
| 23 | + $sUrl .= '?' . implode('&', $aEncoded); | |
| 24 | + | |
| 25 | + $sIdentifier = KTUtil::getSystemIdentifier(); | |
| 26 | + $sUrl .= '&' . sprintf("system_identifier=%s", $sIdentifier); | |
| 27 | + | |
| 28 | + if (!function_exists('curl_init')) | |
| 29 | + { | |
| 30 | + $stuff = @file_get_contents($sUrl); | |
| 31 | + } | |
| 32 | + else | |
| 33 | + { | |
| 34 | + $ch = @curl_init($sUrl); | |
| 35 | + if (!$ch) | |
| 36 | + { | |
| 37 | + return false; | |
| 38 | + } | |
| 39 | + curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); | |
| 40 | + curl_setopt($ch, CURLOPT_TIMEOUT, 10); | |
| 41 | + $stuff = curl_exec($ch); | |
| 42 | + curl_close($ch); | |
| 43 | + } | |
| 44 | + if ($stuff === false) | |
| 45 | + { | |
| 46 | + $stuff = ""; | |
| 47 | + } | |
| 48 | + else | |
| 49 | + { | |
| 50 | + $stuff = str_replace('\'','"', $stuff); | |
| 51 | + $decoded = json_decode($stuff); | |
| 52 | + if ($decoded === false) | |
| 53 | + { | |
| 54 | + return false; | |
| 55 | + } | |
| 56 | + KTUtil::setSystemSetting('ktadminversion_lastcheck', date('Y-m-d H:i:s')); | |
| 57 | + KTUtil::setSystemSetting('ktadminversion_lastvalue', serialize($decoded)); | |
| 58 | + } | |
| 59 | + } | |
| 60 | + | |
| 61 | + public static | |
| 62 | + function isNewVersionAvailable() | |
| 63 | + { | |
| 64 | + $aVersions = KTUtil::getKTVersions(); | |
| 65 | + | |
| 66 | + $name = array_keys($aVersions); | |
| 67 | + $name = $name[0]; | |
| 68 | + $version = array_values($aVersions); | |
| 69 | + $version = $version[0]; | |
| 70 | + | |
| 71 | + $aRemoteVersions = unserialize(KTUtil::getSystemSetting('ktadminversion_lastvalue')); | |
| 72 | + | |
| 73 | + $aVersions = get_object_vars($aRemoteVersions); | |
| 74 | + | |
| 75 | + if (!isset($aVersions[$name])) | |
| 76 | + { | |
| 77 | + return false; | |
| 78 | + } | |
| 79 | + | |
| 80 | + $newVersion = $aRemoteVersions->$name; | |
| 81 | + if (version_compare($version, $newVersion) == -1) | |
| 82 | + { | |
| 83 | + return array('name'=>$name,'version'=>$aRemoteVersions->$name); | |
| 84 | + } | |
| 85 | + | |
| 86 | + return false; | |
| 87 | + } | |
| 88 | +} | |
| 89 | + | |
| 90 | +?> | |
| 0 | 91 | \ No newline at end of file | ... | ... |
plugins/ktstandard/AdminVersionPlugin/AdminVersionDashlet.php
| ... | ... | @@ -6,71 +6,71 @@ |
| 6 | 6 | * Document Management Made Simple |
| 7 | 7 | * Copyright (C) 2008 KnowledgeTree Inc. |
| 8 | 8 | * Portions copyright The Jam Warehouse Software (Pty) Limited |
| 9 | - * | |
| 9 | + * | |
| 10 | 10 | * This program is free software; you can redistribute it and/or modify it under |
| 11 | 11 | * the terms of the GNU General Public License version 3 as published by the |
| 12 | 12 | * Free Software Foundation. |
| 13 | - * | |
| 13 | + * | |
| 14 | 14 | * This program is distributed in the hope that it will be useful, but WITHOUT |
| 15 | 15 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS |
| 16 | 16 | * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more |
| 17 | 17 | * details. |
| 18 | - * | |
| 18 | + * | |
| 19 | 19 | * You should have received a copy of the GNU General Public License |
| 20 | 20 | * along with this program. If not, see <http://www.gnu.org/licenses/>. |
| 21 | - * | |
| 22 | - * You can contact KnowledgeTree Inc., PO Box 7775 #87847, San Francisco, | |
| 21 | + * | |
| 22 | + * You can contact KnowledgeTree Inc., PO Box 7775 #87847, San Francisco, | |
| 23 | 23 | * California 94120-7775, or email info@knowledgetree.com. |
| 24 | - * | |
| 24 | + * | |
| 25 | 25 | * The interactive user interfaces in modified source and object code versions |
| 26 | 26 | * of this program must display Appropriate Legal Notices, as required under |
| 27 | 27 | * Section 5 of the GNU General Public License version 3. |
| 28 | - * | |
| 28 | + * | |
| 29 | 29 | * In accordance with Section 7(b) of the GNU General Public License version 3, |
| 30 | 30 | * these Appropriate Legal Notices must retain the display of the "Powered by |
| 31 | - * KnowledgeTree" logo and retain the original copyright notice. If the display of the | |
| 31 | + * KnowledgeTree" logo and retain the original copyright notice. If the display of the | |
| 32 | 32 | * logo is not reasonably feasible for technical reasons, the Appropriate Legal Notices |
| 33 | - * must display the words "Powered by KnowledgeTree" and retain the original | |
| 33 | + * must display the words "Powered by KnowledgeTree" and retain the original | |
| 34 | 34 | * copyright notice. |
| 35 | 35 | * Contributor( s): ______________________________________ |
| 36 | 36 | * |
| 37 | 37 | */ |
| 38 | 38 | |
| 39 | +require_once('AdminVersion.inc.php'); | |
| 40 | + | |
| 39 | 41 | class AdminVersionDashlet extends KTBaseDashlet { |
| 40 | - var $oUser; | |
| 41 | 42 | var $sClass = 'ktError'; |
| 42 | - | |
| 43 | + | |
| 43 | 44 | function AdminVersionDashlet(){ |
| 44 | 45 | $this->sTitle = _kt('New Version Available'); |
| 45 | 46 | } |
| 46 | - | |
| 47 | - /*function is_active($oUser) { | |
| 48 | - $this->oUser = $oUser; | |
| 49 | - return true; | |
| 50 | - } | |
| 51 | - */ | |
| 52 | - | |
| 53 | - function is_active($oUser) { | |
| 54 | - $this->oUser = $oUser; | |
| 55 | - return Permission::userIsSystemAdministrator($oUser); | |
| 47 | + | |
| 48 | + function is_active($oUser) | |
| 49 | + { | |
| 50 | + $this->version = AdminVersion::isNewVersionAvailable(); | |
| 51 | + return true; | |
| 52 | + if ($this->version === false) | |
| 53 | + { | |
| 54 | + return false; | |
| 55 | + } | |
| 56 | + return Permission::userIsSystemAdministrator(); | |
| 56 | 57 | } |
| 57 | - | |
| 58 | + | |
| 58 | 59 | function render() { |
| 59 | 60 | global $main; |
| 60 | - $main->requireJSResource("plugins/ktstandard/AdminVersionPlugin/js/update.js"); | |
| 61 | - | |
| 62 | - $oPlugin =& $this->oPlugin; | |
| 63 | - | |
| 61 | + | |
| 64 | 62 | $oTemplating =& KTTemplating::getSingleton(); |
| 65 | - $oTemplate = $oTemplating->loadTemplate('AdminVersionPlugin/dashlet'); | |
| 66 | - | |
| 63 | + $oTemplate = $oTemplating->loadTemplate('dashlet'); | |
| 64 | + | |
| 65 | + $name = $this->version['name']; | |
| 66 | + $version = $this->version['version']; | |
| 67 | + | |
| 67 | 68 | $aTemplateData = array( |
| 68 | 69 | 'context' => $this, |
| 69 | - 'url' => $oPlugin->getPagePath('versions'), | |
| 70 | - | |
| 70 | + 'name' => $name, | |
| 71 | + 'version' => $version | |
| 71 | 72 | ); |
| 72 | - | |
| 73 | - | |
| 73 | + | |
| 74 | 74 | return $oTemplate->render($aTemplateData); |
| 75 | 75 | } |
| 76 | 76 | } | ... | ... |
plugins/ktstandard/AdminVersionPlugin/AdminVersionPage.php deleted
| 1 | -<?php | |
| 2 | -/* | |
| 3 | - * $Id:$ | |
| 4 | - * | |
| 5 | - * KnowledgeTree Community Edition | |
| 6 | - * Document Management Made Simple | |
| 7 | - * Copyright (C) 2008 KnowledgeTree Inc. | |
| 8 | - * Portions copyright The Jam Warehouse Software (Pty) Limited | |
| 9 | - * | |
| 10 | - * This program is free software; you can redistribute it and/or modify it under | |
| 11 | - * the terms of the GNU General Public License version 3 as published by the | |
| 12 | - * Free Software Foundation. | |
| 13 | - * | |
| 14 | - * This program is distributed in the hope that it will be useful, but WITHOUT | |
| 15 | - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS | |
| 16 | - * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more | |
| 17 | - * details. | |
| 18 | - * | |
| 19 | - * You should have received a copy of the GNU General Public License | |
| 20 | - * along with this program. If not, see <http://www.gnu.org/licenses/>. | |
| 21 | - * | |
| 22 | - * You can contact KnowledgeTree Inc., PO Box 7775 #87847, San Francisco, | |
| 23 | - * California 94120-7775, or email info@knowledgetree.com. | |
| 24 | - * | |
| 25 | - * The interactive user interfaces in modified source and object code versions | |
| 26 | - * of this program must display Appropriate Legal Notices, as required under | |
| 27 | - * Section 5 of the GNU General Public License version 3. | |
| 28 | - * | |
| 29 | - * In accordance with Section 7(b) of the GNU General Public License version 3, | |
| 30 | - * these Appropriate Legal Notices must retain the display of the "Powered by | |
| 31 | - * KnowledgeTree" logo and retain the original copyright notice. If the display of the | |
| 32 | - * logo is not reasonably feasible for technical reasons, the Appropriate Legal Notices | |
| 33 | - * must display the words "Powered by KnowledgeTree" and retain the original | |
| 34 | - * copyright notice. | |
| 35 | - * Contributor( s): ______________________________________ | |
| 36 | - * | |
| 37 | - */ | |
| 38 | - | |
| 39 | - | |
| 40 | -require_once(KT_LIB_DIR . "/plugins/plugin.inc.php"); | |
| 41 | -require_once(KT_LIB_DIR . "/plugins/pluginregistry.inc.php"); | |
| 42 | -require_once(KT_LIB_DIR . "/dashboard/dashlet.inc.php"); | |
| 43 | - | |
| 44 | -define('KT_VERSION_URL', 'http://version.knowledgetree.com/kt_versions'); | |
| 45 | - | |
| 46 | -class AdminVersionPage extends KTStandardDispatcher { | |
| 47 | - | |
| 48 | - function _checkCache() { | |
| 49 | - global $default; | |
| 50 | - $iLastCheck = KTUtil::getSystemSetting('ktadminversion_lastcheck'); | |
| 51 | - if (empty($iLastCheck)) { | |
| 52 | - return; | |
| 53 | - } | |
| 54 | - $sLastValue = KTUtil::getSystemSetting('ktadminversion_lastvalue'); | |
| 55 | - if (empty($sLastValue)) { | |
| 56 | - $now = time(); | |
| 57 | - $diff = $now - $iLastCheck; | |
| 58 | - if ($diff > (24*60*60)) { | |
| 59 | - return; | |
| 60 | - } | |
| 61 | - } | |
| 62 | - $now = time(); | |
| 63 | - $diff = $now - $iLastCheck; | |
| 64 | - if ($diff > (24*60*60)) { | |
| 65 | - return; | |
| 66 | - } | |
| 67 | - return $sLastValue; | |
| 68 | - } | |
| 69 | - | |
| 70 | - function do_main() { | |
| 71 | - session_write_close(); | |
| 72 | - | |
| 73 | - $sCache = $this->_checkCache(); | |
| 74 | - if (!is_null($sCache)) { | |
| 75 | - $sCachedVersion = $sCache; | |
| 76 | - | |
| 77 | - $sVName = ""; | |
| 78 | - $sVNum = ""; | |
| 79 | - | |
| 80 | - $sTrimmer = str_replace('{', '', str_replace('}', '', str_replace('\'', '', $sCachedVersion))); | |
| 81 | - $aCachedVersionsTemp = explode(',',$sTrimmer); | |
| 82 | - | |
| 83 | - for($i=0;$i<count($aCachedVersionsTemp);$i++){ | |
| 84 | - $aCachedVersionsTemp[$i] = explode(':', $aCachedVersionsTemp[$i]); | |
| 85 | - } | |
| 86 | - for($i=0;$i<count($aCachedVersionsTemp);$i++){ | |
| 87 | - $key = trim($aCachedVersionsTemp[$i][0]); | |
| 88 | - $value = trim($aCachedVersionsTemp[$i][1]); | |
| 89 | - $aCachedVersions[$key] = $value; | |
| 90 | - } | |
| 91 | - | |
| 92 | - $aVersions = KTUtil::getKTVersions(); | |
| 93 | - | |
| 94 | -/* | |
| 95 | - echo "<pre>"; | |
| 96 | - print_r($aCachedVersions); | |
| 97 | - echo "</pre>"; | |
| 98 | - echo "<pre>"; | |
| 99 | - print_r($aVersions); | |
| 100 | - echo "</pre>"; | |
| 101 | - exit; | |
| 102 | -*/ | |
| 103 | - | |
| 104 | - foreach ($aVersions as $k => $v) { | |
| 105 | - foreach($aCachedVersions as $j => $l) { | |
| 106 | - if (($k == $j) && (version_compare($aVersions[$k], $aCachedVersions[$j]) == -1)) | |
| 107 | - { | |
| 108 | - //save new name and version | |
| 109 | - $sVName = $j; | |
| 110 | - $sVNum = $l; | |
| 111 | - } | |
| 112 | - }//end foreach | |
| 113 | - | |
| 114 | - }//end foreach | |
| 115 | - | |
| 116 | - if ($sVName != "") | |
| 117 | - { | |
| 118 | - return "<div id=\"AdminVersion\"><a href=\"http://www.knowledgetree.com/products/whats-new\" target=\"_blank\">".$sVName." version ".$sVNum."</a></div><br>"; | |
| 119 | - } | |
| 120 | - else | |
| 121 | - { | |
| 122 | - return ""; | |
| 123 | - } | |
| 124 | - } | |
| 125 | - | |
| 126 | - $sUrl = KT_VERSION_URL; | |
| 127 | - $aVersions = KTUtil::getKTVersions(); | |
| 128 | - | |
| 129 | - foreach ($aVersions as $k => $v) { | |
| 130 | - $sUrl .= '?' . sprintf("%s=%s", $k, $v); | |
| 131 | - } | |
| 132 | - $sIdentifier = KTUtil::getSystemIdentifier(); | |
| 133 | - $sUrl .= '&' . sprintf("system_identifier=%s", $sIdentifier); | |
| 134 | - | |
| 135 | - if (!function_exists('curl_init')) { | |
| 136 | - if (OS_WINDOWS) { | |
| 137 | - return ""; | |
| 138 | - } | |
| 139 | - | |
| 140 | - $stuff = @file_get_contents($sUrl); | |
| 141 | - if ($stuff === false) { | |
| 142 | - $stuff = ""; | |
| 143 | - } | |
| 144 | - } else { | |
| 145 | - | |
| 146 | - $ch = @curl_init($sUrl); | |
| 147 | - if (!$ch) { | |
| 148 | - return ""; | |
| 149 | - } | |
| 150 | - curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); | |
| 151 | - curl_setopt($ch, CURLOPT_TIMEOUT, 10); | |
| 152 | - $stuff = curl_exec($ch); | |
| 153 | - curl_close($ch); | |
| 154 | - if (!$stuff) { | |
| 155 | - $stuff = ""; | |
| 156 | - } | |
| 157 | - } | |
| 158 | - KTUtil::setSystemSetting('ktadminversion_lastcheck', time()); | |
| 159 | - KTUtil::setSystemSetting('ktadminversion_lastvalue', (string)$stuff); | |
| 160 | - | |
| 161 | - $sVName = ""; | |
| 162 | - $sVNum = ""; | |
| 163 | - | |
| 164 | - $trim_stuff = str_replace('{', '', str_replace('}', '', str_replace('\'', '', $stuff))); | |
| 165 | - $aRemoteVersionstemp = explode(',',$trim_stuff); | |
| 166 | - | |
| 167 | - for($i=0;$i<count($aRemoteVersionstemp);$i++){ | |
| 168 | - $aRemoteVersionstemp[$i] = explode(':', $aRemoteVersionstemp[$i]); | |
| 169 | - } | |
| 170 | - for($i=0;$i<count($aRemoteVersionstemp);$i++){ | |
| 171 | - $key = trim($aRemoteVersionstemp[$i][0]); | |
| 172 | - $value = trim($aRemoteVersionstemp[$i][1]); | |
| 173 | - $aRemoteVersions[$key] = $value; | |
| 174 | - } | |
| 175 | -/* | |
| 176 | - echo "<pre>"; | |
| 177 | - print_r($aRemoteVersions); | |
| 178 | - echo "</pre>"; | |
| 179 | - echo "<pre>"; | |
| 180 | - print_r($aVersions); | |
| 181 | - echo "</pre>"; | |
| 182 | - exit; | |
| 183 | -*/ | |
| 184 | - foreach ($aVersions as $k => $v) { | |
| 185 | - foreach($aRemoteVersions as $j => $l) { | |
| 186 | - if (($k == $j) && (version_compare($aVersions[$k], $aRemoteVersions[$j]) == -1)) | |
| 187 | - { | |
| 188 | - //save new name and version | |
| 189 | - $sVName = $j; | |
| 190 | - $sVNum = $l; | |
| 191 | - } | |
| 192 | - } | |
| 193 | - } | |
| 194 | - | |
| 195 | - if ($sVName != "") | |
| 196 | - { | |
| 197 | - return "<div id=\"AdminVersion\"><a href=\"http://www.knowledgetree.com/products/whats-new\" target=\"_blank\">".$sVName." version ".$sVNum."</a></div><br>"; | |
| 198 | - } | |
| 199 | - else | |
| 200 | - { | |
| 201 | - return ""; | |
| 202 | - } | |
| 203 | - } | |
| 204 | - | |
| 205 | - function handleOutput($sOutput) { | |
| 206 | - print $sOutput; | |
| 207 | - } | |
| 208 | -} | |
| 209 | - | |
| 210 | -?> | |
| 211 | 0 | \ No newline at end of file |
plugins/ktstandard/AdminVersionPlugin/AdminVersionPlugin.php
| ... | ... | @@ -6,63 +6,63 @@ |
| 6 | 6 | * Document Management Made Simple |
| 7 | 7 | * Copyright (C) 2008 KnowledgeTree Inc. |
| 8 | 8 | * Portions copyright The Jam Warehouse Software (Pty) Limited |
| 9 | - * | |
| 9 | + * | |
| 10 | 10 | * This program is free software; you can redistribute it and/or modify it under |
| 11 | 11 | * the terms of the GNU General Public License version 3 as published by the |
| 12 | 12 | * Free Software Foundation. |
| 13 | - * | |
| 13 | + * | |
| 14 | 14 | * This program is distributed in the hope that it will be useful, but WITHOUT |
| 15 | 15 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS |
| 16 | 16 | * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more |
| 17 | 17 | * details. |
| 18 | - * | |
| 18 | + * | |
| 19 | 19 | * You should have received a copy of the GNU General Public License |
| 20 | 20 | * along with this program. If not, see <http://www.gnu.org/licenses/>. |
| 21 | - * | |
| 22 | - * You can contact KnowledgeTree Inc., PO Box 7775 #87847, San Francisco, | |
| 21 | + * | |
| 22 | + * You can contact KnowledgeTree Inc., PO Box 7775 #87847, San Francisco, | |
| 23 | 23 | * California 94120-7775, or email info@knowledgetree.com. |
| 24 | - * | |
| 24 | + * | |
| 25 | 25 | * The interactive user interfaces in modified source and object code versions |
| 26 | 26 | * of this program must display Appropriate Legal Notices, as required under |
| 27 | 27 | * Section 5 of the GNU General Public License version 3. |
| 28 | - * | |
| 28 | + * | |
| 29 | 29 | * In accordance with Section 7(b) of the GNU General Public License version 3, |
| 30 | 30 | * these Appropriate Legal Notices must retain the display of the "Powered by |
| 31 | - * KnowledgeTree" logo and retain the original copyright notice. If the display of the | |
| 31 | + * KnowledgeTree" logo and retain the original copyright notice. If the display of the | |
| 32 | 32 | * logo is not reasonably feasible for technical reasons, the Appropriate Legal Notices |
| 33 | - * must display the words "Powered by KnowledgeTree" and retain the original | |
| 33 | + * must display the words "Powered by KnowledgeTree" and retain the original | |
| 34 | 34 | * copyright notice. |
| 35 | 35 | * Contributor( s): ______________________________________ |
| 36 | 36 | * |
| 37 | 37 | */ |
| 38 | - | |
| 38 | + | |
| 39 | 39 | require_once(KT_LIB_DIR . "/plugins/plugin.inc.php"); |
| 40 | 40 | require_once(KT_LIB_DIR . "/plugins/pluginregistry.inc.php"); |
| 41 | +require_once(KT_LIB_DIR . "/templating/templating.inc.php"); | |
| 41 | 42 | |
| 42 | 43 | class AdminVersionPlugin extends KTPlugin |
| 43 | 44 | { |
| 44 | 45 | var $sNamespace = 'ktstandard.adminversion.plugin'; |
| 45 | 46 | var $autoRegister = true; |
| 46 | - | |
| 47 | + | |
| 47 | 48 | function AdminVersionPlugin($sFilename = null) { |
| 48 | - | |
| 49 | + | |
| 49 | 50 | $res = parent::KTPlugin($sFilename); |
| 50 | 51 | $this->sFriendlyName = _kt('Admin Version Notifier'); |
| 51 | 52 | return $res; |
| 52 | - | |
| 53 | + | |
| 53 | 54 | } |
| 54 | - | |
| 55 | + | |
| 55 | 56 | function setup() { |
| 56 | - | |
| 57 | + | |
| 57 | 58 | $this->registerDashlet('AdminVersionDashlet', 'ktstandard.adminversion.dashlet', 'AdminVersionDashlet.php'); |
| 58 | - $this->registerPage('versions', 'AdminVersionPage', 'AdminVersionPage.php'); | |
| 59 | - | |
| 60 | - require_once(KT_LIB_DIR . "/templating/templating.inc.php"); | |
| 59 | + | |
| 61 | 60 | $oTemplating =& KTTemplating::getSingleton(); |
| 62 | 61 | $oTemplating->addLocation('AdminVersionDashlet', '/plugins/ktstandard/AdminVersionPlugin/templates'); |
| 63 | 62 | } |
| 64 | 63 | } |
| 64 | + | |
| 65 | 65 | $oPluginRegistry =& KTPluginRegistry::getSingleton(); |
| 66 | 66 | $oPluginRegistry->registerPlugin('AdminVersionPlugin', 'ktstandard.adminversion.plugin', __FILE__); |
| 67 | 67 | |
| 68 | 68 | -?> |
| 69 | +?> | |
| 69 | 70 | \ No newline at end of file | ... | ... |
plugins/ktstandard/AdminVersionPlugin/bin/UpdateNewVersion.php
0 → 100644
| 1 | +<?php | |
| 2 | + | |
| 3 | +/** | |
| 4 | + * $Id: $ | |
| 5 | + * | |
| 6 | + * KnowledgeTree Community Edition | |
| 7 | + * Document Management Made Simple | |
| 8 | + * Copyright (C) 2008 KnowledgeTree Inc. | |
| 9 | + * Portions copyright The Jam Warehouse Software (Pty) Limited | |
| 10 | + * | |
| 11 | + * This program is free software; you can redistribute it and/or modify it under | |
| 12 | + * the terms of the GNU General Public License version 3 as published by the | |
| 13 | + * Free Software Foundation. | |
| 14 | + * | |
| 15 | + * This program is distributed in the hope that it will be useful, but WITHOUT | |
| 16 | + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS | |
| 17 | + * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more | |
| 18 | + * details. | |
| 19 | + * | |
| 20 | + * You should have received a copy of the GNU General Public License | |
| 21 | + * along with this program. If not, see <http://www.gnu.org/licenses/>. | |
| 22 | + * | |
| 23 | + * You can contact KnowledgeTree Inc., PO Box 7775 #87847, San Francisco, | |
| 24 | + * California 94120-7775, or email info@knowledgetree.com. | |
| 25 | + * | |
| 26 | + * The interactive user interfaces in modified source and object code versions | |
| 27 | + * of this program must display Appropriate Legal Notices, as required under | |
| 28 | + * Section 5 of the GNU General Public License version 3. | |
| 29 | + * | |
| 30 | + * In accordance with Section 7(b) of the GNU General Public License version 3, | |
| 31 | + * these Appropriate Legal Notices must retain the display of the "Powered by | |
| 32 | + * KnowledgeTree" logo and retain the original copyright notice. If the display of the | |
| 33 | + * logo is not reasonably feasible for technical reasons, the Appropriate Legal Notices | |
| 34 | + * must display the words "Powered by KnowledgeTree" and retain the original | |
| 35 | + * copyright notice. | |
| 36 | + * Contributor( s): ______________________________________ | |
| 37 | + * | |
| 38 | + */ | |
| 39 | + | |
| 40 | +chdir(dirname(__FILE__)); | |
| 41 | +require_once(realpath('../../../../config/dmsDefaults.php')); | |
| 42 | +require_once('../AdminVersion.inc.php'); | |
| 43 | + | |
| 44 | +AdminVersion::refresh(); | |
| 45 | + | ... | ... |
plugins/ktstandard/AdminVersionPlugin/js/update.js deleted
| 1 | -var currloc = location.pathname.substring(0,location.pathname.lastIndexOf('/')+1); | |
| 2 | -var user = ''; | |
| 3 | - | |
| 4 | -function CheckVersion(){ | |
| 5 | - xmlHttpAdmin=GetXmlHttpAdminObject(); | |
| 6 | - if (xmlHttpAdmin===null){ | |
| 7 | - alert ("Browser does not support HTTP Request"); | |
| 8 | - return; | |
| 9 | - } | |
| 10 | - var url=VERSIONS_URL; | |
| 11 | - | |
| 12 | - xmlHttpAdmin.onreadystatechange=adminStateChanged; | |
| 13 | - xmlHttpAdmin.open("GET",url,true); | |
| 14 | - xmlHttpAdmin.send(null); | |
| 15 | - | |
| 16 | -} | |
| 17 | - | |
| 18 | -function adminStateChanged(){ | |
| 19 | - if (xmlHttpAdmin.readyState==4 || xmlHttpAdmin.readyState=="complete"){ | |
| 20 | - if(xmlHttpAdmin.responseText != ""){ | |
| 21 | - document.getElementById("AdminVersionDashlet").style.display = "block"; | |
| 22 | - document.getElementById("AdminVersionBlock").innerHTML=xmlHttpAdmin.responseText; | |
| 23 | - } | |
| 24 | - }else{ | |
| 25 | - //dashlet not shown until new version is returned so this print isn't needed | |
| 26 | - //document.getElementById("AdminVersionBlock").innerHTML="Checking Versions"; | |
| 27 | - } | |
| 28 | -} | |
| 29 | - | |
| 30 | -function GetXmlHttpAdminObject(){ | |
| 31 | - var objXMLHttpAdmin=null; | |
| 32 | - if (window.XMLHttpRequest){ | |
| 33 | - objXMLHttpAdmin=new XMLHttpRequest(); | |
| 34 | - }else if (window.ActiveXObject){ | |
| 35 | - objXMLHttpAdmin=new ActiveXObject("Microsoft.XMLHTTP"); | |
| 36 | - } | |
| 37 | - return objXMLHttpAdmin; | |
| 38 | -} | |
| 39 | 0 | \ No newline at end of file |
plugins/ktstandard/AdminVersionPlugin/templates/AdminVersionPlugin/computer_go.png renamed to plugins/ktstandard/AdminVersionPlugin/templates/computer_go.png
777 Bytes
plugins/ktstandard/AdminVersionPlugin/templates/AdminVersionPlugin/dashlet.smarty renamed to plugins/ktstandard/AdminVersionPlugin/templates/dashlet.smarty
| 1 | -{literal} | |
| 2 | - | |
| 3 | -<style type="text/css"> | |
| 4 | -#AdminVersionDashlet { | |
| 5 | - display: none; | |
| 6 | - | |
| 7 | - | |
| 8 | -} | |
| 9 | -#AdminVersionDashlet .action_close{ | |
| 10 | - display: none; | |
| 11 | -} | |
| 12 | - | |
| 13 | -#AdminHeader { font-weight: bold; | |
| 14 | - margin-left: 25px;} | |
| 15 | -#AdminVersionBlock { | |
| 16 | - background: url(./plugins/ktstandard/AdminVersionPlugin/templates/AdminVersionPlugin/computer_go.png) no-repeat scroll left; | |
| 17 | - font-weight: bold; | |
| 18 | - padding-left:25px; | |
| 19 | - | |
| 20 | - background-position: top left; | |
| 21 | - | |
| 22 | -} | |
| 23 | -</style> | |
| 24 | - | |
| 25 | -{/literal} | |
| 26 | - | |
| 27 | -<script type="text/javascript">var VERSIONS_URL = "{$url}";</script> | |
| 28 | -<script type="text/javascript">CheckVersion();</script> | |
| 29 | -<div> | |
| 30 | -<div id="AdminHeader"> | |
| 31 | - The following upgrade is available: | |
| 32 | -</div> | |
| 33 | -<div id="AdminVersionBlock" name="AdminVersionBlock"> | |
| 34 | - | |
| 35 | -</div> | |
| 36 | - | |
| 1 | +{literal} | |
| 2 | + | |
| 3 | +<style type="text/css"> | |
| 4 | + | |
| 5 | +#AdminVersionDashlet .action_close { | |
| 6 | + display: none; | |
| 7 | +} | |
| 8 | +#AdminHeader { font-weight: bold; | |
| 9 | + margin-left: 25px;} | |
| 10 | +#AdminVersionBlock { | |
| 11 | + background: url(./plugins/ktstandard/AdminVersionPlugin/templates/AdminVersionPlugin/computer_go.png) no-repeat scroll left; | |
| 12 | + font-weight: bold; | |
| 13 | + padding-left:25px; | |
| 14 | + background-position: top left; | |
| 15 | +} | |
| 16 | +</style> | |
| 17 | + | |
| 18 | +{/literal} | |
| 19 | + | |
| 20 | +<div> | |
| 21 | +<div id="AdminHeader"> | |
| 22 | + The following upgrade is available: | |
| 23 | +</div> | |
| 24 | +<div id="AdminVersionBlock" name="AdminVersionBlock"> | |
| 25 | +<div id="AdminVersion"><a href="http://www.knowledgetree.com/products/whats-new" target="_blank">{$name} version {$version}</a></div><br></div> | |
| 37 | 26 | </div> |
| 38 | 27 | \ No newline at end of file | ... | ... |
plugins/ktstandard/AdminVersionPlugin/test/checkVersion.php
0 → 100644
| 1 | +<?php | |
| 2 | + | |
| 3 | +/** | |
| 4 | + * $Id: $ | |
| 5 | + * | |
| 6 | + * KnowledgeTree Community Edition | |
| 7 | + * Document Management Made Simple | |
| 8 | + * Copyright (C) 2008 KnowledgeTree Inc. | |
| 9 | + * Portions copyright The Jam Warehouse Software (Pty) Limited | |
| 10 | + * | |
| 11 | + * This program is free software; you can redistribute it and/or modify it under | |
| 12 | + * the terms of the GNU General Public License version 3 as published by the | |
| 13 | + * Free Software Foundation. | |
| 14 | + * | |
| 15 | + * This program is distributed in the hope that it will be useful, but WITHOUT | |
| 16 | + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS | |
| 17 | + * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more | |
| 18 | + * details. | |
| 19 | + * | |
| 20 | + * You should have received a copy of the GNU General Public License | |
| 21 | + * along with this program. If not, see <http://www.gnu.org/licenses/>. | |
| 22 | + * | |
| 23 | + * You can contact KnowledgeTree Inc., PO Box 7775 #87847, San Francisco, | |
| 24 | + * California 94120-7775, or email info@knowledgetree.com. | |
| 25 | + * | |
| 26 | + * The interactive user interfaces in modified source and object code versions | |
| 27 | + * of this program must display Appropriate Legal Notices, as required under | |
| 28 | + * Section 5 of the GNU General Public License version 3. | |
| 29 | + * | |
| 30 | + * In accordance with Section 7(b) of the GNU General Public License version 3, | |
| 31 | + * these Appropriate Legal Notices must retain the display of the "Powered by | |
| 32 | + * KnowledgeTree" logo and retain the original copyright notice. If the display of the | |
| 33 | + * logo is not reasonably feasible for technical reasons, the Appropriate Legal Notices | |
| 34 | + * must display the words "Powered by KnowledgeTree" and retain the original | |
| 35 | + * copyright notice. | |
| 36 | + * Contributor( s): ______________________________________ | |
| 37 | + * | |
| 38 | + */ | |
| 39 | + | |
| 40 | +chdir(dirname(__FILE__)); | |
| 41 | +require_once(realpath('../../../../config/dmsDefaults.php')); | |
| 42 | +require_once('../AdminVersion.inc.php'); | |
| 43 | + | |
| 44 | +$version = AdminVersion::isNewVersionAvailable(); | |
| 45 | + | |
| 46 | +if ($version == false) | |
| 47 | +print 'No new version available.'; | |
| 48 | +else | |
| 49 | +print_r($version); | |
| 50 | + | ... | ... |
plugins/ktstandard/AdminVersionPlugin/test/latestVersion.php
0 → 100644
| 1 | +<?php | |
| 2 | + | |
| 3 | +/** | |
| 4 | + * $Id: $ | |
| 5 | + * | |
| 6 | + * KnowledgeTree Community Edition | |
| 7 | + * Document Management Made Simple | |
| 8 | + * Copyright (C) 2008 KnowledgeTree Inc. | |
| 9 | + * Portions copyright The Jam Warehouse Software (Pty) Limited | |
| 10 | + * | |
| 11 | + * This program is free software; you can redistribute it and/or modify it under | |
| 12 | + * the terms of the GNU General Public License version 3 as published by the | |
| 13 | + * Free Software Foundation. | |
| 14 | + * | |
| 15 | + * This program is distributed in the hope that it will be useful, but WITHOUT | |
| 16 | + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS | |
| 17 | + * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more | |
| 18 | + * details. | |
| 19 | + * | |
| 20 | + * You should have received a copy of the GNU General Public License | |
| 21 | + * along with this program. If not, see <http://www.gnu.org/licenses/>. | |
| 22 | + * | |
| 23 | + * You can contact KnowledgeTree Inc., PO Box 7775 #87847, San Francisco, | |
| 24 | + * California 94120-7775, or email info@knowledgetree.com. | |
| 25 | + * | |
| 26 | + * The interactive user interfaces in modified source and object code versions | |
| 27 | + * of this program must display Appropriate Legal Notices, as required under | |
| 28 | + * Section 5 of the GNU General Public License version 3. | |
| 29 | + * | |
| 30 | + * In accordance with Section 7(b) of the GNU General Public License version 3, | |
| 31 | + * these Appropriate Legal Notices must retain the display of the "Powered by | |
| 32 | + * KnowledgeTree" logo and retain the original copyright notice. If the display of the | |
| 33 | + * logo is not reasonably feasible for technical reasons, the Appropriate Legal Notices | |
| 34 | + * must display the words "Powered by KnowledgeTree" and retain the original | |
| 35 | + * copyright notice. | |
| 36 | + * Contributor( s): ______________________________________ | |
| 37 | + * | |
| 38 | + */ | |
| 39 | + | |
| 40 | +// NOTE: this is a test script. The values are for test purposes only. | |
| 41 | + | |
| 42 | +$versions = array( | |
| 43 | +'Development OSS'=> '3.5' | |
| 44 | +); | |
| 45 | + | |
| 46 | +print json_encode($versions); | |
| 47 | + | |
| 48 | +?> | |
| 0 | 49 | \ No newline at end of file | ... | ... |
sql/mysql/install/data.sql
| ... | ... | @@ -932,7 +932,8 @@ INSERT INTO `scheduler_tasks` VALUES |
| 932 | 932 | (5,'Database Maintenance','bin/dbmaint.php','optimize',0,'monthly','2007-10-01',NULL,0,'disabled'), |
| 933 | 933 | (6,'Open Office test','bin/checkopenoffice.php','',0,'1min','2007-10-01',NULL,0,'enabled'), |
| 934 | 934 | (7,'Cleanup Temporary Directory','search2/bin/cronCleanup.php','',0,'1min','2007-10-01',NULL,0,'enabled'), |
| 935 | -(8,'Disk Usage and Folder Utilisation Statistics','plugins/housekeeper/bin/UpdateStats.php','',0,'5mins','2007-10-01',NULL,0,'enabled'); | |
| 935 | +(8,'Disk Usage and Folder Utilisation Statistics','plugins/housekeeper/bin/UpdateStats.php','',0,'5mins','2007-10-01',NULL,0,'enabled'), | |
| 936 | +(9,'Check Latest Version','plugins/ktstandard/AdminVersionPlugin/bin/UpdateNewVersion.php','',0,'daily','2007-10-01',NULL,0,'enabled'); | |
| 936 | 937 | /*!40000 ALTER TABLE `scheduler_tasks` ENABLE KEYS */; |
| 937 | 938 | UNLOCK TABLES; |
| 938 | 939 | |
| ... | ... | @@ -1846,7 +1847,7 @@ UNLOCK TABLES; |
| 1846 | 1847 | |
| 1847 | 1848 | LOCK TABLES `zseq_scheduler_tasks` WRITE; |
| 1848 | 1849 | /*!40000 ALTER TABLE `zseq_scheduler_tasks` DISABLE KEYS */; |
| 1849 | -INSERT INTO `zseq_scheduler_tasks` VALUES (7); | |
| 1850 | +INSERT INTO `zseq_scheduler_tasks` VALUES (9); | |
| 1850 | 1851 | /*!40000 ALTER TABLE `zseq_scheduler_tasks` ENABLE KEYS */; |
| 1851 | 1852 | UNLOCK TABLES; |
| 1852 | 1853 | ... | ... |
sql/mysql/upgrade/3.5.2/zdashboard_tasks.sql
| 1 | 1 | select @id:=max(id)+1 from scheduler_tasks; |
| 2 | 2 | INSERT INTO `scheduler_tasks` VALUES (@id,'Disk Usage and Folder Utilisation Statistics','plugins/housekeeper/bin/UpdateStats.php','',0,'5mins','2007-10-01',NULL,0,'enabled'); |
| 3 | 3 | |
| 4 | +select @id:=max(id)+1 from scheduler_tasks; | |
| 5 | +INSERT INTO `scheduler_tasks` VALUES (@id,'Check Latest Version','plugins/ktstandard/AdminVersionPlugin/bin/UpdateNewVersion.php','',0,'daily','2007-10-01',NULL,0,'enabled'); | |
| 6 | + | |
| 4 | 7 | UPDATE zseq_scheduler_tasks set id=@id; |
| 5 | 8 | \ No newline at end of file | ... | ... |