src/AppBundle/Controller/QuestionMarkerController.php

(开头部分) 2KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

<?php

namespace AppBundle\Controller;

use Biz\Accessor\AccessorInterface;
use Biz\Activity\Service\ActivityService;
use Biz\Course\CourseException;
use Biz\Course\Service\CourseService;
use Biz\File\Service\UploadFileService;
use Biz\Marker\Service\MarkerService;
use Biz\Marker\Service\QuestionMarkerResultService;
use Biz\Marker\Service\QuestionMarkerService;
use Biz\Question\QuestionException;
use Biz\Question\Service\QuestionService;
use AppBundle\Common\Paginator;
use AppBundle\Common\ArrayToolkit;
use Biz\Task\Service\TaskService;
use Symfony\Component\HttpFoundation\Request;

class QuestionMarkerController extends BaseController
{
    //新的云播放器需要的弹题数据
    public function showQuestionMakersAction(Request $request, $mediaId)
    {
        $questionMakers = $this->getQuestionMarkerService()->findQuestionMarkersMetaByMediaId($mediaId);
        $baseUrl = $request->getSchemeAndHttpHost();
        $headerLength = 0;
        if (!$this->getWebExtension()->isHiddenVideoHeader()) {
            $videoHeaderFile = $this->getUploadFileService()->getFileByTargetType('headLeader');
            if (!empty($videoHeaderFile) && 'success' == $videoHeaderFile['convertStatus']) {
                $headerLength = $videoHeaderFile['length'];
            }
        }
        $result = array();

        foreach ($questionMakers as $index => $questionMaker) {
            $isChoice = in_array($questionMaker['type'], array('choice', 'single_choice', 'uncertain_choice'));
            $isDetermine = 'determine' == $questionMaker['type'];

            $result[$index]['id'] = $questionMaker['id'];
            $result[$index]['questionMarkerId'] = $questionMaker['id'];
            $result[$index]['markerId'] = $questionMaker['markerId'];
            $result[$index]['time'] = $questionMaker['second'] + $headerLength;
            $result[$index]['type'] = $questionMaker['type'];
            $result[$index]['question'] = self::convertAbsoluteUrl($baseUrl, $questionMaker['stem']);
            if ($isChoice) {
                $questionMetas = $questionMaker['metas'];
                if (!empty($questionMetas['choices'])) {
                    foreach ($questionMetas['choices'] as $choiceIndex => $choice) {
                        $result[$index]['options'][$choiceIndex]['option_key'] = chr(65 + $choiceIndex);
                        $result[$index]['options'][$choiceIndex]['option_val'] = self::convertAbsoluteUrl(
                            $baseUrl,
                            $choice
                        );
                    }
                }
            }
            $answers = $questionMaker['answer'];
            foreach ($answers as $answerIndex => $answer) {
                if ($isChoice) {

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。