/** * Dump all tables * * @return string */ public function run() { $this->_currentVersion = 'v' . Craft::getVersion() . '.' . Craft::getBuild(); $result = $this->_processHeader(); foreach (craft()->db->getSchema()->getTables() as $tableName => $val) { $result .= $this->_processTable($tableName); } $result .= $this->_processConstraints(); $result .= $this->_processFooter(); $fileName = IOHelper::cleanFilename(Craft::getSiteName()) . '_' . gmdate('ymd_His') . '_' . $this->_currentVersion . '.sql'; $filePath = craft()->path->getDbBackupPath() . strtolower($fileName); IOHelper::writeToFile($filePath, $result); return $filePath; }
/** * Returns the site name. * * @return string */ public function getSiteName() { return Craft::getSiteName(); }
/** * Returns a list of global variables to add to the existing list. * * @return array An array of global variables */ public function getGlobals() { // Keep the 'blx' variable around for now $craftVariable = new CraftVariable(); $globals['craft'] = $craftVariable; $globals['blx'] = $craftVariable; $globals['now'] = DateTimeHelper::currentUTCDateTime(); $globals['loginUrl'] = UrlHelper::getUrl(craft()->config->getLoginPath()); $globals['logoutUrl'] = UrlHelper::getUrl(craft()->config->getLogoutPath()); if (Craft::isInstalled()) { $globals['siteName'] = Craft::getSiteName(); $globals['siteUrl'] = Craft::getSiteUrl(); $globals['user'] = craft()->userSession->getUser(); if (craft()->request->isSiteRequest()) { foreach (craft()->globals->getAllSets() as $globalSet) { $globalSet->locale = craft()->language; $globals[$globalSet->handle] = $globalSet; } } } else { $globals['siteName'] = null; $globals['siteUrl'] = null; $globals['user'] = null; } return $globals; }