public function actionWizardCompleted() { $sign_date = CRequest::getString("sign_date"); $chairman = CStaffManager::getPersonById(CRequest::getInt("chairman_id")); $master = CStaffManager::getPersonById(CRequest::getInt("master_id")); $members = new CArrayList(); foreach (CRequest::getArray("members") as $m) { $member = CStaffManager::getPersonById($m); $members->add($member->getId(), $member); } CProtocolManager::getAllSebProtocols(); // на студента по протоколу foreach (CRequest::getArray("student") as $key => $value) { $student = CStaffManager::getStudent($key); $ticket = CSEBTicketsManager::getTicket($value['ticket_id']); $mark = CTaxonomyManager::getMark($value['mark_id']); $questions = $value['questions']; $protocol = CFactory::createSebProtocol(); $protocol->setSignDate($sign_date); $protocol->setStudent($student); $protocol->setChairman($chairman); $protocol->setTicket($ticket); $protocol->setMark($mark); $protocol->setQuestions($questions); $protocol->setBoarMaster($master); $protocol->setSpeciality($student->getSpeciality()); foreach ($members->getItems() as $member) { $protocol->addMember($member); } $protocol->setNumber(CProtocolManager::getAllSebProtocols()->getCount() + 1); $protocol->save(); CProtocolManager::getCacheSebProtocols()->add($protocol->getId(), $protocol); } $this->redirect("?action=index"); }