/** * @covers \thebuggenie\core\framework\Context::isInstallmode * @covers \thebuggenie\core\framework\Context::checkInstallMode */ public function testInstallMode() { $installed_file = THEBUGGENIE_PATH . 'installed'; if (file_exists($installed_file)) { unlink($installed_file); } \thebuggenie\core\framework\Context::checkInstallMode(); $this->assertTrue(\thebuggenie\core\framework\Context::isInstallmode()); file_put_contents($installed_file, \thebuggenie\core\framework\Settings::getMajorVer() . "." . \thebuggenie\core\framework\Settings::getMinorVer() . "." . \thebuggenie\core\framework\Settings::getRevision() . ", installed today"); \thebuggenie\core\framework\Context::checkInstallMode(); $this->assertFalse(\thebuggenie\core\framework\Context::isInstallmode()); }
/** * check for updates * * @param framework\Request $request */ public function runCheckUpdates(framework\Request $request) { $data = json_decode(file_get_contents('http://www.thebuggenie.com/updatecheck.php')); if (!is_object($data)) { $this->getResponse()->setHttpStatus(400); return $this->renderJSON(array('title' => framework\Context::getI18n()->__('Failed to check for updates'), 'message' => framework\Context::getI18n()->__('The response from The Bug Genie website was invalid'))); } $outofdate = false; // major if ($data->maj > framework\Settings::getMajorVer()) { $outofdate = true; } elseif ($data->min > framework\Settings::getMinorVer() && $data->maj == framework\Settings::getMajorVer()) { $outofdate = true; } elseif ($data->rev > framework\Settings::getRevision() && $data->maj == framework\Settings::getMajorVer() && $data->min == framework\Settings::getMinorVer()) { $outofdate = true; } if (!$outofdate) { return $this->renderJSON(array('uptodate' => true, 'title' => framework\Context::getI18n()->__('The Bug Genie is up to date'), 'message' => framework\Context::getI18n()->__('The latest version is %ver', array('%ver' => $data->nicever)))); } else { return $this->renderJSON(array('uptodate' => false, 'title' => framework\Context::getI18n()->__('The Bug Genie is out of date'), 'message' => framework\Context::getI18n()->__('The latest version is %ver. Update now from www.thebuggenie.com.', array('%ver' => $data->nicever)))); } }