api/src/Topxia/Api/Resource/LessonReplay.php
(开头部分) 2KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
<?php
namespace Topxia\Api\Resource;
use Silex\Application;
use AppBundle\Common\SettingToolkit;
use Biz\CloudPlatform\CloudAPIFactory;
use Symfony\Component\HttpFoundation\Request;
class LessonReplay extends BaseResource
{
public function get(Application $app, Request $request, $id)
{
$task = $this->getTaskService()->getTask($id);
$activity = $this->getActivityService()->getActivity($task['activityId'], true);
if (!$task) {
return $this->error('500', '课时不存在!');
}
if (!$this->getCourseService()->canTakeCourse($task['courseId'])) {
return array('message' => 'Access Denied');
}
if ($activity['ext']['replayStatus'] == 'videoGenerated') {
return json_decode($this->sendRequest('GET', $this->getHttpHost() . $app['url_generator']->generate('get_lesson', array('id' => $task['id'])), array(sprintf('X-Auth-Token: %s', $request->headers->get('X-Auth-Token')))), true);
}
$device = $request->query->get('device');
$copyId = empty($activity['copyId']) ? $activity['id'] : $activity['copyId'];
$replays = $this->getLiveReplayService()->findReplayByLessonId($copyId);
if (!$replays) {
return $this->error('500', '课时回放不存在!');
}
$visibleReplays = array_filter($replays, function ($replay) {
return empty($replay['hidden']);
});
$visibleReplays = array_values($visibleReplays);
$user = $this->getCurrentUser();
$response = array(
'url' => '',
'extra' => array(
'provider' => '',
'lessonId' => $activity['id'],
),
'device' => $device,
);
try {
// if liveProvider is edusoho light live we you video as replay;
if ($activity['ext']['liveProvider'] == 5) {
//获取globalid
$globalId = $visibleReplays[0]['globalId'];
$options = array(
'fromApi' => !$this->isSetEncryption(),
'times' => 2,
'line' => $request->query->get('line', ''),
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。