aboutsummaryrefslogtreecommitdiffstats
path: root/Zotlabs
diff options
context:
space:
mode:
authornobody <nobody@zotlabs.com>2021-06-03 16:01:16 -0700
committernobody <nobody@zotlabs.com>2021-06-03 16:01:16 -0700
commit686530c1873f98d724355bf3f456243b1b7fdadd (patch)
tree81fdbb61a8ef8f73dc3a5009e8a2f6c5a75de712 /Zotlabs
parent462980c70a2698490d97a481cee0f2500dacb91c (diff)
parentba22d3e9b6ef7042d7129c7715c81c668fcf79b3 (diff)
downloadvolse-hubzilla-686530c1873f98d724355bf3f456243b1b7fdadd.tar.gz
volse-hubzilla-686530c1873f98d724355bf3f456243b1b7fdadd.tar.bz2
volse-hubzilla-686530c1873f98d724355bf3f456243b1b7fdadd.zip
Merge branch 'dev' of https://framagit.org/hubzilla/core into dev
Diffstat (limited to 'Zotlabs')
-rw-r--r--Zotlabs/Daemon/Onedirsync.php4
-rw-r--r--Zotlabs/Lib/ActivityStreams.php5
-rw-r--r--Zotlabs/Module/Article_edit.php3
-rw-r--r--Zotlabs/Module/Channel.php19
-rw-r--r--Zotlabs/Module/Pubstream.php2
-rw-r--r--Zotlabs/Module/Removeme.php46
6 files changed, 46 insertions, 33 deletions
diff --git a/Zotlabs/Daemon/Onedirsync.php b/Zotlabs/Daemon/Onedirsync.php
index f29fbe5b8..47904ea21 100644
--- a/Zotlabs/Daemon/Onedirsync.php
+++ b/Zotlabs/Daemon/Onedirsync.php
@@ -29,6 +29,7 @@ class Onedirsync {
if (!$r)
return;
+
if (($r[0]['ud_flags'] & UPDATE_FLAGS_UPDATED) || (!$r[0]['ud_addr']))
return;
@@ -59,13 +60,12 @@ class Onedirsync {
$h = Libzot::zot_record_preferred($h);
- if (($h) && ($h['hubloc_status'] & HUBLOC_OFFLINE)) {
+ if (($h) && (($h['hubloc_status'] & HUBLOC_OFFLINE) || $h['hubloc_deleted'] || $h['hubloc_error']) ) {
q("update updates set ud_flags = ( ud_flags | %d ) where ud_addr = '%s' and ( ud_flags & %d ) = 0 ",
intval(UPDATE_FLAGS_UPDATED),
dbesc($r[0]['ud_addr']),
intval(UPDATE_FLAGS_UPDATED)
);
-
return;
}
diff --git a/Zotlabs/Lib/ActivityStreams.php b/Zotlabs/Lib/ActivityStreams.php
index a5fb4a756..2324a8136 100644
--- a/Zotlabs/Lib/ActivityStreams.php
+++ b/Zotlabs/Lib/ActivityStreams.php
@@ -304,11 +304,12 @@ class ActivityStreams {
// SECURITY: If we have already stored the actor profile, re-generate it
// from cached data - don't refetch it from the network
- $r = q("select * from xchan join hubloc on xchan_hash = hubloc_hash where hubloc_network in ('zot6', 'activitypub') and hubloc_id_url = '%s'",
+ $r = q("select * from xchan join hubloc on xchan_hash = hubloc_hash where hubloc_id_url = '%s'",
dbesc($x)
);
if ($r) {
- $y = Activity::encode_person($r[0]);
+ $r = Libzot::zot_record_preferred($r);
+ $y = Activity::encode_person($r);
$y['cached'] = true;
return $y;
}
diff --git a/Zotlabs/Module/Article_edit.php b/Zotlabs/Module/Article_edit.php
index efa02e1c1..97c87f2ba 100644
--- a/Zotlabs/Module/Article_edit.php
+++ b/Zotlabs/Module/Article_edit.php
@@ -85,7 +85,6 @@ class Article_edit extends \Zotlabs\Web\Controller {
$mimetype = $itm[0]['mimetype'];
- $summary = (($itm[0]['summary']) ? '[summary]' . $itm[0]['summary'] . '[/summary]' . "\r\n" : '');
$content = $itm[0]['body'];
$rp = 'articles/' . $channel['channel_address'];
@@ -109,7 +108,7 @@ class Article_edit extends \Zotlabs\Web\Controller {
'ptyp' => $itm[0]['type'],
'mimeselect' => false,
'mimetype' => $itm[0]['mimetype'],
- 'body' => $summary . undo_post_tagging($content),
+ 'body' => undo_post_tagging($content),
'post_id' => $post_id,
'visitor' => true,
'title' => htmlspecialchars($itm[0]['title'],ENT_COMPAT,'UTF-8'),
diff --git a/Zotlabs/Module/Channel.php b/Zotlabs/Module/Channel.php
index a7deb4f6b..20cbe0b5c 100644
--- a/Zotlabs/Module/Channel.php
+++ b/Zotlabs/Module/Channel.php
@@ -46,14 +46,22 @@ class Channel extends Controller {
}
$profile = 0;
- $channel = App::get_channel();
if ((local_channel()) && (argc() > 2) && (argv(2) === 'view')) {
+ $channel = App::get_channel();
$which = $channel['channel_address'];
$profile = argv(1);
}
- $channel = channelx_by_nick($which);
+
+ // Do not use channelx_by_nick() here since it will dismiss deleted channels.
+ // We need to provide zotinfo for deleted channels so that directories can pick up the info.
+ $r = q("SELECT * FROM channel left join xchan on channel_hash = xchan_hash WHERE channel_address = '%s' LIMIT 1",
+ dbesc($which)
+ );
+
+ $channel = $r[0];
+
if (!$channel) {
http_status_exit(404, 'Not found');
}
@@ -83,12 +91,17 @@ class Channel extends Controller {
'Digest' => HTTPSig::generate_digest_header($data),
'(request-target)' => strtolower($_SERVER['REQUEST_METHOD']) . ' ' . $_SERVER['REQUEST_URI']
];
- $h = HTTPSig::create_sig($headers, $channel['channel_prvkey'], channel_url($channel));
+
+ $h = HTTPSig::create_sig($headers, $channel['channel_prvkey'], channel_url($channel));
HTTPSig::set_headers($h);
echo $data;
killme();
}
+ if ($channel['channel_removed']) {
+ http_status_exit(404, 'Not found');
+ }
+
if (ActivityStreams::is_as_request($channel)) {
// Somebody may attempt an ActivityStreams fetch on one of our message permalinks
diff --git a/Zotlabs/Module/Pubstream.php b/Zotlabs/Module/Pubstream.php
index 113f0a196..9c63c735d 100644
--- a/Zotlabs/Module/Pubstream.php
+++ b/Zotlabs/Module/Pubstream.php
@@ -197,7 +197,7 @@ class Pubstream extends \Zotlabs\Web\Controller {
if($update) {
- $ordering = "commented";
+ $ordering = get_config('system', 'pubstream_ordering', 'commented');
if($load) {
if($mid) {
diff --git a/Zotlabs/Module/Removeme.php b/Zotlabs/Module/Removeme.php
index 876d61ca6..a0697675b 100644
--- a/Zotlabs/Module/Removeme.php
+++ b/Zotlabs/Module/Removeme.php
@@ -5,54 +5,54 @@ namespace Zotlabs\Module;
class Removeme extends \Zotlabs\Web\Controller {
function post() {
-
+
if(! local_channel())
return;
-
+
if($_SESSION['delegate'])
return;
-
+
if((! x($_POST,'qxz_password')) || (! strlen(trim($_POST['qxz_password']))))
return;
-
+
if((! x($_POST,'verify')) || (! strlen(trim($_POST['verify']))))
return;
-
+
if($_POST['verify'] !== $_SESSION['remove_account_verify'])
return;
-
-
+
+
$account = \App::get_account();
-
-
+
+
$x = account_verify_password($account['account_email'],$_POST['qxz_password']);
if(! ($x && $x['account']))
return;
-
+
if($account['account_password_changed'] > NULL_DATE) {
$d1 = datetime_convert('UTC','UTC','now - 48 hours');
- if($account['account_password_changed'] > d1) {
+ if($account['account_password_changed'] > $d1) {
notice( t('Channel removals are not allowed within 48 hours of changing the account password.') . EOL);
return;
}
}
-
+
$global_remove = 0; //intval($_POST['global']);
channel_remove(local_channel(),1 - $global_remove,true);
-
+
}
-
-
+
+
function get() {
-
+
if(! local_channel())
goaway(z_root());
-
+
$hash = random_string();
-
+
$_SESSION['remove_account_verify'] = $hash;
-
+
$tpl = get_markup_template('removeme.tpl');
$o .= replace_macros($tpl, array(
'$basedir' => z_root(),
@@ -63,9 +63,9 @@ class Removeme extends \Zotlabs\Web\Controller {
// '$global' => [ 'global', t('Remove this channel and all its clones from the network'), false, t('By default only the instance of the channel located on this hub will be removed from the network'), [ t('No'),t('Yes') ] ],
'$submit' => t('Remove Channel')
));
-
- return $o;
-
+
+ return $o;
+
}
-
+
}