diff --git a/calendar/inc/class.calendar_import_ical.inc.php b/calendar/inc/class.calendar_import_ical.inc.php index 610cf730c7..43ce8bd359 100644 --- a/calendar/inc/class.calendar_import_ical.inc.php +++ b/calendar/inc/class.calendar_import_ical.inc.php @@ -144,18 +144,21 @@ class calendar_import_ical implements importexport_iface_import_plugin { $owner = $plugin_options['cal_owner']; // Purge - $remove_past = new Api\DateTime(); - $remove_future = new Api\DateTime(); - $plugin_options = array_merge(array('remove_past' => 100, 'remove_future' => 365), $plugin_options); - foreach(array('remove_past','remove_future') as $date) + if($plugin_options['empty_before_import']) { - ${$date}->add( (($date == 'remove_past' ? -1 : 1) * (int)$plugin_options[$date]) . ' days'); + $remove_past = new Api\DateTime(); + $remove_future = new Api\DateTime(); + $plugin_options = array_merge(array('remove_past' => 100, 'remove_future' => 365), $plugin_options); + foreach(array('remove_past','remove_future') as $date) + { + ${$date}->add( (($date == 'remove_past' ? -1 : 1) * (int)$plugin_options[$date]) . ' days'); + } + $this->purge_calendar( + $owner, + array('from' => $remove_past, 'to' => $remove_future), + $plugin_options['no_notification'] + ); } - $this->purge_calendar( - $owner, - array('from' => $remove_past, 'to' => $remove_future), - $plugin_options['no_notification'] - ); // User wants conflicting events to not be imported if($_definition->plugin_options['skip_conflicts']) diff --git a/calendar/inc/class.calendar_wizard_import_ical.inc.php b/calendar/inc/class.calendar_wizard_import_ical.inc.php index 2dfc3cdaff..3e2ad89c56 100644 --- a/calendar/inc/class.calendar_wizard_import_ical.inc.php +++ b/calendar/inc/class.calendar_wizard_import_ical.inc.php @@ -70,7 +70,7 @@ class calendar_wizard_import_ical { $content['text'] = $this->steps['wizard_step55']; $content['step'] = 'wizard_step55'; - foreach(array('skip_conflicts','remove_past','remove_future') as $field) + foreach(array('skip_conflicts','empty_before_import','remove_past','remove_future') as $field) { if(!$content[$field] && array_key_exists($field, $content['plugin_options'])) { diff --git a/calendar/js/et2_widget_timegrid.js b/calendar/js/et2_widget_timegrid.js index c754be7b15..57a103ee6f 100644 --- a/calendar/js/et2_widget_timegrid.js +++ b/calendar/js/et2_widget_timegrid.js @@ -1602,6 +1602,17 @@ var et2_calendar_timegrid = (function(){ "use strict"; return et2_calendar_view. this.owner.set_label(''); this.div.removeClass('calendar_TimeGridNoLabel'); + // Check to see if it's our own calendar, with just us showing + if(typeof _owner == 'object' && _owner.length == 1 && _owner[0] == this.egw().user('account_id')) + { + var rowCount = 0; + this._parent.iterateOver(function(widget) { + if(!widget.disabled) rowCount++; + },this, et2_calendar_timegrid); + // Just us, show week number + if(rowCount == 1) _owner = false; + } + if(typeof _owner == 'string' && isNaN(_owner)) { this.set_label(''); @@ -1610,7 +1621,7 @@ var et2_calendar_timegrid = (function(){ "use strict"; return et2_calendar_view. // Label is empty, but give extra space for the owner name this.div.removeClass('calendar_TimeGridNoLabel'); } - else if (!_owner || typeof _owner == 'object' && _owner.length) + else if (!_owner || typeof _owner == 'object' && _owner.length > 1) { // Don't show owners if more than one, show week number this.owner.set_value(''); diff --git a/calendar/templates/default/import.ical_conditions.xet b/calendar/templates/default/import.ical_conditions.xet index 79b27d9d61..8b9ca63a29 100644 --- a/calendar/templates/default/import.ical_conditions.xet +++ b/calendar/templates/default/import.ical_conditions.xet @@ -9,9 +9,13 @@ - - - + + + + + + + #importexport-wizardbox_delete_title {