diff --git a/panels_ipe/plugins/display_renderers/panels_renderer_ipe.class.php b/panels_ipe/plugins/display_renderers/panels_renderer_ipe.class.php index 9153209..f68bcd5 100644 --- a/panels_ipe/plugins/display_renderers/panels_renderer_ipe.class.php +++ b/panels_ipe/plugins/display_renderers/panels_renderer_ipe.class.php @@ -230,6 +230,11 @@ class panels_renderer_ipe extends panels_renderer_editor { 'layout' => $this->plugins['layout'], ); + // Reset the $_POST['ajax_html_ids'] values to preserve + // proper IDs on form elements when they are rebuilt + // by the Panels IPE without refreshing the page + $_POST['ajax_html_ids'] = array(); + $output = drupal_build_form('panels_ipe_edit_control_form', $form_state); if (empty($form_state['executed'])) { // At this point, we want to save the cache to ensure that we have a lock. @@ -283,6 +288,11 @@ class panels_renderer_ipe extends panels_renderer_editor { return; } + // Reset the $_POST['ajax_html_ids'] values to preserve + // proper IDs on form elements when they are rebuilt + // by the Panels IPE without refreshing the page + $_POST['ajax_html_ids'] = array(); + // At this point, we want to save the cache to ensure that we have a lock. $this->cache->ipe_locked = TRUE; panels_edit_cache_set($this->cache);