}else{
$download=OC_OCSClient::getApplicationDownload($app,1);
if(isset($download['downloadlink']) and $download['downloadlink']<>'') {
- OC_Installer::installApp(array('source'=>'http','href'=>$download['downloadlink']));
+ $app=OC_Installer::installApp(array('source'=>'http','href'=>$download['downloadlink']));
}
}
}
}
//run appinfo/install.php
- if(!isset($data['noinstall']) or $data['noinstall']==false and is_file($basedir.'/appinfo/install.php')){
+ if((!isset($data['noinstall']) or $data['noinstall']==false) and file_exists($basedir.'/appinfo/install.php')){
include($basedir.'/appinfo/install.php');
}
//set the installed version
OC_Appconfig::setValue($info['id'],'installed_version',$info['version']);
OC_Appconfig::setValue($info['id'],'enabled','no');
- return true;
+ return $info['id'];
}
/**
$categories=array_keys($catagoryNames);
$externalApps=OC_OCSClient::getApplications($categories);
foreach($externalApps as $app){
- $apps[]=array(
- 'name'=>$app['name'],
- 'id'=>$app['id'],
- 'active'=>false,
- 'description'=>$app['description'],
- 'author'=>$app['personid'],
- 'license'=>$app['license'],
- );
+ // show only external apps that are not exist yet
+ $local=false;
+ foreach($apps as $a){
+ if($a['name']==$app['name']) $local=true;
+ }
+
+ if(!$local) {
+ $apps[]=array(
+ 'name'=>$app['name'],
+ 'id'=>$app['id'],
+ 'active'=>false,
+ 'description'=>$app['description'],
+ 'author'=>$app['personid'],
+ 'license'=>$app['license'],
+ );
+ }
}
}