mirror of
https://github.com/Daichimarukana/uwuzu.git
synced 2026-06-05 03:24:41 +00:00
uwuzu version 1.2.23
This commit is contained in:
@@ -53,7 +53,7 @@ if (!empty($pdo)) {
|
||||
$messages = array(); // 初期化
|
||||
|
||||
foreach ($followList as $followUserId) {
|
||||
$sql = "SELECT account, username, uniqid, rpuniqid, ueuse, datetime, photo1, photo2, video1, favorite, abi, abidate FROM ueuse WHERE rpuniqid = '' AND account = :follow_account ORDER BY datetime DESC LIMIT $offset, $itemsPerPage";
|
||||
$sql = "SELECT * FROM ueuse WHERE rpuniqid = '' AND account = :follow_account ORDER BY datetime DESC LIMIT $offset, $itemsPerPage";
|
||||
|
||||
$stmt = $dbh->prepare($sql);
|
||||
$stmt->bindValue(':follow_account', $followUserId, PDO::PARAM_STR);
|
||||
@@ -68,7 +68,7 @@ if (!empty($pdo)) {
|
||||
});
|
||||
// ユーザー情報を取得して、$messages内のusernameをuserDataのusernameに置き換える
|
||||
foreach ($messages as &$message) {
|
||||
$userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname FROM account WHERE userid = :userid");
|
||||
$userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname, sacinfo FROM account WHERE userid = :userid");
|
||||
$userQuery->bindValue(':userid', $message["account"]);
|
||||
$userQuery->execute();
|
||||
$userData = $userQuery->fetch();
|
||||
@@ -77,6 +77,7 @@ if (!empty($pdo)) {
|
||||
$message['iconname'] = $userData['iconname'];
|
||||
$message['headname'] = $userData['headname'];
|
||||
$message['username'] = $userData['username'];
|
||||
$message['sacinfo'] = $userData['sacinfo'];
|
||||
$message['role'] = $userData['role'];
|
||||
}
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@ $messages = array();
|
||||
|
||||
if (!empty($pdo)) {
|
||||
|
||||
$sql = "SELECT account, username, uniqid, rpuniqid, ueuse, datetime, photo1, photo2, video1, favorite, abi, abidate FROM ueuse WHERE rpuniqid = '' ORDER BY datetime DESC LIMIT $offset, $itemsPerPage";
|
||||
$sql = "SELECT * FROM ueuse WHERE rpuniqid = '' ORDER BY datetime DESC LIMIT $offset, $itemsPerPage";
|
||||
$message_array = $pdo->query($sql);
|
||||
|
||||
while ($row = $message_array->fetch(PDO::FETCH_ASSOC)) {
|
||||
@@ -45,7 +45,7 @@ if (!empty($pdo)) {
|
||||
|
||||
// ユーザー情報を取得して、$messages内のusernameをuserDataのusernameに置き換える
|
||||
foreach ($messages as &$message) {
|
||||
$userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname FROM account WHERE userid = :userid");
|
||||
$userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname, sacinfo FROM account WHERE userid = :userid");
|
||||
$userQuery->bindValue(':userid', $message["account"]);
|
||||
$userQuery->execute();
|
||||
$userData = $userQuery->fetch();
|
||||
@@ -54,6 +54,7 @@ if (!empty($pdo)) {
|
||||
$message['iconname'] = $userData['iconname'];
|
||||
$message['headname'] = $userData['headname'];
|
||||
$message['username'] = $userData['username'];
|
||||
$message['sacinfo'] = $userData['sacinfo'];
|
||||
$message['role'] = $userData['role'];
|
||||
}
|
||||
|
||||
|
||||
@@ -44,13 +44,13 @@ if (!empty($pdo)) {
|
||||
$username = $matches[1];
|
||||
$searchKeyword = $matches[2];
|
||||
|
||||
$messageQuery = $dbh->prepare("SELECT account,username,ueuse,uniqid,rpuniqid,datetime,photo1,photo2,video1,favorite, abi, abidate FROM ueuse WHERE account = :username AND (ueuse LIKE :searchKeyword OR abi LIKE :searchKeyword) ORDER BY datetime DESC");
|
||||
$messageQuery = $dbh->prepare("SELECT * FROM ueuse WHERE account = :username AND (ueuse LIKE :searchKeyword OR abi LIKE :searchKeyword) ORDER BY datetime DESC");
|
||||
$messageQuery->bindValue(':username', $username, PDO::PARAM_STR);
|
||||
$messageQuery->bindValue(':searchKeyword', '%' . $searchKeyword . '%', PDO::PARAM_STR);
|
||||
$messageQuery->execute();
|
||||
$message_array = $messageQuery->fetchAll();
|
||||
} else {
|
||||
$messageQuery = $dbh->prepare("SELECT account,username,ueuse,uniqid,rpuniqid,datetime,photo1,photo2,video1,favorite, abi, abidate FROM ueuse WHERE ueuse LIKE :keyword OR abi LIKE :keyword ORDER BY datetime DESC");
|
||||
$messageQuery = $dbh->prepare("SELECT * FROM ueuse WHERE ueuse LIKE :keyword OR abi LIKE :keyword ORDER BY datetime DESC");
|
||||
$messageQuery->bindValue(':keyword', '%' . $keyword . '%', PDO::PARAM_STR);
|
||||
$messageQuery->execute();
|
||||
$message_array = $messageQuery->fetchAll();
|
||||
@@ -63,7 +63,7 @@ if (!empty($pdo)) {
|
||||
}
|
||||
// ユーザー情報を取得して、$messages内のusernameをuserDataのusernameに置き換える
|
||||
foreach ($messages as &$message) {
|
||||
$userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname FROM account WHERE userid = :userid");
|
||||
$userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname, sacinfo FROM account WHERE userid = :userid");
|
||||
$userQuery->bindValue(':userid', $message["account"]);
|
||||
$userQuery->execute();
|
||||
$userData = $userQuery->fetch();
|
||||
@@ -72,6 +72,7 @@ if (!empty($pdo)) {
|
||||
$message['iconname'] = $userData['iconname'];
|
||||
$message['headname'] = $userData['headname'];
|
||||
$message['username'] = $userData['username'];
|
||||
$message['sacinfo'] = $userData['sacinfo'];
|
||||
$message['role'] = $userData['role'];
|
||||
}
|
||||
|
||||
|
||||
@@ -46,7 +46,7 @@ if (!empty($pdo)) {
|
||||
));
|
||||
|
||||
// 投稿内容の取得(新しい順に取得)
|
||||
$messageQuery = $dbh->prepare("SELECT account, username, ueuse, uniqid, rpuniqid, datetime, photo1, photo2, video1, favorite, abi, abidate FROM ueuse WHERE uniqid = :ueuseid OR rpuniqid = :rpueuseid ORDER BY datetime ASC LIMIT $offset, $itemsPerPage");
|
||||
$messageQuery = $dbh->prepare("SELECT * FROM ueuse WHERE uniqid = :ueuseid OR rpuniqid = :rpueuseid ORDER BY datetime ASC LIMIT $offset, $itemsPerPage");
|
||||
$messageQuery->bindValue(':ueuseid', $ueuseid);
|
||||
$messageQuery->bindValue(':rpueuseid', $ueuseid);
|
||||
$messageQuery->execute();
|
||||
@@ -61,7 +61,7 @@ if (!empty($pdo)) {
|
||||
}
|
||||
// ユーザー情報を取得して、$messages内のusernameをuserDataのusernameに置き換える
|
||||
foreach ($messages as &$message) {
|
||||
$userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname FROM account WHERE userid = :userid");
|
||||
$userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname, sacinfo FROM account WHERE userid = :userid");
|
||||
$userQuery->bindValue(':userid', $message["account"]);
|
||||
$userQuery->execute();
|
||||
$userData = $userQuery->fetch();
|
||||
@@ -70,6 +70,7 @@ if (!empty($pdo)) {
|
||||
$message['iconname'] = $userData['iconname'];
|
||||
$message['headname'] = $userData['headname'];
|
||||
$message['username'] = $userData['username'];
|
||||
$message['sacinfo'] = $userData['sacinfo'];
|
||||
$message['role'] = $userData['role'];
|
||||
}
|
||||
|
||||
|
||||
@@ -48,7 +48,7 @@ if (!empty($pdo)) {
|
||||
$userQuery->execute();
|
||||
$userData = $userQuery->fetch();
|
||||
|
||||
$messageQuery = $dbh->prepare("SELECT account,username,ueuse,uniqid,rpuniqid,datetime,photo1,photo2,video1,favorite, abi, abidate FROM ueuse WHERE favorite LIKE :userid ORDER BY datetime DESC LIMIT $offset, $itemsPerPage");
|
||||
$messageQuery = $dbh->prepare("SELECT * FROM ueuse WHERE favorite LIKE :userid ORDER BY datetime DESC LIMIT $offset, $itemsPerPage");
|
||||
$messageQuery->bindValue(':userid', '%,' . $uwuzuid . '%', PDO::PARAM_STR);
|
||||
|
||||
$messageQuery->execute();
|
||||
@@ -60,7 +60,7 @@ if (!empty($pdo)) {
|
||||
}
|
||||
// ユーザー情報を取得して、$messages内のusernameをuserDataのusernameに置き換える
|
||||
foreach ($messages as &$message) {
|
||||
$userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname FROM account WHERE userid = :userid");
|
||||
$userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname, sacinfo FROM account WHERE userid = :userid");
|
||||
$userQuery->bindValue(':userid', $message["account"]);
|
||||
$userQuery->execute();
|
||||
$userData = $userQuery->fetch();
|
||||
@@ -69,6 +69,7 @@ if (!empty($pdo)) {
|
||||
$message['iconname'] = $userData['iconname'];
|
||||
$message['headname'] = $userData['headname'];
|
||||
$message['username'] = $userData['username'];
|
||||
$message['sacinfo'] = $userData['sacinfo'];
|
||||
$message['role'] = $userData['role'];
|
||||
}
|
||||
|
||||
|
||||
@@ -48,7 +48,7 @@ if (!empty($pdo)) {
|
||||
$userQuery->execute();
|
||||
$userData = $userQuery->fetch();
|
||||
|
||||
$messageQuery = $dbh->prepare("SELECT account,username,ueuse,uniqid,rpuniqid,datetime,photo1,photo2,video1,favorite, abi, abidate FROM ueuse WHERE account = :userid AND rpuniqid = '' AND (photo1 NOT IN('none') OR photo2 NOT IN('none') OR video1 NOT IN('none')) ORDER BY datetime DESC LIMIT $offset, $itemsPerPage");
|
||||
$messageQuery = $dbh->prepare("SELECT * FROM ueuse WHERE account = :userid AND rpuniqid = '' AND (photo1 NOT IN('none') OR photo2 NOT IN('none') OR video1 NOT IN('none')) ORDER BY datetime DESC LIMIT $offset, $itemsPerPage");
|
||||
$messageQuery->bindValue(':userid', $uwuzuid);
|
||||
$messageQuery->execute();
|
||||
$message_array = $messageQuery->fetchAll();
|
||||
@@ -59,7 +59,7 @@ if (!empty($pdo)) {
|
||||
}
|
||||
// ユーザー情報を取得して、$messages内のusernameをuserDataのusernameに置き換える
|
||||
foreach ($messages as &$message) {
|
||||
$userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname FROM account WHERE userid = :userid");
|
||||
$userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname, sacinfo FROM account WHERE userid = :userid");
|
||||
$userQuery->bindValue(':userid', $message["account"]);
|
||||
$userQuery->execute();
|
||||
$userData = $userQuery->fetch();
|
||||
@@ -68,6 +68,7 @@ if (!empty($pdo)) {
|
||||
$message['iconname'] = $userData['iconname'];
|
||||
$message['headname'] = $userData['headname'];
|
||||
$message['username'] = $userData['username'];
|
||||
$message['sacinfo'] = $userData['sacinfo'];
|
||||
$message['role'] = $userData['role'];
|
||||
}
|
||||
|
||||
|
||||
@@ -48,7 +48,7 @@ if (!empty($pdo)) {
|
||||
$userQuery->execute();
|
||||
$userData = $userQuery->fetch();
|
||||
|
||||
$messageQuery = $dbh->prepare("SELECT account,username,ueuse,uniqid,rpuniqid,datetime,photo1,photo2,video1,favorite, abi, abidate FROM ueuse WHERE account = :userid AND rpuniqid = ''ORDER BY datetime DESC LIMIT $offset, $itemsPerPage");
|
||||
$messageQuery = $dbh->prepare("SELECT * FROM ueuse WHERE account = :userid AND rpuniqid = ''ORDER BY datetime DESC LIMIT $offset, $itemsPerPage");
|
||||
$messageQuery->bindValue(':userid', $uwuzuid);
|
||||
$messageQuery->execute();
|
||||
$message_array = $messageQuery->fetchAll();
|
||||
@@ -59,7 +59,7 @@ if (!empty($pdo)) {
|
||||
}
|
||||
// ユーザー情報を取得して、$messages内のusernameをuserDataのusernameに置き換える
|
||||
foreach ($messages as &$message) {
|
||||
$userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname FROM account WHERE userid = :userid");
|
||||
$userQuery = $pdo->prepare("SELECT username, userid, profile, role, iconname, headname, sacinfo FROM account WHERE userid = :userid");
|
||||
$userQuery->bindValue(':userid', $message["account"]);
|
||||
$userQuery->execute();
|
||||
$userData = $userQuery->fetch();
|
||||
@@ -68,6 +68,7 @@ if (!empty($pdo)) {
|
||||
$message['iconname'] = $userData['iconname'];
|
||||
$message['headname'] = $userData['headname'];
|
||||
$message['username'] = $userData['username'];
|
||||
$message['sacinfo'] = $userData['sacinfo'];
|
||||
$message['role'] = $userData['role'];
|
||||
}
|
||||
|
||||
|
||||
+26
-7
@@ -63,10 +63,9 @@ function replaceEmojisWithImages($postText) {
|
||||
|
||||
return $postTextWithHashtags;
|
||||
}
|
||||
|
||||
function replaceURLsWithLinks($postText) {
|
||||
// URLを正規表現を使って検出
|
||||
$pattern = '/(https:\/\/[^\s]+)/';
|
||||
$pattern = '/(https:\/\/[^\s<>\[\]\'"]+)/'; // 改良された正規表現
|
||||
preg_match_all($pattern, $postText, $matches);
|
||||
|
||||
// 検出したURLごとに処理を行う
|
||||
@@ -75,11 +74,12 @@ function replaceURLsWithLinks($postText) {
|
||||
$parsedUrl = parse_url($url);
|
||||
$domain = isset($parsedUrl['host']) ? $parsedUrl['host'] : '';
|
||||
|
||||
// ドメインのみを表示するaタグを生成
|
||||
$link = "<a href='$url' target='_blank'>$domain</a>";
|
||||
// 不要な文字を削除してaタグを生成
|
||||
$urlWithoutSpaces = preg_replace('/\s+/', '', $url);
|
||||
$link = "<a href='$urlWithoutSpaces' target='_blank'>$domain</a>";
|
||||
|
||||
// URLをドメインのみを表示するaタグで置き換え
|
||||
$postText = str_replace($url, $link, $postText);
|
||||
$postText = preg_replace('/' . preg_quote($url, '/') . '/', $link, $postText);
|
||||
}
|
||||
|
||||
return $postText;
|
||||
@@ -110,6 +110,11 @@ class MessageDisplay {
|
||||
echo ' <div class="idbox">';
|
||||
echo ' <a href="/@' . htmlentities($this->value['account']) . '">@' . htmlentities($this->value['account']) . '</a>';
|
||||
echo ' </div>';
|
||||
if(!empty($this->value['sacinfo'])){
|
||||
if($this->value['sacinfo'] === "bot"){
|
||||
echo '<div class="bot">Bot</div>';
|
||||
}
|
||||
}
|
||||
if (false !== strpos($this->value['role'], 'official')) {
|
||||
echo ' <div class="checkicon">';
|
||||
echo ' <div class="check" />';
|
||||
@@ -136,7 +141,17 @@ class MessageDisplay {
|
||||
echo ' </div>';
|
||||
|
||||
echo ' </div>';
|
||||
|
||||
|
||||
if($this->value['nsfw'] === "true"){
|
||||
echo ' <div class="nsfw" data-uniqid="' . htmlentities($this->value['uniqid']) . '">';
|
||||
echo ' <p>NSFW指定がされている投稿です!<br>職場や公共の場での表示には適さない場合があります。<br>表示ボタンを押すと表示されます。</p>';
|
||||
echo ' <div class="btnzone">';
|
||||
echo ' <input type="button" id="nsfw_view" class="mini_irobtn" value="表示">';
|
||||
echo ' </div>';
|
||||
echo ' </div>';
|
||||
echo ' <div class="nsfw_main" data-uniqid="' . htmlentities($this->value['uniqid']) . '">';
|
||||
echo ' <div class="block">';
|
||||
}
|
||||
echo ' <p>' . processMarkdownAndWrapEmptyLines(replaceEmojisWithImages(replaceURLsWithLinks(nl2br($this->value['ueuse'])))) . '</h1></h2></h3></font></center></p>';
|
||||
|
||||
if (!empty($this->value['photo2']) && $this->value['photo2'] !== 'none') {
|
||||
@@ -164,6 +179,10 @@ class MessageDisplay {
|
||||
echo '<h3>追記日時 : '. date("Y年m月d日 H:i", strtotime(htmlentities($this->value['abidate']))) . '</h3>';
|
||||
echo '</div>';
|
||||
}
|
||||
if($this->value['nsfw'] === "true"){
|
||||
echo ' </div>';
|
||||
echo ' </div>';
|
||||
}
|
||||
|
||||
echo '<hr>';
|
||||
echo '<div class="favbox">';
|
||||
@@ -183,7 +202,7 @@ class MessageDisplay {
|
||||
}
|
||||
echo '</div>';
|
||||
echo '</div>';
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user