? 460092-2-ab.patch
? 460092.patch
? 600264.patch
Index: quicktabs.install
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/quicktabs/quicktabs.install,v
retrieving revision 1.4.2.8
diff -u -p -r1.4.2.8 quicktabs.install
--- quicktabs.install	20 Mar 2009 21:10:21 -0000	1.4.2.8
+++ quicktabs.install	12 Oct 2009 08:39:01 -0000
@@ -42,6 +42,13 @@ function quicktabs_schema() {
         'length' => 255,
         'not null' => TRUE,
       ),
+      'default_tab' => array(
+        'description' => 'Default tab.',
+        'type' => 'int',
+        'unsigned' => TRUE,
+        'size' => 'tiny',
+        'not null' => TRUE,
+      ),
     ),
     'primary key' => array('qtid'),
   );
@@ -181,3 +188,12 @@ function quicktabs_update_6004() {
   }
   return $ret;
 }
+
+/**
+ * Add default_tab column.
+ */
+function quicktabs_update_6005() {
+  $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.62
diff -u -p -r1.10.2.62 quicktabs.module
--- quicktabs.module	21 Mar 2009 02:34:16 -0000	1.10.2.62
+++ quicktabs.module	12 Oct 2009 08:39:01 -0000
@@ -418,7 +418,7 @@ function quicktabs_quicktabs_tabstyles()
  * Load the quicktabs data.
  */
 function quicktabs_load($qtid) {
-  $quicktabs = db_fetch_array(db_query('SELECT qtid, title, tabs, ajax, style FROM {quicktabs} WHERE qtid = %d', $qtid));
+  $quicktabs = db_fetch_array(db_query('SELECT qtid, title, tabs, default_tab, ajax, style FROM {quicktabs} WHERE qtid = %d', $qtid));
   if (!$quicktabs) {
     return FALSE;
   }
@@ -515,7 +515,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.44
diff -u -p -r1.1.2.44 admin.inc
--- includes/admin.inc	20 Mar 2009 21:10:20 -0000	1.1.2.44
+++ includes/admin.inc	12 Oct 2009 08:39:02 -0000
@@ -55,12 +55,24 @@ function quicktabs_form($form_state, $fo
       0 => array(),
       1 => array(),
     );
+    $no_tabs = TRUE;
   }
 
   // Add the current tabs to the form.
   foreach ($quicktabs['tabs'] as $delta => $details) {
     $details['delta'] = $delta;
     $form['qt_wrapper']['tabs'][$delta] = _quicktabs_form($details);
+    $tabs[$delta] = $details['title'];
+  }
+
+  if (!$no_tabs) {
+    $form['default_tab'] = array(
+      '#type' => 'select',
+      '#title' => t('Default tab'),
+      '#options' => $tabs,
+      '#default_value' => $quicktabs['default_tab'],
+      '#weight' => -6,
+    );
   }
 
   return $form;
@@ -636,6 +648,7 @@ function _quicktabs_convert_form_to_quic
     'title' => $form_state['values']['title'],
     'ajax' => $form_state['values']['ajax'],
     'style' => $form_state['values']['style'],
+    'default_tab' => $form_state['values']['default_tab'],
     'tabs' => $formvalues_tabs,
   );
 
