src/AppBundle/Controller/MarketingUserController.php
(开头部分) 1KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
<?php
namespace AppBundle\Controller;
use AppBundle\Common\Exception\InvalidArgumentException;
use Symfony\Component\HttpFoundation\Request;
class MarketingUserController extends BaseController
{
public function loginAction(Request $request)
{
$ticket = $request->query->get('ticket');
$token = $this->getTokenService()->verifyToken('marketing_login', $ticket);
if (false !== $token) {
$user = $this->getUserService()->getUser($token['userId']);
if (empty($user)) {
return $this->createResourceNotFoundException('user', $token['userId']);
}
$this->authenticateUser($user);
if (!in_array($token['data']['targetType'], array('classroom', 'course', 'coupon'))) {
throw new InvalidArgumentException('targetType is invalid');
}
if (in_array($token['data']['targetType'], array('classroom', 'course'))) {
$url = $this->generateTargetUrl($token['data']['targetType'], $token['data']['targetId']);
} else {
$url = $this->generateTargetUrl($token['data']['targetType']);
}
$request->getSession()->set('_target_path', $url);
return $this->redirect($url);
}
return $this->redirect($this->generateUrl('homepage'));
}
private function generateTargetUrl($targetType, $targetId = null)
{
switch ($targetType) {
case 'classroom':
case 'course':
$url = $this->generateUrl($targetType.'_show', array('id' => $targetId));
break;
case 'coupon':
$url = $this->generateUrl('my_cards');
break;
default:
throw new InvalidArgumentException('targetType is invalid');
break;
}
return $url;
}
protected function getTokenService()
{
return $this->createService('User:TokenService');
}
}
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。