aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorredmatrix <git@macgirvin.com>2016-01-20 23:16:12 -0800
committerredmatrix <git@macgirvin.com>2016-01-20 23:16:12 -0800
commit1d891984441fa2f4aa8e311191da23e9ddd6e928 (patch)
tree0a558e33ed4b77a56186721cf13844ba7b28af24
parent8c5d5b8e1c1bda6281af4cc291e3e391d590a9ce (diff)
downloadvolse-hubzilla-1d891984441fa2f4aa8e311191da23e9ddd6e928.tar.gz
volse-hubzilla-1d891984441fa2f4aa8e311191da23e9ddd6e928.tar.bz2
volse-hubzilla-1d891984441fa2f4aa8e311191da23e9ddd6e928.zip
issue #263 - account_default_channel not set to 0 when last channel of an account is removed
-rw-r--r--include/Contact.php6
-rw-r--r--mod/item.php21
-rw-r--r--version.inc2
3 files changed, 15 insertions, 14 deletions
diff --git a/include/Contact.php b/include/Contact.php
index 3bd5f9936..611371db6 100644
--- a/include/Contact.php
+++ b/include/Contact.php
@@ -331,6 +331,7 @@ function channel_remove($channel_id, $local = true, $unset_session=true) {
dbesc(datetime_convert()),
intval($channel_id)
);
+
// if this was the default channel, set another one as default
if($a->account['account_default_channel'] == $channel_id) {
$r = q("select channel_id from channel where channel_account_id = %d and channel_removed = 0 limit 1",
@@ -344,12 +345,11 @@ function channel_remove($channel_id, $local = true, $unset_session=true) {
}
else {
$rr = q("update account set account_default_channel = 0 where account_id = %d",
- intval($r[0]['channel_id']),
- intval($a->account['account_id']));
+ intval($a->account['account_id'])
+ );
}
}
-
logger('deleting hublocs',LOGGER_DEBUG);
$r = q("update hubloc set hubloc_deleted = 1 where hubloc_hash = '%s' and hubloc_url = '%s' ",
diff --git a/mod/item.php b/mod/item.php
index f100c9dfe..fdc768c67 100644
--- a/mod/item.php
+++ b/mod/item.php
@@ -817,25 +817,26 @@ function item_post(&$a) {
dbesc($body)
);
- if($z && $z[0]['created'] > datetime_convert('UTC','UTC', 'now - 2 minutes')) {
- $datarray['cancel'] = 1;
- notice( t('Duplicate post suppressed.') . EOL);
- logger('Duplicate post. Faking plugin cancel.');
+ if($z) {
+ foreach($z as $zz) {
+ if($zz['created'] > datetime_convert('UTC','UTC', 'now - 2 minutes')) {
+ $datarray['cancel'] = 1;
+ notice( t('Duplicate post suppressed.') . EOL);
+ logger('Duplicate post. Faking plugin cancel.');
+ }
+ }
}
}
call_hooks('post_local',$datarray);
if(x($datarray,'cancel')) {
- logger('mod_item: post cancelled by plugin.');
- if($return_path) {
+ logger('mod_item: post cancelled by plugin or duplicate suppressed.');
+ if($return_path)
goaway($a->get_baseurl() . "/" . $return_path);
- }
$json = array('cancel' => 1);
- if(x($_REQUEST,'jsreload') && strlen($_REQUEST['jsreload']))
- $json['reload'] = $a->get_baseurl() . '/' . $_REQUEST['jsreload'];
-
+ $json['reload'] = $a->get_baseurl() . '/' . $_REQUEST['jsreload'];
echo json_encode($json);
killme();
}
diff --git a/version.inc b/version.inc
index fb02d7c69..f5b62614f 100644
--- a/version.inc
+++ b/version.inc
@@ -1 +1 @@
-2016-01-19.1283H
+2016-01-20.1284H