Fix list of accounts
This commit is contained in:
parent
975c32116d
commit
4476634f6c
|
@ -288,9 +288,13 @@ class Media
|
||||||
public static function insertFromBody(int $uriid, string $body)
|
public static function insertFromBody(int $uriid, string $body)
|
||||||
{
|
{
|
||||||
// Simplify image codes
|
// Simplify image codes
|
||||||
$body = preg_replace("/\[img\=([0-9]*)x([0-9]*)\](.*?)\[\/img\]/ism", '[img]$3[/img]', $body);
|
$unshared_body = $body = preg_replace("/\[img\=([0-9]*)x([0-9]*)\](.*?)\[\/img\]/ism", '[img]$3[/img]', $body);
|
||||||
|
|
||||||
|
// Only remove the shared data from "real" reshares
|
||||||
|
$shared = BBCode::fetchShareAttributes($body);
|
||||||
|
if (!empty($shared['guid'])) {
|
||||||
$unshared_body = preg_replace("/\s*\[share .*?\].*?\[\/share\]\s*/ism", '', $body);
|
$unshared_body = preg_replace("/\s*\[share .*?\].*?\[\/share\]\s*/ism", '', $body);
|
||||||
|
}
|
||||||
|
|
||||||
$attachments = [];
|
$attachments = [];
|
||||||
if (preg_match_all("#\[url=([^\]]+?)\]\s*\[img=([^\[\]]*)\]([^\[\]]*)\[\/img\]\s*\[/url\]#ism", $body, $pictures, PREG_SET_ORDER)) {
|
if (preg_match_all("#\[url=([^\]]+?)\]\s*\[img=([^\[\]]*)\]([^\[\]]*)\[\/img\]\s*\[/url\]#ism", $body, $pictures, PREG_SET_ORDER)) {
|
||||||
|
@ -363,8 +367,12 @@ class Media
|
||||||
*/
|
*/
|
||||||
public static function insertFromRelevantUrl(int $uriid, string $body)
|
public static function insertFromRelevantUrl(int $uriid, string $body)
|
||||||
{
|
{
|
||||||
|
// Only remove the shared data from "real" reshares
|
||||||
|
$shared = BBCode::fetchShareAttributes($body);
|
||||||
|
if (!empty($shared['guid'])) {
|
||||||
// Don't look at the shared content
|
// Don't look at the shared content
|
||||||
$body = preg_replace("/\s*\[share .*?\].*?\[\/share\]\s*/ism", '', $body);
|
$body = preg_replace("/\s*\[share .*?\].*?\[\/share\]\s*/ism", '', $body);
|
||||||
|
}
|
||||||
|
|
||||||
// Remove all hashtags and mentions
|
// Remove all hashtags and mentions
|
||||||
$body = preg_replace("/([#@!])\[url\=(.*?)\](.*?)\[\/url\]/ism", '', $body);
|
$body = preg_replace("/([#@!])\[url\=(.*?)\](.*?)\[\/url\]/ism", '', $body);
|
||||||
|
|
|
@ -65,11 +65,17 @@ class Accounts extends BaseApi
|
||||||
$max_id = (int)!isset($_REQUEST['max_id']) ? 0 : $_REQUEST['max_id'];
|
$max_id = (int)!isset($_REQUEST['max_id']) ? 0 : $_REQUEST['max_id'];
|
||||||
// Return results newer than this id
|
// Return results newer than this id
|
||||||
$since_id = (int)!isset($_REQUEST['since_id']) ? 0 : $_REQUEST['since_id'];
|
$since_id = (int)!isset($_REQUEST['since_id']) ? 0 : $_REQUEST['since_id'];
|
||||||
// Maximum number of results to return. Defaults to 20.
|
// Maximum number of results. Defaults to 40. Max 40.
|
||||||
|
// Set to 0 in order to get all accounts without pagination.
|
||||||
$limit = (int)!isset($_REQUEST['limit']) ? 40 : $_REQUEST['limit'];
|
$limit = (int)!isset($_REQUEST['limit']) ? 40 : $_REQUEST['limit'];
|
||||||
|
|
||||||
|
|
||||||
$params = ['order' => ['contact-id' => true], 'limit' => $limit];
|
$params = ['order' => ['contact-id' => true]];
|
||||||
|
|
||||||
|
if ($limit != 0) {
|
||||||
|
$params['limit'] = $limit;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
$condition = ['gid' => $id];
|
$condition = ['gid' => $id];
|
||||||
|
|
||||||
|
@ -87,6 +93,8 @@ class Accounts extends BaseApi
|
||||||
$params['order'] = ['contact-id'];
|
$params['order'] = ['contact-id'];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$accounts = [];
|
||||||
|
|
||||||
$members = DBA::select('group_member', ['contact-id'], $condition, $params);
|
$members = DBA::select('group_member', ['contact-id'], $condition, $params);
|
||||||
while ($member = DBA::fetch($members)) {
|
while ($member = DBA::fetch($members)) {
|
||||||
$accounts[] = DI::mstdnAccount()->createFromContactId($member['contact-id'], $uid);
|
$accounts[] = DI::mstdnAccount()->createFromContactId($member['contact-id'], $uid);
|
||||||
|
|
Loading…
Reference in New Issue
Block a user