LimeSurvey afterSurveyComplete 이벤트

3504 단어 yiilimesurveyphp
저는 LimeSurvey용 간단한 플러그인을 만들었습니다.
이제 사용자가 설문 조사를 실행할 때 마지막 페이지에 일부 텍스트를 추가하려고 합니다.
LimeSurvey에서 이벤트를 제공합니다 afterSurveyComplete .

이제 우리가 해야 할 일은 해당 이벤트를 구독하고 이벤트 핸들러 메서드를 구현하는 것입니다.

public function init()
{
    $this->subscribe('afterSurveyComplete');
}


최소한의 구현은 다음과 같습니다.

public function afterSurveyComplete()
{
    $event = $this->getEvent();
    $event->getContent($this)->addContent('Hello World');
}


추가 처리를 위해 이벤트는 2개의 매개변수surveyIdresponseId를 제공합니다.


public function afterSurveyComplete()
{
    $event = $this->getEvent();

    $surveyId   = $event->get('surveyId');
    $responseId = $event->get('responseId');

    $response   = $this->pluginManager->getAPI()->getResponse($surveyId, $responseId);

    $myContent  = var_export($response, true);

    $event->getContent($this)->addContent($myContent);
}



그게 다야.
안녕히 계세요!

좋은 웹페이지 즐겨찾기