3 namespace Friendica\Factory\Api\Mastodon;
5 use Friendica\App\BaseURL;
6 use Friendica\BaseFactory;
7 use Friendica\Collection\Api\Mastodon\Emojis;
8 use Friendica\Model\APContact;
9 use Friendica\Model\Contact;
10 use Friendica\Network\HTTPException;
11 use Psr\Log\LoggerInterface;
13 class Emoji extends BaseFactory
15 public function create(string $shortcode, string $url)
17 return new \Friendica\Object\Api\Mastodon\Emoji($shortcode, $url);
21 * @param array $smilies
24 public function createCollectionFromSmilies(array $smilies)
30 foreach ($smilies['texts'] as $key => $shortcode) {
31 if (preg_match('/src="(.+?)"/', $smilies['icons'][$key], $matches)) {
34 if ($prototype === null) {
35 $prototype = $this->create($shortcode, $url);
36 $emojis[] = $prototype;
38 $emojis[] = \Friendica\Object\Api\Mastodon\Emoji::createFromPrototype($prototype, $shortcode, $url);
43 return new Emojis($emojis);