aboutsummaryrefslogtreecommitdiffstats
path: root/Zotlabs
diff options
context:
space:
mode:
authorzotlabs <mike@macgirvin.com>2018-09-20 18:36:14 -0700
committerzotlabs <mike@macgirvin.com>2018-09-20 18:36:14 -0700
commita4d987b45a841acaf9b825ecf466072b09a8c254 (patch)
tree15d281573f28c0f62b48b3e1355add4ff2178d26 /Zotlabs
parent3cc66b68162a82493cd68d369e4f0cbb01f941d0 (diff)
parent369f34b2d122c7bd22522101fc9e4ce0f597a04e (diff)
downloadvolse-hubzilla-a4d987b45a841acaf9b825ecf466072b09a8c254.tar.gz
volse-hubzilla-a4d987b45a841acaf9b825ecf466072b09a8c254.tar.bz2
volse-hubzilla-a4d987b45a841acaf9b825ecf466072b09a8c254.zip
Merge branch 'dev'
Diffstat (limited to 'Zotlabs')
-rw-r--r--Zotlabs/Lib/Apps.php30
-rw-r--r--Zotlabs/Module/Connections.php21
-rw-r--r--Zotlabs/Module/Settings/Connections.php51
-rw-r--r--Zotlabs/Module/Settings/Network.php25
4 files changed, 85 insertions, 42 deletions
diff --git a/Zotlabs/Lib/Apps.php b/Zotlabs/Lib/Apps.php
index aa7e2282d..905a20ee0 100644
--- a/Zotlabs/Lib/Apps.php
+++ b/Zotlabs/Lib/Apps.php
@@ -388,9 +388,7 @@ class Apps {
// This will catch somebody clicking on a system "available" app that hasn't had the path macros replaced
// and they are allowed to see the app
-
-
- if(strstr($papp['url'],'$baseurl') || strstr($papp['url'],'$nick') || strstr($papp['photo'],'$baseurl') || strstr($pap['photo'],'$nick')) {
+ if(strpos($papp['url'],'$baseurl') || strpos($papp['url'],'$nick') || strpos($papp['photo'],'$baseurl') || strpos($papp['photo'],'$nick')) {
$view_channel = local_channel();
if(! $view_channel) {
$sys = get_sys_channel();
@@ -399,7 +397,13 @@ class Apps {
self::app_macros($view_channel,$papp);
}
- if(! strstr($papp['url'],'://'))
+ if(strpos($papp['url'], ',')) {
+ $urls = explode(',', $papp['url']);
+ $papp['url'] = trim($urls[0]);
+ $papp['settings_url'] = trim($urls[1]);
+ }
+
+ if(! strpos($papp['url'],'://'))
$papp['url'] = z_root() . ((strpos($papp['url'],'/') === 0) ? '' : '/') . $papp['url'];
@@ -468,7 +472,9 @@ class Apps {
$hosturl = '';
if(local_channel()) {
- $installed = self::app_installed(local_channel(),$papp);
+ if(self::app_installed(local_channel(),$papp) && !$papp['deleted'])
+ $installed = true;
+
$hosturl = z_root() . '/';
}
elseif(remote_channel()) {
@@ -495,6 +501,7 @@ class Apps {
if($mode === 'install') {
$papp['embed'] = true;
}
+
return replace_macros(get_markup_template('app.tpl'),array(
'$app' => $papp,
'$icon' => $icon,
@@ -503,11 +510,12 @@ class Apps {
'$installed' => $installed,
'$action_label' => (($hosturl && in_array($mode, ['view','install'])) ? $install_action : ''),
'$edit' => ((local_channel() && $installed && $mode == 'edit') ? t('Edit') : ''),
- '$delete' => ((local_channel() && $installed && $mode == 'edit') ? t('Delete') : ''),
- '$undelete' => ((local_channel() && $installed && $mode == 'edit') ? t('Undelete') : ''),
+ '$delete' => ((local_channel() && $mode == 'edit') ? t('Delete') : ''),
+ '$undelete' => ((local_channel() && $mode == 'edit') ? t('Undelete') : ''),
+ '$settings_url' => ((local_channel() && $installed && $mode == 'list') ? $papp['settings_url'] : ''),
'$deleted' => $papp['deleted'],
- '$feature' => (($papp['embed']) ? false : true),
- '$pin' => (($papp['embed']) ? false : true),
+ '$feature' => (($papp['embed'] || $mode == 'edit') ? false : true),
+ '$pin' => (($papp['embed'] || $mode == 'edit') ? false : true),
'$featured' => ((strpos($papp['categories'], 'nav_featured_app') === false) ? false : true),
'$pinned' => ((strpos($papp['categories'], 'nav_pinned_app') === false) ? false : true),
'$navapps' => (($mode == 'nav') ? true : false),
@@ -912,7 +920,7 @@ class Apps {
$arr['author'] = $sys['channel_hash'];
}
- if($arr['photo'] && (strpos($arr['photo'],'icon:') === false) && (! strstr($arr['photo'],z_root()))) {
+ if($arr['photo'] && (strpos($arr['photo'],'icon:') === false) && (! strpos($arr['photo'],z_root()))) {
$x = import_xchan_photo(str_replace('$baseurl',z_root(),$arr['photo']),get_observer_hash(),true);
$arr['photo'] = $x[1];
}
@@ -998,7 +1006,7 @@ class Apps {
if((! $darray['app_url']) || (! $darray['app_id']))
return $ret;
- if($arr['photo'] && (strpos($arr['photo'],'icon:') === false) && (! strstr($arr['photo'],z_root()))) {
+ if($arr['photo'] && (strpos($arr['photo'],'icon:') === false) && (! strpos($arr['photo'],z_root()))) {
$x = import_xchan_photo(str_replace('$baseurl',z_root(),$arr['photo']),get_observer_hash(),true);
$arr['photo'] = $x[1];
}
diff --git a/Zotlabs/Module/Connections.php b/Zotlabs/Module/Connections.php
index cecada769..0e5f1dfe2 100644
--- a/Zotlabs/Module/Connections.php
+++ b/Zotlabs/Module/Connections.php
@@ -1,6 +1,7 @@
<?php
namespace Zotlabs\Module;
+use App;
require_once('include/socgraph.php');
require_once('include/selectors.php');
@@ -12,8 +13,10 @@ class Connections extends \Zotlabs\Web\Controller {
if(! local_channel())
return;
+
+ App::$profile_uid = local_channel();
- $channel = \App::get_channel();
+ $channel = App::get_channel();
if($channel)
head_set_icon($channel['xchan_photo_s']);
@@ -43,7 +46,7 @@ class Connections extends \Zotlabs\Web\Controller {
$all = false;
if(! $_REQUEST['aj'])
- $_SESSION['return_url'] = \App::$query_string;
+ $_SESSION['return_url'] = App::$query_string;
$search_flags = "";
$head = '';
@@ -88,14 +91,14 @@ class Connections extends \Zotlabs\Web\Controller {
$search_flags = " and abook_pending = 1 ";
$head = t('New');
$pending = true;
- \App::$argv[1] = 'pending';
+ App::$argv[1] = 'pending';
}
else {
$head = t('All');
$search_flags = '';
$all = true;
- \App::$argc = 1;
- unset(\App::$argv[1]);
+ App::$argc = 1;
+ unset(App::$argv[1]);
}
break;
// case 'unconnected':
@@ -225,15 +228,15 @@ class Connections extends \Zotlabs\Web\Controller {
intval(local_channel())
);
if($r) {
- \App::set_pager_total($r[0]['total']);
+ App::set_pager_total($r[0]['total']);
$total = $r[0]['total'];
}
$r = q("SELECT abook.*, xchan.* FROM abook left join xchan on abook.abook_xchan = xchan.xchan_hash
WHERE abook_channel = %d and abook_self = 0 and xchan_deleted = 0 and xchan_orphan = 0 $sql_extra $sql_extra2 ORDER BY xchan_name LIMIT %d OFFSET %d ",
intval(local_channel()),
- intval(\App::$pager['itemspage']),
- intval(\App::$pager['start'])
+ intval(App::$pager['itemspage']),
+ intval(App::$pager['start'])
);
$contacts = array();
@@ -337,7 +340,7 @@ class Connections extends \Zotlabs\Web\Controller {
'$finding' => (($searching) ? t('Connections search') . ": '" . $search . "'" : ""),
'$submit' => t('Find'),
'$edit' => t('Edit'),
- '$cmd' => \App::$cmd,
+ '$cmd' => App::$cmd,
'$contacts' => $contacts,
'$paginate' => paginate($a),
diff --git a/Zotlabs/Module/Settings/Connections.php b/Zotlabs/Module/Settings/Connections.php
new file mode 100644
index 000000000..361d86ccb
--- /dev/null
+++ b/Zotlabs/Module/Settings/Connections.php
@@ -0,0 +1,51 @@
+<?php
+
+namespace Zotlabs\Module\Settings;
+
+
+class Connections {
+
+ function post() {
+ check_form_security_token_redirectOnErr('/settings/connections', 'settings_connections');
+
+ $features = self::get_features();
+
+ process_features_post(local_channel(), $features, $_POST);
+
+ build_sync_packet();
+ return;
+ }
+
+ function get() {
+
+ $features = self::get_features();
+
+ $tpl = get_markup_template("settings_module.tpl");
+
+ $o .= replace_macros($tpl, array(
+ '$action_url' => 'settings/connections',
+ '$form_security_token' => get_form_security_token("settings_connections"),
+ '$title' => t('Connections Settings'),
+ '$features' => process_features_get(local_channel(), $features),
+ '$submit' => t('Submit')
+ ));
+
+ return $o;
+ }
+
+ function get_features() {
+ $arr = [
+ [
+ 'connfilter',
+ t('Connection Filtering'),
+ t('Filter incoming posts from connections based on keywords/content'),
+ false,
+ get_config('feature_lock','connfilter')
+ ]
+ ];
+
+ return $arr;
+
+ }
+
+}
diff --git a/Zotlabs/Module/Settings/Network.php b/Zotlabs/Module/Settings/Network.php
index 14a118f2c..1e39121c8 100644
--- a/Zotlabs/Module/Settings/Network.php
+++ b/Zotlabs/Module/Settings/Network.php
@@ -10,13 +10,7 @@ class Network {
$features = self::get_features();
- foreach($features as $f) {
- $k = $f[0];
- if(array_key_exists("feature_$k",$_POST))
- set_pconfig(local_channel(),'feature',$k, (string) $_POST["feature_$k"]);
- else
- set_pconfig(local_channel(),'feature', $k, '');
- }
+ process_features_post(local_channel(), $features, $_POST);
build_sync_packet();
return;
@@ -26,19 +20,14 @@ class Network {
$features = self::get_features();
- foreach($features as $f) {
- $arr[] = array('feature_' . $f[0],$f[1],((intval(feature_enabled(local_channel(),$f[0]))) ? "1" : ''),$f[2],array(t('Off'),t('On')));
- }
-
$tpl = get_markup_template("settings_module.tpl");
$o .= replace_macros($tpl, array(
'$action_url' => 'settings/network',
'$form_security_token' => get_form_security_token("settings_network"),
'$title' => t('Activity Settings'),
- '$features' => $arr,
- '$baseurl' => z_root(),
- '$submit' => t('Submit'),
+ '$features' => process_features_get(local_channel(), $features),
+ '$submit' => t('Submit')
));
return $o;
@@ -109,14 +98,6 @@ class Network {
t('Show friend and connection suggestions'),
false,
get_config('feature_lock','suggest')
- ],
-
- [
- 'connfilter',
- t('Connection Filtering'),
- t('Filter incoming posts from connections based on keywords/content'),
- false,
- get_config('feature_lock','connfilter')
]
];