一个 Plone 页面验证器
项目描述
验证工具
介绍
ValidationTool 是 Plone 3 的网络验证器。它验证我们想要的 plone 站点的所有页面。这个包是一个基础工具,它设置了一些选项字段,需要插件包来进行有效的验证。每个插件都允许设置不同类型的验证(如 Css、xhtml Strict 或 Transitional)。
每个包都有一些测试,也翻译成意大利语。
base-tool是一个安装产品,插件只需放在“src”目录下并在buiildout.cfg中注册即可。
验证日志可以存储在单独的日志中。要保存到单独的日志中,您需要使用日志文件的路径将名为 VALIDATOR_LOG_FILE 的环境变量设置到 buidout.cfg 的实例部分。(例如:/opt/validator.buildout/val/log/validator.log)
可以将名为 VALIDATOR_PORTAL_URL 的环境变量设置到 buildout.cfg 的实例部分。在创建我们的验证报告期间,此 var 用作门户的 url。如果我们必须直接从服务器调用验证,例如 wget,并且 url 包含“localhost”和实例端口,则 var 很有用。
使用快速安装程序安装软件包后,您可以在站点设置->其他产品中查看并设置其字段。如果您单击它,您将进入一个页面,该页面允许我们查看验证报告列表,或配置我们的工具。
如果页面属于所选类型,也可以通过单击底部的“validate XHTML some_validator”链接来验证单个页面。
另一个功能是远程验证。它允许使用“url_of_the_site/remote_validator”对站点进行验证。例如,如果您想使用“cron”之类的 probrams 安排定期验证,则可以使用此功能。
内容
在配置页面中有以下字段,分为 3 个部分:
配置:
验证类型:一个选择字段,用于设置集成验证的验证器类型
Validator url:可以设置要使用的 w3c 验证器的 url 的文本字段。例如官方 w3c 验证器,或具有 w3c 源的本地验证器
睡眠间隔:设置每个验证调用之间的延迟
启用集成验证代码:启用允许验证单个页面的选项
验证:
验证类型:用于设置门户验证的验证器类型的选择字段
要验证的门户类型:一个多选字段,列出要验证的所有可用门户类型
Review states to validate: 一个多选字段,列出要验证的评论状态
匿名验证:如果选中此控件,该工具会像匿名用户视图一样获取 html 的页面代码
上次修改后的最大天数:上次修改内容后的最大天数。保留 0 以忽略过滤器
创建报表文档:在一个名为“ATReport”的特殊文档对象中创建报表
创建文件文档:在 .txt 文件中创建报告。此文件比 ATReport 轻
将报告发送到电子邮件地址:如果您想通过电子邮件发送报告,请选择该字段
收货地址:发送报告的地址列表
调试:
要验证的门户类型:一个多选字段,列出要调试的所有可用门户类型
将报告发送到电子邮件地址:如果您想通过电子邮件发送报告,请选择该字段
收货地址:发送报告的地址列表
代理人:
代理地址
代理端口
代理用户标识
代理密码
然后您可以保存选项、取消更改、保存并运行验证/调试或转到报告页面。
每次验证站点时,都会创建一个包含验证结果的报告页面并将其存储在工具中,如果需要,它还会通过电子邮件发送给您。
添加新的验证器
要创建新的验证器,您必须执行以下步骤:
使用“paster create -t nested_namespacecollective.validator.type_to_validate”创建一个鸡蛋。
在collective.validator.your_validator/collective/validator/your_validator/应该是以下文件:
configure.zcml 使用以下字符串:<adapter factory=".adapter.class_name_of_the_adapter" />。
扩展“Parser”类的adapter.py,实现“Iadapter_name”接口并适配“IVTPLone”接口。它应该有 “val_url” 和 “val_type” 字符串,其中包含验证器 url 和您想要使用的验证器类型(看看我是如何在其他适配器中编写的)。那么它应该有一个“getValidationResults”方法来建立与远程验证器的连接并调用 xml 解释器。搜索所选页面的“runValidation”方法,为每个页面调用“getValidationResults”并创建报告“runDebugValidation”方法,尝试验证替代视图,如编辑和新闻。返回 url 和类型值的“getValidatorUrl”和“getValidatorType”方法
interfaces 文件夹,其中包含定义适配器类的 init.py 模块和 interfaces.py 文件
包含翻译文件的 i18n 文件夹
包含测试文件的测试文件夹
将此包放在 buildout 的“src”文件夹中,在 buildout.cfg 中注册,重新构建 buildout,它应该可以工作。
学分
这是一个从 Luca Fabbri 和 Mirco Angelini 开始的项目,我刚刚对其进行了修改并完成了它的功能。感谢所有帮助我完成这个项目的 RedTurtle 技术团队。
联系人
安德里亚·切奇:安德烈亚。cecchi @ redturtle 。网
米尔科·安吉里尼:米尔科。安吉里尼@redturtle 。 _ 网
卢卡法布里:卢卡。法布里@redturtle 。_ 网
变更日志
2.2.1 (2012-12-20)
修复了卸载配置文件 [micecchi]
添加了自动包含 [micecchi]
2.2.0 (2011/07/28)
与克隆 4 的兼容性
创建报告页面时的编码错误修复
2.1.0 (2011/01/20)
添加了环境变量的加载以用作门户的 url
2.0.0 (2010/10/12)
在工具中添加了“validator_url”和“validator_sleep”字段。现在用户还可以设置不同的验证器 url,以及每次验证调用之间的延迟。
一些错误修复
添加了“匿名验证”以允许验证匿名视图等页面
如果在 buildout 中设置了 environment-vars,则为验证器创建一个单独的日志
1.0.5 (2009/09/17)
在工具中创建字段以创建更轻的报告页面
1.0.4 (2009/09/07)
修复了一些带有警告的错误
在工具中创建字段来配置代理连接
1.0.3 (2009/03/07)
修复了一些错误并为计划验证创建了第二个视图
为动作插入一个图标
1.0.2
修复了 unicode 错误
1.0.1
更改工作流程和设置配置
1.0.0
首次进口