跳转到主要内容

Adam Shaw FullCalendar在Plone中的完整实现。

项目描述

Solgema.fullcalendar 软件包说明

https://secure.travis-ci.org/collective/Solgema.fullcalendar.png?branch=master https://coveralls.io/repos/collective/Solgema.fullcalendar/badge.png?branch=master

概述

Solgema.fullcalendar 是将 Adam Shaw Fullcalendar 完全集成到 Plone 中的实现。

此日历允许您在强大的 Ajax 计划中显示事件类型对象。您还可以通过日历使用强大的 AJAX 框架添加、编辑和更一般地管理您的事件。

日历是一个您可以选择在集合、文件夹或事件上的视图。该视图的名称为 solgemafullcalendar_view。之后,一个新的对象操作允许您设置日历的基本参数。

在集合上,日历显示由集合及其标准搜索的事件。

在文件夹上,日历显示包含在文件夹本身或子文件夹中的事件,如果它们在日历属性中选择。

除了日历外,还有一个小的查询表单,您可以在日历底部显示以选择您想要显示的事件。此查询表单中的字段来自集合标准或文件夹的子文件夹。

作为开发者,您可以将事件源添加到默认事件源。您只需定义具有命名 IEventSource 适配器,每个适配器都提供一个列表,该列表包含由 fullcalendar.js API 需要的字典。您还可以通过为特定上下文或层提供一个未命名的 IEventSource 适配器来替换默认事件源。

Plone < 4.3 的安装说明

在您的 buildout.cfg 的版本部分添加此行

[versions]
...
collective.js.jqueryui = <1.9

Plone 3.x 的安装说明

在您的 buildout.cfg 的 eggs 部分添加此行

eggs=
    ...
    collective.js.jqueryui<1.8

您还必须固定 plone.app.z3cform 的版本

[versions]
z3c.form = 1.9.0
zope.i18n = 3.4.0
zope.testing = 3.4.0
zope.component = 3.4.0
zope.securitypolicy = 3.4.0
zope.app.zcmlfiles = 3.4.3
plone.app.z3cform = 0.4.6
collective.js.jqueryui = 1.7.2.7

自定义皮肤

您可以轻松自定义日历皮肤

转到 https://jqueryui.jqueryjs.cn 并单击“主题”选项卡。在那里您可以创建或选择现有的主题。之后,通过仅选择:所有 UI 核心组件,所有 UI 交互和对话框中的 UI 小部件,将其下载到您的计算机。解压缩并复制 css 文件以及所有图像到您的 portal_skins/custom 文件夹

您还可以尝试 collective.jqueryuithememanager

源代码

源代码在 GNU 通用公共许可证(GPL,见 docs/LICENSE.txt)下。它位于 github 上的 collective git 仓库,欢迎贡献力量。

变更日志

2.3.6 (2016-04-05)

  • 修复缺失导入(从 plone.app.querystring 导入 queryparser)[bsuttor]

2.3.5 (2016-03-04)

  • 添加新的 Dexterity 文件夹视图,继承自 FolderView(plone.app.contenttypes.browser.folder)。[bsuttor]

  • 添加了生成器类型以检查可迭代性。[fsprenger]

  • 修复了转换 DX 查询和子文件夹的问题[kroman0]

2.3.4 (2014-08-08)

  • 修复从 plone.app.contenttypes 项目中添加和编辑事件(在分支 1.1.x 中测试)[pbauer]

  • 修复与最新的 p.a.contenttypes 一起工作,其中集合是行为[pbauer]

  • 在安装时不要假设类型是存档类型,而是扩展现有类型[pbauer]

  • 增加了机器人框架。增加了通用关键词。开始在测试文件夹、集合。 [sgeulette, anuyens]

  • solgemafullcalendar.js是从portal_url获取的,而不是从context url获取的 [thomasdesvenain]

  • 生成添加事件视图的更稳健的方法。 [thomasdesvenain]

  • 放回之前删除的代码。目标文件夹在文件夹上也有意义。修正undefined self.portal。 [sgeulette]

  • 修复从集合查询接收到的空值问题 #20 [laulaz]

  • 为问题 #31 添加所有浏览器视图和视图小部件。 [laulaz]

  • 添加createcoverage [sgeulette]

  • 改进jquery选择器,使其更精确,并修复问题 #34 和 #35 [ferewuz]

  • 添加对意大利日期格式的支持 [cekk]

2.3.3 (2014-02-05)

  • 在轻量级事件视图中修复i18n问题。 [thomasdesvenain]

  • 法语文本翻译。 [thomasdesvenain]

2.3.2 (2013-11-01)

  • 添加巴西葡萄牙语翻译。 [cleberjsantos]

  • 修复回归问题:从版本98af7649f04a74673ca83678073d56c8bb609243: zcml:condition 条件对 plone.app.contentypes 已损坏。据我所知,zcml:condition 只在包级别上匹配,不在类级别上匹配:它无法在类级别上获得控制权。因此,我认为只需在 plone.app.contenttypes 上匹配就足够了;如果不匹配,我们需要不同的方法;现在一切正常工作。 [jensens]

2.3.1 (2013-08-23)

  • Solgema.fullcalendar.browser.adapters.get_recurring_events 中使用 plone.event.utils.pydtIRecurrenceSupport.occurrences 总是期望 datetime.datetime。 [rnix]

  • 在未提供 jquery-integration.js 的 plone 网站中定义 JS 中的 jq 变量。 [rnix]

  • 修复导入错误时的回退接口。它们不能只是 Interface。 [rnix]

2.3 (2013-07-09)

  • 允许通过日历右键点击添加多于一种类型的项。 [fmoret]

  • 修复了当安装了plone.app.contenttypes但没有Dexterity时的问题。 [fmoret]

  • 修复了重复事件(使用datetime而不是DateTime)[pbauer]

  • 修复了基于标准选择事件的问题(适用于集合(AT和DX))[pbauer]

  • 添加对plone.app.contenttypes中的DX-Folders的支持。(这应该更通用,以支持所有基于DX的文件夹)[pbauer]

  • 添加对DX-Collections(来自plone.app.contenttypes)的支持 [pbauer]

  • 为主题添加了特定表单 [fmoret]

  • 仅当fullcalendar是上下文的默认视图或调用上下文的@@solgemafullcalendar_view时才显示“日历属性”对象选项卡。 [thet]

  • 在adapters.py中检查事件是否可以与IRecurrenceSupport兼容。 [fmoret]

2.2.1 (2013-05-22)

  • 添加check-manifest支持以帮助修复损坏的发布版本。 [gotcha]

2.2 (2013-04-11)

  • 代码库清理。 [thet]

  • 现在使用javascript表示法传递“month”url参数,而不是使用jan=1和dec=12。 [thet]

  • 删除在本开发周期内引入的“sfyear”,“sfmonth”和“sfday”url参数,并允许将“year”,“month”,“day”和“date”(这是一个isoformat日期)url参数传递给Solgema视图。 [thet]

  • 使查询源的标签也可点击 [fRiSi]

  • 支持自定义文件夹和事件类型。

    允许所有实现 Products.ATContentTypes.interfaces.folder.IATFolder 的对象作为子文件夹

    在日历设置中为通过日历添加的事件配置portal_type [fRiSi]

  • 修复了用户在文件夹的文件夹查询表单中选择要显示的子文件夹后,在 folder/subfolder-a/solgemafullcalendar_view 上没有显示事件的问题(如果子文件夹-a在文件夹的availableSubFolders中)[fRiSi]

  • 为nl语言添加格式化 [smoussiaux]

  • 修复了在尝试销毁未初始化的对话框时出现的javascript错误。 [fmoret]

  • 修复了在添加/编辑表单中验证错误后滚动条被阻止的问题。注意:整个编辑弹出窗口非常丑陋。需要进行重构。 [thet, jensens]

  • 默认显示当前月份而不是下个月。在JavaScript中,第一月,即一月,从0开始,十二月是11。 [thet]

  • 修复基于ATContentType的ATEvent类型的events dict,以便它们再次显示。 [thet]

  • 在显示表单加载后触发事件。因此,可以为加载的代码重新绑定事件。[jensens]

  • 将IListBaseQueryTopicCriteria重命名为更通用的IListBaseQueryCriteria,包括BBB。这避免了混淆。进行了一些PEP8fying。[jensens]

  • 启用新风格集合的ical导出。[jensens]

  • portal_type在事件源中作为主题标准工作,没有问题。[seanupton]

  • 相应地处理仅操作符的查询字符串。[thet]

  • 允许通过请求参数选择初始视图。[rnix]

  • 修复了调用具有json内容的ajax页面(与Diazo兼容)。[fmoret]

  • 修复了日历导航按钮切换并添加了过渡。[thomasdesvenain]

  • 更正了plone.app.event iCalendar导出的输出,以避免嵌套VCALENDAR块,而是将1..* VEVENT块包装在一个VCALENDAR中。[seanupton]

  • 将ICS导出行结束规范化为符合RFC 5545要求(与ATCT的做法一致,但使用一个可以支持源文本中可能混合或不一致的行结束的函数)。[seanupton]

  • 拖放支持基于dexterity的plone.app.event类型。[seanupton]

  • plone.app.event Dexterity类型兼容性。
    • 条件支持覆盖事件显示。

    • iframe(快速)添加表单支持。

    • iframe编辑支持。

    • 拖放调整持续时间。

    • 全天事件索引器使用IEventAccessor适配器。

    • 支持离散时间和全天事件的拖放。

    • 添加菜单支持和事件复制/粘贴兼容性。

    • 使用get_uid()支持基于plone.uuid的UID。

    [seanupton]

  • 在两个视图模块中相同地定义了getCopyObjectsUID(),已去重。[seanupton]

  • 视图适配器使用从browser.actions的UID获取器(get_uid)间接访问,支持访问器(AT)或属性(dexterity)获取上下文上的开始/结束值,并将所有内容都转换为DateTime(可能来自datetime.datetime,例如基于plone.app.event的类型)。为plone.event.interfaces.IEvent添加了条件适配器注册到SolgemaFullcalendarEventDict。[seanupton]

  • 在视图弹出窗口中显示对象操作链接,提供在新窗口/标签页目标中链接到事件操作的能力,而无需强制使用上下文菜单。[seanupton]

  • 为基于dexterity的plone.app.event类型添加表单中的查询字符串中的表单小部件名称(每个相应日期时间字段的分钟输入)[seanupton]

  • 条件支持plone.uuid / plone.app.uuid,具有向后兼容性回退。当可用时使用IUUID查找项目的UID。添加了utils.py。[seanupton]

  • 当plone.app.event既可导入又作为站点产品安装时,显示消息表明浏览器调整事件为本地时间。[seanupton]

  • SFDisplayAddMenu JSON输出在portal_types中找到的第一个Type名称的portal_type,对于plone.app.event+Dexterity支持将是必要的。[seanupton]

  • 用依赖于plone.formwidget.contenttree的搜索目标文件夹选择小部件替换基于搜索的目标文件夹选择小部件 – 使浏览目标文件夹更直观,还添加了包和配置文件依赖。[seanupton]

  • 恢复与plone.app.event和重复事件的兼容性。[thet]

  • 修复了当CriteriaItems为False时的错误[jensens, benniboy]

  • 针对archetypes.querywidget错误的解决方案,请参阅:[jensens, benniboy]

  • 添加了plone.app.collection兼容性。[timo]

2.1.2 (2012-08-22)

  • 添加了与plone.app.collection兼容的适配器和视图。[fmoret]

  • 修复了议程中事件拖放的错误。[fmoret]

2.1.1 (2012-06-06)

  • 修复了适配器和动作中的一些错误(添加事件时的“KeyError: Type”和在工作流转换时的“ComponentLookupError”)[fmoret]

2.1.0 (2012-05-15)

  • 为文件夹添加了fullcalendar_view。该视图显示文件夹中的事件或使用每个子文件夹作为源。[fmoret]

  • 增加了将Google日历源添加到fullcalendar的功能,除了Plone标准源。[fmoret]

  • 添加了日历小部件,可以轻松更改fullcalendar日期。[fmoret]

  • 恢复了Plone 3.3.x的兼容性。[fmoret]

  • 添加了DaySplit视图,根据所选集合标准显示单独的列中的事件。[fmoret]

  • 使用eventSources代替events获取事件。将事件的颜色属性委托给fullcalendar。[fmoret]

  • 修复了IE中弹出窗口添加事件时iframe的高度。[pbauer]

  • 创建了新版本2.1.0,因为fullcalendar将不再与Plone 4.x兼容。[fmoret]

2.0.3 (2012-04-12)

  • 修复了SolgemaFullcalendarEventJS的__init__方法中的无限递归错误。[pbauer]

  • 修复了在安装了plone.app.event的集合上的ical导出。[vincentfretin]

  • 防止所有页面变得不可缓存。SolgemaFullcalendarActionGuards错误地从BaseActionView继承,它设置了“Pragma: no-cache”。[weberlar]

  • 修复了粘贴事件功能的许多问题。[thomasdesvenain]

  • 使用适配器支持重复。[thomasdesvenain]

  • 还添加了solgemafullcalendar_view用于事件。这对于有大量重复事件的重复事件非常有用。[fmoret]

  • 将z3c.autoinclude添加到目标Plone中。不再需要在buildout中包含zcml。[toutpt]

  • 在主题查询中检查portal_type(不仅仅是‘Type’)。[jcbrand]

  • 关闭添加/编辑事件对话框后隐藏旋转器。[jcbrand]

  • 添加zcml浏览器:menuItem条目以给动态视图一个人类可读的标题。[jcbrand]

  • 在metadata.xml中将collective.js.fullcalendar作为依赖项添加。[jcbrand]

  • 添加了意大利语翻译。[giacomos]

  • 使用registry.xml步骤显式添加所需的jqueryui插件。[toutpt]

  • 添加了荷兰语翻译。[cirb]

2.0.2 (2011-11-28)

  • 修复了SFAllowedRolesAndUsersModify索引上的一个错误,该错误可能导致整个站点的剪切/粘贴操作失败。[thomasdesvenain]

  • 修复了ical导出。[thomasdesvenain]

  • 日历导出与plone.app.event未来版本兼容。[thomasdesvenain]

2.0 (2011-10-18)

  • 依赖关系:将collective.js.fullcalendar添加到产品依赖项中,以便自动安装。[fmoret]

  • 修复了:现在在滚动时调整添加/编辑事件弹出窗口的大小以获取正确的高度。[fmoret]

  • 添加了:现在通过适配器查询日历事件中添加的额外CSS类。[fmoret]

  • 修复了:更改了静态CSS选择器(对于未定义的颜色),以便正确应用颜色。[thomasdesvenain]

  • UI:在显示的私有事件上显示锁图标。[thomasdesvenain]

  • ical将未来事件导出。[thomasdesvenain]

  • API:如果事件没有’type-x’类,则不会在弹出窗口中以SF_x_light视图显示,而是打开新窗口。[thomasdesvenain]

  • UI:查询标准标签是可点击的。[thomasdesvenain]

  • 修复了:我们需要在日历上修改门户内容来更改事件的转换。事件本身的转换权限就足够了。[thomasdesvenain]

  • 优化:对日历事件获取进行了大量优化(比之前快10倍以上)。[thomasdesvenain]

  • API:事件源现在是可定制的适配器。提供IEventSource适配器以获取要显示的事件列表(或导出ical)。没有名称的适配器将替换默认源事件。具有名称的适配器将添加源事件到默认事件。[thomasdesvenain]

  • API:代码清理以使颜色管理更容易定制。 - 清理组件注册,以便颜色过滤器更容易定制。 - 使用适配器获取事件大脑类。[thomasdesvenain]

  • 重构:从大多数模块名称中删除solgemafullcalendar_前缀。[thomasdesvenain]

  • 重构:使用collective.js.colorpicker和collective.js.fullcalendar包而不是嵌入代码。[thomasdesvenain]

  • 修复了:修复了法语中的日期格式。[thomasdesvenain]

1.10 (2011-08-16)

  • 国际化:更新了英文翻译Solgema.fullcalendar.po。[fmoret]

  • 修复了:更改了fullcalendar上事件的生成的CSS选择器,以便正确应用颜色。[davidjb]

  • 修复了:如果尚未指定颜色并且我们有不存在的颜色字典,则避免CSS生成抛出错误。[davidjb]

  • 修复:即使当前上下文(尚未指定查询)也能显示添加菜单。[davidjb]

  • 国际化:允许日历属性表单按钮具有默认英文翻译。[davidjb]

  • 国际化:修复英文翻译中的某些法语消息。[davidjb]

1.9 (2011-06-16)

  • 已移除jqueryui的ui-lightness皮肤。如果您想的话,可以添加自己的jqueryui皮肤。[fmoret]

  • 增加了选择简短日期名称格式(简短:2个字符或缩写:3个字符)的可能性。[fmoret]

  • 修复:周视图未翻译周六。[pbauer]

  • 升级到fullcalendar-1.5.1。删除未使用的js文件。[pbauer]

  • 添加德语翻译和德语日期格式。[pbauer]

  • 如果plone.event可用,则显示重复事件。[vincentfretin]

  • 安全:使用“更改门户主题”权限来管理对日历属性的访问。[thomasdesvenain]

  • 安全:在目标文件夹上检查“添加门户内容”权限,而不是在日历上检查“修改门户”内容,以允许在日历上添加事件。[thomasdesvenain]

  • 修复:不允许缓存ajax动作视图,以避免缓存代理后面的问题。[thomasdesvenain]

  • 修复:事件弹出已翻译。[thomasdesvenain]

  • 修复:添加“全天”事件将从00:00添加到23:55的事件。[fmoret]

  • 修复:移除弹出中的重复滚动。[thomasdesvenain]

  • 修复:添加事件后关闭弹出窗口。[fmoret]

  • 国际化:使用i18ndude生成翻译文件。[thomasdesvenain]

  • 国际化:修复事件弹出翻译。[thomasdesvenain]

  • 国际化:日历参数选项卡和日历显示布局已国际化并翻译成法语。[thomasdesvenain]

  • 基础设施:时区向前兼容。[vincentfretin, thomasdesvenain]

  • 基础设施:plone.app.event向前兼容:事件视图默认使用event_view宏,永远不要直接访问startDate和endDate属性以实现时区兼容。[vincentfretin]

  • 基础设施:使用通用设置来安装一些依赖项。[thomasdesvenain]

  • 基础设施:在创建Plone站点表单中隐藏升级配置文件。升级配置文件不会出现在根配置文件中。[thomasdesvenain]

  • Pep8 & pyflakes。[thomasdesvenain]

  • Plone 4.1兼容。[thomasdesvenain]

  • 已导入collective中的Solgema.fullcalendar。[fmoret, thomasdesvenain]

1.8

  • 单击事件时始终请求SFLight_event_view.pt。允许使用xdv主题(感谢Sylvain Boureliou)。

  • 附带ui lightness 1.8.9主题。

1.7

  • 移除了自己的jqueryui并添加了collective.js.jqueryui(感谢Thomas Desvenain)。

  • 修复了视图和javascript文件(修复问题#17和#20,感谢Christian Lederman!)

  • 修复了依赖项声明(感谢Olav Peeters)。

  • 添加了一个小的解决方案来解决基本jqueryui css和自定义jqueryui lightness css之间的冲突。

  • 基于fullcalendar 1.4.10(感谢Adam Arshaw)。

1.6

  • 修复了错误的getUrl方法调用,并添加了here/absolute_url。

  • 修复了操作中的条件表达式(感谢Thomas Desvanain)。

  • 添加了一些步骤,以确保(尽可能确保)solgemafullcalendar_view保留在主题视图中。

1.5

  • 修复了不能注解的内容的适应问题。(在catalog.py中更改了索引器)这解决了与plone.app.discussion的bug。

  • 修复了编辑时的取消按钮和对话框关闭。关闭对话框时,编辑的事件保持锁定。

  • 修复了solgemafullcalendar_vars.js的内容类型。

1.4

  • 现在基于Fullcalendar v 1.4.8。

  • 修复了IE7 bug(感谢Kyle Homstead)。

  • 在solgemafullcalendar_view中添加了子主题显示(感谢Christian Ledermann)。

  • 在solgemafullcalendar_view中添加了<noscript>标签,以便即使javascript未启用,也能显示事件。这可以在日历视图设置中禁用。(感谢Christian Ledermann)

1.3

  • 添加了在日历中为事件选择自己的颜色的能力。颜色与主题的准则相关联。

  • 在日历视图设置中添加了颜色选择器小部件来选择颜色。

  • 在日历事件下显示固定内容菜单

1.2

  • 固定日历高度设置

  • 使用现在的jQuery UI 1.8.5(为1.8.5添加了javascript,并删除了1.8.4)

1.1

  • 创建了一个适配器来筛选可编辑的事件,以便可以轻松覆盖。

  • Solgema.ContextualContentMenu包包含在configure.zcml中

  • 正确安装Solgema.ContextualContentMenu

  • 将jquery.js修复为1.4.2版本(在skins目录中添加了jquery.js)

  • 修复高度对话框

  • 为管理员添加了主题查询中的override_review_state,以便他们可以在不通过主题基本搜索的情况下看到日历事件中的私人事件(例如,对于默认事件聚合器)

1.0

  • 添加了相对起始小时和相对起始日

  • 修复了在上下文内容菜单中粘贴操作(当剪贴板中没有内容时)

  • 修复了在日历视图标准后设置主题标准后的删除错误

  • 修复了几个错误

0.3

  • 在install.py中添加了自动依赖项安装(Solgema.ContextualContentMenu的安装)

  • 更改了SFAjax_base_edit.cpt中的javascript,以便在通过日历编辑时,对话框的iframe调整为显示整个编辑表单(修复问题#1)

  • 当添加内容时更改对话框标题(在Plone 3中msgid为“label_add_type”,现在在Plone 4中为‘heading_add_item’)。

0.2

  • 在solgemafullcalendar_vars中添加了topicRelativeUrl变量,以修复cookie路径。 (修复了当主题是文件夹默认视图时的多个cookie问题)

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分发

Solgema.fullcalendar-2.3.6.tar.gz (105.2 kB 查看哈希值)

上传时间

支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面