FIX: Categories' viewers for recommendations on HomePage;
FIX: New messages sent into chat by streamer are correctly highlighted; REFACTOR: Remove console log & comment;
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "frontend",
|
"name": "frontend",
|
||||||
"private": true,
|
"private": true,
|
||||||
"version": "0.15.0",
|
"version": "1.0.0",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite --config vite.config.dev.ts",
|
"dev": "vite --config vite.config.dev.ts",
|
||||||
|
|||||||
@@ -169,7 +169,6 @@ const ListRow = forwardRef<ListRowRef, ListRowProps>((props, ref) => {
|
|||||||
/>
|
/>
|
||||||
);
|
);
|
||||||
} else if (type === "vod" && isVodType(item)) {
|
} else if (type === "vod" && isVodType(item)) {
|
||||||
console.log(item);
|
|
||||||
return (
|
return (
|
||||||
<VodListItem
|
<VodListItem
|
||||||
key={`vod-${item.vod_id}`}
|
key={`vod-${item.vod_id}`}
|
||||||
|
|||||||
@@ -139,6 +139,7 @@ const ChatPanel: React.FC<ChatPanelProps> = ({ streamId, onViewerCountChange })
|
|||||||
}
|
}
|
||||||
|
|
||||||
socket.emit("send_message", {
|
socket.emit("send_message", {
|
||||||
|
user_id: userId,
|
||||||
username: username,
|
username: username,
|
||||||
stream_id: streamId,
|
stream_id: streamId,
|
||||||
message: inputMessage.trim(),
|
message: inputMessage.trim(),
|
||||||
@@ -193,7 +194,7 @@ const ChatPanel: React.FC<ChatPanelProps> = ({ streamId, onViewerCountChange })
|
|||||||
<div
|
<div
|
||||||
key={index}
|
key={index}
|
||||||
className={`flex items-start space-x-2 rounded p-2 text-white relative ${
|
className={`flex items-start space-x-2 rounded p-2 text-white relative ${
|
||||||
msg.chatter_id === streamId ? "bg-[#0000a0] font-black border-4 border-double border-red-500" : "bg-gray-800"
|
msg.chatter_id === streamId ? "bg-[#00005e] font-black border-4 border-double border-red-500" : "bg-gray-800"
|
||||||
}`}
|
}`}
|
||||||
>
|
>
|
||||||
{/* User avatar with image */}
|
{/* User avatar with image */}
|
||||||
|
|||||||
@@ -96,7 +96,6 @@ def get_past_chat(stream_id: int):
|
|||||||
) subquery
|
) subquery
|
||||||
ORDER BY time_sent ASC;
|
ORDER BY time_sent ASC;
|
||||||
""", (stream_id, stream_id))
|
""", (stream_id, stream_id))
|
||||||
#! ASC - Oldest to Newest
|
|
||||||
|
|
||||||
db.close_connection()
|
db.close_connection()
|
||||||
|
|
||||||
@@ -119,6 +118,7 @@ def send_chat(data) -> None:
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
# Take the message information from frontend
|
# Take the message information from frontend
|
||||||
|
chatter_id = data.get("user_id")
|
||||||
chatter_name = data.get("username")
|
chatter_name = data.get("username")
|
||||||
stream_id = data.get("stream_id")
|
stream_id = data.get("stream_id")
|
||||||
message = data.get("message")
|
message = data.get("message")
|
||||||
@@ -127,9 +127,10 @@ def send_chat(data) -> None:
|
|||||||
if not all([chatter_name, message, stream_id]):
|
if not all([chatter_name, message, stream_id]):
|
||||||
emit("error", {"error": f"Unable to send a chat. The following info was given: chatter_name={chatter_name}, message={message}, stream_id={stream_id}"}, broadcast=False)
|
emit("error", {"error": f"Unable to send a chat. The following info was given: chatter_name={chatter_name}, message={message}, stream_id={stream_id}"}, broadcast=False)
|
||||||
return
|
return
|
||||||
subscribed = is_subscribed(get_user_id(chatter_name), stream_id)
|
subscribed = is_subscribed(chatter_id, stream_id)
|
||||||
# Send the chat message to the client so it can be displayed
|
# Send the chat message to the client so it can be displayed
|
||||||
emit("new_message", {
|
emit("new_message", {
|
||||||
|
"chatter_id": chatter_id,
|
||||||
"chatter_username": chatter_name,
|
"chatter_username": chatter_name,
|
||||||
"message": message,
|
"message": message,
|
||||||
"time_sent": datetime.now().strftime("%Y-%m-%d %H:%M:%S"),
|
"time_sent": datetime.now().strftime("%Y-%m-%d %H:%M:%S"),
|
||||||
@@ -137,7 +138,7 @@ def send_chat(data) -> None:
|
|||||||
}, room=stream_id)
|
}, room=stream_id)
|
||||||
|
|
||||||
# Asynchronously save the chat
|
# Asynchronously save the chat
|
||||||
save_chat(get_user_id(chatter_name), stream_id, message)
|
save_chat(chatter_id, stream_id, message)
|
||||||
|
|
||||||
|
|
||||||
def save_chat(chatter_id, stream_id, message):
|
def save_chat(chatter_id, stream_id, message):
|
||||||
|
|||||||
@@ -100,10 +100,12 @@ def get_user_category_recommendations(user_id = 1, no_categories: int = 4) -> Op
|
|||||||
"""
|
"""
|
||||||
with Database() as db:
|
with Database() as db:
|
||||||
categories = db.fetchall("""
|
categories = db.fetchall("""
|
||||||
SELECT categories.category_id, categories.category_name, categories.num_viewers
|
SELECT categories.category_id, categories.category_name, COALESCE(SUM(streams.num_viewers), 0) AS num_viewers
|
||||||
FROM categories
|
FROM categories
|
||||||
JOIN user_preferences ON categories.category_id = user_preferences.category_id
|
JOIN user_preferences ON categories.category_id = user_preferences.category_id
|
||||||
|
LEFT JOIN streams ON categories.category_id = streams.category_id
|
||||||
WHERE user_preferences.user_id = ?
|
WHERE user_preferences.user_id = ?
|
||||||
|
GROUP BY categories.category_id, categories.category_name
|
||||||
ORDER BY user_preferences.favourability DESC
|
ORDER BY user_preferences.favourability DESC
|
||||||
LIMIT ?
|
LIMIT ?
|
||||||
""", (user_id, no_categories))
|
""", (user_id, no_categories))
|
||||||
|
|||||||
Reference in New Issue
Block a user