private function fillSubfolders(CDocumentFolder $folder, &$arr, $level)
 {
     foreach ($folder->getChildFolders()->getItems() as $subfolder) {
         $arr[$subfolder->getId()] = str_repeat("-", $level) . " " . $subfolder->title;
         $this->fillSubfolders($subfolder, $arr, $level++);
     }
 }
 public function actionConvert()
 {
     $foldersLookup = array("gost1" => "Должностные инструкции", "gost2" => "Образовательные стандарты", "gost3" => "Самообследование", "gost4" => "Учебные планы", "gost5" => "К диплому", "gost6" => "Интеллектуальная система самообучения и самоорганизации пользователей веб-портала", "gost7" => "СДО MOODLE", "gost8" => "Практика", "gost9" => "Материалы для оформления УМК");
     // создадим папки
     foreach ($foldersLookup as $key => $title) {
         $folder = new CDocumentFolder();
         $folder->title = $title;
         $folder->save();
         // сконвертим файлы в папках
         $query = new CQuery();
         $query->select("f.*")->from(TABLE_DOCUMENTS . " as f")->condition("nameFolder = '" . $key . "'");
         foreach ($query->execute()->getItems() as $arr) {
             $ar = new CDocumentActiveRecord($arr);
             $ar->setTable(TABLE_DOCUMENTS);
             $file = new CDocumentFile($ar);
             $file->folder_id = $folder->getId();
             $file->save();
         }
     }
     $this->redirect("?action=index");
 }