前言
主要还是对fossil的Web界面的一些功能的探索
多用户
在上一篇中我提到了怎么创建新用户,但是我用新用户(非管理员身份)重新登录却失败了。下图是当时的猜想。

现在找到问题原因了
执行命令fossil ui -P 8081,浏览器会自动弹出Web界面,而且会自动登录为管理员,就算是想登录为其他用户也是强制为管理员


这是在我自己运行了fossil ui -P 8081命令的电脑上运行的,如果同一个局域网下的不同设备(能ping通我的电脑),比如我的手机,这时候是拒绝访问的,所以这就保证了管理员的绝对权限。
那如果普通用户要登录怎么办呢?只需要在我们的fossil仓库下运行fossil server -P xxx命令即可,比如

这时候浏览器就不会自动弹出窗口,但是现在在23333端口我们就可以以普通用户登录了

同样的,在手机也可以登录,只要在同一个局域网下,比如我的手机自己用了register的用户登录了,在手机上也可以做提交,论坛水贴,聊天室,写wiki等功能(当然这些功能需要管理员开放)
为了管理员不用总是去添加用户,可以打开用户自主注册功能,来到Admin->Access

往下拉找到这个选项勾选,再点击Apply changes就可以了

论坛
升级
正如官方文章所言,如果想要fossil提供论坛跟聊天室(下面会介绍聊天室)的功能,还需要提高到版本2.7以上

而我当前的版本为2.6,难怪导航条里面没有出现Forum跟Chat

升级有两种方式,一种通过apt去安装,一种是直接从官方网站下载已经编译过的可执行文件。因为我的Ubuntu是18.10的,已经不做维护了,所以通过apt安装的也只能到version 2.6 2018-05-04这个版本,所以我直接从官方下载最新版本来替换我的旧版本。
来到官方网站下载页,选择红框下载

下载后解压,解压后得到的是一个可执行文件

在当前解压目录下直接运行查看版本

删除旧版本,替换新版本,再fossil version一下查看版本,替换成功

管理员发帖
首先我这个管理员先来水一个帖子,点击New Thread

可以选择自己想要编辑的文本格式,确认好内容后先点击Preview,预览没问题点击Submit

当当当 效果出来了


如果想实现论坛帖子搜索的功能,如下图红框显示,也是需要打开权限的

来到Admin->Search

勾选Search Forum的功能,就可以实现了

普通用户发帖
普通用户如果管理员没给权限的话无法发帖,也无法聊天,导航条不给显示,所以管理员需要先开放一下权限

以管理员身份登录,来到Admin->Users

这次给普通用户developA开个权限

打开权限后,我们以developA的身份去登录,就可看到导航条里面的Forum跟Chat了

下面尝试回帖跟发帖

回帖

放一张阿离老婆的图片(老婆 嘿嘿嘿),写完后下面的按钮可以预览Preview,也可以直接提交Submit

当当当,最终的效果

(就是阿离的图片有点大,这里再截图下阿离的全貌)

回帖功能测试成功,我再来开贴

嗯,水贴成功


聊天室
升级后导航栏会有Chat,如果普通用户想要享受Chat聊天室功能,还需要我管理员开启权限

管理员开启权限后,现在我以普通用户登录,先来聊天室发送一条信息

发送完毕

同时我管理员这边也会响起消息提示音,以及网页提示

消息提示音的修改路径

现在我们尝试在聊天室里面发一张图片,发图片前我们现在的.fossil文件大小为278.5KB

点击聊天室中的回形针图标,可以上传附件等等

这次我们上传一张图片,大小为3.2MB

发送成功(图片分辨率有点大就不整个图片拉下来看了)

这时候发现我们的.fossil文件也相应变大了,刚好增加了3.2MB左右

目前聊天室不像论坛一样,聊天记录不能一直存在,正如官方文档所言

翻译成中文就是,七天后会自动删除这些聊天信息(绿色框真的是求生欲满满hhh)

网页图标
官方论坛的网页图标

而我这里则是光秃秃的

如果想给自己弄点个性化的图标,可以这么操作
首先来到Admin->logo

点进去后有project logo,background,icon的设置
project logo:

background:

icon:

这次我们针对icon修改,选择好自己想要换的图片,然后点击Change icon

再刷新网页

当当当,替换成功

而且也看到相比较于之前3.4MB大小的.fossil文件,又变大了一点

查看登录者信息
以管理员身份登录,点击User Log

在这里可以看到登录的信息,红框部分是我之前手机登录的信息,其他登录行为都是在我自己的电脑上面操作的

后续方向
- 尝试交叉编译,放到嵌入式设备上运行
- 将仓库放到公网
- 使用fossil做我们的代码托管工具