CRM-10634 Class 'calendar_plugin_row_node' depreciated in drupal calendar module - causes white screen

    Details

    • Type: Bug
    • Status: Done/Fixed
    • Priority: Major
    • Resolution: Fixed/Completed
    • Affects Version/s: 4.1.5
    • Fix Version/s: 4.2.0
    • Component/s: Core CiviCRM
    • Labels:

      Description

      Trying to create views with grid of calendar views for civievents causes a fatal error because calendar_plugin_row_civicrm.inc uses a Class that has been depreciated in the current version of calendar module.

      Fatal error: Class 'calendar_plugin_row_node' not found in modules/civicrm/drupal/modules/views/plugins/calendar_plugin_row_civicrm.inc on line 25

      See: http://drupal.org/node/1595246

        Attachments

          Issue Links

            Activity

            [CRM-10634] Class 'calendar_plugin_row_node' depreciated in drupal calendar module - causes white screen
            Coleman Watts added a comment -

            I have swapped out the old class and fixed up the code to be in line with the new one. However that didn't fix the problem. Had to go pretty far down the rabbit hole to find an alternate way of handling dates, and created a fix for events.
            This fix really ought to be applied to all Civi date fields, as the current civicrm_views date handler is kind of obsolete. Doing so would break existing views tho, so would also need an upgrade script.

            shawn holt added a comment -

            Great - thanks! BTW - I noticed on a 4.1.5 fresh install that No civi event calendar view is created. In fact it's strange because I do see the civievents upcoming block and I thought that was based off a view (I guess I'm wrong.) Not sure if this is at all related.

            Also - Does this mean views using event fields will no longer work? If there are limitations, do you think we should warn folks trying to do drupal integration.

            It's a pretty serious situation because the feeds method using ical-feeds parser to turn events into drupal nodes is no longer supported. Thanks for all the efforts!

            Coleman Watts added a comment -

            The default event calendar view was broken in 4.1 - I have fixed that as well.

            I don't know what you mean by "views using event fields will no longer work" – I haven't done anything to disable them from doing so.

            But on that subject, I would appreciate it if your testing could also check to see if the fix breaks any existing views (esp of events).

            shawn holt added a comment -

            Great -will not be able to test until early next week.

            I was referring to your comment "This fix really ought to be applied to all Civi date fields, as the current civicrm_views date handler is kind of obsolete. ". Does that mean that non-cal views based on civi-event date fields will not work? I want to use display suite which can cleverly parse a view and grab the fields. It didn't work in 4.15 but will try on 4.2. It's a really great module. S.

            Coleman Watts added a comment -

            Well I haven't done anything that will break current views yet, but...
            My proposal would be to get rid of the current civicrm datetime handler (which you may have noticed injects 6 copies of a date field into views in 6 different formats). And instead use the much better handler provided by the date module (which can display a date in any format, not just 6).
            Removing civi's date handler would break all views that use it until the admin goes back and updates them. Unless we write an update script to do so automatically.

            shawn holt added a comment -

            Been trying to upgrade to 4.2 to test. Get the errors here: http://forum.civicrm.org/index.php/topic,25643.0.html
            Not sure if it's related. Once I can upgrade happy to test more.
            "My proposal would be to get rid of the current civicrm datetime handler (which you may have noticed injects 6 copies of a date field into views in 6 different formats). And instead use the much better handler provided by the date module (which can display a date in any format, not just 6).
            Removing civi's date handler would break all views that use it until the admin goes back and updates them. Unless we write an update script to do so automatically."
            So if I'm not worried about legacy views, how do i use the data module handler? Is that something that is select-able in the view? Perhaps we can add it to settings or somewhere else so going forward we can switch . This is all a bit over my head but I'm eager to contribute some effort and help make it work. thanks for your excellent contributions!

            Coleman Watts added a comment -

            Calendar seems to be working for events. It may still be broken for other objects. Re-open if needed.

              People

              • Assignee:
                Coleman Watts
                Reporter:
                shawn holt

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0 minutes
                  0m
                  Logged:
                  Time Spent - 1 day
                  1d