<?php

/**
 * Class DefaultController
 * @author Blackbinbin
 */
class DefaultController extends BaseController {

    public function __construct() {
        parent::__construct(true);
    }

    /**
     * 判断ip，输出首页
     */
    public function actionIndex() {
//        if (ENV != ENV_DEV) {
//            header('Location: https://dice.eosget.io/#/box');
//            Response::exitMsg('');
//        } else {
//            // 清除无效的cookie
//            Account::checkToken();
//
//            if (ENV != ENV_DEV) {
//                $GLOBALS['eosProtocol'] = "https";
//                $GLOBALS['eosHost'] = "api.eosbeijing.one";
//                $GLOBALS['eosPort'] = 443;
//            }

            $this->tpl->display('index');
//        }
    }

    /**
     * 判断ip，输出首页
     */
    public function actionMini() {
        $this->tpl->display('mini');
    }

    /**
     * 判断ip，输出首页
     */
    public function actionSw() {
        // 不需要默认头部信息
        $GLOBALS['FORBID_ORIGIN'] = true;

        $path = BASE_DIR . 'dist/sw.js';

        // 增加浏览器缓存
        $filemd5 = md5_file($path);
        $this->_addEtag($filemd5);

        $content = file_get_contents($path);
        header("Content-Type: application/javascript; charset=utf-8");
        Response::exitMsg($content, CODE_SUCCESS, null, true);
    }

    private function _addEtag($etag) {
        // always send headers
        header("Etag: $etag");
        // exit if not modified
        if (@trim($_SERVER['HTTP_IF_NONE_MATCH']) == $etag) {
            header("HTTP/1.1 304 Not Modified");
            Response::exitMsg('', CODE_SUCCESS, '304 Not Modified');
        }
    }

    /**
     * 分享跳转
     * @author solu
     * @param $args
     */
    public function actionShare($args) {
        $rules = [
            'group_name' => ['string', 'reg' => '/^[a-z0-9\.]+/i', 'desc' => '群名'],
        ];
        Param::checkParam2($rules, $args);

        $objGroup = new GroupInfo();
        $group = $objGroup->objTable->getRow(['group_name' => $args['group_name']], ['_field' => 'group_id, group_name, group_title']);
        $groupId = $group['group_id'] ?: GroupInfo::OFFICIAL_ID;

        $format = '%s/#/group/%s';
        if (is_mobile_request()) {
            $format = '%s/h5.html#/group/%s';
        }
        $url = sprintf($format, URL_SELF, $groupId);
        Response::exitMsg("<script>location.replace('{$url}')</script>");
    }
}

