Merge remote-tracking branch 'mike/master' into dev

This commit is contained in:
Mario Vavti 2018-09-19 11:23:38 +02:00
commit ec7cbe272a
6 changed files with 41 additions and 16 deletions

View File

@ -60,7 +60,7 @@ class Cron {
drop_item($rr['id'],false,(($rr['item_wall']) ? DROPITEM_PHASE1 : DROPITEM_NORMAL));
if($rr['item_wall']) {
// The notifier isn't normally invoked unless item_drop is interactive.
Zotlabs\Daemon\Master::Summon( [ 'Notifier', 'drop', $rr['id'] ] );
Master::Summon( [ 'Notifier', 'drop', $rr['id'] ] );
}
}
}

View File

@ -26,14 +26,14 @@ class _1220 {
if(ACTIVE_DBTYPE == DBTYPE_MYSQL) {
$r = q("CREATE TABLE IF NOT EXISTS listeners (
id int(11) NOT NULL AUTO_INCREMENT,
target_id varchar(191) CHARACTER SET utf8mb4 NOT NULL DEFAULT '',
portable_id varchar(191) CHARACTER SET utf8mb4 NOT NULL DEFAULT '',
ltype int(11) NOT NULL DEFAULT '0',
target_id varchar(191) NOT NULL DEFAULT '',
portable_id varchar(191) NOT NULL DEFAULT '',
ltype int(11) NOT NULL DEFAULT 0,
PRIMARY KEY (id),
KEY target_id (target_id),
KEY portable_id (portable_id),
KEY ltype (ltype)
) ENGINE=InnoDB DEFAULT CHARSET=utf8");
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4");
}

View File

@ -4,6 +4,7 @@
require_once('include/crypto.php');
require_once('include/attach.php');
require_once('include/msglib.php');
function mail_prepare_binary($item) {
@ -498,11 +499,8 @@ function private_messages_drop($channel_id, $messageitem_id, $drop_conversation
}
else {
xchan_mail_query($x[0]);
$x[0]['mail_deleted'] = true;
$r = q("DELETE FROM mail WHERE id = %d AND channel_id = %d",
intval($messageitem_id),
intval($channel_id)
);
$x[0]['mail_deleted'] = true;
msg_drop($messageitem_id, $channel_id, $x[0]['conv_guid']);
build_sync_packet($channel_id,array('mail' => array(encode_mail($x,true))));
return true;
}

28
include/msglib.php Normal file
View File

@ -0,0 +1,28 @@
<?php
/* Common private message processing functions */
function msg_drop($message_id, $channel_id, $conv_guid) {
// Delete message
$r = q("DELETE FROM mail WHERE id = %d AND channel_id = %d",
intval($message_id),
intval($channel_id)
);
// Get new first message...
$r = q("SELECT mid, parent_mid FROM mail WHERE conv_guid = '%s' AND channel_id = %d ORDER BY id ASC LIMIT 1",
dbesc($conv_guid),
intval($channel_id)
);
// ...and if wasn't first before...
if ($r[0]['mid'] != $r[0]['parent_mid']) {
// ...refer whole thread to it
q("UPDATE mail SET parent_mid = '%s', mail_isreply = abs(mail_isreply - 1) WHERE conv_guid = '%s' AND channel_id = %d",
dbesc($r[0]['mid']),
dbesc($conv_guid),
intval($channel_id)
);
}
}

View File

@ -12,6 +12,7 @@ require_once('include/crypto.php');
require_once('include/items.php');
require_once('include/queue_fn.php');
require_once('include/perm_upgrade.php');
require_once('include/msglib.php');
/**
@ -2331,16 +2332,13 @@ function process_mail_delivery($sender, $arr, $deliveries) {
}
$r = q("select id from mail where mid = '%s' and channel_id = %d limit 1",
$r = q("select id, conv_guid from mail where mid = '%s' and channel_id = %d limit 1",
dbesc($arr['mid']),
intval($channel['channel_id'])
);
if($r) {
if(intval($arr['mail_recalled'])) {
$x = q("delete from mail where id = %d and channel_id = %d",
intval($r[0]['id']),
intval($channel['channel_id'])
);
msg_drop($r[0]['id'], $channel['channel_id'], $r[0]['conv_guid']);
$DR->update('mail recalled');
$result[] = $DR->get();
logger('mail_recalled');

View File

@ -11,7 +11,8 @@ $(document).ready(function() {
$("#photo-edit-newtag").contact_autocomplete(baseurl + '/acl', 'a', false, function(data) {
$("#photo-edit-newtag").val('@' + data.name);
});
$(".comment-edit-form textarea").editor_autocomplete(baseurl+"/acl?f=&n=1");
$('textarea').bbco_autocomplete('bbcode');
showHideBodyTextarea();