From 02dc0629625cec6c6196709d278e9a283848d025 Mon Sep 17 00:00:00 2001
From: Tom Zhao <tom.zhao@dsv.su.se>
Date: Wed, 26 Mar 2025 10:26:28 +0100
Subject: [PATCH] 87: Add initial support of AdminViewParentProjectPage

---
 .../se/su/dsv/scipro/SciProApplication.java   |  1 +
 .../admin/pages/AdminSplitProjectPage.java    | 10 ++++---
 .../pages/AdminViewParentProjectPage.html     | 26 +++++++++++++++++++
 .../pages/AdminViewParentProjectPage.java     | 18 +++++++++++++
 4 files changed, 52 insertions(+), 3 deletions(-)
 create mode 100644 view/src/main/java/se/su/dsv/scipro/admin/pages/AdminViewParentProjectPage.html
 create mode 100644 view/src/main/java/se/su/dsv/scipro/admin/pages/AdminViewParentProjectPage.java

diff --git a/view/src/main/java/se/su/dsv/scipro/SciProApplication.java b/view/src/main/java/se/su/dsv/scipro/SciProApplication.java
index 35b9c3b3e0..5e3c9cb577 100755
--- a/view/src/main/java/se/su/dsv/scipro/SciProApplication.java
+++ b/view/src/main/java/se/su/dsv/scipro/SciProApplication.java
@@ -295,6 +295,7 @@ public class SciProApplication extends LifecycleManagedWebApplication {
         mountPage("admin/project", ProjectManagementPage.class);
         mountPage("admin/project/create", AdminCreateProjectPage.class);
         mountPage("admin/project/split", AdminSplitProjectPage.class);
+        mountPage("admin/project/viewparentproject", AdminViewParentProjectPage.class);
         mountPage("admin/project/survey", AdminSurveyPage.class);
         mountPage("admin/project/reviewer", AdminAssignReviewerPage.class);
         mountPage("admin/project/reviewer/capacity", AdminReviewerCapacityManagementPage.class);
diff --git a/view/src/main/java/se/su/dsv/scipro/admin/pages/AdminSplitProjectPage.java b/view/src/main/java/se/su/dsv/scipro/admin/pages/AdminSplitProjectPage.java
index bf7aac2f5a..a91635ff5c 100644
--- a/view/src/main/java/se/su/dsv/scipro/admin/pages/AdminSplitProjectPage.java
+++ b/view/src/main/java/se/su/dsv/scipro/admin/pages/AdminSplitProjectPage.java
@@ -2,6 +2,7 @@ package se.su.dsv.scipro.admin.pages;
 
 import jakarta.inject.Inject;
 import org.apache.wicket.RestartResponseException;
+import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.form.Form;
 import org.apache.wicket.markup.html.link.BookmarkablePageLink;
 import org.apache.wicket.markup.html.list.ListItem;
@@ -18,9 +19,6 @@ import se.su.dsv.scipro.security.auth.roles.Roles;
 import se.su.dsv.scipro.system.User;
 import se.su.dsv.scipro.util.PageParameterKeys;
 
-import org.apache.wicket.markup.html.basic.Label;
-import org.apache.wicket.markup.html.link.AbstractLink;
-
 import java.util.ArrayList;
 
 @Authorization(authorizedRoles = { Roles.SYSADMIN })
@@ -69,7 +67,13 @@ public class AdminSplitProjectPage extends AbstractAdminProjectPage implements M
         protected void onSubmit() {
             Long projectId = getModel().getObject().getId();
 
+            System.out.println("Project ID: " + projectId);
 
+
+            final PageParameters pp = new PageParameters();
+            pp.set(PageParameterKeys.MAP.get(Project.class), projectId);
+
+            setResponsePage(AdminViewParentProjectPage.class, pp);
         }
     }
 }
diff --git a/view/src/main/java/se/su/dsv/scipro/admin/pages/AdminViewParentProjectPage.html b/view/src/main/java/se/su/dsv/scipro/admin/pages/AdminViewParentProjectPage.html
new file mode 100644
index 0000000000..7cdd694718
--- /dev/null
+++ b/view/src/main/java/se/su/dsv/scipro/admin/pages/AdminViewParentProjectPage.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html>
+<html xmlns="http://www.w3.org/1999/xhtml" xmlns:wicket="http://wicket.apache.org" lang="en">
+<body>
+<wicket:extend>
+    <div class="row">
+        <div class="col-lg-5">
+            <h4>Hahahaha</h4>
+
+            <p>The project has following children projects:</p>
+
+            <div class="mb-3">
+                <ul>
+                    <li>Abcd</li>
+                    <li>efbud</li>
+                </ul>
+            </div>
+
+            <div class="mt-5">
+                <a class="btn btn-success" wicket:id="link">Projects</a>
+            </div>
+        </div>
+    </div>
+
+</wicket:extend>
+</body>
+</html>
\ No newline at end of file
diff --git a/view/src/main/java/se/su/dsv/scipro/admin/pages/AdminViewParentProjectPage.java b/view/src/main/java/se/su/dsv/scipro/admin/pages/AdminViewParentProjectPage.java
new file mode 100644
index 0000000000..4b5d46e624
--- /dev/null
+++ b/view/src/main/java/se/su/dsv/scipro/admin/pages/AdminViewParentProjectPage.java
@@ -0,0 +1,18 @@
+package se.su.dsv.scipro.admin.pages;
+
+import org.apache.wicket.markup.html.link.BookmarkablePageLink;
+import org.apache.wicket.request.mapper.parameter.PageParameters;
+import se.su.dsv.scipro.components.menuhighlighting.MenuHighlightAdminProjectManagement;
+import se.su.dsv.scipro.security.auth.Authorization;
+import se.su.dsv.scipro.security.auth.roles.Roles;
+
+@Authorization(authorizedRoles = { Roles.SYSADMIN })
+public class AdminViewParentProjectPage extends AbstractAdminProjectPage implements MenuHighlightAdminProjectManagement {
+
+    public AdminViewParentProjectPage(PageParameters pp) {
+
+        add(new BookmarkablePageLink<Void>("link", ProjectManagementPage.class));
+    }
+
+
+}