From 5570ef5dced900c92edeefe169affc8049c9deb8 Mon Sep 17 00:00:00 2001
From: Hasse R. Hansen <hasse@ramlev.dk>
Date: Wed, 6 Apr 2011 14:54:31 +0200
Subject: Check if view display dont return any data, if so dont show tab

---
 viewsdisplaytabs.module |   10 ++++++++--
 1 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/viewsdisplaytabs.module b/viewsdisplaytabs.module
index af17988..f699cbf 100644
--- a/viewsdisplaytabs.module
+++ b/viewsdisplaytabs.module
@@ -81,9 +81,15 @@ function viewsdisplaytabs_preprocess_views_view(&$vars) {
           $title = $display_data->display_title;
           $group = 0;
         }
+        // Check if view display is empty
+        $view_data = views_get_view($view->name);
+        $view_data ->set_display($display_name);
+        $view_data ->execute();
 
         // Build a grouping array for later
-        $displays[$group][] = theme('viewsdisplaytabs_tab', $title, $_GET['q'], $display_name);
+        if (count($view_data->result) == TRUE) {
+          $displays[$group][] = theme('viewsdisplaytabs_tab', $title, $_GET['q'], $display_name);
+        }
       }
     }
 
@@ -298,4 +304,4 @@ function viewsdisplaytabs_admin_submit($form, $form_state) {
     'view_group_separator' => $view_group_separator
     )
   );
-}
\ No newline at end of file
+}
-- 
1.7.4.1


From 81e454cb3d728855511084d4a86449cd830fe228 Mon Sep 17 00:00:00 2001
From: Hasse R. Hansen <hasse@ramlev.dk>
Date: Wed, 6 Apr 2011 15:10:39 +0200
Subject: Set arguments when loading the selected view display

---
 viewsdisplaytabs.module |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/viewsdisplaytabs.module b/viewsdisplaytabs.module
index f699cbf..9e06d0e 100644
--- a/viewsdisplaytabs.module
+++ b/viewsdisplaytabs.module
@@ -83,6 +83,7 @@ function viewsdisplaytabs_preprocess_views_view(&$vars) {
         }
         // Check if view display is empty
         $view_data = views_get_view($view->name);
+        $view_data->set_arguments($view->args);
         $view_data ->set_display($display_name);
         $view_data ->execute();
 
-- 
1.7.4.1


From 19cce824175a3211403f7f79f4bacd5ee64867ce Mon Sep 17 00:00:00 2001
From: Hasse R. Hansen <hasse@ramlev.dk>
Date: Thu, 7 Apr 2011 21:43:22 +0200
Subject: Unsettings view variable after testing if view display containing any data

---
 viewsdisplaytabs.module |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/viewsdisplaytabs.module b/viewsdisplaytabs.module
index 9e06d0e..2940048 100644
--- a/viewsdisplaytabs.module
+++ b/viewsdisplaytabs.module
@@ -91,6 +91,7 @@ function viewsdisplaytabs_preprocess_views_view(&$vars) {
         if (count($view_data->result) == TRUE) {
           $displays[$group][] = theme('viewsdisplaytabs_tab', $title, $_GET['q'], $display_name);
         }
+        unset($view_data);
       }
     }
 
-- 
1.7.4.1

