/** * Creates Indicate2 questionnaire and returns Indicate2 questionnaire ID * * @param int $questionnaireId Questionnaire ID (from Tuevalon2) * @param array $teacherArray Array of teacher ID's (intern) * @param string $title Title of Indicate2 questionnaire * @param int $blockId ID of block * * @return int Indicate2 questionnaire ID * * @throws Indicate2_Exception */ public function createIndicate2Questionnaire($questionnaireId, $teacherArray, $title, $blockId) { try { if (empty($this->_client)) { $this->connect(); } $questionnairePrefix = getQuestionnairePrefix(); $questionnaireModel = new Questionnaire(); if (!($questionnaireData = $questionnaireModel->getData($questionnaireId))) { throw new Indicate2_Exception('Keine Daten für Fragebogen vorhanden'); } // create request $createQuestionnaireRequest = array('CreateQuestionnaireRequest' => array('Questionnaire' => array('Name' => $title, 'QuestionnaireQuestionContexts' => array('QuestionnaireQuestionContext' => $this->createQuestionnaireQuestionContexts($questionnaireId, $teacherArray, $blockId))))); //Zend_Debug::dump($createQuestionnaireRequest);exit(); // call create public function $response = $this->_client->__soapCall('CreateQuestionnaire', $createQuestionnaireRequest); return $response->QuestionnaireId; } catch (Exception $e) { throw new Indicate2_Exception($e->getMessage()); } }