aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorfriendica <info@friendica.com>2012-04-30 23:07:52 -0700
committerfriendica <info@friendica.com>2012-04-30 23:07:52 -0700
commitd48cd0f9a3210c14bb98a502188358982261d9df (patch)
treed5b13e587c7b8f2d140b559f3a67fd299afdedd3 /include
parent25afec0f81961665717e159aba216d1e9d9f9d86 (diff)
downloadvolse-hubzilla-d48cd0f9a3210c14bb98a502188358982261d9df.tar.gz
volse-hubzilla-d48cd0f9a3210c14bb98a502188358982261d9df.tar.bz2
volse-hubzilla-d48cd0f9a3210c14bb98a502188358982261d9df.zip
hidden plugins (add .hidden file to dir)
Diffstat (limited to 'include')
-rw-r--r--include/gprobe.php60
-rw-r--r--include/plugin.php12
2 files changed, 71 insertions, 1 deletions
diff --git a/include/gprobe.php b/include/gprobe.php
new file mode 100644
index 000000000..26254ad28
--- /dev/null
+++ b/include/gprobe.php
@@ -0,0 +1,60 @@
+<?php
+
+require_once("boot.php");
+require_once('include/Scrape.php');
+
+function gprobe_run($argv, $argc){
+ global $a, $db;
+
+ if(is_null($a)) {
+ $a = new App;
+ }
+
+ if(is_null($db)) {
+ @include(".htconfig.php");
+ require_once("dba.php");
+ $db = new dba($db_host, $db_user, $db_pass, $db_data);
+ unset($db_host, $db_user, $db_pass, $db_data);
+ };
+
+ require_once('include/session.php');
+ require_once('include/datetime.php');
+
+ load_config('config');
+ load_config('system');
+
+ $a->set_baseurl(get_config('system','url'));
+
+ load_hooks();
+
+ if($argc != 2)
+ return;
+
+ $url = hex2bin($argv[1]);
+
+ $r = q("select * from gcontact where nurl = '%s' limit 1",
+ dbesc(normalise_link($url))
+ );
+
+ if(count($r))
+ return;
+
+ $arr = probe_url($url);
+
+ if(count($arr) && x($arr,'network') && $arr['network'] === NETWORK_DFRN) {
+ q("insert into `gcontact` (`name`,`url`,`nurl`,`photo`)
+ values ( '%s', '%s', '%s', '%s') ",
+ dbesc($arr['name']),
+ dbesc($arr['url']),
+ dbesc(normalise_link($arr['url'])),
+ dbesc($arr['photo'])
+ );
+ }
+
+ return;
+}
+
+if (array_search(__file__,get_included_files())===0){
+ gprobe_run($argv,$argc);
+ killme();
+}
diff --git a/include/plugin.php b/include/plugin.php
index 8196e8756..4ff78a8b4 100644
--- a/include/plugin.php
+++ b/include/plugin.php
@@ -5,7 +5,7 @@
if (! function_exists('uninstall_plugin')){
function uninstall_plugin($plugin){
logger("Addons: uninstalling " . $plugin);
- q("DELETE FROM `addon` WHERE `name` = '%s' LIMIT 1",
+ q("DELETE FROM `addon` WHERE `name` = '%s' ",
dbesc($plugin)
);
@@ -37,6 +37,16 @@ function install_plugin($plugin) {
intval($t),
$plugin_admin
);
+
+ // we can add the following with the previous SQL
+ // once most site tables have been updated.
+ // This way the system won't fall over dead during the update.
+
+ if(file_exists('addon/' . $plugin . '/.hidden')) {
+ q("update addon set hidden = 1 where name = '%s' limit 1",
+ dbesc($plugin)
+ );
+ }
return true;
}
else {