diff --git a/core/src/main/java/se/su/dsv/scipro/project/split/SplitOrRestartProjectService.java b/core/src/main/java/se/su/dsv/scipro/project/split/SplitOrRestartProjectService.java
index 42c0a74b65..8231532181 100644
--- a/core/src/main/java/se/su/dsv/scipro/project/split/SplitOrRestartProjectService.java
+++ b/core/src/main/java/se/su/dsv/scipro/project/split/SplitOrRestartProjectService.java
@@ -23,7 +23,7 @@ public interface SplitOrRestartProjectService {
         }
     }
 
-    Pair<SplittableStatus, Project> getSplittableStatus(int projectId);
+    Pair<SplittableStatus, Project> getSplittableStatus(long projectId);
 
-    void splitProject(int projectId);
+    void splitProject(long projectId);
 }
diff --git a/core/src/main/java/se/su/dsv/scipro/project/split/SplitOrRestartProjectServiceImpl.java b/core/src/main/java/se/su/dsv/scipro/project/split/SplitOrRestartProjectServiceImpl.java
index f750faa778..cd8fa7a87a 100644
--- a/core/src/main/java/se/su/dsv/scipro/project/split/SplitOrRestartProjectServiceImpl.java
+++ b/core/src/main/java/se/su/dsv/scipro/project/split/SplitOrRestartProjectServiceImpl.java
@@ -22,8 +22,8 @@ public class SplitOrRestartProjectServiceImpl implements SplitOrRestartProjectSe
     }
 
     @Override
-    public Pair<SplittableStatus, Project> getSplittableStatus(int projectId) {
-        Project project = projectService.findOne(Long.valueOf(projectId));
+    public Pair<SplittableStatus, Project> getSplittableStatus(long projectId) {
+        Project project = projectService.findOne(projectId);
         if (project == null)
             return new Pair<>(SplittableStatus.NOT_EXIST, null);
 
@@ -43,7 +43,7 @@ public class SplitOrRestartProjectServiceImpl implements SplitOrRestartProjectSe
     }
 
     @Override
-    public void splitProject(int projectId) {
+    public void splitProject(long projectId) {
         Pair<SplittableStatus, Project> result = getSplittableStatus(projectId);
         if (result.getHead() != SplittableStatus.OK) {
             throw new IllegalStateException("Project must to be verified to be able to split " +
diff --git a/view/src/main/java/se/su/dsv/scipro/admin/pages/AdminSplitProjectPanel.java b/view/src/main/java/se/su/dsv/scipro/admin/pages/AdminSplitProjectPanel.java
index 77811428df..15d15e457d 100644
--- a/view/src/main/java/se/su/dsv/scipro/admin/pages/AdminSplitProjectPanel.java
+++ b/view/src/main/java/se/su/dsv/scipro/admin/pages/AdminSplitProjectPanel.java
@@ -1,29 +1,40 @@
 package se.su.dsv.scipro.admin.pages;
 
+import jakarta.inject.Inject;
 import org.apache.wicket.behavior.AttributeAppender;
 import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.link.AbstractLink;
 import org.apache.wicket.markup.html.link.BookmarkablePageLink;
 import org.apache.wicket.markup.html.panel.Panel;
 import org.apache.wicket.model.IModel;
+import org.apache.wicket.model.LoadableDetachableModel;
 import org.apache.wicket.model.Model;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
 import se.su.dsv.scipro.project.Project;
-import se.su.dsv.scipro.project.ProjectStatus;
+import se.su.dsv.scipro.project.split.SplitOrRestartProjectService;
 import se.su.dsv.scipro.security.auth.roles.Roles;
 import se.su.dsv.scipro.session.SciProSession;
 import se.su.dsv.scipro.util.PageParameterKeys;
+import se.su.dsv.scipro.util.Pair;
+
+import static se.su.dsv.scipro.project.split.SplitOrRestartProjectService.SplittableStatus;
 
 public class AdminSplitProjectPanel extends Panel {
-    private enum SplittableStatus {
-        NOT_ACTIVE, NOT_TWO_PARTICIPANTS, FINAL_SEMINAR_PHASE_STARTED, OK
-    }
+
+    @Inject
+    private SplitOrRestartProjectService splitOrRestartProjectService;
 
     public AdminSplitProjectPanel(String id, final IModel<Project> projectModel) {
         super(id, projectModel);
 
         Project project = projectModel.getObject();
-        SplittableStatus splittableStatus = getSplitStatus(project);
+
+        LoadableDetachableModel<SplittableStatus> ldModel = LoadableDetachableModel.of(
+                () -> {
+                    Pair<SplittableStatus, Project > pair = splitOrRestartProjectService.getSplittableStatus(project.getId());
+                    return pair.getHead();
+                }
+        );
 
         final PageParameters pp = new PageParameters();
         pp.set(PageParameterKeys.MAP.get(Project.class), project.getId());
@@ -33,7 +44,7 @@ public class AdminSplitProjectPanel extends Panel {
             protected void onConfigure() {
                 super.onConfigure();
 
-                if (splittableStatus == SplittableStatus.OK) {
+                if (ldModel.getObject() == SplittableStatus.OK) {
                     setEnabled(true);
                     this.add(new AttributeAppender("class", Model.of(" btn-success")));
                 } else {
@@ -42,30 +53,10 @@ public class AdminSplitProjectPanel extends Panel {
                 }
             }
         };
-
         add(splitProjectLink);
 
-        if (splittableStatus == SplittableStatus.NOT_TWO_PARTICIPANTS) {
-            add(new Label("splitInfo", Model.of("To be able to split a project, it needs to have 2 participants.")));
-        } else if (splittableStatus == SplittableStatus.NOT_ACTIVE) {
-            add(new Label("splitInfo", Model.of("Only active project can be split.")));
-        } else {
-            add(new Label("splitInfo", Model.of("")));
-        }
-
-        /*
-        Label splitInfoLabel = new Label("splitInfoLabel", dsModel) {
-            @Override
-            protected void onConfigure() {
-                super.onConfigure();
-
-                Project attachedProject = dsModel.getObject();
-                if (attachedProject.getProjectParticipants().size() < 2) {
-                    this
-                }
-            }
-        };
-        */
+        add(new Label("splitInfo", Model.of(ldModel.getObject() == SplittableStatus.OK ? "" :
+                ldModel.getObject().getMessage())));
     }
 
     @Override
@@ -73,14 +64,4 @@ public class AdminSplitProjectPanel extends Panel {
         super.onConfigure();
         setVisibilityAllowed(SciProSession.get().authorizedForRole(Roles.ADMIN));
     }
-
-    private SplittableStatus getSplitStatus(final Project project) {
-       if (project.getProjectParticipants().size() != 2) {
-           return SplittableStatus.NOT_TWO_PARTICIPANTS;
-       } else if (project.getProjectStatus() != ProjectStatus.ACTIVE) {
-           return SplittableStatus.NOT_ACTIVE;
-       } else {
-           return SplittableStatus.OK;
-       }
-    }
 }