i find some erors in my qucktabs instalations
they are :

Notice: Undefined index: tabs in quicktabs_build_quicktabs() (line 188 of /var/www/embie/sites/all/modules/quicktabs/quicktabs.module).
Warning: array_merge(): Argument #2 is not an array in quicktabs_build_quicktabs() (line 208 of /var/www/embie/sites/all/modules/quicktabs/quicktabs.module).
Warning: Invalid argument supplied for foreach() in quicktabs_build_quicktabs() (line 210 of /var/www/embie/sites/all/modules/quicktabs/quicktabs.module).
Warning: array_multisort(): Argument #3 is expected to be an array or a sort flag in quicktabs_build_quicktabs() (line 230 of /var/www/embie/sites/all/modules/quicktabs/quicktabs.module).
Warning: Invalid argument supplied for foreach() in QuickSet->__construct() (line 128 of /var/www/embie/sites/all/modules/quicktabs/quicktabs.classes.inc).

Comments

nonprofit’s picture

Same issue here.

Drupal core 7.8
Quick Tabs 7.x-3.0

Ciraxis’s picture

if you use the dev version you have the same problem?

katbailey’s picture

I'll need more information on how to reproduce this. What exactly did you do with Quicktabs? Did you just create a Quicktabs instance via the UI and attempt to place it somewhere? Were you upgrading from a previous version? Please give the full history of how this problem arose.

ishmael-sanchez’s picture

Status: Active » Postponed (maintainer needs more info)

For what it's worth I'm using Drupal core 7.8 and Quick Tabs 7.x-3.0 and it works perfectly.

nonprofit’s picture

@katbailey, thanks for your assistance.

In my case, Quicktabs were built in the UI using 7.x-3.0. I have since upgraded to qt 7.x-3.x-dev. I am not using Panels.

On this site, we've glued together OG, Drupal Commerce and Commerce File. We're grouping users by their employer. After a file is purchased, every employee of the company will be granted access to it.

I've created two Quicktabs:

The "Files tab," Renderer: accordion, is simply displaying three Views blocks of purchased files (please see attached admin-structure-quicktabs-manage-files_tab-edit.png). The Views are filtered by "Product Files" (the core software my client is selling), "Documentation" (.PDFs and alike), and "Support Files and Media" (custom code/images, patches, etc.)

The "Group Tabs" (which is labeled and displays as "Orders") Renderer: quicktabs, contains the above "Files tab" and the invoice View which is a chronological list of invoices. (please see attached admin-structure-quicktabs-manage-group_tabs-edit.png)

The Quicktabs are displaying and functioning properly but returning the errors:

    Notice: Undefined index: history in QuickAccordion->add_attached() (line 75 of [snip]/sites/all/modules/quicktabs/plugins/QuickAccordion.inc).
    Notice: Undefined index: tabs in quicktabs_build_quicktabs() (line 189 of [snip]/sites/all/modules/quicktabs/quicktabs.module).
    Warning: array_merge() [function.array-merge]: Argument #2 is not an array in quicktabs_build_quicktabs() (line 209 of [snip]/sites/all/modules/quicktabs/quicktabs.module).
    Warning: Invalid argument supplied for foreach() in quicktabs_build_quicktabs() (line 211 of [snip]/sites/all/modules/quicktabs/quicktabs.module).
    Warning: array_multisort() [function.array-multisort]: Argument #3 is expected to be an array or a sort flag in quicktabs_build_quicktabs() (line 231 of [snip]/sites/all/modules/quicktabs/quicktabs.module).
    Warning: Invalid argument supplied for foreach() in QuickSet->__construct() (line 128 of [snip]/sites/all/modules/quicktabs/quicktabs.classes.inc).

Files tab:

$items = array();
$quicktabs = new stdClass;
$quicktabs->disabled = FALSE; /* Edit this to true to make a default quicktabs disabled initially */
$quicktabs->api_version = 1;
$quicktabs->machine_name = 'files_tab';
$quicktabs->ajax = 0;
$quicktabs->hide_empty_tabs = FALSE;
$quicktabs->default_tab = 0;
$quicktabs->title = 'Files Tab';
$quicktabs->tabs = array(
  0 => array(
    'bid' => 'views_delta_group_files_tab-block_1',
    'hide_title' => 1,
    'title' => 'Product Files',
    'weight' => '-100',
    'type' => 'block',
  ),
  1 => array(
    'bid' => 'views_delta_group_files_tab-block_2',
    'hide_title' => 1,
    'title' => 'Documentation',
    'weight' => '-99',
    'type' => 'block',
  ),
  2 => array(
    'bid' => 'views_delta_group_files_tab-block_3',
    'hide_title' => 1,
    'title' => 'Support Files and Media',
    'weight' => '-98',
    'type' => 'block',
  ),
);
$quicktabs->renderer = 'accordion';
$quicktabs->style = 'default';
$quicktabs->options = array(
  'autoHeight' => 0,
);
$items["files_tab"] = $qt;
return $items;

Groups Tabs:

$items = array();
$quicktabs = new stdClass;
$quicktabs->disabled = FALSE; /* Edit this to true to make a default quicktabs disabled initially */
$quicktabs->api_version = 1;
$quicktabs->machine_name = 'group_tabs';
$quicktabs->ajax = 0;
$quicktabs->hide_empty_tabs = TRUE;
$quicktabs->default_tab = 0;
$quicktabs->title = 'Group Tabs';
$quicktabs->tabs = array(
  0 => array(
    'machine_name' => 'files_tab',
    'title' => 'Files',
    'weight' => '-97',
    'type' => 'qtabs',
  ),
  1 => array(
    'bid' => 'views_delta_customer_orders-block_2',
    'hide_title' => 1,
    'title' => 'Orders',
    'weight' => '-97',
    'type' => 'block',
  ),
);
$quicktabs->renderer = 'quicktabs';
$quicktabs->style = 'Basic';
$quicktabs->options = array();
$items["group_tabs"] = $qt;
return $items;

Thanks for your assistance.

nonprofit’s picture

In my case the problem was a QT inside of a QT. By changing Tab type radio button on admin/structure/quicktabs/manage/[tab name]/edit from qtabs to view the errors are no longer returned.

ishmael-sanchez’s picture

Status: Postponed (maintainer needs more info) » Fixed

Status: Fixed » Closed (fixed)

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

Aldus’s picture

Status: Closed (fixed) » Active

Sorry to reopen, but I still have the same problem and I don't use quicktabs in quicktabs as #6 suggested

here is my export:

$items = array();
$quicktabs = new stdClass;
$quicktabs->disabled = FALSE; /* Edit this to true to make a default quicktabs disabled initially */
$quicktabs->api_version = 1;
$quicktabs->machine_name = 'confestetica_consiglia';
$quicktabs->ajax = 0;
$quicktabs->hide_empty_tabs = TRUE;
$quicktabs->default_tab = 0;
$quicktabs->title = 'Confestetica Consiglia';
$quicktabs->tabs = array(
  0 => array(
    'bid' => 'block_delta_10',
    'hide_title' => 1,
    'title' => 'Professionisti',
    'weight' => '-100',
    'type' => 'block',
  ),
  1 => array(
    'bid' => 'views_delta_7045edae8925cf9e27cbcc24363aee69',
    'hide_title' => 1,
    'title' => 'Centri Estetici',
    'weight' => '-99',
    'type' => 'block',
  ),
);
$quicktabs->renderer = 'quicktabs';
$quicktabs->style = 'nostyle';
$quicktabs->options = array();
$items["confestetica_consiglia"] = $qt;
return $items;

Any guess?

fietserwin’s picture

Regarding the "Notice: Undefined index: history in QuickAccordion->add_attached()" message this can occur if you have used quicktabs before 3.1. In 7.x-3.1 the history option was added but there was no hook_update to add it to existing quicktabs. The line of code (as given in the warning) does not check if it is available though, so it assumes that the option is available.

Solution for the future: add a hook_update
Solution for now: add a check to that line
Workaround: edit and save all quicktabs.

Anonymous’s picture

Component: Miscellaneous » Code
Category: bug » support

I am curious as to whether there has been a breakthrough with the above issues.

We are using core 7.10 and the latest DEV version of quicktabs

We have a client whose site is dependent upon this amazing module. We did the initial build and it worked amazingly! When we went to update and upgrade the quicktabs module and added another tab, we ended up with the following errors. We are under the gun and any help would be appreciated

Notice: Undefined property: stdClass::$tabs in QuickQtabsContent->render() (line 49 of /home/SITE/public_html/sites/all/modules/quicktabs/plugins/QuickQtabsContent.inc).
Notice: Undefined property: stdClass::$machine_name in QuickQtabsContent->render() (line 50 of /home/SITE/public_html/sites/all/modules/quicktabs/plugins/QuickQtabsContent.inc).
Warning: Invalid argument supplied for foreach() in QuickSet->__construct() (line 131 of /home/SITE/public_html/sites/all/modules/quicktabs/quicktabs.classes.inc).

Thank you for any and all assistance with this issue

Anonymous’s picture

Rolled back to 7.2 and all errors dissapeared

uno’s picture

I also had this issue in 7.3 when creating quicktab that renders quicktabs (TAB TYPE - Qtab).

Rolled back to 7.2.

WebNock’s picture

I had the same problem , but I figured out the solution.

I have one instance of main quick tab which contains 4 other instances of quick tabs, each containing different Nodes.

If you try to render the main QT along with any of the other QT which is already nested in the main QT or if its instance is being rendered on the same region, the error shows up.

The easy way is to disable the QT block instances on the same page and letting the Main QT to be displayed alone.

Shall soon post the link to the production site.

Hope this helps.

smustgrave’s picture

Issue summary: View changes
Status: Active » Closed (outdated)

With D7 EOL approaching in a month I'm starting to triage the D7 side of quicktabs queue. This doesn't appear to have any code so believe this may not make it, sorry! Thanks though!

If still an issue or needed for 4.0.x (latest branch) feel free to reopen