I was doing some QA on an internal module that uses export-ui and noticed that clicking the enable/disable links. I tried the same thing on a clean installation using stylizer and noticed the same behavior. I traced it into ctools_export_ui::list_page() which is called by enable_page()/disable_page() to rebuild the table. The critical section seems to be:

    $this->rows = array();
    $this->sorts = array();

    $form_state = array(
      'plugin' => $this->plugin,
      'input' => $input,
      'rerender' => TRUE,
      'no_redirect' => TRUE,
      'object' => &$this,
    );

    $help_area = $this->help_area($form_state);

    ctools_include('form');
    $form = ctools_build_form('ctools_export_ui_list_form', $form_state);

    $output = $this->list_header($form_state) . $this->list_render($form_state) . $this->list_footer($form_state);

$this->rows gets cleared and ctools_export_ui_list_form should be submitted, calling list_form_submit() which would rebuild it before list_render() is called. In the non-JS flow it works correctly, I'm trying to figure out what differs.

Members fund testing for the Drupal project. Drupal Association Learn more

Comments

drewish’s picture

FileSize
877 bytes

With Earl's help I tracked it down to some extra items in the $input array, 'js' => 1 and 'ctools_ajax' => 1. I'm still not quite sure how that throws the spanner in the works but this seems to fix it.

drewish’s picture

Status: Active » Needs review
FileSize
907 bytes

Slight rewording of the comment.

wonder95’s picture

Status: Needs review » Reviewed & tested by the community

I ran into this exact same issue, and the patch fixed it perfectly.

merlinofchaos’s picture

Status: Reviewed & tested by the community » Fixed

Committed and pushed.

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.