论坛进行了一些更新

KasuganoSoras 发表于 2018-10-27 18:23:09 | 查看:497 | 公告


论坛今天做了一些更新,改善了一下系统界面,以及视觉效果。

本次更新的主要内容如下


代码高亮

论坛已经支持代码高亮,使用了 highlight.js

高亮效果如下

<?php
// 引用 AES 加密
$aes = new AES();
// 定义源站信息
define('SOURCE_SITE', 'test.example.com');    // 你的源站地址
define('OPENAPI_TOKEN', md5('Your token'));    // 你的 token

// 如果客户端请求使用 Sakura Frp 进行登录
if(isset($_GET['action']) && $_GET['action'] == 'location') {
    $data = Array(
        'timestamp' => Intval(date("YmdHi"))
    );
    $data = urlencode($aes->encrypt(json_encode($data), substr(md5(OPENAPI_TOKEN), 0, 16), OPENAPI_TOKEN));
    Header("Location: https://openid.natfrp.org/?src=" . SOURCE_SITE . "&data={$data}");
    exit;
}

// 登陆成功后,OpenAPI 返回数据
if(isset($_GET['data'])) {
    $data = json_decode($aes->decrypt($_GET['data'], substr(md5(OPENAPI_TOKEN), 0, 16), OPENAPI_TOKEN), true);
    if(!$data) {
        echo "Data invalid";
        exit;
    } else {
        // 验证时间戳,误差允许在 1 分钟以内
        if($data['timestamp'] !== Intval(date("YmdHi"))) {
            echo "Time stamp invalid";
            exit;
        } else {
            // 验证成功,将 OpenAPI 返回的用户名和邮箱赋值给变量
            $username = $data['username'];
            $email = $data['email'];
            // 接下来任由发挥想象,例如
            // SESSION_START();
            // $_SESSION['username'] = $username;
        }
    }
}

// AES-256-CFB 加密类
class AES {
    public function encrypt($str, $localIV, $encryptKey) {
        return openssl_encrypt($str, 'AES-256-CFB', $encryptKey, 0, $localIV);
    }
    public function decrypt($str, $localIV, $encryptKey) {
        return openssl_decrypt($str, 'AES-256-CFB', $encryptKey, 0, $localIV);
    }
}

同时支持指定语言,系统默认会自动识别语言类型,如果识别有误,可以在 ```` 的后面指定语言。

例如 ````php


快捷键

编辑器现在已支持 Tab 键,以及 Ctrl + S 保存功能。

在看帖的时候按下 Ctrl + E 可以编辑帖子。


LazyLoad

本次加入了仿知乎的 LazyLoad 加载图片功能,即加载完成后再显示出来。

在加载完成之前图片是隐藏的,加载后 0.5s 内图片会从模糊变清晰。

以上就是本次论坛更新,如果大家还有什么建议,欢迎向我提出。

KasuganoSoras 在 2018-10-27 23:08:19 编辑了帖子


img


帖子评分

评分是对作者的一种鼓励,您可以在评论框输入 /cs score 分数 附言 对帖子进行评分。

最少 1 分,最大 5 分,评分会消耗自己的积分,不能给自己的帖子评分。

暂时没有人评分!


发表你的评论

回帖时请注意遵守论坛发言规定,请勿恶意灌水。

  回帖倒序排列   匿名回复 您还可以输入 2000  


欢迎来到 ZeroDream 论坛!

您还没有登录噢 :P

登陆以后就可以发帖和回复啦~


系统主题选项

在线人数:Loading...

WebSocket 状态:Loading...