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]);
 }
Exemple #2
0
 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);
 }
Exemple #3
0
 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);
 }
Exemple #4
0
 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);
 }