summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorRobin Appelman <icewind1991@gmail.com>2011-04-16 19:06:45 +0200
committerRobin Appelman <icewind1991@gmail.com>2011-04-16 19:06:45 +0200
commit5ccdea8e5bc80201ed8abab5b3a38e20b8b992cd (patch)
treed7305cd31610da264ee46819ef139b61c6ab5539 /lib
parent150631849f5829eaf1f68517b1c81d4339a5f23b (diff)
downloadnextcloud-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.php1
-rw-r--r--lib/plugin.php12
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);