Index: backend/subjects/migrations/0007_review_date_posted_alter_evaluationreview_review_and_more.py
===================================================================
--- backend/subjects/migrations/0007_review_date_posted_alter_evaluationreview_review_and_more.py	(revision b9e613c8422f2b7b3237c9e7e83f77e2595db01e)
+++ backend/subjects/migrations/0007_review_date_posted_alter_evaluationreview_review_and_more.py	(revision b9e613c8422f2b7b3237c9e7e83f77e2595db01e)
@@ -0,0 +1,31 @@
+# Generated by Django 5.1.7 on 2025-07-15 14:00
+
+import django.db.models.deletion
+import django.utils.timezone
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('subjects', '0006_evaluationreview_signature_condition_and_more'),
+    ]
+
+    operations = [
+        migrations.AddField(
+            model_name='review',
+            name='date_posted',
+            field=models.DateField(auto_now_add=True, default=django.utils.timezone.now),
+            preserve_default=False,
+        ),
+        migrations.AlterField(
+            model_name='evaluationreview',
+            name='review',
+            field=models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='evaluation_review', to='subjects.review'),
+        ),
+        migrations.AlterField(
+            model_name='otherreview',
+            name='review',
+            field=models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='other_review', to='subjects.review'),
+        ),
+    ]
Index: backend/subjects/models.py
===================================================================
--- backend/subjects/models.py	(revision ca289073ac6fa2d847b5281f90237873572b7f7b)
+++ backend/subjects/models.py	(revision b9e613c8422f2b7b3237c9e7e83f77e2595db01e)
@@ -62,4 +62,5 @@
     )
     review_type = models.CharField(max_length=16, choices=REVIEW_TYPE_CHOICES)
+    date_posted = models.DateField(auto_now_add=True)
 
     def __str__(self):
Index: backend/subjects/serializers.py
===================================================================
--- backend/subjects/serializers.py	(revision ca289073ac6fa2d847b5281f90237873572b7f7b)
+++ backend/subjects/serializers.py	(revision b9e613c8422f2b7b3237c9e7e83f77e2595db01e)
@@ -39,5 +39,5 @@
     class Meta:
         model = Review
-        fields = ['id', 'student', 'subject', 'is_confirmed', 'votes_score', 'user_has_voted']
+        fields = ['id', 'student', 'subject', 'is_confirmed', 'votes_score', 'user_has_voted', 'date_posted']
 
 
Index: backend/subjects/views.py
===================================================================
--- backend/subjects/views.py	(revision ca289073ac6fa2d847b5281f90237873572b7f7b)
+++ backend/subjects/views.py	(revision b9e613c8422f2b7b3237c9e7e83f77e2595db01e)
@@ -8,5 +8,5 @@
 from rest_framework.views import APIView
 from rest_framework.permissions import IsAuthenticated
-from django.db.models import Case, When
+from django.db.models import Case, When, Count, F, Q
 from subjects.utils import get_eligible_subjects, get_recommendations_cache_key, get_recommended_subjects, map_to_subjects_vector, score_for_preferences, get_student_vector
 from .serializers import SubjectSerializer, EvaluationReviewSerializer, OtherReviewSerializer
@@ -256,5 +256,5 @@
 
 class ReviewListView(APIView):
-    permission_classes = [IsAuthenticated, IsAdmin]
+    permission_classes = [IsAuthenticated]
 
     def get(self, request):
@@ -274,4 +274,33 @@
             review_query_set = review_query_set.filter(is_confirmed=is_confirmed)
 
+        subject_code = request.query_params.get("subject_code")
+        if subject_code:
+            review_query_set = review_query_set.filter(subject__code=subject_code)
+
+        sort_by = request.query_params.get('sort_by', 'date')  
+        sort_order = request.query_params.get('sort_order', 'desc')
+        
+        if sort_by not in ['date', 'votes']:
+            return Response({"message": "Invalid sort_by param."}, status=status.HTTP_400_BAD_REQUEST)
+        
+        if sort_order not in ['asc', 'desc']:
+            return Response({"message": "Invalid sort_order param."}, status=status.HTTP_400_BAD_REQUEST)
+
+        if sort_by == 'votes':
+            review_query_set = review_query_set.annotate(
+                vote_score=Count('votes', filter=Q(reviewvote__vote_type='up')) -
+                           Count('votes', filter=Q(reviewvote__vote_type='down'))
+            )
+
+            if sort_order == 'desc':
+                review_query_set = review_query_set.order_by('-vote_score', '-id')
+            else:
+                review_query_set = review_query_set.order_by('vote_score', 'id')
+        else:  
+            if sort_order == 'desc':
+                review_query_set = review_query_set.order_by('-id')
+            else:
+                review_query_set = review_query_set.order_by('id')
+
         review_query_set = review_query_set.select_related("evaluation_review", "other_review")
 
@@ -282,8 +311,8 @@
         for review in paginated_query_set:
             if review.review_type == 'evaluation' and hasattr(review, "evaluation_review"):
-                    serializer = EvaluationReviewSerializer(review.evaluation_review)
+                    serializer = EvaluationReviewSerializer(review.evaluation_review, context={'request': request})
                     data.append(serializer.data)
             elif review.review_type == 'other' and hasattr(review, "other_review"):
-                serializer = OtherReviewSerializer(review.other_review)
+                serializer = OtherReviewSerializer(review.other_review, context={'request': request})
                 data.append(serializer.data)
 
Index: frontend/src/App.tsx
===================================================================
--- frontend/src/App.tsx	(revision ca289073ac6fa2d847b5281f90237873572b7f7b)
+++ frontend/src/App.tsx	(revision b9e613c8422f2b7b3237c9e7e83f77e2595db01e)
@@ -10,5 +10,4 @@
 import "./index.css";
 import Account from "./pages/Account";
-import AdminDashboard from "./pages/AdminDashboard";
 import Home from "./pages/Home";
 import Login from "./pages/Login";
@@ -17,4 +16,5 @@
 import Register from "./pages/Register";
 import ReviewForm from "./pages/ReviewForm";
+import Reviews from "./pages/Reviews";
 import SubjectPreferences from "./pages/SubjectPreferences";
 import SubjectView from "./pages/SubjectView";
@@ -89,12 +89,11 @@
 			},
 			{
-				path: "admin",
+				path: "reviews",
 				element: (
-					<PrivateRoute allowedUserTypes={["admin"]}>
-						<AdminDashboard />
+					<PrivateRoute allowedUserTypes={["student", "admin"]}>
+						<Reviews />
 					</PrivateRoute>
 				),
 			},
-
 			{
 				path: "*",
Index: frontend/src/components/Navbar.tsx
===================================================================
--- frontend/src/components/Navbar.tsx	(revision ca289073ac6fa2d847b5281f90237873572b7f7b)
+++ frontend/src/components/Navbar.tsx	(revision b9e613c8422f2b7b3237c9e7e83f77e2595db01e)
@@ -106,4 +106,23 @@
 						Сите предмети
 					</Link>
+					{isAuthenticated && user?.user_type === "student" && (
+						<Link to="/reviews" className="hover:underline">
+							Информации од студенти
+						</Link>
+					)}
+					{isAuthenticated && user?.user_type === "admin" && (
+						<Link to="/reviews" className="hover:underline">
+							Админ панел
+						</Link>
+					)}
+					{isAuthenticated && user?.user_type === "student" && (
+						<Link
+							to="/recommendations"
+							className="hover:underline"
+							onClick={() => setProfileMenuOpen(false)}
+						>
+							Препораки
+						</Link>
+					)}
 					{isAuthenticated ? (
 						<div className="relative" ref={profileMenuRef}>
@@ -118,11 +137,4 @@
 									{user?.user_type === "admin" ? (
 										<>
-											<Link
-												to="/admin"
-												className="block px-4 py-2 text-sm hover:bg-gray-100 hover:underline"
-												onClick={() => setProfileMenuOpen(false)}
-											>
-												Админ панел
-											</Link>
 											<button
 												onClick={() => {
@@ -197,5 +209,5 @@
 								<>
 									<Link
-										to="/admin"
+										to="/reviews"
 										className="hover:underline"
 										onClick={() => setMenuOpen(false)}
@@ -216,4 +228,11 @@
 								<>
 									<Link
+										to="/reviews"
+										className="hover:underline"
+										onClick={() => setMenuOpen(false)}
+									>
+										Информации од студенти
+									</Link>
+									<Link
 										to="/recommendations"
 										className="hover:underline"
Index: ontend/src/components/Reviews/EvaluationReviews.tsx
===================================================================
--- frontend/src/components/Reviews/EvaluationReviews.tsx	(revision ca289073ac6fa2d847b5281f90237873572b7f7b)
+++ 	(revision )
@@ -1,110 +1,0 @@
-import { EVALUATION_MAP_TO_MK } from "../../constants/subjects";
-import { EvaluationReview } from "../types";
-import Votes from "./Votes";
-
-interface EvaluationReviewsProps {
-	evaluation_review: EvaluationReview;
-}
-
-const EvaluationReviews = ({ evaluation_review }: EvaluationReviewsProps) => {
-	return (
-		<>
-			{evaluation_review.methods?.length > 0 && (
-				<div className="mb-8">
-					<h3 className="text-lg font-medium mb-4 text-gray-900">
-						Информации за полагање
-					</h3>
-					<div className="space-y-4">
-						{evaluation_review &&
-							(evaluation_review.methods?.length > 0 ? (
-								<div className="border border-gray-200 rounded-lg p-4">
-									<div className="flex items-start justify-between mb-3">
-										<div className="flex items-center space-x-2">
-											<span className="text-sm text-gray-600">
-												Индекс: {evaluation_review.review.student}
-											</span>
-											{evaluation_review.review.is_confirmed ? (
-												<div className="flex items-center text-green-600">
-													{/* <CheckCircle className="w-4 h-4 mr-1" /> */}
-													<span className="text-sm">Потврдено</span>
-												</div>
-											) : (
-												<div className="flex items-center text-red-600 group relative cursor-help">
-													<span className="text-sm border-red-600 border-b border-dotted">
-														Непотврдено
-													</span>
-													<div className="absolute left-1/2 -translate-x-1/2 top-full mt-2 z-10 hidden group-hover:block bg-white text-gray-800 text-xs rounded shadow-lg px-3 py-2 w-48 border border-gray-200">
-														Администратор сè уште не ја потврдил точноста на
-														оваа информација.
-													</div>
-												</div>
-											)}
-										</div>
-										{/* TODO: decide if this should stay here */}
-										<Votes review={evaluation_review.review} />
-									</div>
-									{evaluation_review.methods?.map((method, index) => (
-										<div key={index}>
-											<div className="space-y-4 mb-3">
-												<div>
-													<p className="text-sm text-gray-600 mb-2 font-semibold">
-														Начин на оценување {index + 1}:
-													</p>
-													<div className="overflow-x-auto">
-														<table className="min-w-full border border-gray-300">
-															<thead className="bg-gray-50">
-																<tr>
-																	<th className="px-4 py-2 text-left text-sm font-medium text-gray-700 border-b">
-																		Активност
-																	</th>
-																	<th className="px-4 py-2 text-left text-sm font-medium text-gray-700 border-b">
-																		Процент од оценка
-																	</th>
-																</tr>
-															</thead>
-															<tbody>
-																{method.components.map((component, index) => (
-																	<tr key={index}>
-																		<td className="px-4 py-2 text-sm text-gray-900 border-b">
-																			{
-																				EVALUATION_MAP_TO_MK[
-																					(component.category
-																						.charAt(0)
-																						.toUpperCase() +
-																						component.category.slice(
-																							1
-																						)) as keyof typeof EVALUATION_MAP_TO_MK
-																				]
-																			}
-																		</td>
-																		<td className="px-4 py-2 text-sm text-gray-900 border-b">
-																			{component.percentage}%
-																		</td>
-																	</tr>
-																))}
-															</tbody>
-														</table>
-													</div>
-												</div>
-											</div>
-										</div>
-									))}
-									<p className="text-gray-800 font-semibold">
-										Услов за потпис:{" "}
-										<span>
-											{evaluation_review.signature_condition &&
-											evaluation_review.signature_condition != "None"
-												? evaluation_review.signature_condition
-												: "Нема"}
-										</span>
-									</p>
-								</div>
-							) : null)}
-					</div>
-				</div>
-			)}
-		</>
-	);
-};
-
-export default EvaluationReviews;
Index: ontend/src/components/Reviews/OtherReviews.tsx
===================================================================
--- frontend/src/components/Reviews/OtherReviews.tsx	(revision ca289073ac6fa2d847b5281f90237873572b7f7b)
+++ 	(revision )
@@ -1,59 +1,0 @@
-import { CheckCircle } from "lucide-react";
-import { MAP_REVIEW_CATEGORY_TO_MK } from "../SubjectCatalog/utils";
-import { OtherReview } from "../types";
-import Votes from "./Votes";
-
-interface OtherReviewsProps {
-	other_reviews: OtherReview[];
-}
-
-const OtherReviews = ({ other_reviews }: OtherReviewsProps) => {
-	return (
-		<div>
-			<h3 className="text-lg font-medium mb-4 text-gray-900">
-				Останати информации
-			</h3>
-
-			<div className="space-y-4">
-				{other_reviews
-					.sort(
-						(a, b) => (b.review.votes_score ?? 0) - (a.review.votes_score ?? 0)
-					)
-					.map((other_review, i) => (
-						<div className="border border-gray-200 rounded-lg p-4" key={i}>
-							<div className="flex items-start justify-between mb-3">
-								<div className="flex items-center space-x-2">
-									<span className="text-sm text-gray-600">
-										Индекс: {other_review.review.student}
-									</span>
-									<span className="bg-blue-100 text-blue-800 px-2 py-1 rounded text-xs">
-										{MAP_REVIEW_CATEGORY_TO_MK[other_review.category]}
-									</span>
-									{other_review.review.is_confirmed ? (
-										<div className="flex items-center text-green-600">
-											<CheckCircle className="w-4 h-4 mr-1" />
-											<span className="text-sm">Потврдено</span>
-										</div>
-									) : (
-										<div className="flex items-center text-red-600 group relative cursor-help">
-											<span className="text-sm border-red-600 border-b border-dotted">
-												Непотврдено
-											</span>
-											<div className="absolute left-1/2 -translate-x-1/2 top-full mt-2 z-10 hidden group-hover:block bg-white text-gray-800 text-xs rounded shadow-lg px-3 py-2 w-48 border border-gray-200">
-												Администратор сè уште не ја потврдил точноста на оваа
-												информација.
-											</div>
-										</div>
-									)}
-								</div>
-								<Votes review={other_review.review} />
-							</div>
-							<p className="text-gray-700 text-sm">{other_review.content}</p>
-						</div>
-					))}
-			</div>
-		</div>
-	);
-};
-
-export default OtherReviews;
Index: frontend/src/components/types.ts
===================================================================
--- frontend/src/components/types.ts	(revision ca289073ac6fa2d847b5281f90237873572b7f7b)
+++ frontend/src/components/types.ts	(revision b9e613c8422f2b7b3237c9e7e83f77e2595db01e)
@@ -115,8 +115,9 @@
 	subject: ReviewSubject;
 	user_has_voted?: "none" | "up" | "down";
+	date_posted: string;
 }
 
 export interface Reviews {
-	evaluation: EvaluationReview; // only one evaluation review per subject
+	evaluation: EvaluationReview[];
 	other: OtherReview[];
 }
Index: ontend/src/pages/AdminDashboard.tsx
===================================================================
--- frontend/src/pages/AdminDashboard.tsx	(revision ca289073ac6fa2d847b5281f90237873572b7f7b)
+++ 	(revision )
@@ -1,376 +1,0 @@
-import { CheckCircle, Eye, Trash2, XCircle } from "lucide-react";
-import { useEffect, useState } from "react";
-import axiosInstance from "../api/axiosInstance";
-import { MAP_REVIEW_CATEGORY_TO_MK } from "../components/SubjectCatalog/utils";
-import { EvaluationReview, OtherReview } from "../components/types";
-import { EVALUATION_MAP_TO_MK } from "../constants/subjects";
-
-type AdminReviewsList = (OtherReview | EvaluationReview)[];
-
-interface ApiResponse {
-	count: number;
-	next: string | null;
-	previous: string | null;
-	results: AdminReviewsList;
-}
-
-const AdminDashboard = () => {
-	const [reviews, setReviews] = useState<AdminReviewsList>([]);
-	const [loading, setLoading] = useState(false);
-	const [nextUrl, setNextUrl] = useState<string | null>(null);
-	const [filters, setFilters] = useState({
-		type: "all", // "all", "evaluation", "other"
-		approved: "all", // "all", "approved", "unapproved"
-	});
-	const [expandedReview, setExpandedReview] = useState<number | null>(null);
-
-	const fetchReviews = async (url?: string, reset = false) => {
-		setLoading(true);
-		try {
-			const params = new URLSearchParams();
-			if (filters.type !== "all") params.append("type", filters.type);
-			if (filters.approved !== "all") {
-				params.append(
-					"is_confirmed",
-					filters.approved === "approved" ? "true" : "false"
-				);
-			}
-			const requestUrl =
-				url || `/subjects/subjects-reviews-list/?${params.toString()}`;
-			const response = await axiosInstance.get<ApiResponse>(requestUrl);
-
-			if (reset) {
-				setReviews(response.data.results);
-			} else {
-				setReviews((prev) => [...prev, ...response.data.results]);
-			}
-			setNextUrl(response.data.next);
-		} catch (error) {
-			console.error("Error fetching reviews:", error);
-		} finally {
-			setLoading(false);
-		}
-	};
-
-	useEffect(() => {
-		fetchReviews(undefined, true);
-	}, []);
-
-	const toggleApproval = async (reviewId: number, currentStatus: boolean) => {
-		try {
-			const response = await axiosInstance.patch(
-				`/subjects/admin-subject-review/${reviewId}/`,
-				{
-					is_confirmed: !currentStatus,
-				}
-			);
-			console.log(response.data);
-			setReviews((prev) =>
-				prev.map((review) =>
-					review.review.id === reviewId
-						? {
-								...review,
-								review: { ...review.review, is_confirmed: !currentStatus },
-						  }
-						: review
-				)
-			);
-		} catch (error) {
-			console.error("Error updating review approval:", error);
-		}
-	};
-
-	const deleteReview = async (reviewId: number) => {
-		if (!confirm("Дали сте сигурни дека сакате да избришете?")) {
-			return;
-		}
-
-		try {
-			const response = await axiosInstance.delete(
-				`/subjects/admin-subject-review/${reviewId}/`
-			);
-			console.log(response.data);
-			setReviews((prev) =>
-				prev.filter((review) => review.review.id !== reviewId)
-			);
-		} catch (error) {
-			console.error("Error deleting review:", error);
-		}
-	};
-
-	const handleSearch = () => {
-		fetchReviews(undefined, true);
-	};
-
-	const loadMore = () => {
-		if (nextUrl && !loading) {
-			fetchReviews(nextUrl);
-		}
-	};
-
-	return (
-		<div className="max-w-7xl mx-auto p-6 bg-white">
-			<h1 className="text-3xl font-bold mb-8">Администраторски панел</h1>
-
-			<div className="bg-gray-50 rounded-lg p-4 mb-6">
-				<div className="flex items-center space-x-4">
-					<div className="flex flex-col items-start space-x-0 space-y-2">
-						<div className="flex flex-col md:flex-row md:space-x-8">
-							<div>
-								<label className="block text-sm font-medium text-gray-700 mb-1">
-									Тип
-								</label>
-								<select
-									value={filters.type}
-									onChange={(e) =>
-										setFilters((prev) => ({ ...prev, type: e.target.value }))
-									}
-									className="px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 custom-select"
-								>
-									<option value="all">Сите</option>
-									<option value="evaluation">Информации за полагање</option>
-									<option value="other">Други информации</option>
-								</select>
-							</div>
-							<div>
-								<label className="block text-sm font-medium text-gray-700 mb-1">
-									Статус на одобрување
-								</label>
-								<select
-									value={filters.approved}
-									onChange={(e) =>
-										setFilters((prev) => ({
-											...prev,
-											approved: e.target.value,
-										}))
-									}
-									className="px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500  custom-select"
-								>
-									<option value="all">Сите</option>
-									<option value="approved">Одобрени</option>
-									<option value="unapproved">Неодобрени</option>
-								</select>
-							</div>
-						</div>
-						<div className="flex pt-4">
-							<button
-								onClick={handleSearch}
-								disabled={loading}
-								className="px-4 py-2 bg-blue-600 text-white rounded-md hover:bg-blue-700 disabled:bg-gray-400 disabled:cursor-not-allowed focus:outline-none focus:ring-2 focus:ring-blue-500"
-							>
-								{loading ? "Се вчитува..." : "Пребарај"}
-							</button>
-						</div>
-					</div>
-				</div>
-			</div>
-
-			<div className="space-y-4">
-				{reviews.length === 0 && !loading ? (
-					<p className="text-gray-500 text-center py-8">
-						Нема резултати за избраните филтри.
-					</p>
-				) : (
-					reviews.map((review) => (
-						<div
-							key={review.review.id}
-							className="border border-gray-200 rounded-lg p-6"
-						>
-							<div className="flex items-start justify-between mb-4">
-								<div className="flex-1">
-									<div className="flex items-center space-x-3 mb-2">
-										<span className="font-semibold text-lg">
-											{review.review.subject.name} ({review.review.subject.code}
-											)
-										</span>
-										<span
-											className={
-												"px-2 py-1 rounded text-xs font-medium bg-blue-100 text-blue-800"
-											}
-										>
-											{/* className={`px-2 py-1 rounded text-xs font-medium ${ 
-												"methods" in review
-													? "bg-blue-100 text-blue-800"
-													: "bg-purple-100 text-purple-800"
-											}`}
-										>
-										*/}
-											{/* make api specify types to prevent this */}
-											{"methods" in review ? "Полагање" : "Други"}
-										</span>
-										{"category" in review && review.category && (
-											<span className="bg-gray-100 text-gray-800 px-2 py-1 rounded text-xs">
-												{
-													MAP_REVIEW_CATEGORY_TO_MK[
-														review.category as keyof typeof MAP_REVIEW_CATEGORY_TO_MK
-													]
-												}
-											</span>
-										)}
-									</div>
-									<div className="flex items-center space-x-4 text-sm text-gray-600">
-										<span>Студент: {review.review.student}</span>
-										<span>
-											Гласови:{" "}
-											{`${
-												review.review.votes_score ?? 0 > 0
-													? "+"
-													: review.review.votes_score ?? 0 < 0
-													? "-"
-													: ""
-											}${review.review.votes_score}`}
-										</span>
-									</div>
-								</div>
-								<div className="flex items-center space-x-2">
-									<button
-										onClick={() =>
-											setExpandedReview(
-												expandedReview === review.review.id
-													? null
-													: review.review.id ?? null
-											)
-										}
-										className="p-2 text-gray-600 hover:text-gray-900 hover:bg-gray-100 rounded"
-										title="Прегледај детали"
-									>
-										<Eye className="w-4 h-4" />
-									</button>
-									<button
-										onClick={() =>
-											toggleApproval(
-												review.review.id!,
-												review.review.is_confirmed!
-											)
-										}
-										className={`p-2 rounded ${
-											review.review.is_confirmed
-												? "text-red-600 hover:text-red-800 hover:bg-red-50"
-												: "text-green-600 hover:text-green-800 hover:bg-green-50"
-										}`}
-										title={
-											review.review.is_confirmed
-												? "Означи како неодобрено"
-												: "Означи како одобрено"
-										}
-									>
-										{review.review.is_confirmed ? (
-											<XCircle className="w-4 h-4" />
-										) : (
-											<CheckCircle className="w-4 h-4" />
-										)}
-									</button>
-									<button
-										onClick={() => deleteReview(review.review.id!)}
-										className="p-2 text-red-600 hover:text-red-800 hover:bg-red-50 rounded"
-										title="Избриши"
-									>
-										<Trash2 className="w-4 h-4" />
-									</button>
-								</div>
-							</div>
-
-							<div className="flex items-center space-x-2 mb-3">
-								<span
-									className={`text-sm font-medium ${
-										review.review.is_confirmed
-											? "text-green-600"
-											: "text-red-600"
-									}`}
-								>
-									{review.review.is_confirmed ? "✓ Одобрено" : "✗ Неодобрено"}
-								</span>
-							</div>
-
-							{expandedReview === review.review.id && (
-								<div className="mt-4 pt-4 border-t border-gray-200">
-									{"methods" in review ? (
-										<div className="space-y-4">
-											<h4 className="font-medium">Начини на оценување:</h4>
-											{review.methods?.map((method, index) => (
-												<div key={index} className="bg-gray-50 rounded p-3">
-													<p className="font-medium mb-2">Метод {index + 1}:</p>
-													{method.note && (
-														<p className="text-sm text-gray-600 mb-2">
-															Забелешка: {method.note}
-														</p>
-													)}
-													<div className="overflow-x-auto">
-														<table className="min-w-full border border-gray-300">
-															<thead className="bg-gray-100">
-																<tr>
-																	<th className="px-3 py-2 text-left text-sm font-medium">
-																		Активност
-																	</th>
-																	<th className="px-3 py-2 text-left text-sm font-medium">
-																		Процент
-																	</th>
-																</tr>
-															</thead>
-															<tbody>
-																{method.components.map((component, idx) => (
-																	<tr key={idx}>
-																		<td className="px-3 py-2 text-sm border-b">
-																			{
-																				EVALUATION_MAP_TO_MK[
-																					(component.category
-																						.charAt(0)
-																						.toUpperCase() +
-																						component.category.slice(
-																							1
-																						)) as keyof typeof EVALUATION_MAP_TO_MK
-																				]
-																			}
-																		</td>
-																		<td className="px-3 py-2 text-sm border-b">
-																			{component.percentage}%
-																		</td>
-																	</tr>
-																))}
-															</tbody>
-														</table>
-													</div>
-												</div>
-											))}
-											<div>
-												<strong>Услов за потпис:</strong>{" "}
-												{review.signature_condition || "Нема"}
-											</div>
-										</div>
-									) : (
-										<div>
-											<h4 className="font-medium mb-2">Содржина:</h4>
-											<p className="text-gray-700">
-												{"content" in review ? review.content : "Нема содржина"}
-											</p>
-										</div>
-									)}
-								</div>
-							)}
-						</div>
-					))
-				)}
-
-				{nextUrl && (
-					<div className="flex justify-center pt-6">
-						<button
-							onClick={loadMore}
-							disabled={loading}
-							className="px-6 py-2 bg-blue-600 text-white rounded-lg hover:bg-blue-700 disabled:bg-gray-400 disabled:cursor-not-allowed"
-						>
-							{loading ? "Се вчитува..." : "Вчитај уште"}
-						</button>
-					</div>
-				)}
-			</div>
-
-			{loading && reviews.length === 0 && (
-				<div className="flex justify-center py-8">
-					<div className="text-gray-500">Се вчитува...</div>
-				</div>
-			)}
-		</div>
-	);
-};
-
-export default AdminDashboard;
Index: frontend/src/pages/ReviewForm.tsx
===================================================================
--- frontend/src/pages/ReviewForm.tsx	(revision ca289073ac6fa2d847b5281f90237873572b7f7b)
+++ frontend/src/pages/ReviewForm.tsx	(revision b9e613c8422f2b7b3237c9e7e83f77e2595db01e)
@@ -1,5 +1,5 @@
-import { AlertCircle, Plus, Trash2 } from "lucide-react";
+import { AlertCircle, ArrowLeft, Plus, Trash2 } from "lucide-react";
 import { useState } from "react";
-import { useLocation, useNavigate } from "react-router-dom";
+import { useLocation, useNavigate, useParams } from "react-router-dom";
 import axiosInstance from "../api/axiosInstance";
 import { EvaluationComponent, EvaluationMethod } from "../components/types";
@@ -44,5 +44,7 @@
 	const subjectName: string = location?.state?.subject_name;
 	const subjectId: number = location?.state?.subject_id;
-	// const { code } = useParams();
+	// const from: string = location.state?.from || "/";
+	const { code } = useParams();
+	const from = `/subjects/${code}`;
 
 	const addMethod = () => {
@@ -193,11 +195,22 @@
 	return (
 		<div className="max-w-4xl mx-auto p-6 bg-white rounded-lg shadow-sm">
+			<button
+				onClick={() => navigate(from)}
+				className="flex items-center text-gray-600 hover:text-gray-900 mb-4"
+			>
+				<ArrowLeft className="w-5 h-5 mr-2" />
+				Назад кон преглед на предметот
+				{/* {from.startsWith("/subjects")
+					? ` преглед на предметот`
+					: " домашната страна"} */}
+			</button>
+
 			<h2 className="text-2xl font-bold mb-6">Сподели информација</h2>
 
-			{subjectName && (
+			{(subjectName || code) && (
 				<div className="mb-6 p-4 bg-blue-50 rounded-lg">
 					<p className="text-blue-800">
 						Додавате информација за предмет:{" "}
-						<span className="font-semibold">{subjectName}</span>
+						<span className="font-semibold">{subjectName || code}</span>
 					</p>
 				</div>
Index: frontend/src/pages/Reviews.tsx
===================================================================
--- frontend/src/pages/Reviews.tsx	(revision b9e613c8422f2b7b3237c9e7e83f77e2595db01e)
+++ frontend/src/pages/Reviews.tsx	(revision b9e613c8422f2b7b3237c9e7e83f77e2595db01e)
@@ -0,0 +1,538 @@
+import { CheckCircle, Eye, Trash2, XCircle } from "lucide-react";
+import { useEffect, useRef, useState } from "react";
+import { useLocation } from "react-router-dom";
+import axiosInstance from "../api/axiosInstance";
+import { fetchSubjects } from "../api/subjects";
+import Votes from "../components/Reviews/Votes";
+import { LatinToCyrillic } from "../components/StudentForm/utils";
+import { MAP_REVIEW_CATEGORY_TO_MK } from "../components/SubjectCatalog/utils";
+import { EvaluationReview, OtherReview } from "../components/types";
+import { EVALUATION_MAP_TO_MK } from "../constants/subjects";
+import { useSubjects } from "../context/SubjectsContext";
+import { useAuth } from "../hooks/useAuth";
+
+type ReviewsList = (OtherReview | EvaluationReview)[];
+
+interface ApiResponse {
+	count: number;
+	next: string | null;
+	previous: string | null;
+	results: ReviewsList;
+}
+
+const Reviews = () => {
+	const [reviews, setReviews] = useState<ReviewsList>([]);
+	const [loading, setLoading] = useState(false);
+	const [nextUrl, setNextUrl] = useState<string | null>(null);
+	const [filters, setFilters] = useState({
+		type: "all", // all, evaluation, other
+		subject: "all", // all | <subject_code>
+		approved: "all", // all, approved, unapproved
+		sort_by: "date", // date, votes
+		sort_order: "desc", // asc, desc
+	});
+	const [subjects, setSubjects] = useSubjects();
+	const { user } = useAuth();
+	const location = useLocation();
+	const [subjectSearch, setSubjectSearch] = useState("");
+	const [showSubjectDropdown, setShowSubjectDropdown] = useState(false);
+	const [selectedSubject, setSelectedSubject] = useState<{
+		name: string;
+	} | null>(null);
+	const [collapsedReviews, setCollapsedReviews] = useState<Set<number>>(
+		new Set()
+	);
+	const [hasSearched, setHasSearched] = useState(false);
+	const dropdownRef = useRef<HTMLDivElement>(null);
+	const code = location.state?.code || "";
+	useEffect(() => {
+		const handleClickOutside = (event: MouseEvent) => {
+			if (
+				dropdownRef.current &&
+				!dropdownRef.current.contains(event.target as Node)
+			) {
+				setShowSubjectDropdown(false);
+			}
+		};
+		document.addEventListener("mousedown", handleClickOutside);
+		return () => {
+			document.removeEventListener("mousedown", handleClickOutside);
+		};
+	}, []);
+
+	useEffect(() => {
+		if (code) {
+			setFilters((prev) => ({ ...prev, subject: code }));
+			const subject = subjects.find((s) => s.code === code);
+			if (subject) {
+				setSelectedSubject({ name: subject.name });
+			}
+		}
+	}, [code, subjects]);
+
+	useEffect(() => {
+		fetchSubjects(setSubjects);
+	}, []);
+
+	const fetchReviews = async (url?: string, reset = false) => {
+		setLoading(true);
+		setHasSearched(true);
+		try {
+			const params = new URLSearchParams();
+			if (filters.type !== "all") params.append("type", filters.type);
+			if (filters.subject !== "all")
+				params.append("subject_code", filters.subject);
+			if (filters.approved !== "all") {
+				params.append(
+					"is_confirmed",
+					filters.approved === "approved" ? "true" : "false"
+				);
+			}
+			params.append("sort_by", filters.sort_by);
+			params.append("sort_order", filters.sort_order);
+
+			const requestUrl =
+				url || `/subjects/subjects-reviews-list/?${params.toString()}`;
+			const response = await axiosInstance.get<ApiResponse>(requestUrl);
+			if (reset) {
+				setReviews(response.data.results);
+			} else {
+				setReviews((prev) => [...prev, ...response.data.results]);
+			}
+			setNextUrl(response.data.next);
+		} catch (error) {
+			console.error("Error fetching reviews:", error);
+		} finally {
+			setLoading(false);
+		}
+	};
+
+	const toggleApproval = async (reviewId: number, currentStatus: boolean) => {
+		try {
+			await axiosInstance.patch(`/subjects/admin-subject-review/${reviewId}/`, {
+				is_confirmed: !currentStatus,
+			});
+			setReviews((prev) =>
+				prev.map((review) =>
+					review.review.id === reviewId
+						? {
+								...review,
+								review: { ...review.review, is_confirmed: !currentStatus },
+						  }
+						: review
+				)
+			);
+		} catch (error) {
+			console.error("Error updating review approval:", error);
+		}
+	};
+
+	const deleteReview = async (reviewId: number) => {
+		if (!confirm("Дали сте сигурни дека сакате да избришете?")) {
+			return;
+		}
+
+		try {
+			await axiosInstance.delete(`/subjects/admin-subject-review/${reviewId}/`);
+			setReviews((prev) =>
+				prev.filter((review) => review.review.id !== reviewId)
+			);
+		} catch (error) {
+			console.error("Error deleting review:", error);
+		}
+	};
+
+	const handleSearch = () => {
+		fetchReviews(undefined, true);
+	};
+
+	const loadMore = () => {
+		if (nextUrl && !loading) {
+			fetchReviews(nextUrl);
+		}
+	};
+
+	const isAdmin = user?.user_type === "admin";
+
+	return (
+		<div className="max-w-7xl mx-auto p-6 bg-white min-h-screen">
+			<h1 className="text-3xl font-bold mb-8">
+				{isAdmin ? "Администраторски панел" : "Информации од студенти"}
+			</h1>
+
+			{/* filters */}
+			<div className="bg-gray-50 rounded-lg p-4 mb-6">
+				<div className="flex items-center space-x-4">
+					<div className="flex flex-col items-start space-x-0 space-y-2">
+						<div className="flex flex-col md:flex-row md:space-x-8">
+							<div className="relative" ref={dropdownRef}>
+								<label className="block text-sm font-medium text-gray-700 mb-1">
+									Предмет
+								</label>
+								<div className="relative">
+									{selectedSubject === null && (
+										<input
+											type="text"
+											value={subjectSearch}
+											onChange={(e) => {
+												setSubjectSearch(e.target.value);
+												setShowSubjectDropdown(true);
+											}}
+											onFocus={() => setShowSubjectDropdown(true)}
+											placeholder={`${
+												selectedSubject === null ? "Пребарај предмет..." : ""
+											}`}
+											disabled={selectedSubject !== null}
+											className={`w-64 px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 ${
+												selectedSubject ? "bg-gray-100 cursor-not-allowed" : ""
+											}`}
+										/>
+									)}
+									{showSubjectDropdown && !selectedSubject && (
+										<div className="absolute top-full left-0 right-0 mt-1 bg-white border border-gray-300 rounded-md shadow-lg max-h-60 overflow-y-auto z-10">
+											{subjects
+												.filter(
+													(subject) =>
+														subject.name
+															.toLowerCase()
+															.includes(subjectSearch.toLowerCase()) ||
+														subject.name
+															.toLowerCase()
+															.includes(
+																LatinToCyrillic(
+																	subjectSearch.toLowerCase()
+																).toLowerCase()
+															)
+												)
+												.slice(0, 5)
+												.map((subject) => (
+													<div
+														key={subject.code}
+														className="px-3 py-2 hover:bg-gray-100 cursor-pointer"
+														onClick={() => {
+															setSelectedSubject({
+																name: subject.name,
+															});
+															setFilters((prev) => ({
+																...prev,
+																subject: subject.code,
+															}));
+															setSubjectSearch("");
+															setShowSubjectDropdown(false);
+														}}
+													>
+														{subject.name}
+													</div>
+												))}
+										</div>
+									)}
+								</div>
+
+								{selectedSubject && (
+									<div className="mt-2">
+										<span
+											onClick={() => {
+												setSelectedSubject(null);
+												setFilters((prev) => ({ ...prev, subject: "all" }));
+												setSubjectSearch("");
+											}}
+											className="inline-flex items-center px-3 py-2 bg-blue-100 text-blue-800 rounded-full text-sm cursor-pointer hover:bg-blue-200 transition-colors"
+										>
+											{selectedSubject.name}
+											<span className="ml-2 text-blue-600 hover:text-blue-800">
+												×
+											</span>
+										</span>
+									</div>
+								)}
+							</div>
+							<div>
+								<label className="block text-sm font-medium text-gray-700 mb-1">
+									Тип
+								</label>
+								<select
+									value={filters.type}
+									onChange={(e) =>
+										setFilters((prev) => ({ ...prev, type: e.target.value }))
+									}
+									className="px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 custom-select"
+								>
+									<option value="all">Сите типови</option>
+									<option value="evaluation">Информации за полагање</option>
+									<option value="other">Други информации</option>
+								</select>
+							</div>
+							<div>
+								<label className="block text-sm font-medium text-gray-700 mb-1">
+									Статус на одобрување
+								</label>
+								<select
+									value={filters.approved}
+									onChange={(e) =>
+										setFilters((prev) => ({
+											...prev,
+											approved: e.target.value,
+										}))
+									}
+									className="px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 custom-select"
+								>
+									<option value="all">Сите</option>
+									<option value="approved">Одобрени</option>
+									<option value="unapproved">Неодобрени</option>
+								</select>
+							</div>
+							<div>
+								<label className="block text-sm font-medium text-gray-700 mb-1">
+									Сортирај по
+								</label>
+								<div className="flex space-x-2">
+									<select
+										value={filters.sort_by}
+										onChange={(e) =>
+											setFilters((prev) => ({
+												...prev,
+												sort_by: e.target.value,
+											}))
+										}
+										className="px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500 custom-select"
+									>
+										<option value="date">Датум</option>
+										<option value="votes">Гласови</option>
+									</select>
+									<button
+										onClick={() =>
+											setFilters((prev) => ({
+												...prev,
+												sort_order: prev.sort_order === "desc" ? "asc" : "desc",
+											}))
+										}
+										className="px-3 py-2 border border-gray-300 rounded-md hover:bg-gray-50 focus:outline-none focus:ring-2 focus:ring-blue-500 transition-colors"
+										title={`Сортирај ${
+											filters.sort_order === "desc" ? "растечки" : "опаѓачки"
+										}`}
+									>
+										{filters.sort_order === "desc" ? "↓" : "↑"}
+									</button>
+								</div>
+							</div>
+						</div>
+						<div className="flex pt-4">
+							<button
+								onClick={handleSearch}
+								disabled={loading}
+								className={`px-4 py-2 bg-blue-600 text-white rounded-md hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-500 transition-colors ${
+									loading ? "bg-gray-400 cursor-not-allowed" : ""
+								}`}
+							>
+								{loading ? "Се вчитува..." : "Пребарај"}
+							</button>
+						</div>
+					</div>
+				</div>
+			</div>
+
+			<div className="space-y-4">
+				{hasSearched && reviews.length === 0 && !loading ? (
+					<p className="text-gray-500 text-center py-8">
+						Нема резултати за избраните филтри.
+					</p>
+				) : (
+					reviews.map((review) => (
+						<div
+							key={review.review.id}
+							className="border border-gray-200 rounded-lg p-6"
+						>
+							<div className="flex items-start justify-between mb-4">
+								<div className="flex-1">
+									<div className="flex items-center space-x-3 mb-2">
+										<span className="font-semibold text-lg">
+											{review.review.subject.name} ({review.review.subject.code}
+											)
+										</span>
+										<span className="px-2 py-1 rounded text-xs font-medium bg-blue-100 text-blue-800">
+											{"methods" in review ? "Полагање" : "Други"}
+										</span>
+										{"category" in review && review.category && (
+											<span className="bg-gray-100 text-gray-800 px-2 py-1 rounded text-xs">
+												{
+													MAP_REVIEW_CATEGORY_TO_MK[
+														review.category as keyof typeof MAP_REVIEW_CATEGORY_TO_MK
+													]
+												}
+											</span>
+										)}
+									</div>
+									<div className="flex items-center space-x-4 text-sm text-gray-600">
+										<span>{review.review.date_posted}</span>
+										<span>Студент: {review.review.student}</span>
+										<span>
+											Гласови:{" "}
+											{`${
+												review.review.votes_score ?? 0 > 0
+													? "+"
+													: review.review.votes_score ?? 0 < 0
+													? "-"
+													: ""
+											}${review.review.votes_score}`}
+										</span>
+									</div>
+								</div>
+								<div className="flex items-center space-x-2">
+									{!isAdmin && <Votes review={review.review} />}
+									<button
+										onClick={() => {
+											const newCollapsed = new Set(collapsedReviews);
+											if (newCollapsed.has(review.review.id!)) {
+												newCollapsed.delete(review.review.id!);
+											} else {
+												newCollapsed.add(review.review.id!);
+											}
+											setCollapsedReviews(newCollapsed);
+										}}
+										className="p-2 text-gray-600 hover:text-gray-900 hover:bg-gray-100 rounded"
+										title="Прегледај детали"
+									>
+										<Eye className="w-4 h-4" />
+									</button>
+									{isAdmin && (
+										<>
+											<button
+												onClick={() =>
+													toggleApproval(
+														review.review.id!,
+														review.review.is_confirmed!
+													)
+												}
+												className={`p-2 rounded ${
+													review.review.is_confirmed
+														? "text-red-600 hover:text-red-800 hover:bg-red-50"
+														: "text-green-600 hover:text-green-800 hover:bg-green-50"
+												}`}
+												title={
+													review.review.is_confirmed
+														? "Означи како неодобрено"
+														: "Означи како одобрено"
+												}
+											>
+												{review.review.is_confirmed ? (
+													<XCircle className="w-4 h-4" />
+												) : (
+													<CheckCircle className="w-4 h-4" />
+												)}
+											</button>
+											<button
+												onClick={() => deleteReview(review.review.id!)}
+												className="p-2 text-red-600 hover:text-red-800 hover:bg-red-50 rounded"
+												title="Избриши"
+											>
+												<Trash2 className="w-4 h-4" />
+											</button>
+										</>
+									)}
+								</div>
+							</div>
+
+							<div className="flex items-center space-x-2 mb-3">
+								<span
+									className={`text-sm font-medium ${
+										review.review.is_confirmed
+											? "text-green-600"
+											: "text-red-600"
+									}`}
+								>
+									{review.review.is_confirmed ? "✓ Одобрено" : "✗ Неодобрено"}
+								</span>
+							</div>
+
+							{!collapsedReviews.has(review.review.id!) && (
+								<div className="mt-4 pt-4 border-t border-gray-200">
+									{"methods" in review ? (
+										<div className="space-y-4">
+											<h4 className="font-medium">Начини на оценување:</h4>
+											{review.methods?.map((method, index) => (
+												<div key={index} className="bg-gray-50 rounded p-3">
+													<p className="font-medium mb-2">Метод {index + 1}:</p>
+													{method.note && (
+														<p className="text-sm text-gray-600 mb-2">
+															Забелешка: {method.note}
+														</p>
+													)}
+													<div className="overflow-x-auto">
+														<table className="min-w-full border border-gray-300">
+															<thead className="bg-gray-100">
+																<tr>
+																	<th className="px-3 py-2 text-left text-sm font-medium">
+																		Активност
+																	</th>
+																	<th className="px-3 py-2 text-left text-sm font-medium">
+																		Процент
+																	</th>
+																</tr>
+															</thead>
+															<tbody>
+																{method.components.map((component, idx) => (
+																	<tr key={idx}>
+																		<td className="px-3 py-2 text-sm border-b">
+																			{
+																				EVALUATION_MAP_TO_MK[
+																					(component.category
+																						.charAt(0)
+																						.toUpperCase() +
+																						component.category.slice(
+																							1
+																						)) as keyof typeof EVALUATION_MAP_TO_MK
+																				]
+																			}
+																		</td>
+																		<td className="px-3 py-2 text-sm border-b">
+																			{component.percentage}%
+																		</td>
+																	</tr>
+																))}
+															</tbody>
+														</table>
+													</div>
+												</div>
+											))}
+											<div>
+												<strong>Услов за потпис:</strong>{" "}
+												{review.signature_condition || "Нема"}
+											</div>
+										</div>
+									) : (
+										<div>
+											<h4 className="font-medium mb-2">Содржина:</h4>
+											<p className="text-gray-700">
+												{"content" in review ? review.content : "Нема содржина"}
+											</p>
+										</div>
+									)}
+								</div>
+							)}
+						</div>
+					))
+				)}
+
+				{nextUrl && (
+					<div className="flex justify-center pt-6">
+						<button
+							onClick={loadMore}
+							disabled={loading}
+							className="px-6 py-2 bg-blue-600 text-white rounded-lg hover:bg-blue-700 disabled:bg-gray-400 disabled:cursor-not-allowed"
+						>
+							{loading ? "Се вчитува..." : "Вчитај уште"}
+						</button>
+					</div>
+				)}
+			</div>
+
+			{loading && reviews.length === 0 && (
+				<div className="flex justify-center py-8">
+					<div className="text-gray-500">Се вчитува...</div>
+				</div>
+			)}
+		</div>
+	);
+};
+
+export default Reviews;
Index: frontend/src/pages/SubjectView.tsx
===================================================================
--- frontend/src/pages/SubjectView.tsx	(revision ca289073ac6fa2d847b5281f90237873572b7f7b)
+++ frontend/src/pages/SubjectView.tsx	(revision b9e613c8422f2b7b3237c9e7e83f77e2595db01e)
@@ -1,18 +1,8 @@
-import {
-	ArrowLeft,
-	Tag,
-	// ThumbsDown,
-	// ThumbsUp,
-	Users,
-} from "lucide-react";
+import { ArrowLeft, Tag, Users } from "lucide-react";
 import { useEffect, useMemo, useState } from "react";
 import { Link, useLocation, useNavigate, useParams } from "react-router-dom";
-import axiosInstance from "../api/axiosInstance";
 import { fetchSubjects } from "../api/subjects";
-import EvaluationReviews from "../components/Reviews/EvaluationReviews";
-import OtherReviews from "../components/Reviews/OtherReviews";
 import { getSubjectPrerequisites } from "../components/SubjectCatalog/utils";
 import SkeletonSubjectView from "../components/SubjectView/SkeletonSubjectView";
-import { Reviews } from "../components/types";
 import { EVALUATION_MAP_TO_MK } from "../constants/subjects";
 import { useSubjects } from "../context/SubjectsContext";
@@ -24,5 +14,4 @@
 	>("Нема предуслов");
 	const [isExpanded, setIsExpanded] = useState(false);
-	const [reviews, setReviews] = useState<Reviews>({} as Reviews);
 	const [filteredTechonologies, setFilteredTechnologies] = useState<string[]>(
 		[]
@@ -38,18 +27,4 @@
 		return subjects.find((subject) => subject.code === code);
 	}, [subjects, code]);
-
-	useEffect(() => {
-		if (!selectedSubject) return;
-		(async () => {
-			try {
-				const response = await axiosInstance.get<Reviews>(
-					`subjects/subject-review/${selectedSubject?.code}`
-				);
-				setReviews(response.data);
-			} catch (err) {
-				console.error("Error: ", err);
-			}
-		})();
-	}, [selectedSubject]);
 
 	useEffect(() => {
@@ -95,10 +70,8 @@
 	}, [selectedSubject, subjects]);
 
-	// We are "loading" if the global subjects context hasn't populated yet.
 	if (subjects.length === 0) {
 		return <SkeletonSubjectView />;
 	}
 
-	// Handle case where the subject code is not found in our global list
 	if (!selectedSubject) {
 		return (
@@ -145,4 +118,43 @@
 							</p>
 						</div>
+
+						{/* Action buttons */}
+						<div className="mt-4 sm:mt-0 flex flex-col sm:flex-row gap-3">
+							{user?.user_type === "student" ? (
+								<>
+									<button
+										className="bg-blue-600 text-white px-4 py-2 rounded-lg hover:bg-blue-700 transition-colors text-sm"
+										onClick={() =>
+											navigate(`/reviews`, {
+												state: { code: `${selectedSubject.code}` },
+											})
+										}
+									>
+										Прегледај информации
+									</button>
+									<button
+										className="bg-green-600 text-white px-4 py-2 rounded-lg hover:bg-green-700 transition-colors text-sm"
+										onClick={() =>
+											navigate(`/review-form/${selectedSubject.code}`, {
+												state: {
+													subject_id: `${selectedSubject.id}`,
+													subject_name: `${selectedSubject.name}`,
+													from: `/subjects/${selectedSubject.code}`,
+												},
+											})
+										}
+									>
+										Сподели информација
+									</button>
+								</>
+							) : user?.user_type === "admin" ? (
+								<button
+									className="bg-purple-600 text-white px-4 py-2 rounded-lg hover:bg-purple-700 transition-colors text-sm"
+									onClick={() => navigate("/admin")}
+								>
+									Админ панел
+								</button>
+							) : null}
+						</div>
 					</div>
 				</div>
@@ -273,43 +285,4 @@
 							</div>
 						</div>
-
-						{/* reviews section */}
-						<div className="bg-white rounded-lg shadow-sm p-6">
-							{!reviews ||
-							!reviews.evaluation ||
-							!reviews.other ? null : reviews.evaluation?.methods?.length ==
-									0 && reviews.other.length == 0 ? (
-								<p>Нема информации од студенти за овој предмет.</p>
-							) : (
-								<>
-									<h2 className="text-xl font-semibold mb-6">
-										Информации од студенти
-									</h2>
-									{reviews.evaluation.methods.length > 0 && (
-										<EvaluationReviews evaluation_review={reviews.evaluation} />
-									)}
-									{reviews.other.length > 0 && (
-										<OtherReviews other_reviews={reviews.other} />
-									)}
-								</>
-							)}
-							{user?.user_type == "student" && (
-								<div className="mt-6 pt-4 border-gray-200">
-									<button
-										className="bg-blue-600 text-white px-4 py-2 rounded-lg hover:bg-blue-700 transition-colors"
-										onClick={() =>
-											navigate(`/review-form/${selectedSubject.code}`, {
-												state: {
-													subject_id: `${selectedSubject.id}`,
-													subject_name: `${selectedSubject.name}`,
-												},
-											})
-										}
-									>
-										Сподели информација / мислење
-									</button>
-								</div>
-							)}
-						</div>
 					</div>
 
