diff options
author | Robin Appelman <icewind1991@gmail.com> | 2011-04-16 19:06:45 +0200 |
---|---|---|
committer | Robin Appelman <icewind1991@gmail.com> | 2011-04-16 19:06:45 +0200 |
commit | 5ccdea8e5bc80201ed8abab5b3a38e20b8b992cd (patch) | |
tree | d7305cd31610da264ee46819ef139b61c6ab5539 /lib | |
parent | 150631849f5829eaf1f68517b1c81d4339a5f23b (diff) | |
download | nextcloud-server-5ccdea8e5bc80201ed8abab5b3a38e20b8b992cd.tar.gz nextcloud-server-5ccdea8e5bc80201ed8abab5b3a38e20b8b992cd.zip |
save installation state of databases in appconfig instead of plugin.xml
Diffstat (limited to 'lib')
-rw-r--r-- | lib/base.php | 1 | ||||
-rw-r--r-- | lib/plugin.php | 12 |
2 files changed, 7 insertions, 6 deletions
diff --git a/lib/base.php b/lib/base.php index 9ecf7db0778..93d6fb66c7e 100644 --- a/lib/base.php +++ b/lib/base.php @@ -77,6 +77,7 @@ if( OC_CONFIG::getValue( "forcessl", false )){ require_once('helper.php'); require_once('database.php'); require_once('app.php'); +require_once('appconfig.php'); require_once('files.php'); require_once('filesystem.php'); require_once('filestorage.php'); diff --git a/lib/plugin.php b/lib/plugin.php index 0d4e9744dc3..d8291a8a758 100644 --- a/lib/plugin.php +++ b/lib/plugin.php @@ -52,7 +52,8 @@ class OC_PLUGIN{ //check for uninstalled db's if(isset($data['install']) and isset($data['install']['database'])){ foreach($data['install']['database'] as $db){ - if(!$data['install']['database_installed'][$db]){ + $installed=OC_APPCONFIG::getValue('plugin_installer','database_installed_'.$id.'_'.$db,'false'); + if($installed!='true'){ self::installDB($id); break; } @@ -339,13 +340,13 @@ class OC_PLUGIN{ global $SERVERROOT; $data=OC_PLUGIN::getPluginData($id); foreach($data['install']['database'] as $db){ - if (!$data['install']['database_installed'][$db]){ + $installed=OC_APPCONFIG::getValue('plugin_installer','database_installed_'.$id.'_'.$db,'false'); + if ($installed!='true'){ $file=$SERVERROOT.'/plugins/'.$id.'/'.$db; OC_DB::createDbFromStructure($file); - $data['install']['database_installed'][$db]=true; + OC_APPCONFIG::setValue('plugin_installer','database_installed_'.$id.'_'.$db,'true'); } } - self::savePluginData($id,$data); return true; } @@ -363,14 +364,13 @@ class OC_PLUGIN{ if(isset($pluginData['install'])){ foreach($pluginData['install']['database'] as $db){ OC_DB::createDbFromStructure($folder.'/'.$db); - $pluginData['install']['database_installed'][$db]=true; + OC_APPCONFIG::setValue('plugin_installer','database_installed_'.$id.'_'.$db,'true'); } foreach($pluginData['install']['include'] as $include){ include($folder.'/'.$include); } } recursive_copy($folder,$SERVERROOT.'/plugins/'.$pluginData['info']['id']); - self::savePluginData($SERVERROOT.'/plugins/'.$pluginData['info']['id'].'/plugin.xml',$pluginData); } } delTree($folder); |