sforkowany z mirror/friendica
Merge pull request #4351 from annando/item-move
Most functions now moved from include/items.php2022.09-rc
commit
174ae78ec1
|
@ -4731,7 +4731,7 @@ function post_photo_item($hash, $allow_cid, $deny_cid, $allow_gid, $deny_gid, $f
|
||||||
. '[/url]';
|
. '[/url]';
|
||||||
|
|
||||||
// do the magic for storing the item in the database and trigger the federation to other contacts
|
// do the magic for storing the item in the database and trigger the federation to other contacts
|
||||||
item_store($arr);
|
Item::insert($arr);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -11,6 +11,7 @@ use Friendica\Core\L10n;
|
||||||
use Friendica\Core\PConfig;
|
use Friendica\Core\PConfig;
|
||||||
use Friendica\Core\System;
|
use Friendica\Core\System;
|
||||||
use Friendica\Database\DBM;
|
use Friendica\Database\DBM;
|
||||||
|
use Friendica\Model\Item;
|
||||||
use Friendica\Model\Profile;
|
use Friendica\Model\Profile;
|
||||||
use Friendica\Util\Map;
|
use Friendica\Util\Map;
|
||||||
|
|
||||||
|
@ -399,7 +400,7 @@ function event_store($arr) {
|
||||||
$item_arr['object'] .= '<content>' . xmlify(format_event_bbcode($event)) . '</content>';
|
$item_arr['object'] .= '<content>' . xmlify(format_event_bbcode($event)) . '</content>';
|
||||||
$item_arr['object'] .= '</object>' . "\n";
|
$item_arr['object'] .= '</object>' . "\n";
|
||||||
|
|
||||||
$item_id = item_store($item_arr);
|
$item_id = Item::insert($item_arr);
|
||||||
if ($item_id) {
|
if ($item_id) {
|
||||||
q("UPDATE `item` SET `event-id` = %d WHERE `uid` = %d AND `id` = %d",
|
q("UPDATE `item` SET `event-id` = %d WHERE `uid` = %d AND `id` = %d",
|
||||||
intval($event['id']),
|
intval($event['id']),
|
||||||
|
|
1467
include/items.php
1467
include/items.php
Plik diff jest za duży
Load Diff
|
@ -9,6 +9,7 @@ use Friendica\Core\System;
|
||||||
use Friendica\Core\Worker;
|
use Friendica\Core\Worker;
|
||||||
use Friendica\Database\DBM;
|
use Friendica\Database\DBM;
|
||||||
use Friendica\Model\Contact;
|
use Friendica\Model\Contact;
|
||||||
|
use Friendica\Model\Item;
|
||||||
use Friendica\Protocol\Diaspora;
|
use Friendica\Protocol\Diaspora;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -244,7 +245,7 @@ EOT;
|
||||||
'unseen' => 1,
|
'unseen' => 1,
|
||||||
];
|
];
|
||||||
|
|
||||||
$new_item_id = item_store($new_item);
|
$new_item_id = Item::insert($new_item);
|
||||||
|
|
||||||
// @todo: Explain this block
|
// @todo: Explain this block
|
||||||
if (! $item['visible']) {
|
if (! $item['visible']) {
|
||||||
|
|
|
@ -26,6 +26,7 @@ use Friendica\Core\Worker;
|
||||||
use Friendica\Database\DBM;
|
use Friendica\Database\DBM;
|
||||||
use Friendica\Model\Contact;
|
use Friendica\Model\Contact;
|
||||||
use Friendica\Model\Group;
|
use Friendica\Model\Group;
|
||||||
|
use Friendica\Model\Item;
|
||||||
use Friendica\Model\User;
|
use Friendica\Model\User;
|
||||||
use Friendica\Network\Probe;
|
use Friendica\Network\Probe;
|
||||||
use Friendica\Protocol\Diaspora;
|
use Friendica\Protocol\Diaspora;
|
||||||
|
@ -439,7 +440,7 @@ function dfrn_confirm_post(App $a, $handsfree = null)
|
||||||
$arr['deny_cid'] = $user['deny_cid'];
|
$arr['deny_cid'] = $user['deny_cid'];
|
||||||
$arr['deny_gid'] = $user['deny_gid'];
|
$arr['deny_gid'] = $user['deny_gid'];
|
||||||
|
|
||||||
$i = item_store($arr);
|
$i = Item::insert($arr);
|
||||||
if ($i) {
|
if ($i) {
|
||||||
Worker::add(PRIORITY_HIGH, "Notifier", "activity", $i);
|
Worker::add(PRIORITY_HIGH, "Notifier", "activity", $i);
|
||||||
}
|
}
|
||||||
|
@ -701,7 +702,7 @@ function dfrn_confirm_post(App $a, $handsfree = null)
|
||||||
$arr['deny_cid'] = $user['deny_cid'];
|
$arr['deny_cid'] = $user['deny_cid'];
|
||||||
$arr['deny_gid'] = $user['deny_gid'];
|
$arr['deny_gid'] = $user['deny_gid'];
|
||||||
|
|
||||||
$i = item_store($arr);
|
$i = Item::insert($arr);
|
||||||
if ($i) {
|
if ($i) {
|
||||||
Worker::add(PRIORITY_HIGH, "Notifier", "activity", $i);
|
Worker::add(PRIORITY_HIGH, "Notifier", "activity", $i);
|
||||||
}
|
}
|
||||||
|
|
|
@ -729,7 +729,7 @@ function item_post(App $a) {
|
||||||
unset($datarray['self']);
|
unset($datarray['self']);
|
||||||
unset($datarray['api_source']);
|
unset($datarray['api_source']);
|
||||||
|
|
||||||
$post_id = item_store($datarray);
|
$post_id = Item::insert($datarray);
|
||||||
|
|
||||||
if (!$post_id) {
|
if (!$post_id) {
|
||||||
logger("Item wasn't stored.");
|
logger("Item wasn't stored.");
|
||||||
|
|
|
@ -8,6 +8,7 @@ use Friendica\Core\L10n;
|
||||||
use Friendica\Core\System;
|
use Friendica\Core\System;
|
||||||
use Friendica\Database\DBM;
|
use Friendica\Database\DBM;
|
||||||
use Friendica\Module\Login;
|
use Friendica\Module\Login;
|
||||||
|
use Friendica\Model\Item;
|
||||||
|
|
||||||
function notify_init(App $a)
|
function notify_init(App $a)
|
||||||
{
|
{
|
||||||
|
@ -27,7 +28,7 @@ function notify_init(App $a)
|
||||||
require_once("include/items.php");
|
require_once("include/items.php");
|
||||||
$urldata = parse_url($note['link']);
|
$urldata = parse_url($note['link']);
|
||||||
$guid = basename($urldata["path"]);
|
$guid = basename($urldata["path"]);
|
||||||
$itemdata = get_item_id($guid, local_user());
|
$itemdata = Item::getIdAndNickByGuid($guid, local_user());
|
||||||
if ($itemdata["id"] != 0) {
|
if ($itemdata["id"] != 0) {
|
||||||
$note['link'] = System::baseUrl().'/display/'.$itemdata["nick"].'/'.$itemdata["id"];
|
$note['link'] = System::baseUrl().'/display/'.$itemdata["nick"].'/'.$itemdata["id"];
|
||||||
}
|
}
|
||||||
|
|
|
@ -13,6 +13,7 @@ use Friendica\Core\Worker;
|
||||||
use Friendica\Database\DBM;
|
use Friendica\Database\DBM;
|
||||||
use Friendica\Model\Contact;
|
use Friendica\Model\Contact;
|
||||||
use Friendica\Model\Group;
|
use Friendica\Model\Group;
|
||||||
|
use Friendica\Model\Item;
|
||||||
use Friendica\Model\Photo;
|
use Friendica\Model\Photo;
|
||||||
use Friendica\Model\Profile;
|
use Friendica\Model\Profile;
|
||||||
use Friendica\Network\Probe;
|
use Friendica\Network\Probe;
|
||||||
|
@ -519,7 +520,7 @@ function photos_post(App $a)
|
||||||
. '[img]' . System::baseUrl() . '/photo/' . $p[0]['resource-id'] . '-' . $p[0]['scale'] . '.'. $ext . '[/img]'
|
. '[img]' . System::baseUrl() . '/photo/' . $p[0]['resource-id'] . '-' . $p[0]['scale'] . '.'. $ext . '[/img]'
|
||||||
. '[/url]';
|
. '[/url]';
|
||||||
|
|
||||||
$item_id = item_store($arr);
|
$item_id = Item::insert($arr);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($item_id) {
|
if ($item_id) {
|
||||||
|
@ -709,7 +710,7 @@ function photos_post(App $a)
|
||||||
. System::baseUrl() . '/photos/' . $owner_record['nickname'] . '/image/' . $p[0]['resource-id'] . '</id>';
|
. System::baseUrl() . '/photos/' . $owner_record['nickname'] . '/image/' . $p[0]['resource-id'] . '</id>';
|
||||||
$arr['target'] .= '<link>' . xmlify('<link rel="alternate" type="text/html" href="' . System::baseUrl() . '/photos/' . $owner_record['nickname'] . '/image/' . $p[0]['resource-id'] . '" />' . "\n" . '<link rel="preview" type="'.$p[0]['type'].'" href="' . System::baseUrl() . "/photo/" . $p[0]['resource-id'] . '-' . $best . '.' . $ext . '" />') . '</link></target>';
|
$arr['target'] .= '<link>' . xmlify('<link rel="alternate" type="text/html" href="' . System::baseUrl() . '/photos/' . $owner_record['nickname'] . '/image/' . $p[0]['resource-id'] . '" />' . "\n" . '<link rel="preview" type="'.$p[0]['type'].'" href="' . System::baseUrl() . "/photo/" . $p[0]['resource-id'] . '-' . $best . '.' . $ext . '" />') . '</link></target>';
|
||||||
|
|
||||||
$item_id = item_store($arr);
|
$item_id = Item::insert($arr);
|
||||||
if ($item_id) {
|
if ($item_id) {
|
||||||
Worker::add(PRIORITY_HIGH, "Notifier", "tag", $item_id);
|
Worker::add(PRIORITY_HIGH, "Notifier", "tag", $item_id);
|
||||||
}
|
}
|
||||||
|
@ -931,7 +932,7 @@ function photos_post(App $a)
|
||||||
. '[img]' . System::baseUrl() . "/photo/{$photo_hash}-{$smallest}.".$Image->getExt() . '[/img]'
|
. '[img]' . System::baseUrl() . "/photo/{$photo_hash}-{$smallest}.".$Image->getExt() . '[/img]'
|
||||||
. '[/url]';
|
. '[/url]';
|
||||||
|
|
||||||
$item_id = item_store($arr);
|
$item_id = Item::insert($arr);
|
||||||
// Update the photo albums cache
|
// Update the photo albums cache
|
||||||
Photo::clearAlbumCache($page_owner_uid);
|
Photo::clearAlbumCache($page_owner_uid);
|
||||||
|
|
||||||
|
|
|
@ -19,6 +19,7 @@ use Friendica\Core\L10n;
|
||||||
use Friendica\Core\System;
|
use Friendica\Core\System;
|
||||||
use Friendica\Core\Worker;
|
use Friendica\Core\Worker;
|
||||||
use Friendica\Database\DBM;
|
use Friendica\Database\DBM;
|
||||||
|
use Friendica\Model\Item;
|
||||||
|
|
||||||
require_once 'include/security.php';
|
require_once 'include/security.php';
|
||||||
require_once 'include/bbcode.php';
|
require_once 'include/bbcode.php';
|
||||||
|
@ -132,7 +133,7 @@ function poke_init(App $a) {
|
||||||
$arr['object'] .= xmlify('<link rel="photo" type="image/jpeg" href="' . $target['photo'] . '" />' . "\n");
|
$arr['object'] .= xmlify('<link rel="photo" type="image/jpeg" href="' . $target['photo'] . '" />' . "\n");
|
||||||
$arr['object'] .= '</link></object>' . "\n";
|
$arr['object'] .= '</link></object>' . "\n";
|
||||||
|
|
||||||
$item_id = item_store($arr);
|
$item_id = Item::insert($arr);
|
||||||
if($item_id) {
|
if($item_id) {
|
||||||
//q("UPDATE `item` SET `plink` = '%s' WHERE `uid` = %d AND `id` = %d",
|
//q("UPDATE `item` SET `plink` = '%s' WHERE `uid` = %d AND `id` = %d",
|
||||||
// dbesc(System::baseUrl() . '/display/' . $poster['nickname'] . '/' . $item_id),
|
// dbesc(System::baseUrl() . '/display/' . $poster['nickname'] . '/' . $item_id),
|
||||||
|
|
|
@ -15,6 +15,7 @@ use Friendica\Core\Worker;
|
||||||
use Friendica\Database\DBM;
|
use Friendica\Database\DBM;
|
||||||
use Friendica\Model\GContact;
|
use Friendica\Model\GContact;
|
||||||
use Friendica\Model\Profile;
|
use Friendica\Model\Profile;
|
||||||
|
use Friendica\Model\Item;
|
||||||
use Friendica\Network\Probe;
|
use Friendica\Network\Probe;
|
||||||
|
|
||||||
function profiles_init(App $a) {
|
function profiles_init(App $a) {
|
||||||
|
@ -601,7 +602,7 @@ function profile_activity($changed, $value) {
|
||||||
$arr['deny_cid'] = $a->user['deny_cid'];
|
$arr['deny_cid'] = $a->user['deny_cid'];
|
||||||
$arr['deny_gid'] = $a->user['deny_gid'];
|
$arr['deny_gid'] = $a->user['deny_gid'];
|
||||||
|
|
||||||
$i = item_store($arr);
|
$i = Item::insert($arr);
|
||||||
if ($i) {
|
if ($i) {
|
||||||
Worker::add(PRIORITY_HIGH, "Notifier", "activity", $i);
|
Worker::add(PRIORITY_HIGH, "Notifier", "activity", $i);
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,6 +7,7 @@ use Friendica\Core\Addon;
|
||||||
use Friendica\Core\L10n;
|
use Friendica\Core\L10n;
|
||||||
use Friendica\Core\System;
|
use Friendica\Core\System;
|
||||||
use Friendica\Database\DBM;
|
use Friendica\Database\DBM;
|
||||||
|
use Friendica\Model\Item;
|
||||||
|
|
||||||
require_once 'include/security.php';
|
require_once 'include/security.php';
|
||||||
require_once 'include/bbcode.php';
|
require_once 'include/bbcode.php';
|
||||||
|
@ -149,7 +150,7 @@ EOT;
|
||||||
$arr['visible'] = 1;
|
$arr['visible'] = 1;
|
||||||
$arr['unseen'] = 1;
|
$arr['unseen'] = 1;
|
||||||
|
|
||||||
$post_id = item_store($arr);
|
$post_id = Item::insert($arr);
|
||||||
|
|
||||||
if (! $item['visible']) {
|
if (! $item['visible']) {
|
||||||
$r = q("UPDATE `item` SET `visible` = 1 WHERE `id` = %d AND `uid` = %d",
|
$r = q("UPDATE `item` SET `visible` = 1 WHERE `id` = %d AND `uid` = %d",
|
||||||
|
|
|
@ -8,6 +8,7 @@ use Friendica\Core\L10n;
|
||||||
use Friendica\Core\System;
|
use Friendica\Core\System;
|
||||||
use Friendica\Core\Worker;
|
use Friendica\Core\Worker;
|
||||||
use Friendica\Database\DBM;
|
use Friendica\Database\DBM;
|
||||||
|
use Friendica\Model\Item;
|
||||||
|
|
||||||
require_once 'include/security.php';
|
require_once 'include/security.php';
|
||||||
require_once 'include/bbcode.php';
|
require_once 'include/bbcode.php';
|
||||||
|
@ -145,13 +146,7 @@ EOT;
|
||||||
$arr['unseen'] = 1;
|
$arr['unseen'] = 1;
|
||||||
$arr['origin'] = 1;
|
$arr['origin'] = 1;
|
||||||
|
|
||||||
$post_id = item_store($arr);
|
$post_id = Item::insert($arr);
|
||||||
|
|
||||||
// q("UPDATE `item` set plink = '%s' where id = %d",
|
|
||||||
// dbesc(System::baseUrl() . '/display/' . $owner_nick . '/' . $post_id),
|
|
||||||
// intval($post_id)
|
|
||||||
// );
|
|
||||||
|
|
||||||
|
|
||||||
if(! $item['visible']) {
|
if(! $item['visible']) {
|
||||||
$r = q("UPDATE `item` SET `visible` = 1 WHERE `id` = %d AND `uid` = %d",
|
$r = q("UPDATE `item` SET `visible` = 1 WHERE `id` = %d AND `uid` = %d",
|
||||||
|
|
|
@ -549,4 +549,91 @@ class BBCode
|
||||||
$s = htmlspecialchars($s, ENT_NOQUOTES, 'UTF-8');
|
$s = htmlspecialchars($s, ENT_NOQUOTES, 'UTF-8');
|
||||||
return $s;
|
return $s;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The purpose of this function is to apply system message length limits to
|
||||||
|
* imported messages without including any embedded photos in the length
|
||||||
|
*
|
||||||
|
* @brief Truncates imported message body string length to max_import_size
|
||||||
|
* @param string $body
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public static function limitBodySize($body)
|
||||||
|
{
|
||||||
|
$maxlen = get_max_import_size();
|
||||||
|
|
||||||
|
// If the length of the body, including the embedded images, is smaller
|
||||||
|
// than the maximum, then don't waste time looking for the images
|
||||||
|
if ($maxlen && (strlen($body) > $maxlen)) {
|
||||||
|
|
||||||
|
logger('the total body length exceeds the limit', LOGGER_DEBUG);
|
||||||
|
|
||||||
|
$orig_body = $body;
|
||||||
|
$new_body = '';
|
||||||
|
$textlen = 0;
|
||||||
|
|
||||||
|
$img_start = strpos($orig_body, '[img');
|
||||||
|
$img_st_close = ($img_start !== false ? strpos(substr($orig_body, $img_start), ']') : false);
|
||||||
|
$img_end = ($img_start !== false ? strpos(substr($orig_body, $img_start), '[/img]') : false);
|
||||||
|
while (($img_st_close !== false) && ($img_end !== false)) {
|
||||||
|
|
||||||
|
$img_st_close++; // make it point to AFTER the closing bracket
|
||||||
|
$img_end += $img_start;
|
||||||
|
$img_end += strlen('[/img]');
|
||||||
|
|
||||||
|
if (!strcmp(substr($orig_body, $img_start + $img_st_close, 5), 'data:')) {
|
||||||
|
// This is an embedded image
|
||||||
|
|
||||||
|
if (($textlen + $img_start) > $maxlen) {
|
||||||
|
if ($textlen < $maxlen) {
|
||||||
|
logger('the limit happens before an embedded image', LOGGER_DEBUG);
|
||||||
|
$new_body = $new_body . substr($orig_body, 0, $maxlen - $textlen);
|
||||||
|
$textlen = $maxlen;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
$new_body = $new_body . substr($orig_body, 0, $img_start);
|
||||||
|
$textlen += $img_start;
|
||||||
|
}
|
||||||
|
|
||||||
|
$new_body = $new_body . substr($orig_body, $img_start, $img_end - $img_start);
|
||||||
|
} else {
|
||||||
|
|
||||||
|
if (($textlen + $img_end) > $maxlen) {
|
||||||
|
if ($textlen < $maxlen) {
|
||||||
|
logger('the limit happens before the end of a non-embedded image', LOGGER_DEBUG);
|
||||||
|
$new_body = $new_body . substr($orig_body, 0, $maxlen - $textlen);
|
||||||
|
$textlen = $maxlen;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
$new_body = $new_body . substr($orig_body, 0, $img_end);
|
||||||
|
$textlen += $img_end;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$orig_body = substr($orig_body, $img_end);
|
||||||
|
|
||||||
|
if ($orig_body === false) {
|
||||||
|
// in case the body ends on a closing image tag
|
||||||
|
$orig_body = '';
|
||||||
|
}
|
||||||
|
|
||||||
|
$img_start = strpos($orig_body, '[img');
|
||||||
|
$img_st_close = ($img_start !== false ? strpos(substr($orig_body, $img_start), ']') : false);
|
||||||
|
$img_end = ($img_start !== false ? strpos(substr($orig_body, $img_start), '[/img]') : false);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (($textlen + strlen($orig_body)) > $maxlen) {
|
||||||
|
if ($textlen < $maxlen) {
|
||||||
|
logger('the limit happens after the end of the last image', LOGGER_DEBUG);
|
||||||
|
$new_body = $new_body . substr($orig_body, 0, $maxlen - $textlen);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
logger('the text size with embedded images extracted did not violate the limit', LOGGER_DEBUG);
|
||||||
|
$new_body = $new_body . $orig_body;
|
||||||
|
}
|
||||||
|
|
||||||
|
return $new_body;
|
||||||
|
} else {
|
||||||
|
return $body;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -60,7 +60,7 @@ class System extends BaseObject
|
||||||
$previous = ['class' => '', 'function' => ''];
|
$previous = ['class' => '', 'function' => ''];
|
||||||
|
|
||||||
// The ignore list contains all functions that are only wrapper functions
|
// The ignore list contains all functions that are only wrapper functions
|
||||||
$ignore = ['get_config', 'get_pconfig', 'set_config', 'set_pconfig', 'fetch_url', 'probe_url'];
|
$ignore = ['fetchUrl'];
|
||||||
|
|
||||||
while ($func = array_pop($trace)) {
|
while ($func = array_pop($trace)) {
|
||||||
if (!empty($func['class'])) {
|
if (!empty($func['class'])) {
|
||||||
|
|
|
@ -1354,4 +1354,113 @@ class Contact extends BaseObject
|
||||||
|
|
||||||
return $contact;
|
return $contact;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static function addRelationship($importer, $contact, $datarray, $item, $sharing = false) {
|
||||||
|
$url = notags(trim($datarray['author-link']));
|
||||||
|
$name = notags(trim($datarray['author-name']));
|
||||||
|
$photo = notags(trim($datarray['author-avatar']));
|
||||||
|
|
||||||
|
if (is_object($item)) {
|
||||||
|
$rawtag = $item->get_item_tags(NAMESPACE_ACTIVITY,'actor');
|
||||||
|
if ($rawtag && $rawtag[0]['child'][NAMESPACE_POCO]['preferredUsername'][0]['data']) {
|
||||||
|
$nick = $rawtag[0]['child'][NAMESPACE_POCO]['preferredUsername'][0]['data'];
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
$nick = $item;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (is_array($contact)) {
|
||||||
|
if (($contact['network'] == NETWORK_OSTATUS && $contact['rel'] == CONTACT_IS_SHARING)
|
||||||
|
|| ($sharing && $contact['rel'] == CONTACT_IS_FOLLOWER)) {
|
||||||
|
dba::update('contact', ['rel' => CONTACT_IS_FRIEND, 'writable' => true],
|
||||||
|
['id' => $contact['id'], 'uid' => $importer['uid']]);
|
||||||
|
}
|
||||||
|
// send email notification to owner?
|
||||||
|
} else {
|
||||||
|
// create contact record
|
||||||
|
q("INSERT INTO `contact` (`uid`, `created`, `url`, `nurl`, `name`, `nick`, `photo`, `network`, `rel`,
|
||||||
|
`blocked`, `readonly`, `pending`, `writable`)
|
||||||
|
VALUES (%d, '%s', '%s', '%s', '%s', '%s', '%s', '%s', %d, 0, 0, 1, 1)",
|
||||||
|
intval($importer['uid']),
|
||||||
|
dbesc(datetime_convert()),
|
||||||
|
dbesc($url),
|
||||||
|
dbesc(normalise_link($url)),
|
||||||
|
dbesc($name),
|
||||||
|
dbesc($nick),
|
||||||
|
dbesc($photo),
|
||||||
|
dbesc(NETWORK_OSTATUS),
|
||||||
|
intval(CONTACT_IS_FOLLOWER)
|
||||||
|
);
|
||||||
|
|
||||||
|
$r = q("SELECT `id`, `network` FROM `contact` WHERE `uid` = %d AND `url` = '%s' AND `pending` = 1 LIMIT 1",
|
||||||
|
intval($importer['uid']),
|
||||||
|
dbesc($url)
|
||||||
|
);
|
||||||
|
if (DBM::is_result($r)) {
|
||||||
|
$contact_record = $r[0];
|
||||||
|
Contact::updateAvatar($photo, $importer["uid"], $contact_record["id"], true);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// @TODO Encapsulate this into a function/method
|
||||||
|
$r = q("SELECT * FROM `user` WHERE `uid` = %d LIMIT 1",
|
||||||
|
intval($importer['uid'])
|
||||||
|
);
|
||||||
|
if (DBM::is_result($r) && !in_array($r[0]['page-flags'], [PAGE_SOAPBOX, PAGE_FREELOVE, PAGE_COMMUNITY])) {
|
||||||
|
// create notification
|
||||||
|
$hash = random_string();
|
||||||
|
|
||||||
|
if (is_array($contact_record)) {
|
||||||
|
dba::insert('intro', ['uid' => $importer['uid'], 'contact-id' => $contact_record['id'],
|
||||||
|
'blocked' => false, 'knowyou' => false,
|
||||||
|
'hash' => $hash, 'datetime' => datetime_convert()]);
|
||||||
|
}
|
||||||
|
|
||||||
|
Group::addMember(User::getDefaultGroup($importer['uid'], $contact_record["network"]), $contact_record['id']);
|
||||||
|
|
||||||
|
if (($r[0]['notify-flags'] & NOTIFY_INTRO) &&
|
||||||
|
in_array($r[0]['page-flags'], [PAGE_NORMAL])) {
|
||||||
|
|
||||||
|
notification([
|
||||||
|
'type' => NOTIFY_INTRO,
|
||||||
|
'notify_flags' => $r[0]['notify-flags'],
|
||||||
|
'language' => $r[0]['language'],
|
||||||
|
'to_name' => $r[0]['username'],
|
||||||
|
'to_email' => $r[0]['email'],
|
||||||
|
'uid' => $r[0]['uid'],
|
||||||
|
'link' => System::baseUrl() . '/notifications/intro',
|
||||||
|
'source_name' => ((strlen(stripslashes($contact_record['name']))) ? stripslashes($contact_record['name']) : L10n::t('[Name Withheld]')),
|
||||||
|
'source_link' => $contact_record['url'],
|
||||||
|
'source_photo' => $contact_record['photo'],
|
||||||
|
'verb' => ($sharing ? ACTIVITY_FRIEND : ACTIVITY_FOLLOW),
|
||||||
|
'otype' => 'intro'
|
||||||
|
]);
|
||||||
|
|
||||||
|
}
|
||||||
|
} elseif (DBM::is_result($r) && in_array($r[0]['page-flags'], [PAGE_SOAPBOX, PAGE_FREELOVE, PAGE_COMMUNITY])) {
|
||||||
|
q("UPDATE `contact` SET `pending` = 0 WHERE `uid` = %d AND `url` = '%s' AND `pending` LIMIT 1",
|
||||||
|
intval($importer['uid']),
|
||||||
|
dbesc($url)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function removeFollower($importer, $contact, array $datarray = [], $item = "") {
|
||||||
|
|
||||||
|
if (($contact['rel'] == CONTACT_IS_FRIEND) || ($contact['rel'] == CONTACT_IS_SHARING)) {
|
||||||
|
dba::update('contact', ['rel' => CONTACT_IS_SHARING], ['id' => $contact['id']]);
|
||||||
|
} else {
|
||||||
|
Contact::remove($contact['id']);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function removeSharer($importer, $contact, array $datarray = [], $item = "") {
|
||||||
|
|
||||||
|
if (($contact['rel'] == CONTACT_IS_FRIEND) || ($contact['rel'] == CONTACT_IS_FOLLOWER)) {
|
||||||
|
dba::update('contact', ['rel' => CONTACT_IS_FOLLOWER], ['id' => $contact['id']]);
|
||||||
|
} else {
|
||||||
|
Contact::remove($contact['id']);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
1238
src/Model/Item.php
1238
src/Model/Item.php
Plik diff jest za duży
Load Diff
|
@ -19,6 +19,7 @@ use Friendica\Database\DBM;
|
||||||
use Friendica\Model\Contact;
|
use Friendica\Model\Contact;
|
||||||
use Friendica\Model\GContact;
|
use Friendica\Model\GContact;
|
||||||
use Friendica\Model\Group;
|
use Friendica\Model\Group;
|
||||||
|
use Friendica\Model\Item;
|
||||||
use Friendica\Model\Profile;
|
use Friendica\Model\Profile;
|
||||||
use Friendica\Model\Term;
|
use Friendica\Model\Term;
|
||||||
use Friendica\Model\User;
|
use Friendica\Model\User;
|
||||||
|
@ -27,6 +28,7 @@ use Friendica\Protocol\OStatus;
|
||||||
use Friendica\Util\Crypto;
|
use Friendica\Util\Crypto;
|
||||||
use Friendica\Util\Network;
|
use Friendica\Util\Network;
|
||||||
use Friendica\Util\XML;
|
use Friendica\Util\XML;
|
||||||
|
use Friendica\Content\Text\BBCode;
|
||||||
|
|
||||||
use dba;
|
use dba;
|
||||||
use DOMDocument;
|
use DOMDocument;
|
||||||
|
@ -922,7 +924,7 @@ class DFRN
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($item['allow_cid'] || $item['allow_gid'] || $item['deny_cid'] || $item['deny_gid']) {
|
if ($item['allow_cid'] || $item['allow_gid'] || $item['deny_cid'] || $item['deny_gid']) {
|
||||||
$body = fix_private_photos($item['body'], $owner['uid'], $item, $cid);
|
$body = Item::fixPrivatePhotos($item['body'], $owner['uid'], $item, $cid);
|
||||||
} else {
|
} else {
|
||||||
$body = $item['body'];
|
$body = $item['body'];
|
||||||
}
|
}
|
||||||
|
@ -1059,7 +1061,7 @@ class DFRN
|
||||||
$entry->appendChild($actarg);
|
$entry->appendChild($actarg);
|
||||||
}
|
}
|
||||||
|
|
||||||
$tags = item_getfeedtags($item);
|
$tags = Item::getFeedTags($item);
|
||||||
|
|
||||||
if (count($tags)) {
|
if (count($tags)) {
|
||||||
foreach ($tags as $t) {
|
foreach ($tags as $t) {
|
||||||
|
@ -2214,7 +2216,7 @@ class DFRN
|
||||||
"to_email" => $importer["email"],
|
"to_email" => $importer["email"],
|
||||||
"uid" => $importer["importer_uid"],
|
"uid" => $importer["importer_uid"],
|
||||||
"item" => $item,
|
"item" => $item,
|
||||||
"link" => System::baseUrl()."/display/".urlencode(get_item_guid($posted_id)),
|
"link" => System::baseUrl()."/display/".urlencode(Item::getGuidById($posted_id)),
|
||||||
"source_name" => stripslashes($item["author-name"]),
|
"source_name" => stripslashes($item["author-name"]),
|
||||||
"source_link" => $item["author-link"],
|
"source_link" => $item["author-link"],
|
||||||
"source_photo" => ((link_compare($item["author-link"], $importer["url"]))
|
"source_photo" => ((link_compare($item["author-link"], $importer["url"]))
|
||||||
|
@ -2254,22 +2256,22 @@ class DFRN
|
||||||
// This function once was responsible for DFRN and OStatus.
|
// This function once was responsible for DFRN and OStatus.
|
||||||
if (activity_match($item["verb"], ACTIVITY_FOLLOW)) {
|
if (activity_match($item["verb"], ACTIVITY_FOLLOW)) {
|
||||||
logger("New follower");
|
logger("New follower");
|
||||||
new_follower($importer, $contact, $item, $nickname);
|
Contact::addRelationship($importer, $contact, $item, $nickname);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (activity_match($item["verb"], ACTIVITY_UNFOLLOW)) {
|
if (activity_match($item["verb"], ACTIVITY_UNFOLLOW)) {
|
||||||
logger("Lost follower");
|
logger("Lost follower");
|
||||||
lose_follower($importer, $contact, $item);
|
Contact::removeFollower($importer, $contact, $item);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (activity_match($item["verb"], ACTIVITY_REQ_FRIEND)) {
|
if (activity_match($item["verb"], ACTIVITY_REQ_FRIEND)) {
|
||||||
logger("New friend request");
|
logger("New friend request");
|
||||||
new_follower($importer, $contact, $item, $nickname, true);
|
Contact::addRelationship($importer, $contact, $item, $nickname, true);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (activity_match($item["verb"], ACTIVITY_UNFRIEND)) {
|
if (activity_match($item["verb"], ACTIVITY_UNFRIEND)) {
|
||||||
logger("Lost sharer");
|
logger("Lost sharer");
|
||||||
lose_sharer($importer, $contact, $item);
|
Contact::removeSharer($importer, $contact, $item);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
@ -2448,7 +2450,7 @@ class DFRN
|
||||||
// make sure nobody is trying to sneak some html tags by us
|
// make sure nobody is trying to sneak some html tags by us
|
||||||
$item["body"] = notags(base64url_decode($item["body"]));
|
$item["body"] = notags(base64url_decode($item["body"]));
|
||||||
|
|
||||||
$item["body"] = limit_body_size($item["body"]);
|
$item["body"] = BBCode::limitBodySize($item["body"]);
|
||||||
|
|
||||||
/// @todo Do we really need this check for HTML elements? (It was copied from the old function)
|
/// @todo Do we really need this check for HTML elements? (It was copied from the old function)
|
||||||
if ((strpos($item['body'], '<') !== false) && (strpos($item['body'], '>') !== false)) {
|
if ((strpos($item['body'], '<') !== false) && (strpos($item['body'], '>') !== false)) {
|
||||||
|
@ -2502,7 +2504,7 @@ class DFRN
|
||||||
|
|
||||||
$item["guid"] = $xpath->query("dfrn:diaspora_guid/text()", $entry)->item(0)->nodeValue;
|
$item["guid"] = $xpath->query("dfrn:diaspora_guid/text()", $entry)->item(0)->nodeValue;
|
||||||
|
|
||||||
// We store the data from "dfrn:diaspora_signature" in a different table, this is done in "item_store"
|
// We store the data from "dfrn:diaspora_signature" in a different table, this is done in "Item::insert"
|
||||||
$dsprsig = unxmlify($xpath->query("dfrn:diaspora_signature/text()", $entry)->item(0)->nodeValue);
|
$dsprsig = unxmlify($xpath->query("dfrn:diaspora_signature/text()", $entry)->item(0)->nodeValue);
|
||||||
if ($dsprsig != "") {
|
if ($dsprsig != "") {
|
||||||
$item["dsprsig"] = $dsprsig;
|
$item["dsprsig"] = $dsprsig;
|
||||||
|
@ -2670,7 +2672,7 @@ class DFRN
|
||||||
}
|
}
|
||||||
|
|
||||||
if (in_array($entrytype, [DFRN_REPLY, DFRN_REPLY_RC])) {
|
if (in_array($entrytype, [DFRN_REPLY, DFRN_REPLY_RC])) {
|
||||||
$posted_id = item_store($item);
|
$posted_id = Item::insert($item);
|
||||||
$parent = 0;
|
$parent = 0;
|
||||||
|
|
||||||
if ($posted_id) {
|
if ($posted_id) {
|
||||||
|
@ -2700,7 +2702,7 @@ class DFRN
|
||||||
/*
|
/*
|
||||||
* The item owner info is not our contact. It's OK and is to be expected if this is a tgroup delivery,
|
* The item owner info is not our contact. It's OK and is to be expected if this is a tgroup delivery,
|
||||||
* but otherwise there's a possible data mixup on the sender's system.
|
* but otherwise there's a possible data mixup on the sender's system.
|
||||||
* the tgroup delivery code called from item_store will correct it if it's a forum,
|
* the tgroup delivery code called from Item::insert will correct it if it's a forum,
|
||||||
* but we're going to unconditionally correct it here so that the post will always be owned by our contact.
|
* but we're going to unconditionally correct it here so that the post will always be owned by our contact.
|
||||||
*/
|
*/
|
||||||
logger('Correcting item owner.', LOGGER_DEBUG);
|
logger('Correcting item owner.', LOGGER_DEBUG);
|
||||||
|
@ -2716,9 +2718,9 @@ class DFRN
|
||||||
|
|
||||||
// This is my contact on another system, but it's really me.
|
// This is my contact on another system, but it's really me.
|
||||||
// Turn this into a wall post.
|
// Turn this into a wall post.
|
||||||
$notify = item_is_remote_self($importer, $item);
|
$notify = Item::isRemoteSelf($importer, $item);
|
||||||
|
|
||||||
$posted_id = item_store($item, false, $notify);
|
$posted_id = Item::insert($item, false, $notify);
|
||||||
|
|
||||||
logger("Item was stored with id ".$posted_id, LOGGER_DEBUG);
|
logger("Item was stored with id ".$posted_id, LOGGER_DEBUG);
|
||||||
|
|
||||||
|
|
|
@ -20,6 +20,7 @@ use Friendica\Database\DBM;
|
||||||
use Friendica\Model\Contact;
|
use Friendica\Model\Contact;
|
||||||
use Friendica\Model\GContact;
|
use Friendica\Model\GContact;
|
||||||
use Friendica\Model\Group;
|
use Friendica\Model\Group;
|
||||||
|
use Friendica\Model\Item;
|
||||||
use Friendica\Model\Profile;
|
use Friendica\Model\Profile;
|
||||||
use Friendica\Model\Queue;
|
use Friendica\Model\Queue;
|
||||||
use Friendica\Model\User;
|
use Friendica\Model\User;
|
||||||
|
@ -1730,7 +1731,7 @@ class Diaspora
|
||||||
|
|
||||||
self::fetchGuid($datarray);
|
self::fetchGuid($datarray);
|
||||||
|
|
||||||
$message_id = item_store($datarray);
|
$message_id = Item::insert($datarray);
|
||||||
|
|
||||||
if ($message_id <= 0) {
|
if ($message_id <= 0) {
|
||||||
return false;
|
return false;
|
||||||
|
@ -2051,7 +2052,7 @@ class Diaspora
|
||||||
|
|
||||||
$datarray["body"] = self::constructLikeBody($contact, $parent_item, $guid);
|
$datarray["body"] = self::constructLikeBody($contact, $parent_item, $guid);
|
||||||
|
|
||||||
$message_id = item_store($datarray);
|
$message_id = Item::insert($datarray);
|
||||||
|
|
||||||
if ($message_id <= 0) {
|
if ($message_id <= 0) {
|
||||||
return false;
|
return false;
|
||||||
|
@ -2417,7 +2418,7 @@ class Diaspora
|
||||||
$arr["deny_cid"] = $user["deny_cid"];
|
$arr["deny_cid"] = $user["deny_cid"];
|
||||||
$arr["deny_gid"] = $user["deny_gid"];
|
$arr["deny_gid"] = $user["deny_gid"];
|
||||||
|
|
||||||
$i = item_store($arr);
|
$i = Item::insert($arr);
|
||||||
if ($i) {
|
if ($i) {
|
||||||
Worker::add(PRIORITY_HIGH, "Notifier", "activity", $i);
|
Worker::add(PRIORITY_HIGH, "Notifier", "activity", $i);
|
||||||
}
|
}
|
||||||
|
@ -2501,7 +2502,7 @@ class Diaspora
|
||||||
return true;
|
return true;
|
||||||
} else {
|
} else {
|
||||||
logger("Author ".$author." doesn't want to follow us anymore.", LOGGER_DEBUG);
|
logger("Author ".$author." doesn't want to follow us anymore.", LOGGER_DEBUG);
|
||||||
lose_follower($importer, $contact);
|
Contact::removeFollower($importer, $contact);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -2780,7 +2781,7 @@ class Diaspora
|
||||||
$datarray["object-type"] = $original_item["object-type"];
|
$datarray["object-type"] = $original_item["object-type"];
|
||||||
|
|
||||||
self::fetchGuid($datarray);
|
self::fetchGuid($datarray);
|
||||||
$message_id = item_store($datarray);
|
$message_id = Item::insert($datarray);
|
||||||
|
|
||||||
self::sendParticipation($contact, $datarray);
|
self::sendParticipation($contact, $datarray);
|
||||||
|
|
||||||
|
@ -3020,7 +3021,7 @@ class Diaspora
|
||||||
}
|
}
|
||||||
|
|
||||||
self::fetchGuid($datarray);
|
self::fetchGuid($datarray);
|
||||||
$message_id = item_store($datarray);
|
$message_id = Item::insert($datarray);
|
||||||
|
|
||||||
self::sendParticipation($contact, $datarray);
|
self::sendParticipation($contact, $datarray);
|
||||||
|
|
||||||
|
|
|
@ -423,7 +423,7 @@ class Feed {
|
||||||
if (!$simulate) {
|
if (!$simulate) {
|
||||||
logger("Stored feed: ".print_r($item, true), LOGGER_DEBUG);
|
logger("Stored feed: ".print_r($item, true), LOGGER_DEBUG);
|
||||||
|
|
||||||
$notify = item_is_remote_self($contact, $item);
|
$notify = Item::isRemoteSelf($contact, $item);
|
||||||
|
|
||||||
// Distributed items should have a well formatted URI.
|
// Distributed items should have a well formatted URI.
|
||||||
// Additionally we have to avoid conflicts with identical URI between imported feeds and these items.
|
// Additionally we have to avoid conflicts with identical URI between imported feeds and these items.
|
||||||
|
@ -433,7 +433,7 @@ class Feed {
|
||||||
unset($item['parent-uri']);
|
unset($item['parent-uri']);
|
||||||
}
|
}
|
||||||
|
|
||||||
$id = item_store($item, false, $notify);
|
$id = Item::insert($item, false, $notify);
|
||||||
|
|
||||||
logger("Feed for contact ".$contact["url"]." stored under id ".$id);
|
logger("Feed for contact ".$contact["url"]." stored under id ".$id);
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -14,6 +14,7 @@ use Friendica\Database\DBM;
|
||||||
use Friendica\Model\Contact;
|
use Friendica\Model\Contact;
|
||||||
use Friendica\Model\GContact;
|
use Friendica\Model\GContact;
|
||||||
use Friendica\Model\Conversation;
|
use Friendica\Model\Conversation;
|
||||||
|
use Friendica\Model\Item;
|
||||||
use Friendica\Network\Probe;
|
use Friendica\Network\Probe;
|
||||||
use Friendica\Object\Image;
|
use Friendica\Object\Image;
|
||||||
use Friendica\Util\Lock;
|
use Friendica\Util\Lock;
|
||||||
|
@ -455,12 +456,12 @@ class OStatus
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($item["verb"] == ACTIVITY_FOLLOW) {
|
if ($item["verb"] == ACTIVITY_FOLLOW) {
|
||||||
new_follower($importer, $contact, $item, $nickname);
|
Contact::addRelationship($importer, $contact, $item, $nickname);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($item["verb"] == NAMESPACE_OSTATUS."/unfollow") {
|
if ($item["verb"] == NAMESPACE_OSTATUS."/unfollow") {
|
||||||
lose_follower($importer, $contact, $item, $dummy);
|
Contact::removeFollower($importer, $contact, $item, $dummy);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -521,12 +522,12 @@ class OStatus
|
||||||
logger("Item with uri ".$item["uri"]." is from a blocked contact.", LOGGER_DEBUG);
|
logger("Item with uri ".$item["uri"]." is from a blocked contact.", LOGGER_DEBUG);
|
||||||
} else {
|
} else {
|
||||||
// We are having duplicated entries. Hopefully this solves it.
|
// We are having duplicated entries. Hopefully this solves it.
|
||||||
if (Lock::set('ostatus_process_item_store')) {
|
if (Lock::set('ostatus_process_item_insert')) {
|
||||||
$ret = item_store($item);
|
$ret = Item::insert($item);
|
||||||
Lock::remove('ostatus_process_item_store');
|
Lock::remove('ostatus_process_item_insert');
|
||||||
logger("Item with uri ".$item["uri"]." for user ".$importer["uid"].' stored. Return value: '.$ret);
|
logger("Item with uri ".$item["uri"]." for user ".$importer["uid"].' stored. Return value: '.$ret);
|
||||||
} else {
|
} else {
|
||||||
$ret = item_store($item);
|
$ret = Item::insert($item);
|
||||||
logger("We couldn't lock - but tried to store the item anyway. Return value is ".$ret);
|
logger("We couldn't lock - but tried to store the item anyway. Return value is ".$ret);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1996,7 +1997,7 @@ class OStatus
|
||||||
XML::addElement($doc, $entry, "ostatus:conversation", $conversation_uri, $attributes);
|
XML::addElement($doc, $entry, "ostatus:conversation", $conversation_uri, $attributes);
|
||||||
}
|
}
|
||||||
|
|
||||||
$tags = item_getfeedtags($item);
|
$tags = item::getFeedTags($item);
|
||||||
|
|
||||||
if (count($tags)) {
|
if (count($tags)) {
|
||||||
foreach ($tags as $t) {
|
foreach ($tags as $t) {
|
||||||
|
|
|
@ -82,7 +82,7 @@ class Network
|
||||||
$a = get_app();
|
$a = get_app();
|
||||||
|
|
||||||
if (self::isUrlBlocked($url)) {
|
if (self::isUrlBlocked($url)) {
|
||||||
logger('z_fetch_url: domain of ' . $url . ' is blocked', LOGGER_DATA);
|
logger('domain of ' . $url . ' is blocked', LOGGER_DATA);
|
||||||
return $ret;
|
return $ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -187,7 +187,7 @@ class Network
|
||||||
}
|
}
|
||||||
|
|
||||||
if (curl_errno($ch) !== CURLE_OK) {
|
if (curl_errno($ch) !== CURLE_OK) {
|
||||||
logger('fetch_url error fetching ' . $url . ': ' . curl_error($ch), LOGGER_NORMAL);
|
logger('error fetching ' . $url . ': ' . curl_error($ch), LOGGER_NORMAL);
|
||||||
}
|
}
|
||||||
|
|
||||||
$ret['errno'] = curl_errno($ch);
|
$ret['errno'] = curl_errno($ch);
|
||||||
|
@ -197,7 +197,7 @@ class Network
|
||||||
|
|
||||||
$http_code = $curl_info['http_code'];
|
$http_code = $curl_info['http_code'];
|
||||||
|
|
||||||
logger('fetch_url ' . $url . ': ' . $http_code . " " . $s, LOGGER_DATA);
|
logger($url . ': ' . $http_code . " " . $s, LOGGER_DATA);
|
||||||
$header = '';
|
$header = '';
|
||||||
|
|
||||||
// Pull out multiple headers, e.g. proxy and continuation headers
|
// Pull out multiple headers, e.g. proxy and continuation headers
|
||||||
|
@ -250,8 +250,8 @@ class Network
|
||||||
if (!$ret['success']) {
|
if (!$ret['success']) {
|
||||||
$ret['error'] = curl_error($ch);
|
$ret['error'] = curl_error($ch);
|
||||||
$ret['debug'] = $curl_info;
|
$ret['debug'] = $curl_info;
|
||||||
logger('z_fetch_url: error: '.$url.': '.$ret['return_code'].' - '.$ret['error'], LOGGER_DEBUG);
|
logger('error: '.$url.': '.$ret['return_code'].' - '.$ret['error'], LOGGER_DEBUG);
|
||||||
logger('z_fetch_url: debug: '.print_r($curl_info, true), LOGGER_DATA);
|
logger('debug: '.print_r($curl_info, true), LOGGER_DATA);
|
||||||
}
|
}
|
||||||
|
|
||||||
$ret['body'] = substr($s, strlen($header));
|
$ret['body'] = substr($s, strlen($header));
|
||||||
|
|
|
@ -207,7 +207,7 @@ class Delivery {
|
||||||
logger('notifier: '.$target_item["guid"].' dfrndelivery: '.$contact['name']);
|
logger('notifier: '.$target_item["guid"].' dfrndelivery: '.$contact['name']);
|
||||||
|
|
||||||
if ($mail) {
|
if ($mail) {
|
||||||
$item['body'] = fix_private_photos($item['body'],$owner['uid'],null,$message[0]['contact-id']);
|
$item['body'] = Item::fixPrivatePhotos($item['body'],$owner['uid'],null,$message[0]['contact-id']);
|
||||||
$atom = DFRN::mail($item, $owner);
|
$atom = DFRN::mail($item, $owner);
|
||||||
} elseif ($fsuggest) {
|
} elseif ($fsuggest) {
|
||||||
$atom = DFRN::fsuggest($item, $owner);
|
$atom = DFRN::fsuggest($item, $owner);
|
||||||
|
|
|
@ -9,6 +9,7 @@ namespace Friendica\Worker;
|
||||||
use Friendica\Core\Addon;
|
use Friendica\Core\Addon;
|
||||||
use Friendica\Core\Config;
|
use Friendica\Core\Config;
|
||||||
use Friendica\Core\Worker;
|
use Friendica\Core\Worker;
|
||||||
|
use Friendica\Model\Item;
|
||||||
use Friendica\Database\DBM;
|
use Friendica\Database\DBM;
|
||||||
use dba;
|
use dba;
|
||||||
|
|
||||||
|
@ -43,7 +44,7 @@ class Expire {
|
||||||
$user = dba::selectFirst('user', ['uid', 'username', 'expire'], ['uid' => $param]);
|
$user = dba::selectFirst('user', ['uid', 'username', 'expire'], ['uid' => $param]);
|
||||||
if (DBM::is_result($user)) {
|
if (DBM::is_result($user)) {
|
||||||
logger('Expire items for user '.$user['uid'].' ('.$user['username'].') - interval: '.$user['expire'], LOGGER_DEBUG);
|
logger('Expire items for user '.$user['uid'].' ('.$user['username'].') - interval: '.$user['expire'], LOGGER_DEBUG);
|
||||||
item_expire($user['uid'], $user['expire']);
|
Item::expire($user['uid'], $user['expire']);
|
||||||
logger('Expire items for user '.$user['uid'].' ('.$user['username'].') - done ', LOGGER_DEBUG);
|
logger('Expire items for user '.$user['uid'].' ('.$user['username'].') - done ', LOGGER_DEBUG);
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -8,6 +8,8 @@ use Friendica\Core\Config;
|
||||||
use Friendica\Core\PConfig;
|
use Friendica\Core\PConfig;
|
||||||
use Friendica\Database\DBM;
|
use Friendica\Database\DBM;
|
||||||
use Friendica\Model\Contact;
|
use Friendica\Model\Contact;
|
||||||
|
use Friendica\Model\Item;
|
||||||
|
use Friendica\Content\Text\BBCode;
|
||||||
use Friendica\Protocol\Email;
|
use Friendica\Protocol\Email;
|
||||||
use Friendica\Protocol\PortableContact;
|
use Friendica\Protocol\PortableContact;
|
||||||
use Friendica\Util\Network;
|
use Friendica\Util\Network;
|
||||||
|
@ -487,7 +489,7 @@ class OnePoll
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
$datarray['body'] = escape_tags($r['body']);
|
$datarray['body'] = escape_tags($r['body']);
|
||||||
$datarray['body'] = limit_body_size($datarray['body']);
|
$datarray['body'] = BBCode::limitBodySize($datarray['body']);
|
||||||
|
|
||||||
logger("Mail: Importing ".$msg_uid." for ".$mailconf['user']);
|
logger("Mail: Importing ".$msg_uid." for ".$mailconf['user']);
|
||||||
|
|
||||||
|
@ -531,7 +533,7 @@ class OnePoll
|
||||||
$datarray['allow_cid'] = '<' . $contact['id'] . '>';
|
$datarray['allow_cid'] = '<' . $contact['id'] . '>';
|
||||||
}
|
}
|
||||||
|
|
||||||
$stored_item = item_store($datarray);
|
$stored_item = Item::insert($datarray);
|
||||||
|
|
||||||
switch ($mailconf['action']) {
|
switch ($mailconf['action']) {
|
||||||
case 0:
|
case 0:
|
||||||
|
|
|
@ -5,6 +5,7 @@
|
||||||
*/
|
*/
|
||||||
namespace Friendica\Worker;
|
namespace Friendica\Worker;
|
||||||
|
|
||||||
|
use Friendica\Model\Item;
|
||||||
use Friendica\Core\Config;
|
use Friendica\Core\Config;
|
||||||
|
|
||||||
require_once("include/items.php");
|
require_once("include/items.php");
|
||||||
|
@ -46,7 +47,7 @@ class SpoolPost {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
$result = item_store($arr);
|
$result = Item::insert($arr);
|
||||||
|
|
||||||
logger("Spool file ".$file." stored: ".$result, LOGGER_DEBUG);
|
logger("Spool file ".$file." stored: ".$result, LOGGER_DEBUG);
|
||||||
unlink($fullfile);
|
unlink($fullfile);
|
||||||
|
|
Ładowanie…
Reference in New Issue