Hi Karen.
Per your recommendation, I am starting a fresh, specific thread for this problem.
If I look at a view of upcoming events that includes repeating events (say, a weekly class), then each one will be displayed, but the date field will be displayed only on the first instance.
You can see it on this calendar view:
http://www.crsny.org/drupal/calendar
And here is the export of the view:
$view = new view;
$view->name = 'calendar';
$view->description = 'A multi-dimensional calendar view with back/next navigation.';
$view->tag = 'Calendar';
$view->view_php = '';
$view->base_table = 'node';
$view->is_cacheable = FALSE;
$view->api_version = 2;
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */
$handler = $view->new_display('default', 'Defaults', 'default');
$handler->override_option('fields', array(
'title' => array(
'label' => '',
'link_to_node' => 1,
'exclude' => 0,
'id' => 'title',
'table' => 'node',
'field' => 'title',
'relationship' => 'none',
'override' => array(
'button' => 'Override',
),
),
'body' => array(
'label' => '',
'exclude' => 1,
'id' => 'body',
'table' => 'node_revisions',
'field' => 'body',
'relationship' => 'none',
'override' => array(
'button' => 'Override',
),
),
'field_event_cck_date_2_value' => array(
'label' => '',
'link_to_node' => 0,
'label_type' => 'none',
'format' => 'short',
'multiple' => array(
'group' => 0,
'multiple_number' => '',
'multiple_from' => '',
'multiple_reversed' => 0,
),
'exclude' => 0,
'id' => 'field_event_cck_date_2_value',
'table' => 'node_data_field_event_cck_date_2',
'field' => 'field_event_cck_date_2_value',
'override' => array(
'button' => 'Override',
),
'relationship' => 'none',
),
'field_event_cck_date_2_value2' => array(
'label' => '',
'link_to_node' => 0,
'label_type' => 'none',
'format' => 'medium',
'multiple' => array(
'group' => 0,
'multiple_number' => '',
'multiple_from' => '',
'multiple_reversed' => 0,
),
'exclude' => 0,
'id' => 'field_event_cck_date_2_value2',
'table' => 'node_data_field_event_cck_date_2',
'field' => 'field_event_cck_date_2_value2',
'override' => array(
'button' => 'Override',
),
'relationship' => 'none',
),
));
$handler->override_option('arguments', array(
'date_argument' => array(
'default_action' => 'default',
'style_plugin' => 'default_summary',
'style_options' => array(),
'wildcard' => 'all',
'wildcard_substitution' => 'All',
'title' => '',
'default_argument_type' => 'date',
'default_argument' => '',
'validate_type' => 'none',
'validate_fail' => 'not found',
'date_fields' => array(
'node_data_field_event_cck_date_2.field_event_cck_date_2_value' => 'node_data_field_event_cck_date_2.field_event_cck_date_2_value',
),
'date_method' => 'OR',
'granularity' => 'month',
'id' => 'date_argument',
'table' => 'node',
'field' => 'date_argument',
'relationship' => 'none',
'default_argument_user' => 0,
'default_argument_fixed' => '',
'default_argument_php' => '',
'validate_argument_node_type' => array(
'blog' => 0,
'poll' => 0,
'forum' => 0,
'panel' => 0,
'acim_workbook' => 0,
'business_profile' => 0,
'column' => 0,
'event' => 0,
'event_cck' => 0,
'feed' => 0,
'feedapi_aggregator' => 0,
'feedapi_node' => 0,
'member_healers' => 0,
'newsletter' => 0,
'news_feed' => 0,
'nodeprofile' => 0,
'page' => 0,
'profile' => 0,
'resources' => 0,
'story' => 0,
),
'validate_argument_node_access' => 0,
'validate_argument_nid_type' => 'nid',
'validate_argument_vocabulary' => array(
'5' => 0,
'13' => 0,
'1' => 0,
'2' => 0,
'4' => 0,
'15' => 0,
'11' => 0,
'8' => 0,
'9' => 0,
'14' => 0,
'7' => 0,
'16' => 0,
'6' => 0,
),
'validate_argument_type' => 'tid',
'validate_argument_php' => '',
'default_options_div_prefix' => '',
'override' => array(
'button' => 'Override',
),
),
));
$handler->override_option('filters', array(
'status' => array(
'operator' => '=',
'value' => 1,
'group' => '0',
'exposed' => FALSE,
'expose' => array(
'operator' => FALSE,
'label' => '',
),
'id' => 'status',
'table' => 'node',
'field' => 'status',
'relationship' => 'none',
),
'type' => array(
'operator' => 'in',
'value' => array(
'event_cck' => 'event_cck',
),
'group' => '0',
'exposed' => FALSE,
'expose' => array(
'operator' => FALSE,
'label' => '',
),
'id' => 'type',
'table' => 'node',
'field' => 'type',
'relationship' => 'none',
),
'language' => array(
'operator' => 'in',
'value' => array(
'***CURRENT_LANGUAGE***' => '***CURRENT_LANGUAGE***',
'***NO_LANGUAGE***' => '***NO_LANGUAGE***',
),
'group' => '0',
'exposed' => FALSE,
'expose' => array(
'operator' => FALSE,
'label' => '',
),
'id' => 'language',
'table' => 'node',
'field' => 'language',
'override' => array(
'button' => 'Override',
),
'relationship' => 'none',
),
));
$handler->override_option('access', array(
'type' => 'none',
'role' => array(),
'perm' => '',
));
$handler->override_option('items_per_page', 0);
$handler->override_option('style_plugin', 'calendar_nav');
$handler = $view->new_display('calendar', 'Calendar page', 'calendar_1');
$handler->override_option('path', 'calendar');
$handler->override_option('menu', array(
'type' => 'none',
'title' => '',
'weight' => 0,
'name' => 'navigation',
));
$handler->override_option('tab_options', array(
'type' => 'none',
'title' => '',
'weight' => 0,
));
$handler->override_option('calendar_colors', array(
'page' => '#ffff66',
'story' => '#668cff',
));
$handler = $view->new_display('calendar_period', 'Year view', 'calendar_period_2');
$handler->override_option('style_plugin', 'calendar_style');
$handler->override_option('style_options', array(
'display_type' => 'year',
'name_size' => '1',
));
$handler->override_option('attachment_position', 'after');
$handler->override_option('inherit_arguments', TRUE);
$handler->override_option('inherit_exposed_filters', FALSE);
$handler->override_option('displays', array(
'calendar_1' => 'calendar_1',
'default' => 0,
'calendar_block_1' => 0,
));
$handler->override_option('calendar_type', 'year');
$handler = $view->new_display('calendar_period', 'Month view', 'calendar_period_1');
$handler->override_option('style_plugin', 'calendar_style');
$handler->override_option('style_options', array(
'display_type' => 'month',
'name_size' => '99',
'with_weekno' => '1',
'date_fields' => NULL,
));
$handler->override_option('attachment_position', 'after');
$handler->override_option('inherit_arguments', TRUE);
$handler->override_option('inherit_exposed_filters', FALSE);
$handler->override_option('displays', array(
'calendar_1' => 'calendar_1',
'default' => 0,
'calendar_block_1' => 0,
));
$handler->override_option('calendar_type', 'month');
$handler = $view->new_display('calendar_period', 'Day view', 'calendar_period_3');
$handler->override_option('style_plugin', 'calendar_style');
$handler->override_option('style_options', array(
'display_type' => 'day',
'name_size' => '99',
));
$handler->override_option('attachment_position', 'after');
$handler->override_option('inherit_arguments', TRUE);
$handler->override_option('inherit_exposed_filters', FALSE);
$handler->override_option('displays', array(
'calendar_1' => 'calendar_1',
'default' => 0,
'calendar_block_1' => 0,
));
$handler->override_option('calendar_type', 'day');
$handler = $view->new_display('calendar_period', 'Week view', 'calendar_period_4');
$handler->override_option('style_plugin', 'calendar_style');
$handler->override_option('style_options', array(
'display_type' => 'week',
'name_size' => '99',
));
$handler->override_option('attachment_position', 'after');
$handler->override_option('inherit_arguments', TRUE);
$handler->override_option('inherit_exposed_filters', FALSE);
$handler->override_option('displays', array(
'calendar_1' => 'calendar_1',
'default' => 0,
'calendar_block_1' => 0,
));
$handler->override_option('calendar_type', 'week');
$handler = $view->new_display('calendar_block', 'Calendar block', 'calendar_block_1');
$handler->override_option('block_description', '');
$handler->override_option('block_caching', -1);
$handler = $view->new_display('calendar_period', 'Weekly Calendar Block view', 'calendar_period_5');
$handler->override_option('style_plugin', 'calendar_style');
$handler->override_option('style_options', array(
'display_type' => 'month',
'name_size' => '1',
));
$handler->override_option('attachment_position', 'after');
$handler->override_option('inherit_arguments', TRUE);
$handler->override_option('inherit_exposed_filters', FALSE);
$handler->override_option('displays', array(
'calendar_1' => 0,
'default' => 0,
'calendar_block_1' => 'calendar_block_1',
));
$handler->override_option('calendar_type', 'month');
$handler = $view->new_display('block', 'New Calendar Block', 'block_1');
$handler->override_option('block_description', '');
$handler->override_option('block_caching', -1);
| Comment | File | Size | Author |
|---|---|---|---|
| #21 | date.module.patch | 899 bytes | jaydub |
| #2 | Screenshot-2.png | 12.58 KB | IcyAndy |
Comments
Comment #1
henrijs.seso commentedsubscribing
Comment #2
IcyAndy commentedThe following screenshot shows the problem. Date 2.0-rc4, Views 2.0. Date is repeating every 14 days. (Node was added under date rc2. When upgrading to rc4 the database storage was changed so that date field values are stored in an addional table. Entries in the new database table look fine).
Comment #3
IcyAndy commentedAdditional side comment about database: One thing I noticed is that the date_rrule column in the new table has a rule for the original node with the repating date. All other nodes have a NULL value here but the repeating dates have an empty value (which is NOT NULL). Don't know if that it intended, but it looks a bit odd.
Comment #4
jdlind38 commentedsubscribing.
Comment #5
jaredonline commentedsubscribing.
Comment #6
dchampine commentedAny update on this would be much appreciated. I have implemented a workaround by just displaying the day of the week (since all my repeats are weekly), but it doesn't really work well beyond the current week's events.
Comment #7
dchampine commentedAdditional info which may help. When using CCK (6.x-2.0-rc10) and Views (6.x-2.0-rc5) there are two different behaviors for displaying the value of the date field. In both cases, filtering works properly, so the underlying query is accurate but the display is wrong as follows
With Group Multiple Values selected (any number of items in any order), only the first value of the repeat series is displayed
With Group Multiple Values not selected, no date (blank) is displayed
Comment #8
dchampine commentedI'm committed to helping sort out this problem as it is wreaking havoc on our event website. I have a test environment that I can build to basically any specification (obviously I need to use CCK and Views also, but am willing to use any configuration thereof). If anyone has a proven working configuration, please give me the details. Every combination of recent dev releases, betas, release candidates, and full releases I have tried has the same problems with repeating dates. I'm starting to think this may be an artifact of old schemas or data from previous versions, but I need to be able to test this before I go nuking my production database.
If you have a working configuration please let me know so I can replicate and try to merge changes into my production site. Given that this forum is for people with issues I'm not sure if I'll get any response, but I'm getting a little desperate so...
Comment #9
webwriter commentedsubscribing- serious issue for me as well.
Comment #10
ctmiller commentedI have this issue as well. I had a view of my events that was working fluently until three or four builds ago. I have had to quit using repeating dates and do the repeating events manually to keep this much needed view working.
Comment #11
ericm commentedI'm another person with this problem (same behavior as comment #7, by dchampine).
Comment #12
karens commentedI found the problem and just committed a fix to -dev. It was not passing in the right delta for the repeats, so was displaying nothing for the date.
Comment #13
cpelham commentedI just installed the current dev version of date but my repeating dates are still not showing up.
You can see a monthly calendar at the bottom of this page:
http://www.crsny.org/drupal/
The first instance of an event shows a time but subsequent events do not.
Comment #14
jdlind38 commentedI also tried the dev version, and it did not work for me either. I encountered the same result as cpelham.
Comment #15
karens commentedAre you sure you have the latest version? I just committed that fix so it isn't in the tarball yet, only in cvs. It should be in the tarball later today.
Comment #16
karens commentedAnd the fix is in the Date module, not in the Calendar module, but you should be sure you have the latest -dev version of both, later today, when the fixes are in the tarball.
Comment #17
sifuhall commentedsubscribing
Comment #18
cpelham commentedFixed! Way to go, Karen! A thousand thanks!
Comment #19
jdlind38 commentedThe dates have come back for me also, but I've noticed that the date starts out in January of this year. Is that an issue with a display filter in views?
Comment #20
jdlind38 commentedDisregard my message above, it was a views issue on my end. Thanks again for fixing this Karen!
Comment #21
jaydub commentedFYI I am seeing this same behavior in the latest snapshot of the 5.2 branch.
The attached patch inspired by the changes committed in the 6.x branch as part of this issue appears to fix the problem.
Comment #22
karens commentedDid I not get this change into the D5 version? I would have sworn I did but I don't see it now. The patch at #21 is the right idea but won't quite work because we don't have #item in D5, that's something that comes from the new templating system in D6. But we have a delta value somewhere, I think it will be at #delta.
I'll have to figure out what I did. I know I did *something* to send the delta value to the theme, but I don't see it now :/
Comment #23
karens commentedI take it back, $item['#delta'] is right, I was thinking of something else. The patch at #21 is probably the right fix. But I still don't know why this wasn't already there. I must have had the code ready but not gotten it committed because I can see it's not in the committed code.
Comment #24
jaydub commentedDate module is a complex beast :) I'm amazed you can keep track as well as you do ...
Comment #25
fmitchell commentedComment #26
fmitchell commentedSorry for the last comment (changing the title).
Just saying thanks to KarenS as the -dev fix for D6 works!
Comment #27
cpelham commentedThis was originally a Date Version 6.x issue, and was fixed. Now I understand that a patch for Version 5 has been submitted here. As I understand issue queue protocol, shouldn't it have been submitted in a new issue so as not to confuse everyone?
Comment #28
karens commentedThe D5 patch from #21 is committed now. In digging through that I realized there is another issue that will affect repeating dates in Views -- the CCK grouped/ungrouped handler won't process repeating dates correctly and I think I need to set dates up to use a date version of that handler that can be smarter about grouping dates. I'm working on that now, but that is another issue.
So the original issue should be fixed in both D5 and D6 now.
Comment #29
karens commentedSetting the title back to the original issue.
Comment #30
sifuhall commentedAfter updating to the new patch (for D6) do I need to delete the old view? edit the view? or maybe they just begin to show the correct date with no intervention from me?
Comment #31
cpelham commentedI believe it should just work now. That was my experience.
Comment #32
zephyr325 commentedThanks for posting that fix! I think it resolved my problem, but I've got a question...
I've got a view going (as a block) that shows the next three upcoming events. Now that I have this patch in, I can see the initial event for something marked as repeating. But I don't see events for the next repeating entries. For example, if I have one (and only one) event created, which repeats every Monday, I see the first event listed but not the next two Mondays.
Is that by design?
Comment #33
zephyr325 commentedScratch that - I found the problem in my query. :)
Comment #35
MedicSean37 commentedThis fixed worked for me too, initially. But I've upgraded to rc5 and now I have the same issue again.