2015年1月

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
当内容从网络接口分配出来时,就会具有三个属性:

  1. Page:登录页面,门户或其它(其它是指除了登录页面和门户外,还有管理界面和其它页面)
  2. Area:图表中灰色分区的ID
  3. Display order:在一个区域内的内容显示顺序
    更改布局
    Stylesheets在wifidog可以做以下应用:
  4. 默认wifidog stylesheet(默认主题)
  5. 网络指定的由网络参数选择的stylesheet(网络主题公园)
  6. 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会:
  7. 用同样语言显示文本(如:fr_FR或fr)
  8. 用国家子代码显示文本(如:en_CA)
  9. 用默认语言显示字符串
  10. 显示任何可得字符串
    编辑静态模版
    Wifidog的所有模版都旨在缓解开发,并不主要是做为自定义工具。它们可以随时更改并且可以在不得已时进行编辑。没有任何机制来要求模版必须用在哪里,而不认可默认设置。将来也不可能有这种机制。
    不到万不得已不要编辑模版!这对你没有帮助并且可能会影响项目。如果你想进行一些操作,但又不知道如何进行,那选择下面一项:
    l 查询IRC邮件列表应该如何操作
    l 用不影响组群的方法修改模版,并提交修改补丁。通常会像创建HTML元素一样简单。
    如果你编辑了模版却没有提交修改,那么你就要负责根据基础模版的变更将它们进行更新。因此,我强烈建议从SVN启动成品服务器,而不是在tarball。这样SVN将会做一部分变更合并工作,并且有冲突提示。
    与现有CMS整合
    一些组群可能已经有定位感知CMS,他们想继续使用或不想提供任何定位专一内容。鉴于整合水平,已存在系统或网页可以选择一种或两种方法进行整合:
  11. 使用IFrame内容类型,它会使一个网页作为Wifidog门户的一部显示出来
  12. 使用SmartyWifidog内容类型,当往目标传递一个些wifidog变量时,可以使一个网页作为wifidog门户的一部分显示出来。
  13. 使用“URLto show instead of the portal”来完成关闭此热点的Wifidog门户,并且显示一个自定义URL。
    与现有认证系统整合
    通过扩展认证器的级别,Wifidog已经支持一些外部认证系统。不久,认证器确认了登录界面,创建新用户界面和用户管理部分以后,这个概念就会更加丰富。

本文章由 http://www.wifidog.pro/2015/01/14/wifidog-auth-server-4.html 整理编辑,转载请注明出处

wifidog_auth server adminstration--part3

内容管理器指南
内容管理器是WIFIDOG认证服务器最权威也最误解的组成部分。此文档不是内容管理器手册,而是共通使用案例的列单,和作为内容管理器如何去解决。
内容显示脚本
第一部分是简单脚本列表,回答问题“我想这样操作,我该如何操作?”
交替显示图像

  1. 连接想要显示图像的BannerAddGroup。
  2. 在“ContentGroup访问控制”将ContentGroup设置成不可再用。
  3. 将图像做为ContentGroup元素进行添加
    在若干(并非全部)热点显示单块内容
    这是非常普遍的情况:在所有热点以特定的顺序呈现特定的内容,或者是特定类型的所有热点(咖啡厅,酒吧,图书馆等等)
  4. 创建一个连接到全网络的可再用内容组
  5. 将内容作为内容组的第一元素进行添加
  6. 在“Only display at node(s)”文件添加所需热点
    只向用户显示一次单块(或若干块)内容
    这些对notices有帮助:
  7. 连接ContentGroup,添加notice。
  8. 在“ContentGroup access control”,将ContentGroup设置成不可再用。
  9. 将notice作为ContentGroup的元素进行添加
  10. 在“ContentGroup configuration”/“Can content be shown more than once to the same user?”:选择“Content can only be shown once。”
    做一次“寻宝”或“串酒吧”
    这是给用户提示来寻找下一个位置(和下一个线索)的活动。
  11. 连接一个新的内容组全网络
  12. 确保ContentGroup是可再用的
  13. 将提示作为ContentGroup元素进行添加
  14. 为每一个将要显示的提示添加热点
    Ø 处理多个路径
    如果你想有多条用户路径或者不全得到相同的提示,操作如下:
  15. 在“ContentGroup configuration”/“When does the content rotate?”选择“Content rotates each time you change node”。在这种情况下,这意味着内容将不会为单独一个用户循环,这正是我们想要的。
  16. 确保“In what order should the content displayed?”选择的是“Randomly”。
    与另外一个网页或CMS整合
    如果能够输入http GET参数,SmartyTemplate内容类型允许经过认证服务器变量到远程服务器。以下例子指出了两个方法。
    Ø IRC chat示例使用简单的HTML连接来获取变量
    此代码示例允许使用IRC网络接口来直接连接到#wifidog通道。你通常需要手动选择用户名和通道。以下代码会创建一个新连接,此连接将直接将你引导到#wifidog通道,如果你连接到热点,你会告诉其用户你是从哪里连接的。
    {if $userName}

    Chat with wifidog developers

Ø ShoutBox示例使用JavaScript取得变量
此代码将发送用户对另外一个网页的请求,并在新窗口打开。它已经尝试整合ISF的网络。
l 创建ShoutBox
l 在“Shout button ‘onclick=’value”中添加SmartyTemplate。
l 将以下代码粘贴到SmartyTemplate,不用换行
window.open('http://www.cwide.org/scripts/cwide_addMsgAndRedirect.php?hotspotID={$realNodeId}&hotspotName={$realNodeName|urlencode}&message='+escape(document.getElementById('shout_text').value)+'&ipAddress={$realNodeLastHeartbeatIP}&username={$userNam|urlencode}');

本文章由 http://www.wifidog.pro/2015/01/14/wifidog-auth-server-3.html 整理编辑,转载请注明出处

wifidog_auth server adminstration--part2

内容管理器参考手册
内容类型的公共属性
所有内容类型都有几个共通的属性,但是Simple内容类型,例如TrivialLangstring和SimplePicture,可能就没有显示出这一特点来使他们足够简单。
l Metadata
不同的Metadata属性包含将要显示给人们的内容的一些信息。这些都有可选性。
如果使用这些属性,可以构成任何Simple内容类型。因此标题可以是TrivialLangstring,SimplePicture或其它任何可用内容类型。
需要注意的是如果所有Metadata属性和作者为空的话,内容将以完全不同的形式显示。
ü 标题
显示内容的标题。注:不存在于Simple类型中,除非他们具有持久性。注:如果检测“是否显示标题?”,则只在显示时出现。检测“是否显示标题?”的原因是是允许给Persistend 内容类型加标题,所以可以在可再用内容库中找到他们,而不用实际显示标题。
标准显示:将显示在内容区域的最上面
ü 描述
内容的简短描述。标准显示:右侧,作者下方
ü 详细描述
内容的详细描述。将以连接的形式显示真实详细描述的页面。
ü 项目信息
*标准显示:右侧,描述下方
l 内容访问控制
ü 是可再用内容库的一部分吗?
内容是可再用的。可再用的内容将要:
显示在可再用内容库,节点和网络内容分配接口。如果不从节点或contentgroup移除将无法删除。No-reusable内容如果从节点,网络或contentgroup移除将完全删除。
ü 内容所有者列表
当你第一个创建内容时,你就是内容所有者。你可以做为所有者任意添加其它用户,并且用户可以被允许修改内容。
ü 是内容作者吗?
当你添加一个用户时,你可以检测“Is content author?”来表明用户确实创建了显示的内容。
标准显示:将显示在右上角,在描述上方
不同内容类型
需要注意的是以下内容类型都有“Simple”版本,没有metadata属性,没有持久性。从历史原因上讲,SimpleLangtring实际上叫做TrivialLangstring。完全内容类层次。这是内容类型继承层次。内容将完全继承它根源的管理接口,并且可能添加它自己的属性。
ContentGroup
ContentGroup不是真正的内容。它是容纳许多不同内容块的“集装箱”。
n ContentGroup配置
它的元素通过以下属性显示:
l 内容显示顺序
² 随机选取内容元素
² 随机选取内容元素,但是要进行两次才显示所有元素
² 按先后顺序选取元素
l 内容循环
² 内容持续循环
² 内容一天循环一次
² 内容每会话一次循环一次
² 内容每更改节点一次循环一次
l 内容显示给同一个用户次数
² 内容显示不只一次
² 内容只显示一次
² 内容显示不只一次,但不在一个节点
n ContentGroup元素
你可以为每个内容元素新建内容或者选择Reusable Content Library中已存在的内容。请记住:已存在的内容必须在可再用之前设置成持久性。你也可以将内容组分配为彼此的元素,互相嵌套。
每个元素会根据显示环境来显示:
² Display order:元素将以什么顺序显示
² Only display from (date) until (date):内容将只在这个日期范围内显示。注意的是,一旦过期,元素将默认的不会在管理界面出现。
² Only display at node(s):元素被允许显示的节点。注意的是一个元素可以在任何节点显示,除非选择特定的一个或几个节点。
EmbeddedContent
此内容类型允许你在门户页面嵌入多媒体内容。它支持大量的可靠内容,它会在用户的浏览器不支持多媒体内容的时候显示。
File
此内容类型允许你上传内容,并保存在数据库,或者指定一个可以下载此文件的远程URL,此内容将有一个下载按钮。
Picture
扩展文件,允许显示图片。
FlickrPhotostream
Flickr是数码图片分享页面。这一服务作为图片资源库被广泛应用在博客。Flickr的优点是你可以通过API访问所有图片和metadata。使用API我们可以在WIFIDOG的门户页面上通过Flickr照相排版将图片显示出来。你需要有Flickr API key来激活此内容类型。API key是非商用性的免费使用。我们支持三种图片选择模式:
Ø 组
Ø 标签
Ø 用户
每种选择模式都有许多不同的属性
IFrame
允许在门户的可配置部分显示另外一个网页。
IFrameREST
使用SmartyTemplate更强大
Langstring和TrivialLangstring
人们大多时候都会使用TrivialLangstring。它WIFIDOG指定的所有语方环境的翻译。
注意的是Langstring允许简单的HTML标记。
HTMLeditor
用来创建HTML标记的使用Langstring的WYSIWYG编辑器。
SmartyTemplate
使用Smarty template engine创建源于认证服务器变量的内容。这确实是与其它网络系统整合的最好方法。在管理界面可以获得帮助。
Stylesheet
允许向节点,内容等添加自定义CSS Sylesheets。
RssAggregator
强大的RssAggregator是基于Feedpressreview。在管理界面可以获得帮助。
ShoutBox
注意的是与其它内容类型不同,此内容类型与用户积极互动。它执行Shoutbox的使用案例。它目前拥有最小的特征集:
Ø 允许用户直接在门户发送短消息
Ø 其它用户可以在门户上看到最后五条信息
Ø 它将在允许发送信息之前检测是否与热点连接
Ø 允许在按钮鼠标单击添加自定义Javascript,例如将信息复制到远程页面。

本文章由 http://www.wifidog.pro/2015/01/14/wifidog-auth-server-2.html 整理编辑,转载请注明出处

wifidog_auth server adminstration--part1

Wifidog 认证服务器管理文件
入门指南
你现在已经完成了wifidog安装,需要做的是配置网络的一些参数。
此文档是想为你成功安装认证服务器提供一些指南。此文档也尚未完成。另外,也有计划最终整合安装指南。
在开始之前,建议你将服务器镜像做个备份。在遇到问题时可以避免重新安装。
首先你需要以管理员的身份登录网络,在屏幕顶部,你会看到有以下选项的菜单:找到热点,网络管理,节点管理,服务器管理,用户管理。将鼠标放到子菜单选项,如何使用这些来完成最基本的wifidog配置/定制,下面都会有注释。
首先,一些定义
如果你按照配置菜单进行操作的话,你会遇到以下词汇。这里提到的会帮助你理解配置过程。在长词汇的理解和wifidog管理上都会有所帮助。
Network
拥有普通用户列表和门户的一组节点的管理界面
Node
节点被定义为一个独立的Wifidog网关安装,并且经常被称为热点
Virtual Host
服务器的完全限定域名,也包含了google API key,这个key可以从此处获得:http://code.google.com
Authentication Parameters
网络处理它的用户的方式,可能是本地数据库,radius,LDAP或者没有用户列表。
为用1个节点单独网络安装程序配置服务器
配置网络的名称,地址和GIS坐标
首先,你需要找到这台服务器的Network Administration >Add a new Network,大部分默认设置都无需处理,但你需要配置一部分默认值。这里概述一下:
在Network Name输入网络名称。在Network’s Website输入网络IP地址。
在Technical Support email输入support email地址。
在Network Properties > Is this network the default network?点击“是”。
输入GIS数据-经度,纬度等等。
详细步骤
创建一个新的网络
找到服务器上Network Administration > Add a new Network
你需要添加一个新的网络ID
现在你需要输入与网络相关的细节信息
与网络相关的信息
Network Name-网络名称,此网络上的网站将被托管。
Technical Support email-support email地址,如:support@...
网络认证
Network authenticator class-暂时先把它看作是“Authenticator Local User”。
Authenticator parameters-请输入与Nentwork ID相同的名称,并用单引号标注。
网络属性
Theme Pack-目前只有一个主题公园来设置WIFIDOG的外观,请浏览http://dev.wifidog.org/wiki/doc/developer/PortalCustomization,来了解如果创建一个新的主题。目前此选项可以设置成空。
网络节点的属性
Splash-only nodes-节点允许被设置成Splash-only形式吗?
Portal page redirection-节点允许将用户重新导向至任意页面,而非门户吗?
网络用户验证
Validation grace period-以秒计算验证宽限期的长度,这段时间用户被允许接入互联网,查看他的邮件,验证他的帐户。默认值是“1200”,也就是20分钟。
Multiple connections-一个用户可以同时进行多次链接吗?
访问权限
在这里你可以定义谁可以使用“Edit NetworkNameHere”来管理网络。此人的用户名必须已经存在,也可以通过点击左上角的“创建新用户”来完成。
GIS数据
Latitude-按照惯例,要写成+/-00.000000的形式
Longitude-按照惯例,要写成+/-00.000000的形式
Zoom level-从1到20,选择合适的缩放值来包含所有的节点
Map type(卫星等等,只需选一项)
地图,GoogleKey等等,虚拟网络
我已经在前面提到过如何为你的网络配置坐标。现在输入你的Google API查看网络上的第一个地图。找到导航目录的Server Administration > Virtual Hosts
在虚拟主机页面,你会看到选项,是要编辑已有的虚拟主机(本地主机)还是要创建一个新的。不要删除或编辑名称为“localhost”的虚拟主机,用新名称创建一个虚拟主机,并点击“添加新虚拟主机”按钮。然后打开虚拟主机配置页面,输入Google API key。点击预览,关闭预览然后点击“save virtualhost”。
创建一个新节点
现在你有了新地图和正常运行的服务器,你需要一些节点来完成任务。操作步骤如下:
找到Node administration > Add Node
你需要输入一个Node ID,详细地址,地理信息和一些选项。
门户管理
附加条件
先决条件:
l 安装认证服务器
l 以管理员身份登录
创建一个新节点
l 点击左侧“Add a New Node”
l 给节点一个唯一的描述性ID
l 填写节点信息
l 设置部署状况
l 如果你不想用户登录,选择splash-only
l 创建目录:
在节点安装页面底部,会提到节点目录。
Display Page可以显示具体信息:
登录后将显示门户页面。登录将显示在登录页面。
目录是可以显示在页面上的目录。LangString是用来在页面上放置文本。它对于描述服务或显示文本都非常有用。添加Langstring的步骤:
l 点击“Add”
l 点击“Edit”,编辑新创建Langstring。
l 在Title类别添加Trivialstring。选择语言,输入标题名称并点击Add New String。
l 在底部选择语言,并显示目录。
l 点击保存
现在返回到节点配置并用同样方法添加其它目录。
在页面放张图片,步骤与string相同,但代替目录的是有个选项可以上传图片。

本文章由 http://www.wifidog.pro/2015/01/14/wifidog-auth-server.html 整理编辑,转载请注明出处