/** * @param $version * @param $build * @param $releaseDate * @return bool */ public function setNewCraftInfo($version, $build, $releaseDate) { $info = Craft::getInfo(); $info->version = $version; $info->build = $build; $info->releaseDate = $releaseDate; // TODO: Deprecate after next breakpoint release. $info->track = 'stable'; return Craft::saveInfo($info); }
/** * Saves the general settings. */ public function actionSaveGeneralSettings() { $this->requirePostRequest(); $info = Craft::getInfo(); $info->on = (bool) craft()->request->getPost('on'); $info->siteName = craft()->request->getPost('siteName'); $info->siteUrl = craft()->request->getPost('siteUrl'); $info->timezone = craft()->request->getPost('timezone'); if (Craft::saveInfo($info)) { craft()->userSession->setNotice(Craft::t('General settings saved.')); $this->redirectToPostedUrl(); } else { craft()->userSession->setError(Craft::t('Couldn’t save general settings.')); // Send the info back to the template craft()->urlManager->setRouteVariables(array('info' => $info)); } }
/** * Populates the info table with install and environment information. * * @access private * @param $inputs * @throws Exception */ private function _createAndPopulateInfoTable($inputs) { Craft::log('Creating the info table.'); craft()->db->createCommand()->createTable('info', array('version' => array('column' => ColumnType::Char, 'length' => 15, 'null' => false), 'build' => array('column' => ColumnType::Int, 'length' => 11, 'unsigned' => true, 'null' => false), 'packages' => array('column' => ColumnType::Varchar, 'length' => 200), 'releaseDate' => array('column' => ColumnType::DateTime, 'null' => false), 'siteName' => array('column' => ColumnType::Varchar, 'length' => 100, 'null' => false), 'siteUrl' => array('column' => ColumnType::Varchar, 'length' => 255, 'null' => false), 'timezone' => array('column' => ColumnType::Varchar, 'length' => 30), 'on' => array('column' => ColumnType::TinyInt, 'length' => 1, 'unsigned' => true, 'default' => false, 'null' => false), 'maintenance' => array('column' => ColumnType::TinyInt, 'length' => 1, 'unsigned' => true, 'default' => false, 'null' => false), 'track' => array('column' => ColumnType::Varchar, 'maxLength' => 40, 'required' => true))); Craft::log('Finished creating the info table.'); Craft::log('Populating the info table.'); $info = new InfoModel(array('version' => CRAFT_VERSION, 'build' => CRAFT_BUILD, 'releaseDate' => CRAFT_RELEASE_DATE, 'siteName' => $inputs['siteName'], 'siteUrl' => $inputs['siteUrl'], 'on' => 1, 'maintenance' => 0, 'track' => 'stable')); if (Craft::saveInfo($info)) { Craft::log('Info table populated successfully.'); } else { Craft::log('Could not populate the info table.', LogLevel::Error); throw new Exception(Craft::t('There was a problem saving to the info table:') . $this->_getFlattenedErrors($info->getErrors())); } }