客户满意度
项目描述
在网站内容上添加一个客户满意度表单(视图小部件)。
用户可以为网站上每页添加投票(正面或负面)和评论。
机器人防护
本产品使用collective.honeypot来防止机器人提交。
您只需设置两个环境变量
EXTRA_PROTECTED_ACTIONS customer-satisfaction-add
HONEYPOT_FIELD xxx
xxx应该是一个机器人需要编译的字段名。
如果您遭到黑客攻击,可以简单地更改该变量。
权限
有两个新的特定权限
rer.customersatisfaction.AddCustomerSatisfactionVote (rer.customersatisfaction: 添加客户满意度投票) 允许用户投票(默认匿名)。
rer.customersatisfaction.ManageCustomerSatisfaction (rer.customersatisfaction: 管理客户满意度) 允许重置数据(默认为管理员和网站管理员)。
rer.customersatisfaction.ShowDeletedFeedbacks (rer.customersatisfaction: 显示已删除的反馈) 允许列出已删除内容的反馈(默认为管理员和网站管理员)
rer.customersatisfaction.AccessCustomerSatisfaction (rer.customersatisfaction: 访问客户满意度) 允许用户列出他们有权限的内容的反馈(默认为编辑器、管理员和网站管理员)
反馈目录
评论存储在一个内部目录中(基于souper.plone)。
您可以通过restapi路由(见下文)或通过Plone实用程序访问/编辑数据
from zope.component import getUtility from rer.customersatisfaction.interfaces import ICustomerSatisfactionStore tool = getUtility(ICustomerSatisfactionStore)
添加投票
方法 add
参数: data(参数字典)
响应: 新记录的唯一ID
data应该是一个包含以下参数的字典
uid [必需]: Plone内容的uid
vote [必需]: 投票(应为 1 或 -1)
title: Plone内容的标题
comment: 可选评论
其他参数将被忽略。
搜索评论
方法 search
参数: query(参数字典),sort_index(默认为date),reverse(默认为False)
响应: 结果列表
query是在其中执行搜索的索引字典。
目前数据未索引,因此搜索过滤器不起作用。您只需要调用search方法来获取所有数据。
restapi路由
添加投票
@customer-satisfaction-add
POST端点,需要在网站内容上调用。
只有具有“rer.customersatisfaction.AddCustomerSatisfactionVote”权限的用户可以发布它
> curl -i -X POST http://localhost:8080/Plone/front-page/@customer-satisfaction-add -H 'Accept: application/json' -H 'Content-Type: application/json' --data-raw '{"vote": "1", "xxx": ""}' --user admin:admin
如果投票成功,响应为204。
站点列表
列出当前安装中所有站点
sites-list
GET
只有具有“zope2.ViewManagementScreens”权限的用户可以获取它
> curl -i -X POST http://localhost:8080/sites-list -H 'Accept: application/json' -H 'Content-Type: application/json' --user admin:admin
结果: [{“id”: “Plone”, “url”: “http://localhost:8080/Plone”, “title”: “Site”}]
反馈列表
有一个视图(侧边栏用户菜单中也有链接),显示所有关于反馈的信息:@@customer-satisfaction
反馈列表是根据一些权限进行筛选的。
客户满意度全局
具有zope2.ViewManagementScreens权限的用户可以在应用程序根(/)上调用@@customer-satisfaction-global视图,以查看所有站点的客户满意度报告
安装
将rer.customersatisfaction添加到buildout
[buildout] ... eggs = rer.customersatisfaction
如果您需要collective.recaptcha支持,请添加如下egg
... eggs = rer.customersatisfaction[collective_recaptcha]
然后运行bin/buildout命令。
贡献
兼容性
此产品已在Plone 5.1和5.2上进行了测试
致谢
在Regione Emilia Romagna的支持下开发;
Regione Emilia Romagna支持PloneGov倡议。
贡献者
RedTurtle Technology,sviluppo@redturtle.it
Rohberg,Katja Süss,@ksuess
Leonardo J. Caballero G.,@macagua
变更日志
2.2.6 (2024-01-12)
将自定义日期格式添加到导出的csv文件[folix-01]
扩展导出csv报告与ms. Excel的兼容性。[folix-01]
2.2.4 (2023-07-07)
在客户满意度全局视图中添加csv的转义字符。[folix-01]
2.2.3 (2023-05-25)
将导出功能添加到客户满意度全局视图。[folix-01]
添加西班牙语翻译。[macagua]
修复英语翻译。[cekk]
修复捆绑包(缺少资源)。[cekk]
2.2.2 (2023-05-11)
修复卸载配置文件(删除操作和捆绑包)。[cekk]
2.2.1 (2023-03-24)
添加客户满意度全局视图。[folix-01]
修复英语标签。[cekk]
2.2.0 (2023-03-06)
在新投票上触发内容规则事件。[ksuess]
2.1.1 (2022-12-30)
修复访问反馈视图的权限。[cekk]
2.1.0 (2022-12-15)
处理评论视图(即不中断)当内容被删除但有一些评论时。[cekk]
在可访问性和样式方面进行了一些修复。[cekk]
2.0.0 (2022-11-07)
修复翻译。[cekk]
修复python3.8兼容性(使用python操作符而不是CQE)(https://github.com/repoze/repoze.catalog/issues/13)。[cekk]
在布局方面进行了一些修复。[cekk]
不使用recaptcha,而使用honey pot来防止机器人。[cekk]
从标签中移除role="radio"以提高可访问性。[cekk]
1.2.0 (2022-07-06)
添加一个标志以禁用验证码验证。[cekk]
1.1.2 (2021-12-27)
如果未安装collective.recaptcha,则不会中断视图。[cekk]
1.1.1 (2021-12-02)
修复python要求。[cekk]
1.1.0 (2021-10-22)
A11y修复[nzambello]
有条件使用collective.recaptcha。[cekk]
1.0.0 (2021-08-19)
初始发布。[cekk]
项目详情
rer.customersatisfaction-2.2.6.tar.gz的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | b8f95e796c5ca6f773a43e7bc6331a61aa97030ec38ed8d729e6ca7ebf3e2987 |
|
MD5 | 08b5f5a597389102b0aac5ca087c2618 |
|
BLAKE2b-256 | 36cbc5b6ac8ababf0dae301c15f7862389f87b578f74994f30adb5db2744bc97 |
评论列表
具有rer.customersatisfaction.AccessCustomerSatisfaction权限的用户可以在内容上调用@@show-feedbacks视图,以查看反馈和评论的详细列表。