diff -rupN fullcalendar.old/fullcalendar_options/fullcalendar_options.module fullcalendar.new/fullcalendar_options/fullcalendar_options.module --- a/fullcalendar_options/fullcalendar_options.module 2013-12-09 14:02:15.000000000 +0800 +++ b/fullcalendar_options/fullcalendar_options.module 2014-07-31 17:15:20.569624614 +0800 @@ -177,3 +177,13 @@ if (module_exists('colorbox') && !functi return fullcalendar_options_fullcalendar_api(); } } + + +/** + * Add Overlay integration. + */ +if (module_exists('overlay') && !function_exists('overlay_fullcalendar_api')) { + function overlay_fullcalendar_api() { + return fullcalendar_options_fullcalendar_api(); + } +} diff -rupN fullcalendar.old/fullcalendar_options/includes/overlay.fullcalendar.inc fullcalendar.new/fullcalendar_options/includes/overlay.fullcalendar.inc --- a/fullcalendar_options/includes/overlay.fullcalendar.inc 1970-01-01 08:00:00.000000000 +0800 +++ b/fullcalendar_options/includes/overlay.fullcalendar.inc 2014-07-31 17:18:36.445629392 +0800 @@ -0,0 +1,55 @@ + array( + 'name' => t('Overlay'), + 'js' => TRUE, + 'parent' => 'fullcalendar_options', + ), + ); +} + +/** + * Implements hook_fullcalendar_options_definition(). + */ +function overlay_fullcalendar_options_definition() { + $options['overlay']['contains'] = array( + 'overlay' => array( + 'default' => FALSE, + 'bool' => TRUE, + ), + ); + return $options; +} + +/** + * Implements hook_fullcalendar_options_form(). + */ +function overlay_fullcalendar_options_form(&$form, &$form_state, &$view) { + $form['overlay']['overlay'] = array( + '#type' => 'checkbox', + '#title' => t('Open events with Overlay'), + '#default_value' => $view->options['overlay']['overlay'], + '#data_type' => 'bool', + ); + + $form['sameWindow']['#dependency'] = array('edit-style-options-overlay-overlay' => array(0)); +} + +/** + * Implements hook_fullcalendar_options_process(). + */ +function overlay_fullcalendar_options_process(&$variables, &$settings) { + if (empty($settings['overlay']['overlay'])) { + unset($settings['overlay']); + } +} diff -rupN fullcalendar.old/fullcalendar_options/js/overlay.fullcalendar.js fullcalendar.new/fullcalendar_options/js/overlay.fullcalendar.js --- a/fullcalendar_options/js/overlay.fullcalendar.js 1970-01-01 08:00:00.000000000 +0800 +++ b/fullcalendar_options/js/overlay.fullcalendar.js 2014-07-31 17:08:59.009615306 +0800 @@ -0,0 +1,26 @@ +(function($) { +Drupal.fullcalendar.plugins.overlay = { + options: function (fullcalendar, settings) { + if (!settings.overlay) { + return; + } + settings = settings.overlay; + + var options = { + eventClick: function(calEvent, jsEvent, view) { + // Use overlay only for events based on entities + if (calEvent.eid !== undefined) { + var url = calEvent.url; + url = '#overlay=' + url; + $.overlay({ + href: url + }); + } + return false; + } + }; + return options; + } +}; + +}(jQuery)); diff -rupN fullcalendar.old/sites/all/modules/fullcalendar/fullcalendar_options/includes/overlay.fullcalendar.inc fullcalendar.new/sites/all/modules/fullcalendar/fullcalendar_options/includes/overlay.fullcalendar.inc --- a/fullcalendar_options/includes/overlay.fullcalendar.inc 1970-01-01 08:00:00.000000000 +0800 +++ b/fullcalendar_options/includes/overlay.fullcalendar.inc 2014-07-31 17:06:02.501611001 +0800 @@ -0,0 +1,55 @@ + array( + 'name' => t('Overlay'), + 'js' => TRUE, + 'parent' => 'fullcalendar_options', + ), + ); +} + +/** + * Implements hook_fullcalendar_options_definition(). + */ +function overlay_fullcalendar_options_definition() { + $options['overlay']['contains'] = array( + 'overlay' => array( + 'default' => FALSE, + 'bool' => TRUE, + ), + ); + return $options; +} + +/** + * Implements hook_fullcalendar_options_form(). + */ +function overlay_fullcalendar_options_form(&$form, &$form_state, &$view) { + $form['overlay']['overlay'] = array( + '#type' => 'checkbox', + '#title' => t('Open events with Overlay'), + '#default_value' => $view->options['overlay']['overlay'], + '#data_type' => 'bool', + ); + + $form['sameWindow']['#dependency'] = array('edit-style-options-overlay-overlay' => array(0)); +} + +/** + * Implements hook_fullcalendar_options_process(). + */ +function overlay_fullcalendar_options_process(&$variables, &$settings) { + if (empty($settings['overlay']['overlay'])) { + unset($settings['overlay']); + } +}