some backend stuff for apps

This commit is contained in:
friendica
2014-05-15 16:43:42 -07:00
parent 8b233723c5
commit e68bb132a7
4 changed files with 78 additions and 10 deletions

53
include/apps.php Normal file
View File

@@ -0,0 +1,53 @@
<?php /** @file */
/**
* apps
*
*/
require_once('include/plugin.php');
function get_system_apps() {
$ret = array();
$files = glob('app/*.apd');
if($files) {
foreach($files as $f) {
$x = parse_app_description($f);
if($x) {
$ret[] = $x;
}
}
}
$files = glob('addon/*/*.apd');
if($files) {
foreach($files as $f) {
$n = basename($f,'.apd');
if(plugin_is_installed($n)) {
$x = parse_app_description($f);
if($x) {
$ret[] = $x;
}
}
}
}
return $ret;
}
function parse_app_description($f) {
$ret = array();
$lines = @file($f);
if($lines) {
foreach($lines as $x) {
if(preg_match('/^([a-zA-Z].*?):(.*?)$/ism',$x,$matches)) {
$ret[$matches[1]] = trim($matches[2]);
}
}
}
return $ret;
}