CalendarX 是一个可定制的开源元日历应用程序,专为 Zope 和 Python 之上的 Plone 内容管理系统编写。
项目描述
简介
Products.CalendarX 是 Plone 的一个插件,可以在月视图、周视图和日视图中显示事件。还包括各种语言的本地化。
其他类似插件
源代码和问题追踪器
变更日志
1.0.4 (2012-12-07)
CalendarX早期版本中由portlet_cx_choices提供的功能已移动到Plone 4的主日历区域[aclark]
1.0.3 (2012-12-07)
修复portet_cx_choices [aclark]
1.0.2 (2012-12-06)
使portet_cx_choices小部件显示无错误(尚未支持Plone 4)[aclark]
1.0.1 (2012-11-05)
添加缺失的event_icon.gif [aclark]
删除导致install_requires失败的操作入口点 [aclark]
1.0.0 (2012-10-09)
Plone 4.1 兼容性 [miohtama, aclark, nteixeira, kteague] - 对于Plone 3.x版本使用旧版本
修复get events脚本中的错误portal_catalog查询语法 - 在P4.1上返回无结果 [miohtama]
修复月份视图链接中的URL转义问题 [miohtama]
修复getEventDictWeekbyday.py, getEventDictWeekbyhour.py中的语法错误 [miohtama]
芬兰语翻译 [miohtama]
v0.9.6(稳定版)
修复getEventsXXX脚本(所有四个,用于ZCatalog和高级查询)以正确处理选项restricToThisListOfPaths, restricToThisListOfSubjects,以及仅显示已登录创建者的事件的“显示公共/私有”链接。[lupa]
v0.9.5(稳定版)
重构文档到ReST,得到glenfant的帮助。[lupa]
v0.9.3(稳定版)
代码库:v0.9.2(稳定版)
状态:稳定发布。所有测试功能正常,跟踪器(在Plone.org)中报告了一个待解决的问题,文档中列出了一些小的显示错误/docs/TODO.txt
eggification:感谢glenfant![aclark]
v0.9.2(稳定版)
代码库:v0.9.1(开发版)
状态:稳定发布。所有测试功能正常,跟踪器(在Plone.org)中报告了一个待解决的问题,文档中列出了一些小的显示错误/docs/TODO.txt
原因:0.9分支是为了引入Plone 3兼容性。仅此而已。
错误修复:CX_props_macros.pt:PrevNextCurrentLinks中的JumpToDateWidget是硬编码到2000:2010的范围,即将结束!现在它从当前年份向前-4年,向后+6年。
错误修复:CX_props_macros.pt:eventlister, mMeventlister宏:将类默认设置为“eventPublished”而不是classstate,已修复。
错误修复:CalendarXFolder.py:将‘createObject?type_name=Event’作为createObjectOnClickCommand的默认值。
改进:CalendarXFolder.py:将以下值作为默认值添加:‘published,external,internal,internally_published’ for the listOfReviewStatesDisplayed属性。
文档:更新INSTALL.txt以包含从plone.org的SVN中提取CalendarX的buildout说明。蛋将在未来。
v0.9.1(alpha版)
代码库:v0.9.0(开发版)
状态:alpha版。所有测试功能正常,跟踪器(在Plone.org)中报告了一个待解决的问题,文档中列出了一些小的显示错误/docs/TODO.txt
原因:0.9分支是为了引入Plone 3兼容性。仅此而已。
错误修复:在显示第一个日历时(勾选了“查看全部”,但没有勾选其他任何类别),显示没有类别的(主题)事件,但之后几乎无法显示没有选择类别的的事件。这是一个旧错误。
修复:getDictCommon.py:检查请求中是否存在xsubALL并设置为“ALL” - 如果存在,则在将xsub发送到查询之前将xsub设置为“ALL”。现在默认情况下,查看全部复选框将显示没有选择类别的所有事件。要仅显示所选类别的事件,必须在所有类别都选中但查看全部未选中时单击刷新按钮。这对我来说很直观。查看全部意味着全部(包括未选择类别的那些)。
新功能:CalendarXFolder.py:添加了一个新的属性listOfSubCalendarIDs,这是正确使用子日历所必需的。
修改:CalendarXFolder.py:修复了几个错误标记的属性,并更改了一些属性的顺序,使其更接近0.6.6版本的顺序和描述。从子日历的schemata名称中删除“主题”,现在是“子日历属性”。
修改:CX_props_macros.pt:错误修复。将i18n msgid误标为label_sublinks_show_backtoresources更改为label_sublinks_backtoresources(约在475行)。
修改:CX_props_macros.pt:错误修复。将几个tal:conditions包装在span中,以消除来自python:test()使用的“tuple index out of range”错误。需要正确使用子日历。
模块:CX_props_macros.pt:在subjectlinks宏中需要大量重写才能使子日历正常工作。唉。
模块:getDictCommon.py:检查nameOfSubCalendar,如果可用,则在子日历的顶部标题中使用它而不是id。
模块:CX_props_macros.pt:修复了bug。useMultiSubjects属性工作正常,但如果您取消选中它,subjectlinks宏会出问题。已修复。
新增:CalendarXFolder.py:添加了新的属性listOfReviewStatesDisplayed,您可以在其中添加其他审阅状态(如“待处理”或“外部”),并将这些状态附加到其他状态以在您的日历中显示。
模块:getEventsBeforeZC.py、getEventsBetweenZC.py、getEventsBeforeAQ.py、getEventsBetweenAQ.py:修改了review_state查询以适应新的listOfReviewStatesDisplayed属性。
模块:CalendarXFolder.py:打字错误,修复:在添加事件链接属性模式中的memberSubfolderPath属性拼写错误,应为memberSubFolderPath。还更新了描述,指出如果没有成员主文件夹,但选择了此属性,则将默认回退到具有此名称的文件夹,但位于PORTAL ROOT中,而不是成员主文件夹中。
模块:getAddNewEventURL.py:修复了bug。现在默认没有成员主文件夹,因此调用getHomeUrl()返回None,但没有捕获此情况。现在已捕获,因此如果没有成员主文件夹,但选择了此属性,则将默认回退到具有此名称的文件夹,但位于PORTAL ROOT中,而不是成员主文件夹中。
新增:添加了i18n/calendarx-sv.po文件,由Martin Eliasson一年前贡献。我(可能非常错误地)对新的管理标签中的“管理”翻译进行了猜测,当时Martin最初将此文件发给我时,该标签尚不存在。
v0.9.0(开发版)
代码库:v0.6.6(稳定版)
状态:预alpha开发版。似乎工作正常,至少足够测试了。
原因:0.9分支是为了引入Plone 3兼容性。仅此而已。
模块:CalendarXFolder.py:在这里进行了大量重构以将其转换为Archetypes。将所有CX_props表单推入模式(这项艰苦的工作是由2007年12月PSU CalendarX Patch Sprint的成员完成的,并已作为/plone3-compatibility分支提交到集体)。我还添加了CSS属性来完成它。还修复了earlyDayEventHour属性从False更改为0的默认值,这修复了一些日历和按小时显示的错误。
模块:CX_props_macros.pt:修复了bug。国际化bug在Plone 3中出现,因为tal:content和国际化字符串一起使用会产生冲突。现在只有i18n调用(约在第472行)。
模块:weekbyhour.pt:修复了bug。发现底部天标题的国际化设置不完整,导致它们保持未国际化。第245行调用显示月份时缺少后缀“_3”。已修复。
模块:weekbyday.css:修复了bug。删除了对于TD类="hour"的CSS规则,该规则既错误又多余(在weekbyday模板中没有此类用法)。
新增:showDefaultView.py。这个简单的脚本只是将重定向到在defaultView属性中指定的视图。当您直接走向日历时使用,不添加/month、/day或任何您想要的视图。
模块:CalendarXFolder.py:添加了别名,将默认视图指向新的showDefaultView.py重定向脚本。
模块:CX_props_macros.pt:添加了一个“管理”标签,它提供了轻松访问编辑日历属性的途径。仅对具有“管理门户内容”权限的登录用户显示,该权限适用于日历实例。
模块:po文件,添加了“label_managetab” msgid和每种语言的(我的,可疑的)翻译,除了日语(我没有翻译它)。请给我更好的翻译,或者更好的是,将其检查到collective的svn中,并给我发邮件说明您已这样做。
mod: CX_props_macros.pt: 发生了变化,可能是Zope 2.10或更近期的Python版本引起的。我以前能这样做 tal:content="python:test(usesubtitles,subtitles[n-1],`subby)" 而不会评估 subtitles[n-1],除非 usesubtitles 为 True。然而,现在即使 usesubtitles 为 False,也会抛出元组索引越界错误。所以我在重新工作所有使用这种测试的 tal:content 调用。主要的已经修复,让我们再次可以使用主题栏了 :-)
待做:修复更多讨厌的元组索引错误… 我没有看到任何错误出现,但我知道代码还没有必要的检查。
待做:修复那个讨厌的鼠标悬停高亮错误
待做:在 restrictToThisListOfSubjects 中可能存在问题,其中“查看全部”类别会高亮显示所有主题,但不会显示除已选主题之外的任何主题的事件,或者如果不限制的话,会显示?请检查。
待做:找到很久以前给我的其他 po 文件,并将它们放入。别忘了“label_managetab” msgid。
待做:探索 Sprinters 添加的新 /tests。我还没有学会在 Plone 中使用测试,尽管我在今年夏天在其他系统中学过它。我会在下次学习,也许很快我们就会有针对 CalendarX 的有意义的测试套件!
项目详情
Products.CalendarX-1.0.4.zip 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 4123cd11892557545e19b71dbb649c8733d92c805271eb16d9ec79d0553a4f5d |
|
MD5 | 5f848e63c67579d0f21f8aee8eba20a2 |
|
BLAKE2b-256 | a856ff46536afbd063f0bf84a2fbcd4fedb3ec8183712037c81a7c3e91fd8459 |