wifidog_auth server adminstration--part4
Wifidog门户自定义
简介
l 自定义静态内容被作为内容类型添加到数据库。他们会显示在结构化区域。
l 在HTML里无布局
l Logo和界面布局以CSS形式添加
自定义界面
添加自定义内容
所有自定义内容都应该通过内容管理器显示在数据库中,通常使用TrivialLangstring和Langstring类型。查看
l ContentDistributionSystem
l doc/auth-server/ContentManagerTutorial
自定义内容和界面元素的逻辑定位
注:下文提到的是系统目前使用的构架布局,但HTML和CSS重构还没有完成。
我们正在从HTML中将同样的布局导向代码移出,所以在CSS中可做的事还是要在CSS中完成。每个页面的结构标识和内容元素都将始终如一的向CSS提供更多的关联信息,并且让样式表更易编写修改。结构标识的逻辑图可以从以下途径获得:
· attachment:"structural_layout_wifidog.odg" Open Document
· attachment:"structural_layout_wifidog.pdf" PDF
当内容从网络接口分配出来时,就会具有三个属性:
- Page:登录页面,门户或其它(其它是指除了登录页面和门户外,还有管理界面和其它页面)
- Area:图表中灰色分区的ID
- Display order:在一个区域内的内容显示顺序
更改布局
Stylesheets在wifidog可以做以下应用: - 默认wifidog stylesheet(默认主题)
- 网络指定的由网络参数选择的stylesheet(网络主题公园)
- Stylesheet内容类型被添加在内容管理器
Ø 使用CSS主题管理器进行样式化
所有网络主题公园都保存在自己的文件夹内,允许分享和用stylesheet来引用图形元素。
使用网络主题公园的优势在于:
l 易于添加图像
l 能够在SVN版本化
l 在服务器上的负载极小
网络主题公园最多的用于创建网络的大致外观和感觉。你也可以在这更换wifidog logo等。
Ø 使用Stylesheet内容类型样式化
使用内容管理器可以添加一个或多个stylesheet snipplets。
使用Stylesheet内容类型的优势在于:
l 能够被添加到一组热点或者单块内容
l 能够从网站界面进行编辑
Stylesheet内容类型大多用于暂时更改和定位专一样式化。
自定义UI
Ø 内容服务器的静态UI元素
一些重要的界面元素(例如:在线用户列表)已经被重新写成静态内容类型,所以每组可以逐个配置并决定在哪里显示。你可以向空白的门户添加人认为合适的元素。这些元素可以从内容管理器中获得。
Ø 动态Smarty模版
你可以使用Smarty语言直接在内容管理器上创建自定义UI元素,并可以从wifidog获得许多稳定的变量(热点名称,登录用户数量等)。当创建SmartyTemplate时可以看到获取完整列表的说明。
本地化
Ø Static strings和gettext
所有static strings能够放在()内,通过gettext来本地化。如果不支持你的语言,查看doc/developer/LanguageTranslation。
代码提示:
· Good: $output=sprintf(('Welcome %s'), $username);
· Bad: $output=('Welcome').' '.$username;
· Very bad: $output=("Welcome $username");
内容管理器的文本内容
在Wifidog,所有安装语言都有相对应的文本内容版本。如果精确的语言没有文本的话,Wifidog会: - 用同样语言显示文本(如:fr_FR或fr)
- 用国家子代码显示文本(如:en_CA)
- 用默认语言显示字符串
- 显示任何可得字符串
编辑静态模版
Wifidog的所有模版都旨在缓解开发,并不主要是做为自定义工具。它们可以随时更改并且可以在不得已时进行编辑。没有任何机制来要求模版必须用在哪里,而不认可默认设置。将来也不可能有这种机制。
不到万不得已不要编辑模版!这对你没有帮助并且可能会影响项目。如果你想进行一些操作,但又不知道如何进行,那选择下面一项:
l 查询IRC邮件列表应该如何操作
l 用不影响组群的方法修改模版,并提交修改补丁。通常会像创建HTML元素一样简单。
如果你编辑了模版却没有提交修改,那么你就要负责根据基础模版的变更将它们进行更新。因此,我强烈建议从SVN启动成品服务器,而不是在tarball。这样SVN将会做一部分变更合并工作,并且有冲突提示。
与现有CMS整合
一些组群可能已经有定位感知CMS,他们想继续使用或不想提供任何定位专一内容。鉴于整合水平,已存在系统或网页可以选择一种或两种方法进行整合: - 使用IFrame内容类型,它会使一个网页作为Wifidog门户的一部显示出来
- 使用SmartyWifidog内容类型,当往目标传递一个些wifidog变量时,可以使一个网页作为wifidog门户的一部分显示出来。
- 使用“URLto show instead of the portal”来完成关闭此热点的Wifidog门户,并且显示一个自定义URL。
与现有认证系统整合
通过扩展认证器的级别,Wifidog已经支持一些外部认证系统。不久,认证器确认了登录界面,创建新用户界面和用户管理部分以后,这个概念就会更加丰富。
本文章由 http://www.wifidog.pro/2015/01/14/wifidog-auth-server-4.html 整理编辑,转载请注明出处