update apps when their version number increases
This commit is contained in:
parent
001d06f2ff
commit
fea68e08b4
2 changed files with 31 additions and 0 deletions
29
lib/app.php
29
lib/app.php
|
@ -371,4 +371,33 @@ class OC_App{
|
|||
}
|
||||
return $apps;
|
||||
}
|
||||
|
||||
/**
|
||||
* check if any apps need updating and update those
|
||||
*/
|
||||
public static function updateApps(){
|
||||
// The rest comes here
|
||||
$apps = OC_Appconfig::getApps();
|
||||
foreach( $apps as $app ){
|
||||
$installedVersion=OC_Appconfig::getValue($app,'installed_version');
|
||||
$appInfo=OC_App::getAppInfo($app);
|
||||
$currentVersion=$appInfo['version'];
|
||||
if (version_compare($currentVersion, $installedVersion, '>')) {
|
||||
OC_App::updateApp($app);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* update the database for the app and call the update script
|
||||
* @param string appid
|
||||
*/
|
||||
public static function updateApp($appid){
|
||||
if(file_exists(OC::$SERVERROOT.'/apps/'.$file.'/appinfo/database.xml')){
|
||||
OC_DB::updateDbFromStructure(OC::$SERVERROOT.'/apps/'.$file.'/appinfo/database.xml');
|
||||
}
|
||||
if(file_exists(OC::$SERVERROOT.'/apps/'.$file.'/appinfo/update.php')){
|
||||
include OC::$SERVERROOT.'/apps/'.$file.'/appinfo/update.php';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -159,6 +159,8 @@ class OC{
|
|||
OC_Config::setValue('version',implode('.',OC_Util::getVersion()));
|
||||
}
|
||||
|
||||
OC_App::updateApps();
|
||||
|
||||
ini_set('session.cookie_httponly','1;');
|
||||
session_start();
|
||||
|
||||
|
|
Loading…
Reference in a new issue