Drupal 用事件标记日期,而不是显示事件

Drupal 用事件标记日期,而不是显示事件,drupal,drupal-7,fullcalendar,Drupal,Drupal 7,Fullcalendar,我正在使用Drupal7的模块。我想做的不是在日历中显示事件,而是通过粗体标记当天(数字)或更改当天的背景色(方形)或其他方式标记有事件的日期。问题是,我应该在哪些文件中更改以实现这一点?我一直在看大部分的文件,但我搞不懂 有什么想法吗?听起来您可以通过定制由完整日历模块创建的Jquery日历来实现这一点。要使用fullcalendar实现这一点,就意味着要编写一些javascript,而不是drupal常用的php 查看完整日历插件的文档,似乎可以基于现有的月份视图定义一个新视图(这是java

我正在使用Drupal7的模块。我想做的不是在日历中显示事件,而是通过粗体标记当天(数字)或更改当天的背景色(方形)或其他方式标记有事件的日期。问题是,我应该在哪些文件中更改以实现这一点?我一直在看大部分的文件,但我搞不懂


有什么想法吗?

听起来您可以通过定制由完整日历模块创建的Jquery日历来实现这一点。要使用fullcalendar实现这一点,就意味着要编写一些javascript,而不是drupal常用的php

查看完整日历插件的文档,似乎可以基于现有的月份视图定义一个新视图(这是javascript中完整日历中的“视图”,而不是drupal视图)

请参阅关于基本用法的页面,您需要在drupal模块中以与以下类似的方式编辑javascript:

在这里,您可以创建一个回调函数eventRender(),在日历上显示每个事件之前调用该函数。在此函数中,检查view.name的值以查看当前是否选择了新视图

使用传递的事件对象计算事件的日期(将事件日期与date view.visStart进行比较以计算天数N),并在.fc day(N)使用jquery选择器更改日历的外观。您可以使用css类重新设置数字或当天背景的样式。通过为所有事件返回false,将不会显示包含事件文本的正常框

要允许人们查看事件,请设置回调函数以响应dayClick()。使用此选项可以检测某一天的点击,并通过切换到该特定日期的“日”视图进行放大

您可能还需要在viewDisplay上设置一个回调,当日期范围或视图发生更改时,该回调将清除日历中额外的css类或div

除了更改css以指示事件之外,另一种方法是使用图标在一天内呈现每个事件的小div,并使用此处eventRender文档中提到的qtip悬停效果。