src/AppBundle/Controller/MobileController.php

(开头部分) 2KB

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

<?php

namespace AppBundle\Controller;

use Biz\System\Service\SettingService;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Endroid\QrCode\QrCode;
use Biz\CloudPlatform\Client\CloudAPI;
use Biz\CloudPlatform\CloudAPIFactory;

class MobileController extends BaseController
{
    protected function createAPIClient()
    {
        $settings = $this->getSettingService()->get('storage', array());

        return new CloudAPI(array(
            'accessKey' => empty($settings['cloud_access_key']) ? '' : $settings['cloud_access_key'],
            'secretKey' => empty($settings['cloud_secret_key']) ? '' : $settings['cloud_secret_key'],
            'apiUrl' => empty($settings['cloud_api_server']) ? '' : $settings['cloud_api_server'],
        ));
    }

    public function indexAction(Request $request)
    {
        $referrer = $request->headers->get('Referer');
        $isBaiduMobile = 'm.baidu.com';
        if (strpos($referrer, $isBaiduMobile) !== false) {
            return $this->redirectToRoute('homepage');
        }

        $mobile = $this->setting('mobile', array());

        if (empty($mobile['enabled'])) {
            return $this->createMessageResponse('info', '客户端尚未开启!');
        }

        $result = CloudAPIFactory::create('leaf')->get('/me');

        $mobileCode = ((array_key_exists('mobileCode', $result) && !empty($result['mobileCode'])) ? $result['mobileCode'] : 'edusohov3');

        return $this->render('mobile/index.html.twig', array(
            'host' => $request->getHttpHost(),
            'mobileCode' => $mobileCode,
            'mobileSetting' => $mobile,
        ));
    }

    public function downloadQrcodeAction(Request $request)
    {
        $code = $request->get('code');
        $url = $this->generateUrl('mobile_download', array('from' => 'qrcode', 'code' => $code), true);
        $qrCode = new QrCode();
        $qrCode->setText($url);
        $qrCode->setSize(150);
        $qrCode->setPadding(10);
        $img = $qrCode->get('png');

        $headers = array('Content-Type' => 'image/png',

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

AI 解读 AI

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

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