This commit is contained in:
NotII
2025-03-03 20:44:10 +00:00
parent cd35d34a24
commit 5260978cb8
4 changed files with 19 additions and 6 deletions

View File

@@ -9,6 +9,7 @@ import { Avatar, AvatarFallback } from "@/components/ui/avatar";
import { formatDistanceToNow } from "date-fns";
import axios from "axios";
import { toast } from "sonner";
import { getCookie } from "@/lib/client-utils";
interface Chat {
_id: string;
@@ -36,12 +37,12 @@ export default function ChatList() {
useEffect(() => {
const fetchVendorData = async () => {
try {
// Get vendor info from session storage or context
const vendorId = sessionStorage.getItem("vendorId");
// Get vendor info from cookies
const vendorId = getCookie("vendorId");
if (!vendorId) {
toast.error("You need to be logged in to view chats");
router.push("/login");
router.push("/auth/login");
return;
}
@@ -68,7 +69,7 @@ export default function ChatList() {
setLoading(true);
try {
const vendorId = sessionStorage.getItem("vendorId");
const vendorId = getCookie("vendorId");
// Fetch chats
const chatsResponse = await axios.get(`/api/chats/vendor/${vendorId}`);

View File

@@ -12,6 +12,7 @@ import {
DropdownMenuTrigger,
} from "@/components/ui/dropdown-menu";
import axios from "axios";
import { getCookie } from "@/lib/client-utils";
interface UnreadCounts {
totalUnread: number;
@@ -28,7 +29,7 @@ export default function ChatNotifications() {
useEffect(() => {
const fetchUnreadCounts = async () => {
try {
const vendorId = sessionStorage.getItem("vendorId");
const vendorId = getCookie("vendorId");
if (!vendorId) return;

View File

@@ -10,6 +10,7 @@ import { Textarea } from "@/components/ui/textarea";
import { ArrowLeft, Send, RefreshCw } from "lucide-react";
import axios from "axios";
import { toast } from "sonner";
import { getCookie } from "@/lib/client-utils";
export default function NewChatForm() {
const router = useRouter();
@@ -23,7 +24,7 @@ export default function NewChatForm() {
useEffect(() => {
const fetchVendorStores = async () => {
try {
const vendorId = sessionStorage.getItem("vendorId");
const vendorId = getCookie("vendorId");
if (!vendorId) {
toast.error("You need to be logged in");

View File

@@ -27,3 +27,13 @@ export async function clientFetch(url: string, options: RequestInit = {}): Promi
throw error;
}
}
/**
* Get a cookie value by name
*/
export function getCookie(name: string): string | undefined {
return document.cookie
.split('; ')
.find(row => row.startsWith(`${name}=`))
?.split('=')[1];
}