ryedai@mastodon.social
TangoEXEFan#1
YT diarykeeper
#IbisPaint & #AdobeAudition / #UVR5
🎶=🛟
MD-ID: https://gg.gg/872-167-114
app.revolt.chat: Alcea#9004
📧alceawisteria@proton.me
#CurrListeningRyedai #Ostripdkpr #DoodlesRyedai #CodeRyedai #rdmediabs #RamblingsRyeDai #StuffRyeDai #MusicEditing #Drawing tfr
tw: https://gg.gg/twalcea
https://gg.gg/lastmastodonavas
https://www.pixiv.net/en/users/75406576 (https://gg.gg/latestart )
http://gg.gg/dekugames
à DenCity
Sounds like a promise
#Pretty #5ds #yugioh https://daddyzarc.tumblr.com/post/181552556741/baby-playing-with-babies-while-their-mom-watches
Face down face up trap cards spell cards then time roulette go
https://m.youtube.com/watch?v=3HM9tyNkUAg
Geee which one😂
#Trickstar
And more 2024 #trample https://ygoreviews.tumblr.com
#yugioh #reviews
When #AI made the #perfect #hairstyle 😹
https://daddyzarc.tumblr.com/post/185078589691/ok-but-ais-hair-looks-like-a-combo-of-yusakus
#vrains
Loading in 3.2.1.:
https://www.youtube.com/watch?v=8nwD_HjaID0
#vrains
I say.. #Sure
https://www.pixiv.net/en/artworks/84843797
Loading indeed:
Way too addictive #vrains ,art
https://www.pixiv.net/en/artworks/74736168
Yeah
I bet hed love that
https://www.pixiv.net/en/artworks/64564978#manga
Good luck waiting for your turn xD
#EDOPro is kinda more chill
https://m.youtube.com/watch?v=nAYv2gLzh_I
<?php
$profileUrl = 'https://mastodon.social/api/v1/accounts/109977878421486714';
// Make a GET request to the profile URL using cURL
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $profileUrl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
// Parse the JSON response into an associative array
$data = json_decode($response, true);
// Access the fields in the JSON object
$id = $data['id'];
$username = $data['username'];
$display_name = $data['display_name'];
$locked = $data['locked'];
$bot = $data['bot'];
$discoverable = $data['discoverable'];
$group = $data['group'];
$created_at = $data['created_at'];
$note = $data['note'];
$url = $data['url'];
$avatar = $data['avatar'];
$avatar_static = $data['avatar_static'];
$header = $data['header'];
$header_static = $data['header_static'];
$followers_count = $data['followers_count'];
$following_count = $data['following_count'];
$statuses_count = $data['statuses_count'];
$last_status_at = $data['last_status_at'];
$noindex = $data['noindex'];
$emojis = $data['emojis'];
$roles = $data['roles'];
$fields = $data['fields'];
// Do something with the data
echo "$username@<a target=_blank href=https://mastodon.social/share>mastodon.social</a><br>\n";
//echo " <img src=$avatar width=12%>";
echo "<br><hr>";
echo "$note";
//echo " $fields";
echo "<hr>";
//echo "$display_name\n";
echo "Following: <b>$following_count</b>\n";
echo "Followers: <b>$followers_count</b>\n";
echo "Posts: <b>$statuses_count</b>\n";
?>
<br><br><br><br>
<?php
$apiUrl = 'https://mastodon.social/api/v1/accounts/109977878421486714/statuses';
$accessToken = 'your-access-token';
$headers = ['Authorization: Bearer ' . $accessToken,];
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => $apiUrl,
CURLOPT_HTTPHEADER => $headers,
]);
$response = curl_exec($curl);
curl_close($curl);
$data = json_decode($response, true);
foreach ($data as $status) {
$content = '<div>' . $status['content'] . '</div>';
$media = '';
$avatar = '';
$tootLink = '';
// Check for imgbb image URLs in the status content
$imageRegex = '/(https?:\/\/(?:www\.)?i\.ibb\.co\/[^ ]+\.(?:jpg|png|gif|bmp|webp))/';
preg_match_all($imageRegex, $status['content'], $imageMatches);
if (!empty($imageMatches[0])) {
$media .= '<div>';
foreach ($imageMatches[0] as $url) {
$media .= '<img src="' . $url . '" width="50%"><br>';
}
$media .= '</div>';
}
// Add emoji renderer
$endpoint = 'https://mastodon.social/api/v1/custom_emojis';
$response = file_get_contents($endpoint);
$customEmojis = json_decode($response, true);
foreach ($customEmojis as $customEmoji) {
$shortcode = $customEmoji['shortcode'];
$url = $customEmoji['url'];
$shortcodePattern = '/:' . preg_quote($shortcode, '/') . ':/';
$emojiTag = '<img src="' . $url . '" alt="' . $shortcode . '" width="45px">';
$content = preg_replace($shortcodePattern, $emojiTag, $content);
}
// Check for Tenor.com video link
$tenorRegex = '/https?:\/\/(?:www\.)?tenor\.com\/view\/[a-zA-Z0-9-]+-(\d+)/';
preg_match($tenorRegex, $status['content'], $tenorMatch);
if ($tenorMatch) {
// Extract Tenor.com video ID
$videoId = $tenorMatch[1];
// Create embedded player for Tenor.com video
$media = '<div><iframe src="https://tenor.com/embed/' . $videoId . '" frameborder="0" allowfullscreen="true" width="100%" height="400px"></iframe></div>';
// Remove Tenor.com link from content
$content = preg_replace($tenorRegex, '', $content);
}
// Check for SoundCloud track link
$soundcloudRegex = '/https?:\/\/(m\.)?soundcloud\.com\/[\w\-_]+\/[\w\-_]+/i';
preg_match($soundcloudRegex, $status['content'], $soundcloudMatch);
if ($soundcloudMatch) {
// The SoundCloud URL to extract the track ID from
$url = $soundcloudMatch[0];
// Check if the URL is a mobile link and convert it to a normal link
if (strpos($url, 'm.soundcloud.com') !== false) {
$url = str_replace('m.soundcloud.com', 'soundcloud.com', $url);
}
// Fetch the SoundCloud page source
$pageSource = file_get_contents($url);
// Extract the track ID from the page source
preg_match('/sounds:(\d+)/', $pageSource, $matches);
$trackID = $matches[1];
// Embed the SoundCloud player with the track ID
$playerURL = 'https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/' . $trackID .
'&color=%23ff5500&auto_play=false&hide_related=false&show_comments=true&show_user=true&show_reposts=false&show_teaser=true&visual=true';
$media = '<div><iframe width="100%" height="166" scrolling="no" frameborder="no" allow="autoplay" src="' . $playerURL . '"></iframe></div>';
// Remove SoundCloud link from content
$content = str_replace($soundcloudMatch[0], '', $content);
} else {
// Check for YouTube video link
$youtubeRegex = '/https?:\/\/(www\.)?(m\.)?youtube\.com\/watch\?v=([a-zA-Z0-9_-]{11})/';
preg_match($youtubeRegex, $status['content'], $youtubeMatch);
if ($youtubeMatch) {
// Extract video ID from YouTube link
$videoId = $youtubeMatch[3];
// Create embedded player for YouTube video
$embeddedPlayer = '<div><iframe width="560" height="315" src="https://www.youtube.com/embed/' . $videoId . '" frameborder="0" allowfullscreen></iframe></div>';
// Create link to YouTube video
$videoLink = '<div><a href="https://www.youtube.com/watch?v=' . $videoId . '" target="_blank">' . $youtubeMatch[0] . '</a></div>';
// Add both embedded player and link to the content
$media = $embeddedPlayer . $videoLink;
// Remove YouTube link from content
$content = str_replace($youtubeMatch[0], '', $content);
} else {
// Check for Pixiv artwork link
$pixivRegex = '/https?:\/\/(?:www\.)?pixiv\.net\/(?:en\/)?artworks\/(\d+)/';
preg_match($pixivRegex, $status['content'], $pixivMatch);
if ($pixivMatch) {
// Extract artwork ID from Pixiv link
$artworkId = $pixivMatch[1];
// Create image preview for Pixiv artwork
$media = '<div><img src="https://embed.pixiv.net/decorate.php?illust_id=' . $artworkId . '&mode=sns-automator" width="50%"></div>';
// Remove Pixiv link from content
$content = str_replace($pixivMatch[0], '', $content);
} else {
// Check for attachments
if (count($status['media_attachments']) > 0) {
$media = '<div>';
foreach ($status['media_attachments'] as $attachment) {
if ($attachment['type'] === 'image') {
$ch = curl_init($attachment['url']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$image = curl_exec($ch);
curl_close($ch);
$media .= '<img src="data:image/jpeg;base64,' . base64_encode($image) . '" width="50%"><br>';
} else if ($attachment['type'] === 'video') {
$media .= '<div><video controls width="50%"><source src="' . $attachment['url'] . '" type="' . $attachment['mime_type'] . '"></video></div>';
} else if ($attachment['type'] === 'audio') {
$media .= '<div><audio controls><source src="' . $attachment['url'] . '" type="' . $attachment['mime_type'] . '"></audio></div>';
}
}
$media .= '</div>';
}
}
}
}
// Check for spoiler tag
if (strpos($status['url'], 'activity') !== false) {
$avatar = '<!--<details><summary>Avatar (spoiler)</summary><img src="' . $status['account']['avatar'] . '" width="100px"></details>--><br>';
$tootLink = '<!--<details><summary>View on Mastodon (spoiler)</summary><a href="' . $status['url'] . '" target="_blank">Click here to view activity</a></details>-->';
} else {
$avatar = '<img src="' . $status['account']['avatar'] . '" width="100px"><br>';
$tootLink = '<a href="' . $status['url'] . '" target="_blank">View on Mastodon</a>';
}
// Get the date of the status
$date = new DateTime($status['created_at']);
// Append content and media to feed
echo $content . $media . $avatar . $tootLink . ' ' . $date->format('Y-m-d H:i:s') . '<hr>';
}
?>
<?php
//Allow or disallow source viewing
define("ALLOW_SOURCE",TRUE);
define("ALLOW_TITLE",TRUE);
if(ALLOW_SOURCE && isset($_GET['source'])){
highlight_file(__FILE__);
exit(0);
}
?>
<a target="_blank" href="?source">Source Code</a>