public function actionDo() { $sqlPath = \Yii::getAlias('@data') . TFileHelper::buildPath(['sql']); $upgradeInfo = $this->getUpgradeInfo(); $lastSql = $upgradeInfo['lastSql']; $needUpgradeSqls = $upgradeInfo['needUpgradeSqls']; $message = ''; if (empty($needUpgradeSqls)) { $message = '没有要升级的文件'; } else { foreach ($needUpgradeSqls as $sql) { $sqlData = TFileHelper::readFile([$sqlPath, $sql]); $this->execute($sqlData); } $lastSql = end($needUpgradeSqls); $lastSql = ltrim($lastSql, 'yiiforum_'); $lastSql = rtrim($lastSql, '.sql'); TFileHelper::writeFile([$sqlPath, 'upgrade.txt'], $lastSql); $message = '升级成功,当前sql为:yiiforum_' . $lastSql . '.sql'; } return $this->render('do', ['message' => $message]); }
public static function createCachedRolesGroup() { $auth = \Yii::$app->authManager; $newLine = "\r\n"; $content = '<?php' . $newLine; $groups = $auth->getChildren('root_role'); foreach ($groups as $group) { $content .= '$cachedRolesGroup[\'' . $group->name . '\'] = [' . $newLine; $content .= AuthItem::createItem($group); $content .= "];" . $newLine; } $dataRoot = \Yii::getAlias('@data'); TFileHelper::writeFile([$dataRoot, 'cache', 'cachedRolesGroup.php'], $content); }
public static function createCache() { $newLine = "\r\n"; $content = '<?php' . $newLine; $channels = Board::find()->all(); foreach ($channels as $row) { $id = $row['id']; $content .= '$cachedBoards[' . $row['id'] . ']=[' . $newLine; $content .= Board::getCacheItem('id', $row, true); $content .= Board::getCacheItem('parent_id', $row, true); $parentIds = Board::getParentIds($id); $content .= Board::getCacheItemValue('parent_ids', implode(',', $parentIds)); $content .= Board::getCacheItem('name', $row); $content .= Board::getCacheItem('icon', $row); $content .= Board::getCacheItem('description', $row); $content .= Board::getCacheItem('rule', $row); $content .= Board::getCacheItem('columns', $row, true); $content .= Board::getCacheItem('sort_num', $row, true); $content .= Board::getCacheItem('redirect_url', $row); $content .= Board::getCacheItem('target', $row); $content .= Board::getCacheItemValue('level', count($parentIds) - 1, true); $content .= "];" . $newLine; } $dataRoot = \Yii::getAlias('@data'); TFileHelper::writeFile([$dataRoot, 'cache', 'cachedBoards.php'], $content); }
public static function createCachedPermissions() { $auth = \Yii::$app->authManager; $newLine = "\r\n"; $content = '<?php' . $newLine; $permissionContent = ''; $categories = $auth->getChildren('root_permission'); foreach ($categories as $category) { $content .= '$cachedPermissionCategories[\'' . $category->name . '\'] = [' . $newLine; $content .= AuthItem::createItem($category); $content .= "\t'permissions' => [" . $newLine; $permissions = $auth->getChildren($category->name); foreach ($permissions as $permission) { $content .= "\t\t'" . $permission->name . "'," . $newLine; $permissionContent .= '$cachedPermissions[\'' . $permission->name . '\'] = [' . $newLine; $permissionContent .= AuthItem::getCacheItemValue('category', $category->name); $permissionContent .= AuthItem::createItem($permission); $permissionContent .= "];" . $newLine; } $content .= ' ],' . $newLine; $content .= "];" . $newLine; } $content .= $permissionContent; $dataRoot = \Yii::getAlias('@data'); TFileHelper::writeFile([$dataRoot, 'cache', 'cachedPermissions.php'], $content); }