if (preg_match_all("(\[url=([$URLSearchString]*)\]\s*\[img\]([$URLSearchString]*)\[\/img\]\s*\[\/url\])ism", $body, $pictures, PREG_SET_ORDER)) {
if ((count($pictures) == 1) && !$has_title) {
if (!empty($item['object-type']) && ($item['object-type'] == ACTIVITY_OBJ_IMAGE)) {
- $data = ['url' => $pictures[0][1], 'type' => 'photo'];
+ // Replace the preview picture with the real picture
+ $url = str_replace('-1.', '-0.', $pictures[0][2]);
+ $data = ['url' => $url, 'type' => 'photo'];
} else {
// Checking, if the link goes to a picture
$data = ParseUrl::getSiteinfoCached($pictures[0][1], true);
if (!empty($target_item)) {
Logger::log('Calling hooks for ' . $cmd . ' ' . $target_id, Logger::DEBUG);
- if (in_array($cmd, [Delivery::POST, Delivery::POKE])) {
- ItemDeliveryData::update($target_item['id'], ['queue_count' => $delivery_queue_count]);
- }
-
Hook::fork($a->queue['priority'], 'notifier_normal', $target_item);
Hook::callAll('notifier_end', $target_item);
+
+ // Workaround for pure connector posts
+ if ($delivery_queue_count == 0) {
+ ItemDeliveryData::incrementQueueDone($target_item['id']);
+ $delivery_queue_count = 1;
+ }
+
+ if (in_array($cmd, [Delivery::POST, Delivery::POKE])) {
+ ItemDeliveryData::update($target_item['id'], ['queue_count' => $delivery_queue_count]);
+ }
}
return;