From a07c6b1a2ea66f00b3e85d480703ca06a4b241be Mon Sep 17 00:00:00 2001
From: Robin Appelman <icewind@owncloud.com>
Date: Fri, 30 Mar 2012 14:00:24 +0200
Subject: [PATCH] optimizations for loadApps

---
 lib/app.php | 21 ++++++++++++++++-----
 1 file changed, 16 insertions(+), 5 deletions(-)

diff --git a/lib/app.php b/lib/app.php
index 5ee9a0e565..fa0a1d22d1 100755
--- a/lib/app.php
+++ b/lib/app.php
@@ -55,12 +55,10 @@ class OC_App{
 		}
 
 		// The rest comes here
-		$apps = OC_Appconfig::getApps();
+		$apps = self::getEnabledApps();
 		foreach( $apps as $app ){
-			if( self::isEnabled( $app )){
-				if(is_file(OC::$APPSROOT.'/apps/'.$app.'/appinfo/app.php')){
-					require( $app.'/appinfo/app.php' );
-				}
+			if(is_file(OC::$APPSROOT.'/apps/'.$app.'/appinfo/app.php')){
+				require( $app.'/appinfo/app.php' );
 			}
 		}
 
@@ -70,6 +68,19 @@ class OC_App{
 		return true;
 	}
 
+	/**
+	 * get all enabled apps
+	 */
+	public static function getEnabledApps(){
+		$apps=array();
+		$query = OC_DB::prepare( 'SELECT appid FROM *PREFIX*appconfig WHERE configkey = "enabled" AND configvalue="yes"' );
+		$query->execute();
+		while($row=$query->fetchRow()){
+			$apps[]=$row['appid'];
+		}
+		return $apps;
+	}
+
 	/**
 	 * @brief checks whether or not an app is enabled
 	 * @param $app app
-- 
GitLab