跳转到内容

Zoph/变更日志

来自维基教科书,开放的世界,开放的书籍

Zoph 0.9.7

[编辑 | 编辑源代码]

2018 年 1 月 20 日

我今年非常忙碌,很少有时间花在 Zoph 上,但去年 12 月,我终于找到了时间完成我最初为 0.9.6 计划的:对搜索界面和搜索引擎的完全重写。Zoph 中那部分代码大部分已有 10 多年的历史,这些年来变得相当混乱。搜索引擎确实是 Zoph 的核心:如果你在 Zoph 中打开一个相册,在幕后,Zoph 实际上执行的是对该相册中所有照片的搜索。这使得这段代码非常重要,我在进行任何更改之前,都通过自动测试(单元测试)来确保覆盖所有这些代码。

  • issue#83 对搜索页面和 Zoph 的核心功能进行完全重写,包括对 Zoph 其他部分的现代化。
  • issue#90 添加新地点时显示的错误。
  • issue#99 使用 https 时地理定位不起作用。
  • 文档更新 - 并非所有文件都使用 Github 的 Markdown 解释器正确显示。

Zoph 0.9.6

[编辑 | 编辑源代码]

2017 年 4 月 14 日

Zoph 0.9.5 与 MySQL 中的一个重大更改相吻合,该更改导致 Zoph 和其他开源项目中出现许多错误。MySQL 改变了他们处理查询的方式,使他们能够更严格地处理查询。更糟糕的是,MariaDB 没有进行这个更改,所以一开始我无法重现问题。由于工作量很大,我决定推迟 0.9.6 计划的开发,并将此版本作为仅修复错误的版本。在这个版本中,我包含了 Pontus Fröding 的一些错误修复,这真的太好了,感谢 Pontus!

  • issue#86 修复了 0.9.5 升级说明中的遗漏。
  • issue#87 添加或编辑时有关未找到类的错误。
  • issue#88 针对 MySQL 5.7 兼容性的更改。
    • 为时间戳提供默认值。
    • 添加了 MySQL 5.7 与 SELECT DISTINCT .. ORDER BY 兼容性所需字段。
    • 为自动覆盖查询添加 "ORDER BY" 字段。
    • 针对 MySQL 5.7 兼容性的更多更改。
    • 更新了 SQL 脚本。
    • 从数据库中删除了未使用的字段。
  • issue#91 将 PHPUnit 类更改为命名空间类命名。
  • 修复了导致单元测试提交失败的单元测试问题。
  • Pull request#94 在 edit_person 中为模板 showJSwarning 添加命名空间 (由 Pontus Fröding 完成)。
  • Pull request#95 在另外两个地方添加模板命名空间 (由 Pontus Fröding 完成)。
  • issue#92 修复了数据库连接到 utf-8 的问题。
  • issue#93 Pull request#95 使用页面集时修复 "找不到类 pager" 的问题 (由 Pontus Fröding 完成)。


  • 对回溯打印进行了一些修改,以简化调试。
  • 将相册视图移入模板。
  • issue#89 更改了照片页面上“下一个”和“上一个”按钮的外观,并增加了操作链接的大小。
  • 小的样式更改。

Zoph 0.9.5

[编辑 | 编辑源代码]

2017 年 2 月 4 日

Zoph 0.9.5 是新的稳定版本。建议每个人都升级到这个版本。

  • issue#68 从 Mapstraction 更改为 Leaflet 作为映射抽象 - 支持 Google Maps、OpenStreetMap 和 MapBox (OpenStreetMap)。
    此代码基于 Jason (@JiCiT) 提供的代码。
  • issue#80 现在你可以从相册屏幕编辑权限,而无需转到组编辑。
  • issue#82 如果找不到照片,Zoph 现在会显示适当的错误消息。
  • 修复了在某些情况下管理员可能会无意中删除相册的错误。
  • 许多内部更改以迁移到 MVC 架构。
  • Zoph 的几个部分被移入模板。
  • 添加了更多单元测试 - 自动测试 Zoph。

Zoph 0.9.4

[编辑 | 编辑源代码]

2016 年 9 月 18 日

Zoph 0.9.4 是新的稳定版本。建议每个人都升级到这个版本。

  • 地理编码:Zoph 现在也搜索维基百科。
  • issue#67 更改了颜色方案定义以使用一个友好的界面来选择颜色。
  • issue#23 管理员用户现在可以为新用户定义默认的首选项。
  • issue#24 添加了一个选项,用于自动将权限传播到新创建的相册。
  • issue#78 删除了 Yahoo 和 Cloudmade 映射,因为他们不再向公众提供服务。
  • issue#78 删除了 Openlayers 映射,因为 Zoph 的实现有错误,并且不再起作用。
  • issue#47 照片现在可以从磁盘中删除 (移动到垃圾箱目录)。
  • issue#67 添加了一些新的颜色方案。
  • 修复了编辑组访问权限时相册下拉列表出现问题。
  • 修复了圆圈页面有时会报告未找到$title的问题
  • 修复了圆圈页面更改视图的问题
  • 修复了在使用配置页面时导致 Firefox 出现错误的问题
  • 修复了时间和评分的可折叠细节
  • issue#78 修复了管理员用户有时无法查看人员或地点的问题

其他改进

[编辑 | 编辑源代码]
  • issue#77Thomas Weiland 完成的德语翻译中包含大量修复
  • 将组显示移至模板
  • 将组删除(确认)移至模板
  • 将组编辑移至模板
  • issue#79 修改递归创建目录,使 Zoph 能够在 open_basedir 环境中运行。
  • issue#66 清理 CSS
  • 对 Zoph 的外观进行了一些现代化改造
  • issue#85 修改了导入过程,以显示更清晰的错误消息
  • 添加了重置 CSS
  • issue#81 文档更新
  • 对单元测试进行了一些修复
  • 新增测试
  • 将 group_permissions 类重构为 permissions 类
  • 重构 prefs 类
  • 将首选项页面移至模板
  • 修改 prefs 模板以使用标签而不是定义列表

Zoph 0.9.3

[编辑 | 编辑源代码]

2016 年 6 月 10 日

Zoph 0.9.3 是新的稳定版本。建议所有人升级到此版本

  • issue#72 Zoph 现在拥有新的登录屏幕
    登录屏幕具有背景照片。其中两张已包含在 Zoph 中。您可以在templates/default/images/backgrounds/中放置您自己的背景。或者,您可以在(配置屏幕上)定义一个专辑,从中将图像用作背景图像。Zoph 将显示随机图像作为背景。
  • issue#76 登录屏幕现在会显示有关用户名和/或密码错误的消息,而不是简单地返回到同一个屏幕
  • issue#75 Zoph 现在使用 PHP 的密码哈希算法,而不是 MySQL 的。
    这包括为每个密码添加一个随机“盐”。这将使解密您的密码变得更加困难,即使您的数据库落入错误手中。用户登录后,旧的哈希值将立即更新为新的哈希值。Zoph 将继续支持旧的密码哈希值,至少到 v0.9.5。
  • issue#26 现在可以定义 cookie 过期时间。在 Zoph 的早期版本中,用户在关闭浏览器时将被注销。现在,可以将时间延长至 1 小时、4 小时、8 小时、1 天、1 周或 1 个月。这意味着用户在此期间无需重新登录,即使在浏览器关闭的情况下也是如此。这可能非常方便,但这可能意味着用户在公共电脑上登录 Zoph 后离开。因此,默认值仍然是“会话”,这意味着用户在关闭浏览器时将被注销。
  • “新建”页面现在会显示在面包屑中
  • 现在,可以向用户授予“查看所有照片”访问权限。这意味着您可以向用户授予所有照片的访问权限,而无需授予他/她管理员权限,也无需在添加专辑时更新用户权限。
  • issue#22 现在,可以允许用户创建专辑、类别、人员、圆圈和地点。用户自动拥有将照片放置到他/她创建的专辑、类别、人员、圆圈和地点中的访问权限。
  • issue#21现在,可以允许用户删除照片。用户必须至少对包含照片的一个专辑具有“写入”访问权限。
  • 删除 zoph.php 上链接中的丑陋尾随空格
  • issue#73 修复了共享功能
  • issue#74 修复了加拿大英语、荷兰语和德语翻译文件

其他改进

[编辑 | 编辑源代码]
  • 添加了一种方法,可以在配置页面上根据另一个配置项的状态禁用设置。(这是因为照片专辑作为登录背景依赖于共享功能的启用)。
  • 将用户页面移至模板
  • 将表单移至单独的类
  • 对地点和类别页面进行了一些清理
  • 重构操作链接的 HTML
  • 修改 createTestData 脚本,使其仅需输入一次密码
  • 重新排列单元测试的顺序
  • 添加了德语、加拿大英语和荷兰语的翻译

Zoph 0.9.2

[编辑 | 编辑源代码]

2016 年 4 月 1 日

Zoph 0.9.2 是新的稳定版本。我决定放弃“稳定”和“不稳定”或“功能”版本之间的区别。这意味着建议所有人升级到此版本。

  • issue#44 添加了“圆圈”:一种在 Zoph 中对人员进行分组的方式。如果您在 Zoph 中有大量人员,而“人员”页面变得混乱或杂乱,则此功能尤其有用。
  • issue#46 可以隐藏圆圈及其成员,以便您可以在概览页面中隐藏仅为一小部分照片添加的人员。
  • issue#20 Zoph 已切换到 PDO 类进行数据库访问。这确保了与未来 PHP 的兼容性,因为旧的 mysql 库将很快被弃用。
  • issue#32 现在,可以从 Web 导入设置照片的更多属性,包括地图缩放比例。
  • issue#60 “下一步”和“上一步”以及页码的链接文本已增大,以提高可用性,尤其是在移动设备上。
  • 添加了一个用于修复文件名大小写(由 Jason Taylor 完成)的脚本
  • 通过 https 访问 Google 地图(Jason Taylor)
  • 从本版本开始,语言文件位于 php 目录中,不再需要单独复制或移动
  • issue#49 Zoph 现在支持 MySQL 严格模式
  • issue#55 自动完成对人员不起作用
  • issue#58 无法更改专辑和类别的排序顺序
  • CLI:修复了 Zoph 在 CLI 中存在双空格时尝试导入到当前目录的问题
  • 在导入过程中更好地处理文件未找到的问题
  • 修复了导致地图无法显示的两个错误
  • 修复了面包屑在某些情况下无法正确删除的问题
  • 更改了 Exception 类的错误扩展名
  • 修复了非管理员用户的登录时间过慢问题
  • 提高了人员页面上的性能
  • 修复:Google 地图上缺少缩放按钮
  • 从导入中删除重复文件(如果您在 CLI 导入中两次指定同一个文件,则会收到错误,现在已过滤掉该错误)
  • 修复了添加用户页面上的人员下拉菜单显示为空的问题
  • 删除用户时,将其从组中删除
  • 修复了地点页面上的未知变量警告
  • 允许在创建地图标记时在地名中使用撇号(Jason Taylor)
  • 创建了一个全新的查询构建器
  • 现在,Zoph 的更多部分可以(并且正在)进行自动测试,这将提高整体质量并减少错误
  • Zoph 的许多部分已经过清理,以使代码现代化,使其符合 PHP 的当前状态 - 放弃对 PHP 5.3 和 5.4 的兼容性
  • 放弃对 MSIE6/7 的兼容性
  • 在 Zoph 的源代码的许多部分添加了文档
  • 对源代码的可读性进行了许多更改,例如更一致地使用空格
  • 添加了一些调试功能,以便在出现问题时更轻松地进行故障排除
  • 更改日志记录,以便在设置为 log::NONE 时显示更少的日志记录。
  • 将所有 self:: 引用更改为 static:: 引用。
  • 为许多方法添加了函数范围。
  • 开始使用命名空间来更好地组织类。
  • 更新了 REQUIREMENTS 自述文件中的版本号。
  • issue#8 (部分)更改 Zoph 的几个部分以使用模板。
  • 对模板系统进行了改进。
  • 出于性能原因,将照片访问权限查询修改为视图。
  • 更改日志记录,以便可以将 SQL 查询日志记录到文件而无需显示。
  • 对地点页面进行了性能改进。
  • 添加了调试查询(包括参数)的功能。

Zoph 0.9.1

[编辑 | 编辑源代码]

2014 年 2 月 21 日

Zoph 0.9.1 是 Zoph 0.9 的第一个功能版本,它展示了 Zoph 0.10 中一些新功能的预览。最重要的更改是将大多数配置项从config.inc.php移动到 Web GUI 中。

  • issue#28 通过 webinterface 配置 commit (jeroenrnl)
  • 删除了缩略图功能下的显示描述 commit (jeroenrnl)
  • 删除了 MIXED_THUMBNAILS 和 THUMB_EXTENSION 设置 commit (jeroenrnl)
  • 删除了 DEFAULT_SHOW_ALL 设置 commit (jeroenrnl)
  • 删除了 LANG_DIR 配置项 commit (jeroenrnl)
  • 稍微更改了 <input> 字段的外观 commit (jeroenrnl)
  • 删除了备用密码验证器 commit (jeroenrnl)
  • 删除了对 PHP 5.1 的检查 commit (jeroenrnl)
  • 添加了 CLI 对配置的支持 commit (jeroenrnl)
  • issue#7 添加了一个 favicon commit (jeroenrnl)
  • issue#18 在批量编辑页面上添加了“返回”链接 commit (jeroenrnl)
  • 添加了一个脚本将配置迁移到新的基于数据库的系统 commit (jeroenrnl)
  • issue#8 从 webinterface 中选择模板 commit (jeroenrnl)
  • 删除了 MAX_CRUMBS commit (jeroenrnl)
  • 简化了 CLI 代码并修复了 --autoadd 中的错误 commit (jeroenrnl)
  • issue#34 照片页面上行和列互换 commit (jeroenrnl)
  • issue#36 Webimporter 不会导入描述 commit (jeroenrnl)
  • issue#37 无法使用鼠标在地图上添加位置 commit (jeroenrnl)
  • 修复了一个错误,该错误导致在某些(罕见)情况下,EXIF 信息错误地报告光圈。 commit (jeroenrnl)
  • 严格标准警告 commit (jeroenrnl)
  • issue#45 HTML 标签内的分页符会导致浏览器渲染错误 commit (jeroenrnl)
  • issue#45 在 zophTable 中添加了 selectArray 缓存 commit (jeroenrnl)
  • issue#48 在导入期间修复照片评分 commit (jeroenrnl)
  • issue#50 Geonames 项目已更改 URL 并需要用户名 commit (jeroenrnl)
  • issue#51 修复了自动更正关闭时树显示中的深度 commit (jeroenrnl)
  • issue#39 添加了对 session.upload_progress 的支持,作为 APC 的替代方案(PHP 5.4 兼容性) commit (jeroenrnl)
  • issue#38 CLI 在查找摄影师时尝试查找上一个参数的值 commit (jeroenrnl)

我在 Zoph 的“内部”进行了相当多的改进。我重构了 Zoph 的许多部分,以创建更干净、更少重复且更强大的代码。我已经引入了单元测试(导致 Zoph 约 20% 的源代码现在通过自动化测试完全测试以发现错误)。作为帮助,我现在使用 Sonar 自动运行这些测试,并分析 Zoph 代码以寻找其他问题。

  • issue#29 创建 Zoph 单元测试的第一步 commit (Jeroen Roos)
  • Sonar 支持 commit (jeroenrnl)
  • 重构映射实现的 PHP 部分 commit (jeroenrnl)
  • 将时区相关的全局函数移入类 commit (jeroenrnl)
  • TimeZone 对象改进 commit (jeroenrnl)
  • 照片页面上调用模板的方式略有更改(完整页面模板现在是“模板”,而部分页面是“块”) commit (jeroenrnl)
  • 重构 htmlMimeMail.php commit (jeroenrnl)
  • 重构 Mail_mimePart commit (jeroenrnl)
  • 重构注释照片、水印照片、image.php commit (jeroenrnl)
  • 完成了 MIME 类的重构 commit (jeroenrnl)
  • 重构相册、类别、地点、人物、照片 commit (jeroenrnl)
  • 重构:getEditArray() + 单元测试 commit (jeroenrnl)
  • 进一步重构照片、相册、人物、地点、类别 commit commit (jeroenrnl)
  • 重构:将评分从照片对象中移出 commit commit (jeroenrnl)
  • 重构:将关系从照片对象移到新的 photoRelations 对象 commit (jeroenrnl)
  • 重构:照片对象 commit (jeroenrnl)
  • 摆脱了将 session_id 添加到 URL commit (jeroenrnl)
  • 将内部数据库引用修改为静态 commit (jeroenrnl)
  • 从 require 和 include 语句中删除了方括号 commit (jeroenrnl)
  • 将 die() 替换为异常 commit (jeroenrnl)
  • 将对象中的 self 引用更改为使用 self:: commit (jeroenrnl)
  • 删除了未使用的类 smtp commit (jeroenrnl)
  • 使自动加载更加健壮 commit (jeroenrnl)
  • 更改自动加载,使其在单元测试中也能正常工作。 commit (jeroenrnl)
  • 删除未使用的 RFC822 类 commit (jeroenrnl)
  • 将 mailMimePart.inc.php 中的换行符更改为 Unix 风格 commit (jeroenrnl)
  • 删除了各种未使用的变量 commit (jeroenrnl)
  • 删除了重复的模板 commit (jeroenrnl)
  • 删除了 createPulldown() 调用中未使用的 $user。 commit (jeroenrnl)
  • 修改了一些查询以提高性能 commit (jeroenrnl)

Zoph 0.9.0.1

[编辑 | 编辑源代码]

2012 年 10 月 18 日

Zoph 0.9.0.1 是 Zoph 0.9 的第一个维护版本。它增加了与 MySQL 5.4.4 及更高版本和 PHP 5.4 支持的兼容性。修复了几个错误。

  • issue#1 将 TYPE=MyISAM 更改为 ENGINE=MyISAM 以实现与 MySQL > 5.4.4 的兼容性 commit (jeroenrnl)
  • issue#2 将 timestamp(14) 更改为 timestamp commit (jeroenrnl)
  • issue#3 删除了 PHP 5.4 兼容性的按引用传递 commit (jeroenrnl)
  • issue#6 缺少法语翻译 commit (jeroenrnl)
  • issue#30 删除有关未定义变量的警告 commit commit commit (jeroenrnl)
  • issue#1 已修复:PHP Notice: Array to string conversion commit (jeroenrnl)
  • issue#31 修复了地理标记代码中的几个错误 commit (jeroenrnl)
  • issue#33 已修复:旋转失败时没有错误消息 commit (jeroenrnl)
  • 修复了首选项页面上的一个小布局问题 commit (jeroenrnl)

旧版本

[编辑 | 编辑源代码]
华夏公益教科书