diff options
author | Frank Karlitschek <frank@owncloud.org> | 2013-01-30 14:36:17 +0100 |
---|---|---|
committer | Frank Karlitschek <frank@owncloud.org> | 2013-01-30 14:36:17 +0100 |
commit | 66cab77b6d83980d260cd35556d2759089d2971b (patch) | |
tree | ccf3767afba89f90ea82bd0805f23eb189956b53 /settings/apps.php | |
parent | 389c4e84153893a04310876ef70943cad53ee3e7 (diff) | |
parent | 5761bd771f4142394a00083712b63e77f8976946 (diff) | |
download | nextcloud-server-66cab77b6d83980d260cd35556d2759089d2971b.tar.gz nextcloud-server-66cab77b6d83980d260cd35556d2759089d2971b.zip |
merge master
Merge branch 'master' into improved_appsmanagement
Conflicts:
settings/apps.php
settings/templates/apps.php
Diffstat (limited to 'settings/apps.php')
-rw-r--r-- | settings/apps.php | 106 |
1 files changed, 6 insertions, 100 deletions
diff --git a/settings/apps.php b/settings/apps.php index e28c8d5a359..4f8eba159c2 100644 --- a/settings/apps.php +++ b/settings/apps.php @@ -26,116 +26,21 @@ OC_App::loadApps(); // Load the files we need OC_Util::addStyle( "settings", "settings" ); -OC_Util::addScript( "settings", "apps" ); OC_App::setActiveNavigationEntry( "core_apps" ); -$installedApps = OC_App::getAllApps(); - -//TODO which apps do we want to blacklist and how do we integrate blacklisting with the multi apps folder feature? - -$blacklist = array('files');//we dont want to show configuration for these - -$appList = array(); - -foreach ( $installedApps as $app ) { - - if ( array_search( $app, $blacklist ) === false ) { - - $info=OC_App::getAppInfo($app); - - if (!isset($info['name'])) { - - OC_Log::write('core', 'App id "'.$app.'" has no name in appinfo', OC_Log::ERROR); - - continue; - - } - - if ( OC_Appconfig::getValue( $app, 'enabled', 'no') == 'yes' ) { - - $active = true; - - } else { - - $active = false; - - } - - $info['active'] = $active; - - if(isset($info['shipped']) and ($info['shipped']=='true')) { - - $info['internal']=true; - - $info['internallabel']='Internal App'; - $info['internalclass']=''; - - $info['update']=false; - - }else{ - - $info['internal']=false; - - $info['internallabel']='3rd Party App'; - $info['internalclass']='externalapp'; - - $info['update']=OC_Installer::isUpdateAvailable($app); - } - - $info['preview'] = OC_Helper::imagePath('settings', 'trans.png'); - - $info['version'] = OC_App::getAppVersion($app); - - $appList[] = $info; - - } -} - -$remoteApps = OC_App::getAppstoreApps(); - -if ( $remoteApps ) { - - // Remove duplicates - foreach ( $appList as $app ) { - - foreach ( $remoteApps AS $key => $remote ) { - - if ( - $app['name'] == $remote['name'] - // To set duplicate detection to use OCS ID instead of string name, - // enable this code, remove the line of code above, - // and add <ocs_id>[ID]</ocs_id> to info.xml of each 3rd party app: - // OR $app['ocs_id'] == $remote['ocs_id'] - ) { - - unset( $remoteApps[$key]); - - } - - } - - } - - $combinedApps = array_merge( $appList, $remoteApps ); - -} else { - - $combinedApps = $appList; - -} - function app_sort( $a, $b ) { if ($a['active'] != $b['active']) { - + return $b['active'] - $a['active']; - + } - + return strcmp($a['name'], $b['name']); - + } +$combinedApps = OC_App::listAllApps(); usort( $combinedApps, 'app_sort' ); $tmpl = new OC_Template( "settings", "apps", "user" ); @@ -147,3 +52,4 @@ $appid = (isset($_GET['appid'])?strip_tags($_GET['appid']):''); $tmpl->assign('appid', $appid); $tmpl->printPage(); + |