? quicktabs-d6.kpf Index: quicktabs.install =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/quicktabs/quicktabs.install,v retrieving revision 1.4.2.10 diff -u -p -r1.4.2.10 quicktabs.install --- quicktabs.install 21 Nov 2009 13:48:22 -0000 1.4.2.10 +++ quicktabs.install 10 Jan 2010 01:02:31 -0000 @@ -30,6 +30,13 @@ function quicktabs_schema() { 'not null' => TRUE, 'default' => 0, ), + 'default_tab' => array( + 'description' => 'Default tab.', + 'type' => 'int', + 'unsigned' => TRUE, + 'size' => 'tiny', + 'not null' => TRUE, + ), 'title' => array( 'description' => 'The title of this quicktabs block.', 'type' => 'varchar', @@ -197,3 +204,14 @@ function quicktabs_update_6205() { db_add_field($ret, 'quicktabs', 'hide_empty_tabs', array('description' => t('Whether this tabset hides empty tabs'), 'type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => 0)); return $ret; } + + +/** + * Add default_tab column. + */ +function quicktabs_update_6206() { + $ret = array(); + db_add_field($ret, 'quicktabs', 'default_tab', array('description' => 'The default tab.', 'type' => 'int', 'size' => 'tiny', 'unsigned' => TRUE, 'not null' => TRUE)); + return $ret; +} + Index: quicktabs.module =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/quicktabs/quicktabs.module,v retrieving revision 1.10.2.73 diff -u -p -r1.10.2.73 quicktabs.module --- quicktabs.module 4 Jan 2010 13:38:22 -0000 1.10.2.73 +++ quicktabs.module 10 Jan 2010 01:02:32 -0000 @@ -444,7 +444,7 @@ function quicktabs_quicktabs_tabstyles() * Load the quicktabs data. */ function quicktabs_load($qtid, $op = 'view') { - $quicktabs = db_fetch_array(db_query('SELECT qtid, title, tabs, ajax, hide_empty_tabs, style FROM {quicktabs} WHERE qtid = %d', $qtid)); + $quicktabs = db_fetch_array(db_query('SELECT qtid, title, tabs, ajax, hide_empty_tabs, default_tab, style FROM {quicktabs} WHERE qtid = %d', $qtid)); if (!$quicktabs) { return FALSE; } @@ -552,7 +552,8 @@ function quicktabs_render_tabpage($tab, * Helper function to determine active tab from the url. */ function _quicktabs_get_active_tab($quicktabs) { - $active_tab = isset($_GET['quicktabs_'. $quicktabs['qtid']]) ? $_GET['quicktabs_'. $quicktabs['qtid']] : key($quicktabs['tabs']); + $active_tab = isset($quicktabs['default_tab']) ? $quicktabs['default_tab'] : key($quicktabs['tabs']); + $active_tab = isset($_GET['quicktabs_'. $quicktabs['qtid']]) ? $_GET['quicktabs_'. $quicktabs['qtid']] : $active_tab; if (isset($active_tab) && isset($quicktabs['tabs'][$active_tab])) { return $active_tab; } Index: includes/admin.inc =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/quicktabs/includes/Attic/admin.inc,v retrieving revision 1.1.2.52 diff -u -p -r1.1.2.52 admin.inc --- includes/admin.inc 4 Jan 2010 13:38:22 -0000 1.1.2.52 +++ includes/admin.inc 10 Jan 2010 01:02:32 -0000 @@ -50,17 +50,35 @@ function quicktabs_form($form_state, $fo '#value' => isset($quicktabs['qtid']) ? $quicktabs['qtid'] : 0, ); } + $no_tabs = TRUE; if (empty($quicktabs['tabs'])) { $quicktabs['tabs'] = array( 0 => array(), 1 => array(), ); } + else { + $no_tabs = FALSE; + $tab_titles = array(); + } // Add the current tabs to the form. foreach ($quicktabs['tabs'] as $delta => $details) { $details['delta'] = $delta; $form['qt_wrapper']['tabs'][$delta] = _quicktabs_form($details); + if (isset($details['title'])) { + $tab_titles[$delta] = $details['title']; + } + } + + if (!$no_tabs) { + $form['default_tab'] = array( + '#type' => 'select', + '#title' => t('Default tab'), + '#options' => $tab_titles, + '#default_value' => $quicktabs['default_tab'], + '#weight' => -6, + ); } return $form; @@ -649,6 +667,7 @@ function _quicktabs_convert_form_to_quic 'title' => $form_state['values']['title'], 'ajax' => $form_state['values']['ajax'], 'hide_empty_tabs' => $form_state['values']['hide_empty_tabs'], + 'default_tab' => isset($form_state['values']['default_tab']) ? $form_state['values']['default_tab'] : 0, 'style' => $form_state['values']['style'], 'tabs' => $formvalues_tabs, );