Merge pull request #9462 from annando/provider
Publish the provider fields in the API
This commit is contained in:
commit
bdfa9f327f
3 changed files with 32 additions and 18 deletions
|
@ -146,13 +146,15 @@ class BBCode
|
||||||
public static function getAttachmentData($body)
|
public static function getAttachmentData($body)
|
||||||
{
|
{
|
||||||
$data = [
|
$data = [
|
||||||
'type' => '',
|
'type' => '',
|
||||||
'text' => '',
|
'text' => '',
|
||||||
'after' => '',
|
'after' => '',
|
||||||
'image' => null,
|
'image' => null,
|
||||||
'url' => '',
|
'url' => '',
|
||||||
'title' => '',
|
'provider_name' => '',
|
||||||
'description' => '',
|
'provider_url' => '',
|
||||||
|
'title' => '',
|
||||||
|
'description' => '',
|
||||||
];
|
];
|
||||||
|
|
||||||
if (!preg_match("/(.*)\[attachment(.*?)\](.*?)\[\/attachment\](.*)/ism", $body, $match)) {
|
if (!preg_match("/(.*)\[attachment(.*?)\](.*?)\[\/attachment\](.*)/ism", $body, $match)) {
|
||||||
|
@ -253,6 +255,16 @@ class BBCode
|
||||||
|
|
||||||
$data['after'] = trim($match[4]);
|
$data['after'] = trim($match[4]);
|
||||||
|
|
||||||
|
$parts = parse_url($data['url']);
|
||||||
|
if (!empty($parts['scheme']) && !empty($parts['host'])) {
|
||||||
|
$data['provider_name'] = $parts['host'];
|
||||||
|
$data['provider_url'] = $parts['scheme'] . '://' . $parts['host'];
|
||||||
|
|
||||||
|
if (!empty($parts['port'])) {
|
||||||
|
$data['provider_url'] .= ':' . $parts['port'];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return $data;
|
return $data;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -78,7 +78,7 @@ class Status extends BaseFactory
|
||||||
);
|
);
|
||||||
|
|
||||||
$sensitive = DBA::exists('tag-view', ['uri-id' => $uriId, 'name' => 'nsfw']);
|
$sensitive = DBA::exists('tag-view', ['uri-id' => $uriId, 'name' => 'nsfw']);
|
||||||
$application = new \Friendica\Object\Api\Mastodon\Application($item['app']);
|
$application = new \Friendica\Object\Api\Mastodon\Application($item['app'] ?? '');
|
||||||
$mentions = DI::mstdnMention()->createFromUriId($uriId);
|
$mentions = DI::mstdnMention()->createFromUriId($uriId);
|
||||||
$tags = DI::mstdnTag()->createFromUriId($uriId);
|
$tags = DI::mstdnTag()->createFromUriId($uriId);
|
||||||
|
|
||||||
|
|
|
@ -22,10 +22,6 @@
|
||||||
namespace Friendica\Object\Api\Mastodon;
|
namespace Friendica\Object\Api\Mastodon;
|
||||||
|
|
||||||
use Friendica\BaseEntity;
|
use Friendica\BaseEntity;
|
||||||
use Friendica\Content\Text\BBCode;
|
|
||||||
use Friendica\Object\Api\Mastodon\Status\Counts;
|
|
||||||
use Friendica\Object\Api\Mastodon\Status\UserAttributes;
|
|
||||||
use Friendica\Util\DateTimeFormat;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class Card
|
* Class Card
|
||||||
|
@ -43,21 +39,27 @@ class Card extends BaseEntity
|
||||||
/** @var string */
|
/** @var string */
|
||||||
protected $type;
|
protected $type;
|
||||||
/** @var string */
|
/** @var string */
|
||||||
|
protected $provider_name;
|
||||||
|
/** @var string */
|
||||||
|
protected $provider_url;
|
||||||
|
/** @var string */
|
||||||
protected $image;
|
protected $image;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a status record from an item record.
|
* Creates a card record from an attachment array.
|
||||||
*
|
*
|
||||||
* @param array $attachment Attachment record
|
* @param array $attachment Attachment record
|
||||||
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
|
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
|
||||||
*/
|
*/
|
||||||
public function __construct(array $attachment)
|
public function __construct(array $attachment)
|
||||||
{
|
{
|
||||||
$this->url = $attachment['url'] ?? '';
|
$this->url = $attachment['url'] ?? '';
|
||||||
$this->title = $attachment['title'] ?? '';
|
$this->title = $attachment['title'] ?? '';
|
||||||
$this->description = $attachment['description'] ?? '';
|
$this->description = $attachment['description'] ?? '';
|
||||||
$this->type = $attachment['type'] ?? '';
|
$this->type = $attachment['type'] ?? '';
|
||||||
$this->image = $attachment['image'] ?? '';
|
$this->image = $attachment['image'] ?? '';
|
||||||
|
$this->provider_name = $attachment['provider_name'] ?? '';
|
||||||
|
$this->provider_url = $attachment['provider_url'] ?? '';
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in a new issue